Ugrás a tartalomhoz

feature selection

A Wikiszótárból, a nyitott szótárból


Főnév

feature selection (tsz. feature selections)

  1. (informatika, mesterséges intelligencia) Feature selection – magyarul: jellemzőválasztás vagy változószelekció – a gépi tanulás egyik fontos előfeldolgozási lépése, amelynek célja, hogy kiválassza a legfontosabb, leghasznosabb bemeneti jellemzőket, miközben kiküszöböli a fölösleges, redundáns vagy zajos változókat.



🧠 1. Miért fontos a feature selection?

  • Jobb modellteljesítmény: csökkenti az overfitting kockázatát
  • Gyorsabb tanulás és predikció
  • Könnyebben értelmezhető modellek
  • Kevesebb memória- és számítási igény

➡️ Különösen fontos, ha sok a változó és kevés a minta (pl. genetikai adatok, szövegosztályozás, pénzügyi idősorok).



📊 2. Típusai

A feature selection három fő módszertani kategóriába sorolható:

A. Filter módszerek

  • A jellemzőket függetlenül a tanuló algoritmustól értékelik
  • Használnak statisztikai mérőszámokat:
Módszer Mire használható?
Pearson-korreláció Regresszió
Chi-négyzet teszt Kategóriás osztályozás
Mutual information Nemlineáris összefüggések
Variance threshold Kis szórású változók kiszűrése

📌 Előny: gyors 📌 Hátrány: nem veszi figyelembe a tanulási algoritmust



B. Wrapper módszerek

  • A jellemzők kiválasztása egy tanuló algoritmus teljesítménye alapján
  • Tesztelek sok kombinációt és kiválasztom a legjobbat

Példa algoritmusok:

  • Forward Selection (hozzáadás)
  • Backward Elimination (eltávolítás)
  • Recursive Feature Elimination (RFE)

📌 Előny: pontosabb 📌 Hátrány: lassabb, sok számítási erőforrást igényel



C. Embedded módszerek

  • A jellemzők kiválasztása a modelltanítás során történik

Példák:

  • Lasso (L1 regularizáció): automatikusan nullára húzza a felesleges súlyokat
  • Decision tree / Random Forest: jellemzők fontossága (feature importance)

📌 Előny: hatékony és integrált 📌 Hátrány: algoritmus-specifikus



🛠️ 3. Python példa (scikit-learn)

1. Variancia-alapú kiszűrés:

from sklearn.feature_selection import VarianceThreshold

selector = VarianceThreshold(threshold=0.1)
X_reduced = selector.fit_transform(X)

2. Kiemelt jellemzők döntési fával:

from sklearn.ensemble import RandomForestClassifier

model = RandomForestClassifier()
model.fit(X, y)
importances = model.feature_importances_

🎯 4. Mikor van rá szükség?

  • Sok jellemző (pl. 1000+) → túl sok zaj / redundancia
  • Kevés minta, sok feature → túltanulás veszélye
  • Akkor is, ha a modell lassan tanul, vagy túl bonyolult



🧾 5. Összefoglalás

A feature selection:

  • Egy alapvető lépés az adat-előkészítés során
  • Segít csökkenteni a komplexitást, gyorsítani a tanulást, és javítani a predikciós teljesítményt
  • Három fő típusa: filter, wrapper, embedded
  • Jól alkalmazható bármely osztályozási, regressziós vagy clustering probléma esetén