Gépi tanulás

A tantárgy angol neve: Machine Learning

Adatlap utolsó módosítása: 2018. április 27.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar
Mérnökinformatikus szak
Intelligens rendszerek mellékspecializáció
MSc képzés
Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIMIMA05 2 2/1/0/v 4  
3. A tantárgyfelelős személy és tanszék Dr. Bolgár Bence Márton,
4. A tantárgy előadója

Dr. Pataki Béla egyetemi docens, Méréstechnika és Információs Rendszerek Tanszék

Dr. Bolgár Bence tudományos segédmunkatárs,Méréstechnika és Információs Rendszerek Tanszék

 

5. A tantárgy az alábbi témakörök ismeretére épít Mesterséges intelligencia
6. Előtanulmányi rend
Kötelező:
NEM ( TárgyEredmény( "BMEVIMIM136" , "jegy" , _ ) >= 2
VAGY
TárgyEredmény("BMEVIMIM136", "FELVETEL", AktualisFelev()) > 0)

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

A kötelező előtanulmányi rendek grafikus formában itt láthatók.

Ajánlott:
Mesterséges intelligencia
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 keretbe helyezve, mint a környezetből származó információ kinyerésére és feldolgozására alkalmas megközelítést tekinti. A tanuló eljárásokat és architektúrákat azzal az igénnyel mutatja be, hogy elősegítse olyan komplex intelligens információfeldolgozási feladatok megoldását, melyeknél alapkövetelmény a megoldás folyamatos javítása a környezetből származó egyre több információ felhasználásával, valamint a környezet változásaihoz való alkalmazkodás, az adaptálódás. Az elméleti alapok bemutatásán túl a tárgy célja, hogy fejlessze a tudatos 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

1.ea. Bevezetés (2 óra elmélet/előadás):
A tanulás fogalma, tanuló gépek, tanulás intelligens rendszerekben. A legfontosabb tudásalapú architektúrák: döntési fák, neuronhálók, tudásalapú hibrid intelligens rendszerek. A minták alapján történő gépi tanulás fajtái. Felügyelt és felügyelet nélküli tanulás, félig felügyelt tanulás, megerősítéses tanulás. Bevezető alkalmazási példák: Szövegfeldolgozás, képfeldolgozás. Rendszermodellezés és szabályozás nem-lineáris, dinamikus rendszerekben. Előrejelzési feladatok. Megerősítéses tanulás alkalmazása.

2.ea. A gyakorlati feladatmegoldás problémái, alkalmazások (2 óra elmélet/előadás):
Adatelőkészítés, normalizálás, dimenzióredukció (PCA). Zajos adatok kezelése. Hiányzó adatok problémája. Az EM algoritmus és szerepe az adatelőkészítésben. Kilógó adatok. Demonstratív alkalmazási példa: Kis- és közepes vállalatok energiafogyasztási adatsorainak feldolgozása.

1. Gyakorlat: szimulált + valós
          A. kiugró/kilógó értékek (outlier) szűrése,
          B. hiányzó adatok pótlása valós adatokon (Julia, R, Matlab)

3.ea. A gépi tanulás elméleti megalapozása (2 óra elmélet/előadás):
A tanulás számítási elmélete, valószínűleg közelítőleg helyes (angol rövidítéssel PAC) tanuló algoritmusok. Statisztikai tanuláselmélet (angol röv. SLT). A tanuló eljárások minősítése. A VC-dimenzió fogalma. A tapasztalati hiba minimalizálás szerepe, ERM elv. A tanuló eljárások hibájának (általánosító képesség) felső korlátjai. Strukturális kockázatminimalizálás (angol röv. SRM) elve.

4.ea. Ellenőrzött tanulású architektúrák/1 (2 óra elmélet/előadás):
Döntési fák. Információnyereség alapú döntési fa építés. Leállási feltételek. Pontosság-komplexitás kompromisszumon alapuló nyesés. Demonstratív alkalmazási példa: Diagnosztikai döntéstámogatás (pl. orvosi diagnosztika).

2. Gyakorlat: szimulált+valós probléma tanulása döntési fával (Julia, R, Matlab)

5-6.ea. Ellenőrzött tanulású architektúrák/2 (4 óra elmélet/előadás):
Klasszikus neuronhálók (MLP, bázisfüggvényes hálók). A tanuló eljárások, mint optimalizáló algoritmusok. Tanulás és paraméterbecslés. Demonstratív alkalmazási példa: Vezető nélkül működő jármű kormányozásának tanítása.

3. Gyakorlat : Regressziós/osztályozási feladat megoldása neuronhálóval (MLP) (Julia, R, Matlab)

7.-8.ea. Kernel gépek és változataik (4 óra elmélet/előadás) ):
A kernel gépek származtatása, a kernel trükk és jelentősége. Szupport vektor gépek (SVM) és változataik. A klasszikus hálók és a kernel gépek kapcsolata. A teljesítőképesség korlátai nagy¬margójú osztályozási feladatoknál. A VC-dimenzió felső korlátja. Az SVM és az SRM elv kapcsolata. Gauss folyamatok. Demonstratív alkalmazási példa: Tőzsdei idősorok előrejelzése SVR eszközzel.

4. Gyakorlat : szimulált és valós osztályozási probléma tanulása SVM-el és döntési fával (Julia, R, Matlab)

9.-10. Megerősítéses tanulás/1 (4 óra elmélet/előadás):
A jutalom szerepe a tanulásban. Passzív megerősítéses tanulás, adaptív dinamikus programozás, időbeli különbség (TD) tanulás. Aktív megerősítéses tanulás. Q tanulás. Demonstratív alkalmazási példa: Ismeretlen környezetben mozgó robot navigációjának tanítása.

5. Gyakorlat :
              A. variáns: valós probléma tanulása aktív/passzív/Q tanulással.
              B. variáns: Aktív és Q-tanulás összehasonlítása valós feladatnál (Julia, R, Matlab)

11.-12. Nemellenőrzött tanulás (4 óra elmélet/előadás):
Alapfeladatok: főkomponens analízis (PCA), független komponens analízis (ICA). Elméleti alapok. A PCA feladat, mint mintákból történő tanuló eljárás, PCA hálók. Kernel PCA. A független komponens analízis matematikai alapjai. Az ICA megvalósítása tanuló rendszerekkel. k-means algoritmus, klaszterezés. Demonstratív alkalmazási példa: Egy helyiségben egyszerre több ember beszél, a keletkező kevert zaj szétválasztása ICA módszerrel (koktélparti probléma).

6. Gyakorlat : szimulált + valós klaszterezési probléma tanulása (Julia, R, Matlab)

13-14. Tanulás kooperatív rendszerekben. (4 óra elmélet/előadás):
Együttműködés és versengés. Moduláris tanuló rendszerek. Pontos és különböző szakértők kooperációja. Erős és gyenge tanulás. Boosting. Demonstratív alkalmazási példa: Fizikai rendszerek modellezése (konkrét példa: acélkonverter modellezése MOE módszerrel).

7. Gyakorlat : szimulált + valós osztályozási/regressziós probléma tanulása MOE módszerrel vagy boosting elv alapján. (Julia, R, Matlab)

9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium) A tárgy elméleti része előadás formájában kerül leadásra. Gyakorlati feladatok, a félév során az előadásokon, illetve a kapcsolódó labor keretein kerül sor.
10. Követelmények

a. A szorgalmi időszakban:
Az előadáshoz kapcsolódóan kéthetente kisfeladatot kell megoldani és határidőre benyújtani. A félévközi aláírás megszerzésének a feltétele a hét kisfeladatból legalább négynek határidőre, elégséges szinten (a megszerezhető pontszén 40%-ának elérése) történő beadása.

b. A vizsgaidőszakban:
Írásbeli beugró után szóbeli vizsga. Az írásbeli beugró csak sikerült/sikertelen jellegű (küszöb a megszerezhető pontok 40%-a), amennyiben sikerült, akkor a vizsga szóbelin kialakuló eredményét már nem befolyásolja. A vizsgára bocsátás feltétele a félévközi aláírás megszerzése.

c. Osztályozás:
A vizsga osztályzata a félévközi feladat (40%) és a vizsgaeredmény (60%) alapján kerül megállapításra.

11. Pótlási lehetőségek A félévközi feladatok nem pótolhatók.
12. Konzultációs lehetőségek Megbeszélés szerint.
13. Jegyzet, tankönyv, felhasználható irodalom

A tárgy web-lapján közzétett előadási jegyzet, elektronikusan hozzáférhető ajánlott szak­iro­da­lom és kiegészítő információ, valamint web-es linkgyűjtemény.
A tárgy anyagának elsajátításához az alábbi könyvek is nagy segítséget adnak.

Altrichter Márta, Horváth Gábor, Pataki Béla, Strausz György, Takács Gábor, Valyon József: „Neurális hálózatok”, Panem, 2007.
Elektronikus formában (kibővítve): http://mialmanach.mit.bme.hu/neuralis/index

T. Mitchell: Machine Learning, McGraw-Hill 1997.
Stuart Russell és Peter Norvig: Mesterséges intelligencia korszerű megközelítésben, 2., átdolgozott kiadás, Panem Kiadó, Budapest, 2006
Elektronikus formában (kibővítve): http://mialmanach.mit.bme.hu/aima/index

Carl Edward Rasmussen, Chistopher K. I. Williams: Gaussian Processes for Machine Learning. The MIT Press, Cambridge, MA. 2006.
Olivier Chapelle, Bernhard Schölkopf, Alexander Zien: Semi-supervised Learning. The MIT Press, Cambridge, MA, 2006.

14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
Kontaktóra42
Készülés előadásra9
Készülés gyakorlatra
9
Kis házi feladat
28
Vizsgafelkészülés32
Összesen120
15. A tantárgy tematikáját kidolgozta

Dr. Horváth Gábor, Méréstechnika és Információs Rendszerek Tanszék
Dr. Pataki Béla, Méréstechnika és Információs Rendszerek Tanszék