Für lineare Modelle (wie lineare Regression, logistische Regression usw.) ist das Feature-Engineering ein wichtiger Schritt, um die Leistung der Modelle zu verbessern. Meine Frage ist, ist es wichtig, ob wir Feature-Engineering durchführen, während wir zufällige Gesamtstruktur- oder Gradienten-Boosting verwenden?
Zugegeben, diese Modelle sind keine Deep-Learning-Modelle. aber , es scheint, dass einige der Feature-Engineering-Methoden das Modell nicht wirklich verbessern. Zum Beispiel: Ich mache ein binäres Klassifizierungsproblem, das ungefähr 200 Merkmale enthält , und 20 davon sind kategoriale Merkmale. Ich habe folgendes gemacht:
Benchmark: Zufälliger Waldklassifikator direkt auf den Originaldaten ausgeführt. Ich habe eine AUC von ungefähr 0,93, Präzision, Rückruf und F-Score liegen bei ungefähr 0,95 (Ich sagte ungefähr, weil die statifizierte Kfold-Validierung angewendet wird und es sehr kleine Abweichungen von den Ergebnissen gibt)
Ich reduzierte die Feature-Dimension durch Chi-Quadrat-Test und ANOVA F1-Test, um das Modell auszuführen. Die Ergebnisse sind nahezu identisch: AUC um 0,93, Präzision, Rückruf und F-Score um 0,95
Dann habe ich alle kategorialen Funktionen per Tastendruck eingegeben und dann das Modell erneut ausgeführt. Die Ergebnisse sind immer noch nahezu identisch: AUC um 0,93, Präzision, Rückruf und F-Score um 0,95
Dann wird eine abgeschnittene SVD angewendet, um die Features weiter zu reduzieren und das Modell neu zu trainieren. Die Ergebnisse bleiben jedoch unverändert ...
Zuletzt habe ich einen Polynomterm hinzugefügt, einen Kreuzterm der verbleibenden Merkmale. Ergebnisse sind noch unverändert ...
Irgendwelche Vorschläge bitte? Vielen Dank.