Gépi tanulás

A tantárgy angol neve: Machine Learning 

Adatlap utolsó módosítása: 2024. január 28.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar

Mérnökinformatikus mesterképzés (MSc)
Adattudomány és mesterséges intelligencia főspec.

 

Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIMIMA27   2/1/0/v 5  
3. A tantárgyfelelős személy és tanszék Dr. Antal Péter,
A tantárgy tanszéki weboldala http://www.mit.bme.hu/oktatas/targyak/VIMIMA27
4. A tantárgy előadója Dr. Bolgár Bence Márton adjunktus, MIT
6. Előtanulmányi rend
Kötelező:
NEM
(TárgyEredmény( "BMEVIMIMA05", "jegy" , _ ) >= 2
VAGY
TárgyEredmény("BMEVIMIMA05", "FELVETEL", AktualisFelev()) > 0)

A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.

A kötelező előtanulmányi rend az adott szak honlapján és képzési programjában található.

Ajánlott:
Valószínűségszámítás, Python programozás
7. A tantárgy célkitűzése A tantárgy az intelligens rendszerek egyik alapvető képességének, a tanulásnak a gépi megvalósítási lehetőségeivel foglalkozik. Bemutatja a gépi tanulás fajtáit, összefoglalja a gépi tanulás elméleti alapjait, és részletesen elemzi a legfontosabb tanuló rendszer architektúrákat. A tárgy a gépi tanulást egységes valószínűségi keretbe helyezve vizsgálja, amelynek során érinti a matematikai, filozófiai és programozási aspektusokat is. Az elméleti alapok bemutatásán túl a tárgy célja, hogy fejlessze a gyakorlati problémamegoldó készséget. Mindezt az egységes tárgyalásmód alkalmazásával és komplex alkalmazási példák bemutatásával éri el. A tárgy keretében elsajátított módszerek megalapozásként és háttérként szolgálnak kutatási és fejlesztési feladatok megoldásához.
8. A tantárgy részletes tematikája Az előadások részletes tematikája:
  1. Bayesi valószínűségelméleti alapfogalmak. Valószínűség, prior, likelihood, posterior. Maximum likelihood (ML), maximum a posteriori (MAP), teljesen bayesi következtetés, modellátlagolás. A teljesen bayesi következtetés nehézségei (példák, mikor van analitikus megoldás). Konjugált priorok (példák, hol használjuk őket).
  2. Gépi tanulási alapfogalmak. Generatív és diszkriminatív modellek, diszkriminatív függvények a gépi tanulásban (példák). Bias-variancia dekompozíció, alultanulás, túltanulás, regularizáció. Gyakran használt veszteségfüggvények és regularizációs sémák valószínűségelméleti származtatása. Kiértékelés (CV, AUC, AUPR).
  3. Regresszió. Alapfeladat, a lineáris regresszió valószínűségi modellje, ML és MAP becslés, ezekre az analitikus formulák levezetése, a megoldás menete, numerikus szempontok. Teljesen bayesi következtetés. Nem lineáris kiterjesztések: bázisfüggvények alkalmazása,  gyakran használt bázisfüggvények.
  4. Klasszifikáció. Alapfeladat, a logisztikus regresszió valószínűségi modellje. Perceptron származtatása a Bayes-tétel felhasználásával, ML és MAP becslés, az iteratív formulák levezetése (szigmoid függvény, gradiens), a megoldás menete, numerikus szempontok.
  5. Neurális hálózatok. MLP architektúra, ML és MAP becslés, a backpropagation algoritmus levezetése. Neurális modellekben használt aktivációs függvények, a regularizáció módjai. Konvolúciós és visszacsatolt architektúrák, az ezekben használt rétegtípusok, példa alkalmazások.
  6. Optimalizáció neurális modellekben. Az optimalizáció nehézségei, analitikus és numerikus szempontok. Optimalizációs algoritmusok alapelvei (batch, momentum, adaptív learning rate, magasabb rendű módszerek). Nevezetes algoritmusok.
  7. Variációs módszerek. Közelítő bayesi következtetés, ELBO+KL dekompozíció, a variációs módszerek alapelve. BBVI, sztochasztikus gradiens-alapú optimalizáció. Reparametrizációs trükk, VAE. Adversarial training ötlete, GAN architektúrák alapelve.
  8. Kernel gépek. Alapötlet, a kernel trükk lényege, gyakran használt kernel függvények. Szupportvektor-gép, veszteségfüggvény (hinge loss) és regularizáció. A duális probléma levezetése a Lagrange-módszerrel. Geometriai interpretáció, maximális margó.
  9. Dimenzió-redukció. Főkomponens-analízis: alapötlet, veszteségfüggvény, minimalizálása a Lagrange-módszerrel. Geometriai interpretáció. Kernel PCA.
  10. EM algoritmus és klaszterezés. Maximum likelihood becslés nehézségei rejtett változók esetén. Az EM algoritmus levezetése. Gauss keverék-eloszlás, használata klaszterezésben. EM Gauss-keverékekre (az E- és M-lépések származtatása). K-means algoritmus. Spektrális klaszterezés alapötlete, a diszkrét Laplace-operátor tulajdonságai.
  11. MCMC. Az MCMC módszerek alapelve. Markov-láncok tulajdonságai. Az egyensúlyi eloszlás létezésének elégséges feltétele. Metropolis, Metropolis-Hastings algoritmus. Gibbs-mintavétel, konjugált priorok. Példa: bayesi lineáris regresszió Gibbs mintavétellel.
  12. Modellek kombinációja. Bootstrap, bagging, az átlagos hiba alakulása. Exponenciális loss tulajdonságai, összehasonlítása egyéb veszteségfüggvényekkel. Az exponenciális loss minimalizálása gyenge osztályozók lineáris kombinációjával. AdaBoost algoritmus.
  13. Aktív tanulás. A K-karú rabló probléma, exploration vs. exploitation tradeoff. Regret definíciója, ennek alakulása különböző stratégiák esetében. Thompson-mintavétel, UCB1 algoritmus, a felső korlát bizonyítása. MCTS algoritmus és modern kiterjesztései (AlphaZero).
  14. Federált tanulás. Alapötlet, kihívások. Nevezetes algoritmusok: federated averaging, FedProx. A federált tanulás valószínűségi megközelítései. Federált modellek kiértékelése

A gyakorlatok részletes tematikája:

  1. Bayesi gondolkodásmód. Maximum likelihood becslés, poszterior számítás konjugált modellekben.
  2. Lineáris modellek. Regresszió, klasszifikáció bayesi modelljei, poszterior és prediktív eloszlás kiszámítása, az implementáció numerikus stabilitása.
  3. Neurális hálózatok. MLP, konvolúciós hálózatok implementációja PyTorch/Tensorflow alapon, optimalizáció, prediktív teljesítmény kiértékelése.
  4. Variációs következtetés. Következtetés nem-konjugált modellekben, generatív modellezés variációs autoenkóderrel.
  5. MCMC. Gibbs-mintavétel hierarchikus modellekben, idősori elemzés, changepoint-modellek.
  6. Szupportvektor-gépek. Osztályozás szupportvektor-gépekkel, kernel-számítás, prediktív teljesítmény kiértékelése, hiperparaméter-optimalizáció keresztkiértékeléssel.
  7. Aktív/megerősítéses tanulás. K-karú rablók, következtetés Thompson-mintavétellel, UCB-típusú algoritmusokkal.
9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium) Előadás és gyakorlat.
10. Követelmények Szorgalmi időszakban: kéthetente gyakorlat teljesítése (jegyzőkönyv leadása).
Vizsgaidőszakban: szóbeli vizsga.
11. Pótlási lehetőségek Két jegyzőkönyv a pótlási hét végéig leadható.
13. Jegyzet, tankönyv, felhasználható irodalom

Elektronikus jegyzet.

Tankönyv: Bishop, Pattern Recognition and Machine Learning.
14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
Kontakt óra42
Félévközi készülés órákra28
Felkészülés zárthelyire 
Házi feladat elkészítése40
Kijelölt írásos tananyag elsajátítása 
Vizsgafelkészülés40
Összesen150
15. A tantárgy tematikáját kidolgozta Dr. Bolgár Bence Márton adjunktus, MIT
Idegen nyelvi részteljesítés követelményei Angol nyelven letett sikeres szóbeli vizsga: 2 nyelvi kredit.