Milyen módszerek léteznek a kategorikus jellemzőkkel való munkához?
sobes.tech MI
Válasz az MI-től
A gépi tanulásban a kategorikus jellemzőkkel több fő módszerrel dolgoznak:
-
Címke kódolás (Label Encoding) — minden kategóriának egyedi számot rendelnek. Alkalmas rendezett kategóriákhoz, de félrevezető lehet a modell számára, ha nincs sorrend.
-
One-Hot kódolás — minden kategóriához bináris jellemzőt hoznak létre. Például a "Szín" jellemző {piros, kék, zöld} három bináris jellemzővé alakul.
-
Célkódolás (Target Encoding) — a kategóriákat a célváltozó statisztikáival helyettesítik (pl. átlagérték minden kategóriára). Óvatosan kell alkalmazni, hogy elkerüljük az adat szivárgását.
-
Frekvencia kódolás — a kategóriákat azok előfordulási gyakoriságával helyettesítik.
-
Embeddingek — nagy számú egyedi érték esetén (pl. NLP-ben) vektoralapú reprezentációkat használnak, amelyeket a modell tanít meg.
A módszer kiválasztása a feladattól, a modelltől és az adatmennyiségtől függ. Például döntési fákhoz gyakran elegendő a Label vagy One-Hot kódolás, míg neurális hálózatokhoz — embeddingek.
Példa One-Hot kódolásra Pythonban pandas-szal:
import pandas as pd
df = pd.DataFrame({'Szín': ['piros', 'kék', 'zöld', 'kék']})
df_encoded = pd.get_dummies(df, columns=['Szín'])
print(df_encoded)
Eredmény:
Szín_piros Szín_zöld Szín_kék
0 1 0 0
1 0 0 1
2 0 1 0
3 0 0 1