Ich nehme an, Sie meinen Feature-Auswahl als Feature-Engineering . Der Prozess, dem ich normalerweise folge und den ich bei einigen Leuten sehe, ist
- Feature Engineering
Probieren Sie einige Algorithmen aus, normalerweise leistungsstarke wie RandomForest, Gradient Boosted Trees, Neutral Networks oder SVM.
2.1 Führen Sie eine einfache Parametereinstellung durch, z. B. eine Rastersuche für einen kleinen Bereich von Parametern
Wenn das Ergebnis von Schritt 2 nicht zufriedenstellend ist, kehren Sie zu Schritt 1 zurück, um weitere Funktionen zu generieren, oder entfernen Sie redundante Funktionen und behalten Sie die besten bei. Diese Funktion wird normalerweise als Funktionsauswahl bezeichnet . Wenn Ihnen die Ideen für neue Funktionen ausgehen, probieren Sie weitere Algorithmen aus.
Wenn das Ergebnis in Ordnung ist oder nahe an dem liegt, was Sie möchten, fahren Sie mit Schritt 3 fort
- Umfangreiche Parametereinstellung
Der Grund dafür ist, dass es bei der Klassifizierung ausschließlich um Feature-Engineering geht , und es sei denn, Sie kennen einen unglaublich leistungsstarken Klassifizierer wie Deep Learning, der auf ein bestimmtes Problem zugeschnitten ist, wie z. B. Computer Vision. Gute Funktionen zu generieren ist der Schlüssel. Die Auswahl eines Klassifikators ist wichtig, aber nicht entscheidend. Alle oben genannten Klassifikatoren sind hinsichtlich der Leistung ziemlich vergleichbar, und meistens stellt sich heraus, dass der beste Klassifikator einer von ihnen ist.
Die Parametereinstellung kann die Leistung in einigen Fällen erheblich steigern. Aber ohne gute Funktionen hilft das Tuning nicht viel. Denken Sie daran, dass Sie immer Zeit für die Parametereinstellung haben. Es macht auch keinen Sinn, Parameter ausgiebig zu optimieren, dann entdecken Sie eine neue Funktion und wiederholen das Ganze.