Regresszió, Mesterséges neuronhálók márc. 2.

Slides:



Advertisements
Hasonló előadás
NEURONHÁLÓK.
Advertisements

Windows Virtualizáció
I. előadás.
Winnie the pooh & friends
Pac-Man játék tanulása Megerősítéses Tanulással Mesterséges Intelligencia algoritmusok tesztelése játékokon Gyenes Viktor Eötvös Loránd Tudományegyetem.
MI 2003/ A következőkben más megközelítés: nem közvetlenül az eloszlásokból indulunk ki, hanem a diszkriminancia függvényeket keressük. Legegyszerűbb:
Számold meg a fekete pontokat!
IRE 8 /38/ 1 Óbudai Egyetem, NIK Dr. Kutor László2011. TÁMOP – I ntelligens R endszerek E lmélete 8.
Számítástudományi módszerek a webes szolgáltatásokban Rácz Balázs október 20.
Bevezetés a gépi tanulásba február 16.. Mesterséges Intelligencia „A számítógépes tudományok egy ága, amely az intelligens viselkedés automatizálásával.
Modern többosztályos tanulók: Döntési fa, Véletlen erdő, Előrecsatolt többrétegű neuronháló, Support Vector Machine (SVM), Kernel „trükk”.
Gépi tanulási módszerek
Osztályozás -- KNN Példa alapú tanulás: 1 legközelebbi szomszéd, illetve K-legközelebbi szomszéd alapú osztályozó eljárások.
Szintaktikai elemzés március 1.. Gépi tanulás Osztályozási feladat: Adott egyedek egy halmaza és azok osztályba tartozási függvénye (tanító halmaz),
Véletlen logikai hálózatok. Bevezető Logikai változó: Bináris változó. Két lehetséges értéke van: 0 és 1, néha ±1 {σ 1, σ 2,..., σ N }, σ i : {0,1}, i.
Mesterséges neuronhálózatok
Szintézis Keresztes Péter, 2005 A GAJSKI-KUHN DIAGRAM Alapelv: Rendezzük a digitális- rendszerek leírásait célok és szintek szerint.
Ellenőrző kérdések a)Auto-indexing enabled b)Auto-indexing disabled c)Nem eldönthető 1.
PPKE ITK 2008/09 tanév 8. félév (tavaszi) Távközlő rendszerek forgalmi elemzése Tájékoztatás
Ittzés Zsigmond Budapest Airport IT Infrastruktúra manager
SZÁMÍTÓGÉP ARCHITEKTÚRÁK - 15 Németh Gábor. 2001Németh Gábor: Számítógép architektúrák 2 NEURÁLIS HÁLÓZATOK Három fő hajtóerő: 1.Az információ-technológia.
Textúra elemzés szupport vektor géppel
Ismétlő kérdések 1. Mennyi helyzeti energiát veszít a húgod, ha leejted őt valahonnan? Hegedül-e közben? 2. Számold ki az Einstein tétel segítségével a.
Ptol-1 Ptolemy Claudius, the great Greek mathematician lived and worked in the 2 nd century B.C. An important theorem about inscribed quadrilaterals.
Gépi tanulás Tanuló ágens, döntési fák, általános logikai leirások tanulása.
Többváltozós adatelemzés
Többváltozós adatelemzés
Belami beszámoló – Doménadaptációs alkalmazások. Problémafelvetés Felügyelt tanulás elvégzéséhez gyakran kevés jelölt adat áll rendelkezésre  doménadaptáció.
I. előadás.
MI 2003/ Mi lenne a b legjobb választása? Statisztikai eljárásoknál az un. Fisher féle lineáris diszkriminancia függvény adja a legjobb szétválasztási.
Slides for Quantum Computing and Communications – An Engineering Approach Chapter 7 Searching in an Unsorted Database Sándor Imre Ferenc Balázs.
PPKE ITK 2009/10 tanév 8. félév (tavaszi) Távközlő rendszerek forgalmi elemzése Tájékoztatás
Neurális hálók.
Szabadkai Műszaki Szakfőiskola 1. A neuron modellje a következő 3 elemből áll: 1. A szinapszisok halmaza amelyekkel a neuronok egymáshoz vannak kapcsolva.
A projekt az Európai Unió társfinanszírozásával, az Európa terv keretében valósul meg. Számítógép- architektúrák dr. Kovács György DE AVK GAIT.
Gépi tanulási módszerek
SZÁMÍTÓGÉP-ARCHITEKTÚRÁK – 15 NEURÁLIS HÁLÓZATOK Németh Gábor.
From eco-efficiency to sustainable production Maria Csutora Pietro Bertazzi The workshop is based on research done in the HU-0056 “Sustainable consumption,
Winnie the pooh & friends
Mesterséges Neurális Hálózatok 3. előadás
Ismétlés. "Man - a being in search of meaning." Plato Searching in an Unsorted Database.
„Tisztább kép” – együttműködési program Az új szintetikus drogok feltérképezéséért 2 nd European Workshop – ’Breaking the Drug Cycle’ project Budapest,
2009.IV.30.Argumentation techniques 1 Non-mirrorable argumentation techniques in English Analysis of theological texts aiming persuasion effects László.
1.Kanonikus felügyelt tanulási feladat definíciója (5p) 1.Input, output (1p) 2.Paraméterek (1p) 3.Hipotézisfüggvény (1p) 4.Hibafüggvény/költségfüggvény.
Tanulás az idegrendszerben Structure – Dynamics – Implementation – Algorithm – Computation - Function.
A BCD használata üzleti partnerek felkutatásához
“Tudásmegosztás és szervezeti problémamegoldás a mesterséges intelligencia korában” Levente Szabados Technológiai Igazgató.
Irányítás Menedzsment funkciók.
XDSL hálózatok tervezése 9. Előadás
Agyi elektródák felületmódosítása
FAZEKAS ANDRÁS ISTVÁN PhD c. egyetemi docens
A sas törénete… A bemutatót készítette: Mike
Polymer Theory Why are we looking at polymer theory?
A neuronhálók tanítása A backpropagation algoritmus
Túlfeszültség védelem a hálózaton
Konvolúciós neuronhálók
Mesterséges neuronhálók (Artificial neural networks, ANNs)
Mély neuronhálók (Deep neural networks)
Csurgalékvíz tisztítás
A mesterséges neuronhálók alapjai
Szűcs Imre - Dr. Pitlik László (OTKA T049013)
Dijkstra algoritmusa: legrövidebb utak
Dijkstra algoritmusa: legrövidebb utak
Dijkstra algoritmusa: legrövidebb utak
Neuronhálók és tanításuk a backpropagation algoritmussal
KONVOLÚCIÓS NEURONHÁLÓK
Visszacsatolt (rekurrens) neuronhálók
A perceptron neurális modell és tanítása
Algoritmusok és Adatszerkezetek I.
This table is avarage! Read instructions below!
Előadás másolata:

Regresszió, Mesterséges neuronhálók márc. 2.

Regresszió

Regresszió Felügyelt (induktív) tanulás: tanító halmaz alapján olyan modell tanulása ami korábban nem látott példákon is helyesen működik. Regresszió: felügyelt tanulási feladat, ahol folytonos értéket jelzünk előre (statisztika „regresszió analízise” hasonló technikákat használ, de más a cél)

Regresszió Alapterület (nm) Városrész Kor (év) Ár (M Ft) 60 Csillag-tér 32 8,3 120 Alsóváros 21 26,8 35 Tarján 38 5,5 70 Belváros ???

Regresszió Tanító adatbázis: {x, r} rϵR Kiértékelő függvény: „Négyzetes hiba”

Lineáris regresszió

Lineáris regresszió g(x |θ) = θx + θ0 gradiense 0 ha

Regressziós modellek Regressziós döntési fa: Belső csúcsok úa. mint osztályozásnál Leveleken vagy konstans vagy (különböző) tanult lineáris modellek

Regressziós SVM

Regressziós SVM ||w||2 a modell komplexitása ε a közelítés megengedett hibája C és ε is szabályozza az általánosítási készséget

Neuronhálók

Mesterséges neuronhálók artificial neural networks (ANN) Az információfeldolgozás a biológiai idegrendszer (pl. az emberi agy) működését próbálja utánozni Struktúra: nagyszámú, erősen összefüggő, együttműködő processzáló elem (idegsejtek, neuronok) Cél: az emberekhez hasonlóan tanuljanak tapasztalatokból (példák segítségével)

Egy kis neurobiológia A neuron (idegsejt): sok bemenet / egy kimenet A kimenet gerjesztett (excited) vagy nem A más neuronokból bejövő jelek határozzák meg, mikor tüzel (fire) a neuron (gerjesztett állapotba kerül) A kimenet függ a szinapszisokban történő csillapításoktól Inputs: dentrites Processing: soma Outputs: axons Synapses: electrochemical contact between neurons Basically, a biological neuron receives inputs from other sources, combines them in some way, performs a generally nonlinear operation on the result, and then output the final result.

Matematikai megfogalmazás Feltevésünk: a neuron a bemenetek súlyozott átlagát számítja ki, és az eredményt összehasonlítja egy küszöbértékkel. Ha nagyobb, akkor a kimenet 1 (tüzel, gerjesztett állapotba kerül) különben -1. The basic unit of neural networks, the artificial neurons, simulates the four basic functions of natural neurons. Artificial neurons are much simpler than the biological neuron; the figure below shows the basics of an artificial neuron.

Néhány adat Neuronok száma az agyban: ~ 1011 Egy neuron átlagosan 104 másikkal van kapcsolatban Leggyorsabb kapcsolási idő: 10-3 másodperc Arcfelismerési idő: 10-1 másodperc

Motiváció (gépi tanulási szemmel) Cél: nem-lineáris összefüggések tanulása Sok olyan probléma van, ahol a lineáris diszkriminancia nem megfelelő eredményt ad A fő nehézség a megfelelő nemlineáris függvény megtalálása, a fgvcsaládot előre meg kell adnunk Lineráis modellek könnyen kezelhetőek, használjuk ezt ki

Perceptron

Többrétegű neuronhálók A rejtett rétegben az input adatok másfajta reprezentációja Biologically, neural networks are constructed in a three dimensional way from microscopic components. These neurons seem capable of nearly unrestricted interconnections. This is not true in any man-made network. Artificial neural networks are the simple clustering of the primitive artificial neurons. This clustering occurs by creating layers, which are then connected to one another. How these layers connect may also vary. Basically, all artificial neural networks have a similar structure of topology. Some of the neurons interface the real world to receive its inputs and other neurons provide the real world with the network’s outputs. All the rest of the neurons are hidden form view. As the figure above shows, the neurons are grouped into layers The input layer consist of neurons that receive input form the external environment. The output layer consists of neurons that communicate the output of the system to the user or external environment. There are usually a number of hidden layers between these two layers; the figure above shows a simple structure with only one hidden layer. When the input layer receives the input its neurons produce output, which becomes input to the other layers of the system. The process continues until a certain condition is satisfied or until the output layer is invoked and fires their output to the external environment. Inter-layer connections There are different types of connections used between layers, these connections between layers are called inter-layer connections. Fully connected Each neuron on the first layer is connected to every neuron on the second layer. Partially connected A neuron of the first layer does not have to be connected to all neurons on the second layer. Feed forward The neurons on the first layer send their output to the neurons on the second layer, but they do not receive any input back form the neurons on the second layer. Bi-directional There is another set of connections carrying the output of the neurons of the second layer into the neurons of the first layer. Feed forward and bi-directional connections could be fully- or partially connected. Hierarchical If a neural network has a hierarchical structure, the neurons of a lower layer may only communicate with neurons on the next level of layer. Resonance The layers have bi-directional connections, and they can continue sending messages across the connections a number of times until a certain condition is achieved.

Többrétegű neuronhálók

Előrecsatolt (feedforward) háló Kapcsolat csak a rákövetkező réteg irányában van a rétegek között módosítható súlyokkal ellátott kapcsolatok vannak Egy háromrétegű neuronháló egy input rétegből, egy rejtett rétegből és egy kimenet rétegből áll

Hálózati érték Egy neuron hálózati értéke: ahol i az input egységeket indexeli, j a rejtett egységeket; wji jelöli az i inputból jövő kapcsolat súlyát a j rejtett neuronnál. Van egy konstans egységünk is, amelyik minden rejtett egységhez (neuronhoz) hozzá van kötve. Ennek bemeneti értéke mindig 1.

Aktivációs-függvény Minden rejtett egység kibocsátja a hálózati értékének valamely nemlineáris függvényét (aktivációs-függvény), azaz yj = f(netj) (A több rétegű lineáris függvény még lineáris) Előjel függvény: oi 1 Tj netj

Differenciálható aktivációs függvény Differenciálható, nem-lineáris kimeneti függvény kell a hatékony tanuláshoz (gradiens alapú módszerek) A leggyakoribb megoldás a szigmoid “logikai” függvény használata: 1 Tj netj Használják még a tanh vagy a Gauss függvényt is

Kimeneti réteg Kimeneti egységeknél a hálózati érték: ahol a k az output réteg egységeit, az nH pedig a rejtett egységek számát jelöli Bináris osztályozás: előjel függvény Többosztályos osztályozás: minden osztályra egy kimenet, legnagyobb hálózat értékűt választjuk (diszkriminancia fgv.) Regresszió: aktivációs fgv után a predikció

Az y1 rejtett egység számolja a következő felületet: x1 + x2 + 0.5 x1 OR x2 < 0  y1 = -1 - Az y2 pedig a következőt:  0  y2 = +1 x1 + x2 -1.5 x1 AND x2 < 0  y2 = -1 A végső kimeneti egység jelei: z1 = 0.7y1-0.4y2 - 1, sgn(z1) pontosan akkor lesz 1, ha y1 =1, y2 = -1, ami éppen a kívánt függvényünk (x1 OR x2 ) AND NOT(x1 AND x2)

Általános (3 rétegű) előrecsatolt háló (c kimeneti egység) A rejtett egységek segítségével bonyolultabb nemlineáris függvényeket is kifejezhetünk, bővítve az osztályozási lehetőségeket Megengedhetjük, hogy a kimeneten és a rejtett rétegeken levő aktivációs függvények különbözőek legyenek, sőt minden egységhez is különböző tartozhat

Kolmogorov tétele Kolmogorov tétele: minden korlátos folytonos függvény előállítható három rétegű hálózattal. DE: Kolmogorov tétele nagyon keveset mond arról, hogyan találjuk meg a bemeneti adatokból a megfelelő nemlineáris függvényeket

Háromrétegű neuronháló tanítása Visszaterjesztés (backpropagation)

Tanulás neuronhálóknál A hálózat topológiáját előre adottnak tekintjük Minden neuronnál ugyanaz, előre rögzített aktivációs fgv. Tanulás = élsúlyok kalibrálása on-line tanulás (több epoch) The brain basically learns from experience. Neural networks are sometimes called machine learning algorithms, because changing of its connection weights (training) causes the network to learn the solution to a problem. The strength of connection between the neurons is stored as a weight-value for the specific connection. The system learns new knowledge by adjusting these connection weights. The learning ability of a neural network is determined by its architecture and by the algorithmic method chosen for training.

Tanulás neuronhálóknál Előrecsatolás Ilyenkor adunk egy mintát az inputon, és ezt átszámoljuk a hálózaton – a végén a kimeneten értéke(ke)t kapunk Súlyok frissítése (visszaterjesztés) Ilyenkor az adott mintát arra használjuk, hogy módosítsuk a súlyokat úgy, hogy a számított és elvárt kimenetek különbsége csökkenjen

Tanulás neuronhálóknál 3rétegű hálózatokat vizsgálunk (könnyen megérthető, Kolmogorov tétele) A visszaterjesztés lényege: minden rejtett egységhez ki tudjuk számolni annak hibáját (érzékenységét), és ezzel egy tanulási eljárást ad a rétegek közti súlyokra

Legyen tk a kívánt k-ik kimenet, továbbá zk a k-ik számított kimenet (k = 1, …, c) tovább w jelölje a hálózat súlyait Hiba fgv: A visszaterjesztés szabály a gradiens módszeren alapul A súlyok kezdőértékei véletlen számok, és a hiba csökkentésének irányában változnak:

Hiba visszaterjesztés A rejtett és kimenet rétegek közötti súlyok hibái: ahol a k. kimeneti neuron érzékenységének definíciója: és megadja, hogyan változik a teljes hiba a neuron hálózati értékének függvényében

Mivel netk = wkty, kapjuk: másrészt: Következmény: a súlyok változtatásának szabálya (a rejtett és kimenet rétegek közt): wkj = kyj = (tk – zk) f’ (netk)yj

A bemenet és rejtett rétegek közötti súlyok hibái:

Az előzőhöz hasonlóan definiáljuk a rejtett réteg érzékenységét: Az input-rejtett rétegek közötti súlyokra vonatkozó tanulási szabály:

Hiba visszaterjesztés Először számítsuk ki a kimenetek érzékenységét, és ezzel változtassuk a súlyok felső rétegét output a k–ba vezetők aktualizálása: hidden input

Hiba visszaterjesztés Ezután számítsuk ki a rejtett egységek érzékenységét, a hozzájuk kötött kimeneti egységek érzékenységének segítségével output rejtett input

Hiba visszaterjesztés Végül aktualizáljuk az alsó réteg súlyait, a rejtett egységek érzékenységének segítségével output rejtett Aktualizáljuk a j-be vezetőket input

Véletlenszerűen választott súlyokkal kezdve, a sztochasztikus visszaterjesztés algoritmus: Begin inicializálni:nH; w, kritérium , , m  0 do m  m + 1 xm  véletlenül választott minta wji  wji + jxi; wkj  wkj + kyj until ||J(w)|| <  return w End

Megjegyzések Nem biztos, hogy zérus hibához konvergál – lokális optimumhoz is tarthat, vagy oszcillálhat A gyakorlatban nagyon sok nagy problémánál kicsi hibához tartozó megoldást ad A lokális minimál-megoldások elkerüléséhez többszöri futtatás, véletlen kezdősúlyokkal A legkisebb hibához tartozó megoldást vegyük Vagy valamilyen többségi szavazással válasszuk ki a megoldást

Megjegyzések Hány rejtett neuron kell? Mi az optimális toplológia? ha kevés rossz reprezentáció ha sok túltanulás validációs halmaz... Mi az optimális toplológia? priori tudás Tanulási arány!?

Mély neurális hálók deep learning

Neuronhálók Perceptron: az első algoritmus az ötvenes évekből (egyrétegű háló) Visszaterjesztés algoritmus: többrétegű hálózatok, (1975), nagyon népszerű a nyolcvanas években Mély hálók (deep learning): 2006 óta új virágkor

Autoencoder előtanítás (auto-encoder pretraining)

Mohó szintenkénti tanítás

Rectifier hálózatok

Dropout regularizáció

Blokk hálózatok

Visszacsatolásos neuronhálók (recurrent neural networks) rövid távú memória http://www.youtube.com/watch?v=vmDByFN6eig