Deep Learning a gyakorlatban Python és LUA alapon Tanítás: alap tippek és trükkök

Hasonló dokumentumok
Deep Learning a gyakorlatban Python és LUA alapon Bevezetés

Deep Learning a gyakorlatban Python és LUA alapon Felhasználói viselkedés modellezés

Neurális hálózatok elméleti alapjai TULICS MIKLÓS GÁBRIEL

Bevezetés a mesterséges intelligencia mély tanulás eszközrendszerébe

Deep Learning a gyakorlatban Python és LUA alapon Hogyan tovább?

A kibontakozó új hajtóerő a mesterséges intelligencia

Deep learning szoftverek

Konvolúciós neurális hálózatok (CNN)

Visszacsatolt (mély) neurális hálózatok

NEURONHÁLÓK ÉS TANÍTÁSUK A BACKPROPAGATION ALGORITMUSSAL. A tananyag az EFOP pályázat támogatásával készült.

Google Summer of Code Project

Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs rendszerek Tanszék. Neurális hálók. Pataki Béla

Gépi tanulás a gyakorlatban. Lineáris regresszió

Aradi Bernadett. 2017/18 ősz. TensorFlow konvolúciós hálózatokhoz 2017/18 ősz 1 / 11

Neurális hálózatok.... a gyakorlatban

Osztályozási feladatok képdiagnosztikában. Orvosi képdiagnosztikai 2017 ősz

Intelligens Rendszerek Gyakorlata. Neurális hálózatok I.

Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs rendszerek Tanszék. Neurális hálók 2. Pataki Béla

Neurális hálók tanítása során alkalmazott optimalizáció

Tanulás az idegrendszerben. Structure Dynamics Implementation Algorithm Computation - Function

NEURÁLIS HÁLÓZATOK 1. eloadás 1

Neurális hálózatok bemutató

III.6. MAP REDUCE ELVŰ ELOSZTOTT FELDOLGOZÁSI ALGORITMUSOK ÉS TESZTKÖRNYEZET KIDOLGOZÁSA ADATBÁNYÁSZATI FELADATOK VÉGREHAJTÁSÁHOZ

A neurális hálózatok tanításának alapjai II.: Módszerek a túltanulás elkerülésére. Szoldán Péter

Deep Learning: Mélyhálós Tanulás

Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Távközlési és Médiainformatikai Tanszék.

Gépi tanulás a gyakorlatban. Kiértékelés és Klaszterezés

KÁRTÉKONY NÖVÉNYEK AZONOSÍTÁSA

Intelligens orvosi műszerek VIMIA023

Deep learning. bevezetés

Intelligens Rendszerek Elmélete. Versengéses és önszervező tanulás neurális hálózatokban

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban

BIG DATA ÉS GÉPI TANULÁS KÖRNYEZET AZ MTA CLOUD-ON KACSUK PÉTER, NAGY ENIKŐ, PINTYE ISTVÁN, HAJNAL ÁKOS, LOVAS RÓBERT

Stratégiák tanulása az agyban

Teljesen elosztott adatbányászat alprojekt

Mesterséges neurális hálók modelljének javítása valószínűségen alapuló módszerrel

Megerősítéses tanulás

Tanulás tanuló gépek tanuló algoritmusok mesterséges neurális hálózatok

Tanulás az idegrendszerben. Structure Dynamics Implementation Algorithm Computation - Function

Gépi tanulás. Hány tanítómintára van szükség? VKH. Pataki Béla (Bolgár Bence)

I. LABOR -Mesterséges neuron

Mesterséges neurális hálózatok II. - A felügyelt tanítás paraméterei, gyorsító megoldásai - Versengéses tanulás

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363

Mit látnak a robotok? Bányai Mihály Matemorfózis, 2017.

Tanulás az idegrendszerben

Intelligens Rendszerek Elmélete

Hibadetektáló rendszer légtechnikai berendezések számára

Videókártya - CUDA kompatibilitás: CUDA weboldal: Példaterületek:

AliROOT szimulációk GPU alapokon

Mély neuronhálók alkalmazása és optimalizálása

Kovács Ernő 1, Füvesi Viktor 2

Számítógépes képelemzés 7. előadás. Dr. Balázs Péter SZTE, Képfeldolgozás és Számítógépes Grafika Tanszék

Keresés képi jellemzők alapján. Dr. Balázs Péter SZTE, Képfeldolgozás és Számítógépes Grafika Tanszék

Gépi tanulás a Rapidminer programmal. Stubendek Attila

KONVOLÚCIÓS NEURONHÁLÓK. A tananyag az EFOP pályázat támogatásával készült.

[1000 ; 0] 7 [1000 ; 3000]

Neurális Hálók. és a Funkcionális Programozás. Berényi Dániel Wigner GPU Labor

FELÜGYELT ÉS MEGERŐSÍTÉSES TANULÓ RENDSZEREK FEJLESZTÉSE

A neurális hálózatok alapjai

Győri HPC kutatások és alkalmazások

Generáljunk először is mintákat a függvényből. Ezzel fogunk majd később tanítani.

OPENCV TELEPÍTÉSE SZÁMÍTÓGÉPES LÁTÁS ÉS KÉPFELDOLGOZÁS. Tanács Attila Képfeldolgozás és Számítógépes Grafika Tanszék Szegedi Tudományegyetem

Neurális hálózatok MATLAB programcsomagban

Takács Árpád K+F irányok

Mély konvolúciós neurális hálózatok. Hadházi Dániel BME IE 338

Feladat. Bemenő adatok. Bemenő adatfájlok elvárt formája. Berezvai Dániel 1. beadandó/4. feladat április 13. Például (bemenet/pelda.

BESZÉDPARAMÉTEREK ELEMZÉSE ÉS PREDIKCIÓJA MÉLY NEURÁLIS HÁLÓZATOKKAL

A TensorFlow rendszer és a mély tanulás. TensorFlow system and deep learning

Babeş Bolyai Tudományegyetem, Kolozsvár Matematika és Informatika Kar Magyar Matematika és Informatika Intézet

GEOSTATISZTIKA II. Geográfus MSc szak. 2019/2020 I. félév TANTÁRGYI KOMMUNIKÁCIÓS DOSSZIÉ

Képfeldolgozás haladóknak Lovag Tamás Novák Gábor 2011

Adatbányászati szemelvények MapReduce környezetben

KOOPERÁCIÓ ÉS GÉPI TANULÁS LABORATÓRIUM

Regresszió. Csorba János. Nagyméretű adathalmazok kezelése március 31.

Biológiai és mesterséges neurális hálózatok

NEURONHÁLÓS HANGTÖMÖRÍTÉS. Áfra Attila Tamás

Bodó / Csató / Gaskó / Sulyok / Simon október 9. Matematika és Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár

Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1

6. Előadás. Vereb György, DE OEC BSI, október 12.

Eredmények kiértékelése

Függvények ábrázolása

TARTALOMJEGYZÉK. TARTALOMJEGYZÉK...vii ELŐSZÓ... xiii BEVEZETÉS A lágy számításról A könyv célkitűzése és felépítése...

A neurális hálók logisztikai alkalmazhatósága

Új technológiák az Ubuntuban. Új fejlesztések Amik egy éven belül jelenhetnek meg az Ubuntuban

Kollektív tanulás milliós hálózatokban. Jelasity Márk

Technológia funkciók Számláló, PWM

Osztályozás, regresszió. Nagyméretű adathalmazok kezelése Tatai Márton

Teljesen elosztott adatbányászat pletyka algoritmusokkal. Jelasity Márk Ormándi Róbert, Hegedűs István

Random Forests - Véletlen erdők

KOOPERATÍ V E S TANULO RENDSZEREK HA ZÍ FELADAT - LÍFEGAME

Szabó Attila Dániel. Valósidejű intrúder felismerés UAV környezetben

Modellkiválasztás és struktúrák tanulása

Bevezetés a neurális számításokba Analóg processzortömbök,

Modellezés és szimuláció. Szatmári József SZTE Természeti Földrajzi és Geoinformatikai Tanszék

SAT probléma kielégíthetőségének vizsgálata. masszív parallel. mesterséges neurális hálózat alkalmazásával

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363

Wigner 115. A Felhők felett. Pető Gábor MTA Wigner FK, Adatközpont november 15.

TEXTÚRA ANALÍZIS VIZSGÁLATOK LEHETŐSÉGEI A RADIOLÓGIÁBAN

Programozás alapjai gyakorlat. 4. gyakorlat Konstansok, tömbök, stringek

SZOFTVEREK A SORBANÁLLÁSI ELMÉLET OKTATÁSÁBAN

Átírás:

Gyires-Tóth Bálint Deep Learning a gyakorlatban Python és LUA alapon Tanítás: alap tippek és trükkök http://smartlab.tmit.bme.hu

Deep Learning Híradó Hírek az elmúlt 168 órából

Deep Learning Híradó Google What-If https://pair-code.github.io/what-if-tool/ Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 3/36

Jogi nyilatkozat Jelen előadás diái a Deep Learning a gyakorlatban Python és LUA alapon című tantárgyhoz készültek és letölthetők a http://smartlab.tmit.bme.hu honlapról. A diák nem helyettesítik az előadáson való részvételt, csupán emlékeztetőül szolgálnak. Az előadás diái a szerzői jog védelme alatt állnak. Az előadás diáinak vagy bármilyen részének újra felhasználása, terjesztése, megjelenítése csak a szerző írásbeli beleegyezése esetén megengedett. Ez alól kivétel, mely diákon külső forrás külön fel van tüntetve. Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 4/30

Vizualizáció http://playground.tensorflow.org/ Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 5/30

Alapvető problémák Hatalmas hiperparaméter tér Bias-variance dilemma Nagyon lassan vagy nem konvergál Adatok standardizálása és min-max skálázás Mini-batch learning Más költségfüggvény és optimizációs algoritmus Tanítóadatok összekeverése Túltanulás train-validation-test Több adat Early stoping Regularizáció: Momentum L1 és L2 (Weight decay) Dropout Stb. Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 6/30

Bias-variance dilemma Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 7/30

Bias-variance dilemma Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 8/30

Tanító-, validációs- és tesztadatok Adatok szétszedés 3 részre: Tanító, validációs és tesztadatok. Saját függvénnyel vagy a sklearn.cross_validation.train_test_split függvényt 2x meghívni. Adatok összekeverése segíti a tanulást: Két egymást követő minta minél távolabb legyen egymástól (pl. külön osztályból). Legyen nagy a hiba a többi tanítómintához képest. Véletlenszerű. Early stoping after patience epochs Ha a validációs hiba adott lépésig nem csökken, akkor leállítjuk a tanítást és visszatöltjük a legjobb modellt. Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 9/30

Tanító-validációs-teszt adatok I. Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 10/30

Tanító-validációs-teszt adatok III. 50-30-20, 70-20-10, 80-15-5 Keresztvalidáció K-fold Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 11/30

Tanító-validációs-teszt adatok II. Túltanítás Neumann János: Négy paraméterrel még egy elefántot is le lehet írni, egy ötödikkel pedig el lehet érni, hogy az ormányát is csóválja. Forráskód: http://www.johndcook.com/blog/2011/06/21/how-to-fit-an-elephant/ Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 12/30

Standardizálás I. Eltolás kivonása és szórással való osztás. Gyakorlatban: várható érték kivonása és szórással való osztás. Csak a tanító adatokra!!! Max>1!!! Feature szerint sklearn.preprocessing.standardscaler vagy: Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 13/30

Standardizálás II. Miért van rá szükség Súlyok inicializálása: azonos nagyságrendben legyen, egyébként szaturáció lehetséges. A neuronokhoz tartozó hipersíkok: Irányát a súlyok határozzák meg Eltolást a bias határozza meg Kis bias inicializáláskor jó, ha az adat is közel van az origóhoz. Lehetne a súlyokat és a bias-t is a bemenethez illeszteni, de sokkal bonyolultabb. Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 14/30

Standardizálás III. Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 15/30

Min-max skálázás Kimenet átskálázása Kimeneti aktivációs függvény sigmoid vagy tanh Harmóniában a súlyokkal és a bemenettel Probléma: outlier-ek. Csak a tanító adatokra!!! sklearn.preprocessing.standardscaler vagy: Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 16/30

Költségfüggvények és optimizáció Leggyakrabban használt költségfüggvények Regresszió: MSE (Mean Squared Error) Osztályozás: Cross-entropy Több költségfüggvény kombinálása a kimeneten. Leggyakrabban használt optimizációs algoritmusok SGD (Stochastic Gradient Descent) L-BFGS AdaDelta AdaGrad ADAM RMSProp Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 17/30

Momentum módszer Segít elkerülni a súly fluktuációt és kijutni a lokális minimumokból. 0.5-0.99 közötti érték. Sebessége lesz a súlyfrissítésnek, amerre a gradiens halad. Újabb változata: Nesterov momentum. Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 18/30

Névnek a NEPTUN kódodat add meg! https://kahoot.it/

L1 és L2 regularizáció L1 regularizáció L2 regularizáció (weight decay) Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 20/30

Dropout I. Hinton prof. egyik AHA pillanata: banki ügyintézők. Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 21/30

Dropout II. Az egyes neuronok eldobásának valószínűsége általában 30-50%. Miért működhet? Olyan, mintha több hálót tanítanánk, és azok aggregált becslését átlagolnánk. Így kerüli el a túltanítást. https://www.cs.toronto.edu/~hinton/absps/jmlrdrop out.pdf Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 22/30

Software I Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 23/53

Software II TensorFlow (Google) Theano 2.0 azonos tulajdonságokkal (negatívumokkal), Elosztott tanításokhoz, Fejlett vizualizáció, Mobil implementáció, Erős marketing és Google támogatás. Keras (Fchollet @Google) Python, Theano és TensorFlow backend, TensorFlow része, Nagyon népszerű, Könnyen olvasható kód, gyors fejlesztés, Kaggle.com-on legtöbbet használt. Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 24/53

Software III Torch7, PyTorch (Facebook, Twitter, NVidia, IBM, IDIAP, stb.) LUA, binárisra fordítható, leggyorsabb, Több szintű megvalósítás (C, LUA alacsony és magas szinten, Python), Jól olvasható kód, Mobil implementáció, Tudományos életben standard. Theano (University of Montreal) Python Yosuah Bengio, folyamatos fejlesztés, Szimbolikus nyelv, fordítást igényel, Debuggolni nehézkes, Nehezebben olvasható kód, Tudományos életben standard. Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 25/53

Software IV Caffe (University of California, Berkeley) C++, képfelismerés Kaldi C++, beszédfelismerés 2017 augusztustól TensorFlow integráció Nervana (Intel), Lasagne, Chainer, Microsoft CNTK, Matlab Deep Learning Toolbox, stb. Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 26/53

Szoftverkörnyezet telepítés GPU: NVidia videókártya driver CUDA, cudnn pip install tensorflow-gpu pip install keras CPU: pip install tensorflow pip install keras Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 27/53

Kis házi feladat 2. A Numpy alapú neurális hálózat kódjába valósítsd meg a következő funkciókat: 1. Momentum 2. L1 regularizáció 3. L2 regularizáció 4. Mini-batch 16-os batch mérettel A forráskód új részeit # HF2 start eljárás és # HF2 end eljárás (eljárás=momentum, l1reg, l2reg, mini-batch) kommentek közé tedd és kommentbe írd bele, hogy pontosan mit-miért csináltál. Határidő: 2018. október 2. Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 28/30

Deep Learning Híradó Hírek az elmúlt 168 órából

Hamiltonian descent https://arxiv.org/abs/1809.05042 Gyires-Tóth Bálint: Deep Learning a gyakorlatban Python és LUA alapon 9/18/2018 30/30

Köszönöm a figyelmet! toth.b@tmit.bme.hu http://smartlab.tmit.bme.hu