Soll man heiße Vektoren mit numerischen Attributen skalieren

20

Im Falle einer Kombination von kategorialen und numerischen Attributen konvertiere ich die kategorialen Attribute normalerweise in einen heißen Vektor. Meine Frage ist, lasse ich diese Vektoren unverändert und skaliere die numerischen Attribute durch Standardisierung / Normalisierung, oder sollte ich die einen heißen Vektoren zusammen mit den numerischen Attributen skalieren?

Suresh Kasipandy
quelle

Antworten:

11

Einmal in numerische Form konvertiert, reagieren Modelle nicht anders auf Spalten mit One-Hot-Codierung als auf andere numerische Daten. Es gibt also einen eindeutigen Präzedenzfall für die Normalisierung der {0,1} -Werte, wenn Sie dies aus irgendeinem Grund tun, um andere Spalten vorzubereiten.

Die Auswirkung hängt von der Modellklasse und der Art der angewendeten Normalisierung ab, aber ich habe einige (kleine) Verbesserungen festgestellt, wenn ich beim Training von neuronalen Netzen die Skalierung auf 0, std 1 für One-Hot-Coded-Kategoriedaten vorgenommen habe.

Auch für Modellklassen, die auf Distanzmetriken basieren, kann dies einen Unterschied bedeuten.

Leider müssen Sie, wie bei den meisten dieser Entscheidungen, häufig beide Ansätze ausprobieren und den Ansatz mit der besten Metrik wählen.

Neil Slater
quelle
1
Der Wortlaut war etwas unklar. Wollen Sie damit sagen, dass Sie nur solche Spalten normalisieren, die im laufenden Betrieb codiert wurden, wenn Sie keine anderen Spalten normalisiert haben?
Info5ek
@ Info5ek: Ich sage, dass es möglicherweise besser ist, one-hot-codierte Spalten zu normalisieren. Wenn Sie dies bereits für andere Spalten tun, können Sie es auch versuchen. Hierfür gibt es keine festen Regeln, zu viel hängt vom jeweiligen Problem ab.
Neil Slater