Feature-Engineering vor oder nach der Skalierung?
Ich mache Feature-Engineering für eine Reihe von Features, um die Größe des Datensatzes zu reduzieren. Die Merkmale können unterschiedliche Maßstäbe haben. Beispielsweise hat ein Feature Werte, die zwischen 1000 und 1500 variieren, und die anderen Features variieren zwischen 0 und 100. Einer der Tests, die ich beim Feature Engineering durchführe, besteht darin, ein Feature zu entfernen, das eine hohe Korrelation mit einem anderen aufweist.
Ich habe versucht, die Daten zu skalieren, bevor ich das Feature-Engineering durchführte, und auch das Gegenteil. Im ersten Anwendungsfall erhalte ich 60 Funktionen und im zweiten Anwendungsfall erhalte ich 54 Funktionen.
Welches ist der richtige Weg? Sollten wir Feature-Engineering vor oder nach der Skalierung durchführen?
Antworten
Die Standardisierung kann auch im Voraus angewendet werden, findet jedoch typischerweise nach der Feature-Generierung statt. Zum Beispiel,
Ihre Merkmale können bestimmte Bedeutungen haben, z. B. Klickrate (CTR) = Klicks / angezeigte Anzeigen, und wenn Sie zuvor Klicks und angezeigte Anzeige skalieren, verwenden Sie das CTR-Signal.
neue Funktionen können außerhalb des Maßstabs liegen, z. B. wenn Sie skalieren$x$zu 0-1 und dann nehmen$x^8$Als neues Feature wird es wahrscheinlich in einem kleineren Bereich als 0-1 liegen.
Wenn Sie die Skalierung vorher anwenden möchten, müssen Sie auch entscheiden, ob Sie die Skalierung nach dem Generieren neuer Features erneut anwenden oder nicht, insbesondere wenn sich die Bereiche der neuen Features stark von den standardisierten Features unterscheiden