Kādi ir veidi, kā strādāt ar kategorālajām iezīmēm?
sobes.tech AI
Atbilde no AI
Mašīnmācībā kategoriskās īpašības galvenokārt tiek apstrādātas ar šādām galvenajām metodēm:
-
Label Encoding (zīmju kodēšana) — katrai kategorijai tiek piešķirts unikāls skaitlis. Piemērots sakārtotām kategorijām, bet var maldināt modeli, ja nav secības.
-
One-Hot Encoding — katrai kategorijai tiek izveidota bināra īpašība. Piemēram, īpašība "Krāsa" ar kategorijām {sarkana, zila, zaļa} tiek pārvērsta trīs binārās īpašībās.
-
Target Encoding (mērķa kodēšana) — kategorijas tiek aizstātas ar mērķa mainīgā statistiku (piemēram, vidējo vērtību katrai kategorijai). Jābūt uzmanīgiem, lai izvairītos no datu noplūdes.
-
Frequency Encoding (biežuma kodēšana) — kategorijas tiek aizstātas ar to sastopamības biežumu datos.
-
Embeddings (ievietojumi) — lielam unikālo vērtību skaitam (piemēram, NLP) tiek izmantotas vektoru reprezentācijas, kas tiek mācītas kopā ar modeli.
Izvēle ir atkarīga no uzdevuma, modeļa un datu apjoma. Piemēram, lēmumu kokiem bieži pietiek ar Label vai One-Hot Encoding, bet neironu tīkliem — embeddings.
Python piemērs ar One-Hot Encoding:
import pandas as pd
df = pd.DataFrame({'Krāsa': ['sarkana', 'zila', 'zaļa', 'zila']})
df_encoded = pd.get_dummies(df, columns=['Krāsa'])
print(df_encoded)
Rezultāts:
Krāsa_sarkana Krāsa_zila Krāsa_zaļa
0 1 0 0
1 0 1 0
2 0 0 1
3 0 1 0