Welche Methoden gibt es, um mit kategorialen Merkmalen zu arbeiten?
sobes.tech KI
Antwort von AI
Kategoriale Merkmale im maschinellen Lernen werden hauptsächlich auf folgende Weisen behandelt:
-
Label Encoding — jeder Kategorie wird eine eindeutige Zahl zugewiesen. Geeignet für geordnete Kategorien, kann das Modell jedoch verwirren, wenn keine Reihenfolge vorhanden ist.
-
One-Hot Encoding — es wird eine binäre Eigenschaft für jede Kategorie erstellt. Zum Beispiel wird die Eigenschaft "Farbe" mit den Kategorien {rot, blau, grün} in drei binäre Eigenschaften umgewandelt.
-
Target Encoding — Kategorien werden durch Statistiken der Zielvariablen ersetzt (z.B. Durchschnittswert der Zielvariablen für jede Kategorie). Erfordert Vorsicht, um Datenlecks zu vermeiden.
-
Frequency Encoding — Kategorien werden durch ihre Auftreffhäufigkeit in den Daten ersetzt.
-
Embeddings — für Kategorien mit vielen eindeutigen Werten (z.B. in NLP) werden vektorielle Darstellungen verwendet, die gemeinsam mit dem Modell trainiert werden.
Die Wahl der Methode hängt von der Aufgabe, dem Modell und dem Datenvolumen ab. Zum Beispiel sind für Entscheidungsbäume oft Label oder One-Hot Encoding ausreichend, für neuronale Netze sind Embeddings üblich.
Beispiel für One-Hot Encoding in Python mit pandas:
import pandas as pd
df = pd.DataFrame({'Farbe': ['rot', 'blau', 'grün', 'blau']})
df_encoded = pd.get_dummies(df, columns=['Farbe'])
print(df_encoded)
Ergebnis:
Farbe_rot Farbe_grün Farbe_blau
0 1 0 0
1 0 0 1
2 0 1 0
3 0 0 1