Gépi tanulás

Gépi tanulás az AI korában

CoursePath szerkesztőség · Frissítve: 2025. január 10. · Olvasási idő: kb. 10 perc
Neurális hálózat struktúrája
Egyszerű neurális hálózat: bemeneti, rejtett és kimeneti rétegekkel. Forrás: Wikimedia Commons

A gépi tanulás (angolul: machine learning) az adattudomány egyik leggyorsabban fejlődő területe, ahol az algoritmusok tapasztalatból – azaz adatokból – tanulnak, nem pedig explicit programozási utasítások alapján működnek. Az elmúlt évtizedben a gépi tanulás szorosan összefonódott a mesterséges intelligencia (AI) tágabb fogalmával, bár a két terület nem szinonim.

Magyarországon a gépi tanulás alkalmazása elsősorban a pénzügyi szektorban, az egészségügyi adatelemzésben és a közszolgáltatások optimalizálásában van jelen. A Kormányzati Informatika Fejlesztési Ügynökség (KIFÜ) és több kutatóintézet is foglalkozik a módszer hazai alkalmazásával.

A gépi tanulás főbb kategóriái

Felügyelt tanulás

A felügyelt tanulás (supervised learning) esetén az algoritmus címkézett adatokon tanul: minden bemeneti adathoz tartozik egy elvárt kimenet. A cél, hogy a modell képes legyen ismeretlen adatokra is helyes kimenetet jósolni.

Tipikus felügyelt tanulási feladatok:

  • Osztályozás (classification): a kimenet diszkrét kategória – pl. spam/nem spam e-mail azonosítás
  • Regresszió: a kimenet folytonos érték – pl. ingatlanárak becslése jellemzők alapján
Döntési fa modell
Döntési fa: az egyik legintuitívabb felügyelt tanulási modell, amely szabályok sorozataként ábrázolható. Forrás: Wikimedia Commons (CC BY-SA 3.0)

Felügyelet nélküli tanulás

A felügyelet nélküli tanulás (unsupervised learning) esetén az adatokhoz nem tartoznak előre megadott címkék. Az algoritmus belső struktúrát, mintázatokat vagy csoportokat keres az adatokban.

Leggyakoribb felügyelet nélküli módszerek:

  • K-means klaszterezés: az adatpontokat k darab klaszterbe sorolja a távolság alapján
  • Hierarchikus klaszterezés: fásított struktúrában rendezi az adatpontokat
  • PCA (főkomponens-analízis): a dimenziók számát csökkenti az adatok struktúrájának megőrzésével
K-means algoritmus konvergenciája
A K-means algoritmus konvergenciája: az adatpontok iteratívan kerülnek a legközelebbi centroidhoz. Forrás: Wikimedia Commons (CC BY-SA 3.0)

Megerősítéses tanulás

A megerősítéses tanulás (reinforcement learning) esetén az ügynök (agent) egy környezetben cselekszik, és jutalmak/büntetések alapján tanulja meg az optimális viselkedést. Ez a módszer különösen robotikában, játékstratégiában és autonóm irányítási rendszerekben terjedt el.

Neurális hálózatok és mélytanulás

A mélytanulás (deep learning) a gépi tanulás egy részterülete, amely több rétegű neurális hálózatokat alkalmaz. Az elmúlt évtizedben a mélytanulás tette lehetővé a képfelismerés, természetes nyelvfeldolgozás és hangfelismerés terén tapasztalható áttöréseket.

Mesterséges neurális hálózat
Mesterséges neurális hálózat: a biológiai neuronok kapcsolódási mintáit utánzó számítási modell. Forrás: Wikimedia Commons (CC BY-SA 3.0)

A nagy nyelvi modellek (LLM-ek), mint amilyenek a különböző AI chatbotok alapját képezik, neurális hálózatokon alapulnak, és hatalmas szöveges adathalmazon tanultak. A mögöttes gépi tanulási elvek azonosak a kisebb modelleknél alkalmazottakkal, bár a méret és az architektúra eltér.

A scikit-learn könyvtár

A Python scikit-learn könyvtára egységes interfészen keresztül kínálja a leggyakoribb gépi tanulási algoritmusokat. Ez lehetővé teszi, hogy különböző algoritmusokat ugyanolyan szintaxissal cseréljünk le egymással.

from sklearn.model_selection import train_test_split from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import classification_report import pandas as pd df = pd.read_csv('adatok.csv') X = df.drop('cimke', axis=1) y = df['cimke'] X_train, X_test, y_train, y_test = train_test_split( X, y, test_size=0.2, random_state=42 ) modell = RandomForestClassifier(n_estimators=100, random_state=42) modell.fit(X_train, y_train) y_pred = modell.predict(X_test) print(classification_report(y_test, y_pred))
TensorFlow logó
A TensorFlow a Google által fejlesztett mélytanulási keretrendszer, amelyet nagy léptékű neurális hálózatok tanításához használnak. Forrás: Wikimedia Commons (Apache 2.0)

Modellértékelés és validáció

A gépi tanulási modellek értékelése kritikus lépés, amelyet nem lehet kihagyni. A legfontosabb elvek:

Tanuló- és teszthalmazra osztás

Az adathalmazt szét kell választani: a modell a tanulóhalmazon tanul, a teszthalmazon pedig az ismeretlen adatokra vonatkozó teljesítményt mérjük. Az adatok ismertetése a modellel a tesztelés előtt (data leakage) hamis eredményekhez vezet.

Keresztvalidáció

A k-fold keresztvalidáció az adathalmazt k részre osztja, és minden részt egyszer teszthalmazként alkalmaz. Az így kapott átlagos teljesítménymutató megbízhatóbb becslést ad a modell általánosítóképességéről.

Teljesítménymutatók

  • Pontosság (accuracy): a helyesen osztályozott minták aránya
  • Precízió és visszahívás (precision/recall): kiegyensúlyozatlan osztályelosztásnál fontosabb mutatók
  • F1-score: a precízió és visszahívás harmonikus átlaga
  • RMSE (regresszió): a jósolt és valós értékek átlagos négyzetgyöke

A gépi tanulás korlátai

A gépi tanulás nem minden problémára alkalmas megoldás. Néhány fontos korlát:

  • Nagy mennyiségű, minőségi tanítóadat szükséges – ennek hiányában a modell nem fog megfelelően általánosítani
  • A modellek „fekete dobozként" működhetnek, az eredmények nem mindig értelmezhetők
  • Az adatokban lévő torzítások a modellbe is beépülnek
  • A modell teljesítménye az adott adateloszlásra érvényes – ha az valóságban megváltozik, a modell újratanítást igényel

AI és gépi tanulás: a kapcsolat

A mesterséges intelligencia tágabb fogalom a gépi tanulásnál. A gépi tanulás az AI egyik leggyakrabban alkalmazott részterülete, de az AI magában foglal más megközelítéseket is (szabályalapú rendszerek, szakértői rendszerek, szimbolikus AI). A jelenlegi „AI reneszánsz" döntő részt a mélytanulás és a nagy adathalmazok együttesének köszönhető.

A kapcsolódó témák megismeréséhez: