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

Hasonló dokumentumok
I. LABOR -Mesterséges neuron

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

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

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

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

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

Neurális hálózatok bemutató

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

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

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

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

Intelligens orvosi műszerek VIMIA023

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

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

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

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

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

Az idegrendszeri memória modelljei

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

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

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

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

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

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

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

Tanulás az idegrendszerben

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

Megerősítéses tanulás

Google Summer of Code Project

Lineáris regressziós modellek 1

Deep Learning a gyakorlatban Python és LUA alapon Bevezetés

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

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

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

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

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

A RADARJELEK DETEKTÁLÁSA NEURÁLIS HÁLÓZAT ALKALMAZÁSÁVAL

Optikai karakterfelismerés

Pannon Egyetem Vegyészmérnöki és Anyagtudományok Doktori Iskola

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

AKTUÁTOR MODELLEK KIVÁLASZTÁSA ÉS OBJEKTÍV ÖSSZEHASONLÍTÁSA

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

BEKE ANDRÁS, FONETIKAI OSZTÁLY BESZÉDVIZSGÁLATOK GYAKORLATI ALKALMAZÁSA

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

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

Alap-ötlet: Karl Friedrich Gauss ( ) valószínűségszámítási háttér: Andrej Markov ( )

Intelligens Rendszerek Elmélete

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

Kódverifikáció gépi tanulással

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

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

Deep learning. bevezetés

VI. Magyar Földrajzi Konferencia

A TANTÁRGY ADATLAPJA

Statisztikai eljárások a mintafelismerésben és a gépi tanulásban

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

Stratégiák tanulása az agyban

Deep learning szoftverek

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

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

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

Tanulás Boltzmann gépekkel. Reiz Andrea

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

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

A neurális hálózatok alapjai

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

Fogalom értelmezések I.

Mesterséges Intelligencia Elektronikus Almanach. MI Almanach projektismertetı rendezvény április 29., BME, I. ép., IB.017., 9h-12h.

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

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...

The nontrivial extraction of implicit, previously unknown, and potentially useful information from data.

IV.7 MÓDSZER KIDOLGOZÁSA FELHASZNÁLÓI ADATOK VÉDELMÉRE MOBIL ALKALMAZÁSOK ESETÉN

Mesterséges intelligencia alapú regressziós tesztelés

Tisztelt Hallgatók! Jó tanulást kívánok, üdvözlettel: Kutor László

A MESTERSÉGES NEURONHÁLÓZATOK BEVEZETÉSE AZ OKTATÁSBA A GAMF-ON

Adatok ábrázolása, adattípusok

CARE. Biztonságos. otthonok idős embereknek CARE. Biztonságos otthonok idős embereknek Dr. Vajda Ferenc Egyetemi docens

Intelligens adatelemzés

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

Gépi tanulás a gyakorlatban. Bevezetés

"A tízezer mérföldes utazás is egyetlen lépéssel kezdődik."

x, x R, x rögzített esetén esemény. : ( ) x Valószínűségi Változó: Feltételes valószínűség: Teljes valószínűség Tétele: Bayes Tétel:

Az idegrendszeri memória modelljei

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

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

Pletykaalapú gépi tanulás teljesen elosztott környezetben

Least Squares becslés

Teljesen elosztott adatbányászat alprojekt

Mesterséges Intelligencia I.

A TANTÁRGY ADATLAPJA

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

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008

Konjugált gradiens módszer

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

Neurális hálózatok MATLAB programcsomagban

Fuzzy rendszerek és neurális hálózatok alkalmazása a diagnosztikában

egy szisztolikus példa

Principal Component Analysis

Egy csodálatos elme modellje

V. Félév Információs rendszerek tervezése Komplex információs rendszerek tervezése dr. Illyés László - adjunktus

Átírás:

Neurális hálózatok elméleti alapjai TULICS MIKLÓS GÁBRIEL TULICS@TMIT.BME.HU

Példa X (tanult órák száma, aludt órák száma) y (dolgozaton elért pontszám) (5, 8) 80 (3, 5) 78 (5, 1) 82 (10, 2) 93 (4, 4) 75 (6, 6) 67 (1, 7) 90 Felügyelt tanulás A modellt úgy tanítjuk, hogy a bemeneti értékekre ismerjük a kimeneti címkéket Regressziós probléma A kimenet folyamatos ->Supervised regression 0-30 pont -> 1 30-50 pont-> 2 50-70 pont -> 3 70 90 pont -> 4 90-100 pont -> 5 Osztályozási probléma NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 2

Lehetséges csoportosítások A célváltozó címkéje alapján: ellenőrzött (felügyelt) osztályozók (supervised classifier): ahol a művelet végrehajtásában ismert tematikájú tananyagot használunk fel a döntést reprezentáló eljárás paramétereinek meghatározásához ellenőrizetlen (nem felügyelt) osztályozók (unsupervised classifier): ahol az eljárások az adatok belső sajátosságai alapján képezik a csoportokat és sorolják be az ismeretlen elemeket. VAGY egyszerű osztályozók (pl. legkisebb távolság-módszer, Box-módszer) statisztikai osztályozók (pl. maximum likelihood eljárás, Bayes-döntés) mesterséges intelligencián alapuló (pl. neurális hálózatos) osztályozók. NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 3

Gépi tanulást, osztályozás Neurális hálózatok (artificial neural network, ANN) Rejtett Markov-modellek (hidden Markov model, HMM) Szupport vektor gépek (Support Vector Machines, SVM) A neurális hálózatok előnyei közé tartozik, hogy jobban modelleznek nemlineáris feladatokat. NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 4

Definíció Neurális hálónak nevezzük azt a hardver vagy szoftver alapú, párhuzamos elosztott működésre képes információfeldolgozó eszközt, amely azonos, vagy hasonló típusú, lokális feldolgozást végző műveleti elemek összekapcsolt rendszeréből áll, rendelkezik tanulási algoritmussal és előhívási algoritmussal NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 5

A neurális hálók működése tipikusan két fázisból áll. 1. Tanulási fázis: a hálózatba eltároljuk a megkívánt információfeldolgozó eljárást (tanulási fázis) lassú, sikertelen tanulási szakaszokat is hordozhat 2. Előhívási fázis: a tárolt eljárás felhasználásával végezzük el az információfeldolgozást. gyors feldolgozás A két fázis rendszerint időben szétválik, bizonyos adaptív rendszerek az információ előhívási ciklusban is módosíthatják paramétereiket, tanulhatnak. NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 6

Nézzük meg az adatokat! X (tanult órák száma, aludt órák száma) y (dolgozaton elért pontszám) (5, 8) 80 (3, 5) 78 (5, 1) 82 (10, 2) 93 (4, 4) 75 (6, 6) 67 (1, 7) 90 Bemeneteket órában adjuk meg, kimenetünk egy pontszám (1-től 100-ig) Az adatainkat ezért skálázni kell [0,1] közé vagy standard normális eloszlásúra 0 várható értékkel, 1 szórásnégyzettel Skálázás: xi norm = xi min(x) ; max X min(x) X scaled = X ; y max(x) scaled = Standardizálás i x stand = xi μ x σ x y max(y) Input Stand Norm 0-1,3361 0 1-0,801 0,2 2-0,267 0,4 3 0,2672 0,6 4 0,801 0,8 5 1,336 1 NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 7

Feed forward neurális háló Neuronok Aktivációs függvényű műveletet hajt végre Aludt órák száma Szinapszisok a bemenetükön lévő értéket egy súllyal szorozzák meg y Bemeneti réteg Rejtett rétegek Kimeneti réteg NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 8

y(s) y(s) y(s) Aktivációs függvények /1 2 Lépcsőfüggvény 1, s > 0 y = ቊ 1, s 0 1 0-2 -1.5-1 -0.5 0 0.5 1 1.5 2-1 -2 s Telítéses lineáris függvény 1, s > 1 y = ቐs, 1 s 1 1, s 1 2 1 0-2 -1-1 0 1 2-2 s Tangens hiberbolikusz függvény (K=2) y = 1 e Ks 1 + e Ks ; K > 0 1.5 0.5-3 -2-1 -0.5 0 1 2 3-1.5 s NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 9

y(s) y(s) Aktivációs függvények /2 1.5 Szigmoid függvény y = 1 1 + e Ks ; K > 0 0 1 0.5-3 -1 1 3 s 6 ReLu (Rectifier) y = max(0, s) 5 4 3 2 1 0-5 -4-3 -2-1 0 1 2 3 4 5 s NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 10

Forward propagation z (2) a (2) z (2) = XW (1) (1) a (2) = f(z 2 ) z (3) z (3) = a (2) W (2) y = f(z (3) ) (2) (3) (4) X W (1) W (2) Nem fog nekünk jó pontszámokat jósolni a tanult/aludt órák száma alapján. Tanítani kell a hálózatot! (Tanítás == költségfüggvény minimalizálás) NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 11

Gradient Descent Meg kell határoznunk, hogy az előrejelzett eredményeink mennyire rosszak -> létrehozunk egy költségfüggvényt. Ez a költségfüggvény minél kisebb, annál jobb nekünk. J = (y y) 2 A rejtett rétegeket számát és a neuronjaink számát menet közben nem tudjuk változtatni. A súlyaink az elején véletlen számok, utána azokat változtathatjuk! NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 12

J Dimenzionalizás problémája A hipotézis: A súlyoknak van olyan kombinációja amely minimalizálja a költségfüggvényt. Miért nem próbáljuk ki az összes lehetséges súly kombinációját (brute force) az optimális kombináció megtalálásához? A nyertes súly! W Ha egy súlyérték meghatározása (1000 különböző súly kipróbálása) ~ 0,5 mp Két súlyérték párhuzamos megtalálása (1000*1000 különböző súly kipróbálása) ~ 50 mp Három súlyérték párhuzamos megtalálása (1000*1000*1000 különböző súly kipróbálása) ~ 11 óra NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 13

Jó lenne tudni, hogy merre csökken a költségfüggvény és csak arra keresni (növelni vagy csökkenteni) a súlyértéket z (2) = XW (1) a (2) = f(z 2 ) z (3) = a (2) W (2) y = f(z (3) ) (1) (2) (3) (4) J = (y f(z (3) ) ) 2 J = (y f(a (2) W (2) ) ) 2 J = (y f(f(z 2 ) W (2) ) ) 2 J = (y y) 2 (5) Nagyobb lépéseket is tehetünk lefelé és megállunk, amikor költségfüggvény nem csökken tovább. Ezt nevezzük Gradient Descent-nek. W J = (y f(f(xw (1) ) W (2) ) ) 2 Azért parciális derivált, mert egyszerre csak egy irány mentén nézzük a változást. Ha a derivált értéke pozitív akkor a költségfüggvény felfelé halad, ha negatív, akkor lefelé. NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 14

Probléma lehet J Lokális minimum Globális minimum W NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 15

Backpropagation W (1) 2x3 as W (2) 3x1 es W =? W (1) = W(1) 11 W (1) 12 W (1) 13 W (1) 21 W (1) 22 W (1) 33 W (1) = W 11 (1) W 21 (1) W 12 (1) W 22 (1) W 13 (1) W 23 (1) W (2) = W (2) 11 W (2) 21 W (2) 31 W (2) = W 11 (2) W 21 (2) W 31 (2) NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 16

J = (y f(f(xw (1) ) W (2) ) ) 2 J = (y y) 2 W (2) : σ(y y)2 = W (2) W (2) W 2 = y y 2 W 2 W 2 = 2 y y y y = f(z (3) ) (4) W 2 W 2 = 2 y y y z 3 z 3 W 2 NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 17

W 2 = 2 y y y z 3 z 3 W 2 W 2 = 2 y y f (z 3 ) z 3 W 2 Aktivációs függvény deriváltja A szinapszisok aktivitása W 2 = 2 y y f (z 3 ) (a (2) ) T z (3) = a (2) W (2) (3) NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 18

W (1) : σ(y y)2 = W (1) W (1) W 1 = y y 2 W 1 W 1 = 2 y y y W 1 W 2 = 2 y y f (z 3 ) (a (2) ) T W 1 = 2 y y y z 3 z 3 W 1 W 1 = 2 y y f (z 3 ) z 3 W 1 W 1 = XT 2 y y f z 3 W 2 T f (z 2 ) NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 19

Oké, de hogyan változtassuk a két súlymátrixot? Ha a derivált értékeket hozzáadjuk az eredeti súlyértékekhez, a költségfüggvényünk növekedni fog. Ha viszont kivonjuk őket, akkor a költségfüggvény csökken! W 1 = W 1 skalár W 2 = W 2 skalár W 1 W 2 Learning rate NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 20

Kitekintés / Mitől deep learning? Gépi tanuló algoritmusok struktúrált összessége Rendszerint több rejtett réteg Az adatok különböző szintű absztrakciója Néhány tipikus háló réteg: Előrecsatolt rétegek (Fully Connected, FC) Osztályozási és regressziós feladatokra Konvolúciós rétegek (Convolutional Neural Net, CNN) Jellemző tanulás: feature extraction vs feature learning 1D, 2D és 3D konvolúció Rekurrens rétegek (Long Short-Term Memory, LSTM) Időbeliség modellezésére NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 21

Kitekintés / Legismesmertebb kutatók Geoffrey Hinton Emeritus Professor of Computer Science, University of Toronto & Engineering Fellow, Google Inc. machine learning, neural networks, artificial intelligence, cognitive science, computer science Learning internal representations by error-propagation (1986) David E Rumelhart, Geoffrey E Hinton, Ronald J Williams Yann LeCun Director of AI Research at Facebook & Silver Professor at the Courant Institute, New York University AI, machine learning, computer vision, robotics, image compression Gradient-based learning applied to document recognition (1998) Yann LeCun, Léon Bottou, Yoshua Bengio, Patrick Haffner Yosua Bengio Professor, U. Montreal (Computer Sc. & Op. Res.), MILA, CIFAR, CRM, REPARTI, GRSNC Machine learning, deep learning, artificial intelligence NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 22

Kitekintés / Keretrendszerek Keras Python alapú, Theano és TensorFlow backend, könnyen olvasható kód, gyors fejlesztés, nem olyan mély szintű. (Google) Tensorflow Elosztott tanításokhoz, mélyebben bele lehet nyúlni az architektúrába amit a Keras elfed, erős marketing és Google támogatás. Torch7 LUA, binárisra fordítható, leggyorsabb, Jól olvasható kód, Tudományos életben standard. (Facebook, Twitter, NVidia, IBM, IDIAP, stb.) NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 23

Összefoglalás Neurális háló definíciója, lehetséges besorolása a gépi tanulás palettáján Adatok skálázása/normálása közötti különbség Feed forward neurális háló alkotórészei Aktivációs függvények Forward propagation Gradient Descent Backpropagation Kitekintés a DNN világába NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 24

Köszönöm a figyelmet! Tulics Miklós Gábriel tulics@tmit.bme.hu NEURÁLIS HÁLÓZATOK ELMÉLETI ALAPJAI 25