Tanulás Boltzmann gépekkel. Reiz Andrea

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

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

Azonos és egymással nem kölcsönható részecskékből álló kvantumos rendszer makrókanónikus sokaságban.

Függvények növekedési korlátainak jellemzése

Konjugált gradiens módszer

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

Új típusú döntési fa építés és annak alkalmazása többtényezős döntés területén

Monte Carlo módszerek a statisztikus fizikában. Az Ising modell. 8. előadás

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

Mesterséges Intelligencia MI

Számítsuk ki a nyelvet! Matematika, fizika és algoritmusok a nyelvben

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

Mesterséges Intelligencia MI

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

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

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

Válogatott fejezetek a közlekedésgazdaságtanból

I. LABOR -Mesterséges neuron

Keresési algoritmusok, optimalizáció

Matematika III előadás

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

Ellátási lánc optimalizálás P-gráf módszertan alkalmazásával mennyiségi és min ségi paraméterek gyelembevételével

Fermi Dirac statisztika elemei

Gépi tanulás. Féligellenőrzött tanulás. Pataki Béla (Bolgár Bence)

Alkalmazás a makrókanónikus sokaságra: A fotongáz

Funkcionális konnektivitás vizsgálata fmri adatok alapján

Online algoritmusok. Algoritmusok és bonyolultságuk. Horváth Bálint március 30. Horváth Bálint Online algoritmusok március 30.

Biometria az orvosi gyakorlatban. Korrelációszámítás, regresszió

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

Numerikus módszerek beugró kérdések

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

6. Függvények. Legyen függvény és nem üreshalmaz. A függvényt az f K-ra való kiterjesztésének

Nagyságrendek. Kiegészítő anyag az Algoritmuselmélet tárgyhoz. Friedl Katalin BME SZIT február 1.

összetevője változatlan marad, a falra merőleges összetevő iránya ellenkezőjére változik, miközben nagysága ugyanakkora marad.

1. Olvassuk be két pont koordinátáit: (x1, y1) és (x2, y2). Határozzuk meg a két pont távolságát és nyomtassuk ki.

Gazdasági matematika II. vizsgadolgozat megoldása, június 10

Megerősítéses tanulás 2. előadás

Diverzifikáció Markowitz-modell MAD modell CAPM modell 2017/ Szegedi Tudományegyetem Informatikai Intézet

Algoritmusok Tervezése. 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás

V. Kétszemélyes játékok

Losonczi László. Debreceni Egyetem, Közgazdaság- és Gazdaságtudományi Kar

[Biomatematika 2] Orvosi biometria

Kétváltozós függvények differenciálszámítása

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

KÖZELÍTŐ INFERENCIA II.

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

Operációkutatás. Vaik Zsuzsanna. Budapest október 10. First Prev Next Last Go Back Full Screen Close Quit

Digitális Domborzat Modellek (DTM)

Számítógépes döntéstámogatás. Genetikus algoritmusok

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

Regressziós vizsgálatok

Kiegészítő részelőadás 1. Az algoritmusok hatékonyságának mérése

Geofizikai kutatómódszerek I.

2. Laboratóriumi gyakorlat A TERMISZTOR. 1. A gyakorlat célja. 2. Elméleti bevezető

2012. október 2 és 4. Dr. Vincze Szilvia

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

Kettőnél több csoport vizsgálata. Makara B. Gábor

Autoregresszív és mozgóátlag folyamatok. Géczi-Papp Renáta

A kanonikus sokaság. :a hőtartály energiája

Közösség detektálás gráfokban

Approximációs algoritmusok

Autoregresszív és mozgóátlag folyamatok

A lineáris programozás alapjai

Hajdúnánás geotermia projekt lehetőség. Előzetes értékelés Hajdúnánás

Számítógép és programozás 2

KÖZELÍTŐ INFERENCIA II.

FÜGGVÉNYEK TULAJDONSÁGAI, JELLEMZÉSI SZEMPONTJAI

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

Diszkrét Irányítások tervezése. Heurisztika Dr. Bécsi Tamás

I. BESZÁLLÍTÓI TELJESÍTMÉNYEK ÉRTÉKELÉSE

Mérési hibák

Lineáris regressziós modellek 1

Optimalizálás alapfeladata Legmeredekebb lejtő Lagrange függvény Log-barrier módszer Büntetőfüggvény módszer 2017/

Kétszemélyes játékok Gregorics Tibor Mesterséges intelligencia

10. tétel Függvények lokális és globális tulajdonságai. A differenciálszámítás alkalmazása

Katalízis. Tungler Antal Emeritus professzor 2017

Térinformatikai algoritmusok Elemi algoritmusok

Számítógép és programozás 2

Függvények Megoldások

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

JAVASLAT A TOP-K ELEMCSERÉK KERESÉSÉRE NAGY ONLINE KÖZÖSSÉGEKBEN

Az idegrendszeri memória modelljei

1. Gauss-eloszlás, természetes szórás

II. rész: a rendszer felülvizsgálati stratégia kidolgozását támogató funkciói. Tóth László, Lenkeyné Biró Gyöngyvér, Kuczogi László

Megoldott feladatok november 30. n+3 szigorúan monoton csökken, 5. n+3. lim a n = lim. n+3 = 2n+3 n+4 2n+1

Amortizációs költségelemzés

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

A derivált alkalmazásai

Least Squares becslés

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Függvények

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

MATEMATIKA 2. dolgozat megoldása (A csoport)

minden x D esetén, akkor x 0 -at a függvény maximumhelyének mondjuk, f(x 0 )-at pedig az (abszolút) maximumértékének.

Fotovillamos és fotovillamos-termikus modulok energetikai modellezése

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

Mesterséges intelligencia 3. laborgyakorlat

Intelligens Rendszerek Elmélete. Párhuzamos keresés genetikus algoritmusokkal

Infobionika ROBOTIKA. X. Előadás. Robot manipulátorok II. Direkt és inverz kinematika. Készült a HEFOP P /1.0 projekt keretében

A MODELLALKOTÁS ELVEI ÉS MÓDSZEREI

Mesterséges Intelligencia I.

Átírás:

Tanulás Boltzmann gépekkel Reiz Andrea

Tanulás Boltzmann gépekkel Boltzmann gép Boltzmann gép felépítése Boltzmann gép energiája Energia minimalizálás Szimulált kifűtés Tanulás

Boltzmann gép Tanulóalgoritmus Korlátozás-kielégítő feladatok megoldására alkalmas Gyengébb preferenciájú korlátozást is magába foglal

Erős, gyenge korlátozás Erős korlátozás - minden megoldásnak eleget tennie pl. Játékok, puzzle esetén Korlátozás kielégítő keresések nagyrésze erős korlátozást alkalmaz Gyenge korlátozás - néha a legkézenfekvőbb megoldások is megszegik pl. megtalálni egy kép legmegfelelőbb értelmezését A megoldás minőségét a nem kielégített korlátozások összege jelenti

Boltzmann gép elemei Számítási egységekből áll: - unitok, melyeket linkekkel kapcsolunk egymáshoz Unit (egység)- 0 vagy 1 állapottal rendelkezik Link (kötés) súlyokkal (valós számok) rendelkezik

Boltzmann gép elemei i-edik egység a kötés erőssége az i és j egység között a kapcsolatok szimmetrikusak W ii = 0 egyik egység sem áll kapcsolatban önmagával

Boltzmann gép

Boltzmann gép elemei Az 0/1 állapot azt jelöli hogy a rendszer pillanatnyilag elfogad vagy elutasít egy hipotézist a megfelelő témakörben A kötések súlya egy páros módú megszorítást jelöl két hipotézis között. Pozitiv súly esetén két hipotézis elfogadja egymást; ha egy hipotézis elfogadott a másik elfogadása kedvezőbb feltételekhez vezet Negativ súly esetén a két hipotézis nem fogadja el egymást

A Boltzmann gép energiája A kapott szerkezetben, a rendszer minden lényeges állapotához hozzárendelhető egy szám, ezt az állapot energiájának nevezzük. Az állapot energiája úgy is értelmezhető, mint annak a mértéke hogy az hipotézisek adott kombinációja mennyire sértik a feladatkör korlátait

A rendszer energiája A rendszer állapotának energiája: (1) Ahol: θ külső hatás mértéke

Az energia minimuma Megfelelő feltételek mellett az egységek állapotai úgy változhatnak, hogy ezt a globális energiát minimalizálni tudják Minimalizáláskor a rendszer a bementből további összefüggésekre következtet (tanul)

Energia minimalizálás Egy egyszerű módszer hogy kialakítsuk az értékek egy olyan kombinációját, amely a lokális minimumokat kihasználva eljut a rendszer állapotának minimumába Ehhez a rendszer azt kell eldöntse hogy elfogad egy hipotézist vagy sem.

Energia minimalizálás Mivel a kapcsolatok szimmetrikusak ezért a különbség a rendszer energiája az S i elutasított hipotézissel valamit az energiája az S i elfogadott hipotézissel kifejezhető: (2) Az (1)-es képletbe az S i helyére 0-t ill. 1- et helyettesítve kapjuk a (2)-es képletet

Az algoritmus gyengesége Ez egy egyszerű determinisztikus minimum számoló algoritmus, hibája: megakad a lokális minimumban ami nem optimális globálisan. Egy egyszerű mód arra hogy kikeverdjünk a lokális minimumból az hogy időnként megengedünk olyan értékét az állapotoknak hogy a rendszer összenergiája eltérjen a lokális minimumtol.

Szimulált kifűtés Ha elindítunk egy rendszert egy magas hőmérsékleten és fokozatosan csökkentjük a hőmérsékletét amíg el nem éri a termikus egyensúlyt, akkor a rendszer állapotának valószínűsége egy eloszláshoz konvergál, amely állapotban az energia szint a minimum körül változik.

Szimulált kifűtés Annak a valószínűsége hogy egy egység állapota 1: p i = 1 / (1 + exp( ΔE i / T)) T - a rendszer hőmérséklete, skaláris érték ΔE i az energia különbség az S i értékeitől függően (2) képletnek megfelelően

Szimulált kifűtés A rendszer ismételten kiválaszt egy egységet és a fenti képletnek megfelelően beállítja az állapotát. Egy bizonyos hőmérsékleten való hosszú futás után a rendszer globális állapotának a valószínűsége a globális energiától függ. Ekkor a globális állapotok valószínűségi naplója lineáris lesz => a rendszer termikus egyensúlyban van.

Szimulált kifűtés Ekkor rendszer állapotainak valószínűsége a Boltzmann eloszláshoz tart Z - Hi eloszlás, a - paraméter

Tanulás A legérdekesebb tulajdonsága egy Boltzmann gépnek hogy egy független tanuló algoritmushoz vezet. Megváltoztatja a kapcsolat erősségeket az egységek között úgyhogy a teljes rendszer egy belső modellt fejleszt ki ami magába foglalja a környezetének alapul szolgáló rendszert.

Tanulás A történelem során bebizonyosodott hogy nincs egyszerű, bármilyen összetettebb rendszerre általánosítható tanuló algoritmus mivel ahhoz hogy képes legyen értékes számításokra, a rendszer nemlineáris elemeket kell tartalmazzon amelyek nem a bemenet közvetlen megszorításai. Amikor egy ilyen rendszer hibázik lehetetlen eldönteni a sok kapcsolat erősségei közül melyik a hibás.

Tanulás Tehát ha a rendszert tanítani szeretnénk úgyhogy a változás során a rendszer a globális minimumhoz tartson, akkor a súlyokat úgy kell meghatároznunk hogy a globális állapot a legnagyobb valószínűséggel elérje a legkisebb energiaszintet.

Látható és láthatatlan egységek A Boltzmann gép egységei particionálhatók egy nem üres látható és egy láthatatlan csoportra A látható csoport a rendszer és környezet közötti kapcsolat kommunikálnak a környezettel. A tanulás ideje alatt a látható egységek a környezet állapotaiba rögzültek

Látható és láthatatlan egységek A láthatatlan egységek sohasem rögzítettek a környezet által Kifejezhetik bemenet alapjául szolgáló korlátokat amelyek nem ábrázolhatóak páros kapcsolatokban a látható egységek között.

Látható és láthatatlan egységek Láthatatlan egységek komplex hipotéziseket fejeznek ki a látható egységek állapotairól. Így a magas rendű korlátok a látható egységek fölött lecsökkenthetőek az egész egység halmazon.

Látható és láthatatlan egységek A nyilak az információ áramlás irányát jelölik

A környezet modellezése Minden környezeti bement megengedi hogy a rendszer elérje a termikus egyensúlyát A környezet szerkezete úgy specifikálható, hogy megadjuk a látható egységek minden állapotának valószínűségi eloszlását

A környezet modellezése A rendszerről elmondhatjuk, hogy tökéletes modellje környezetének, ha pontosan ugyanolyan valószínűségi eloszlást ér el az állapotok felett, miközben termikus egyensúlyban szabadon fut, mint a bemeti eloszlás.

A környezet modellezése Habár a rejtett egységek száma exponenciálisan nő a látható egységekhoz képest, lehetetlen hogy a rendszer elérje a tökéletes modellt: ugyan a rendszer teljesen összekapcsolt, a (v+h-1)*(v+h)/2 kötések és a (v + h) eltérések a v látható és h láthatatlan egységek esetén elégtelenek hogy modellezzék a környezet 2 v állapot valószínűségeit.

A környezet modellezése A környezetben vannak szabályok, és a rendszer használja a rejtett egységeit, hogy rögzítse ezeket, ezáltal elérheti a környezeti valószínűségeknek egy jó megközelítését

Tanulás Legyen a tanuló halmaz eloszlása P + (V) A Boltzmann gép esetén a globális állapotok fölötti eloszlás konvergál, amint a termikus egyensúly bekövetkezik Legyen ez a konvergált eloszlás P - (V) A célunk tehát, hogy megközelítsük a P + (V) eloszlást, felhasználva P - (V) eloszlást, amit a gép generál

Tanulás Hogy megmérjük mennyire hasonló a két eloszlás, a Kullback Leibler távolságot használjuk: G a súlyok függvénye, meghatározza az állapotok energiáját és az energia meghatározza a P - (V) eloszlást

Tanulás A Boltzmann gép tanulása kétfázisú (pozitív és negatív), és ismételten ugrálhatunk a két fázis között A pozitív fázisban a látható egységek állapotai rögzítődnek a tanítási halmaznak megfelelően A negatív fázis esetén a rendszert szabadon futni hagyjuk

Példa - Utazó ügynök -N várost látogassunk meg legkevesebb távolságot megtéve. -Az N város az egyszerűség kedvéért az origó központú 1 sugarú körön lett létrehozva. pl. N=50

Példa - Utazó ügynök Boltzmann gép elemei véletlen generálással lettek iniciálva, éspedig egy N^2*N^2 mátrix jelképezi a rendszert, amely minden város esetén tárolja azt hogy eljuthatunk-e az illető városba vagy sem, és ha eljuthatunk akkor hova mehetünk tovább.

Példa - Utazó ügynök A program működése: Az algoritmus minden lépésben meghatároz egy utat a városok között, honnan hova mehetünk. Az út nem biztos hogy minden várost tartalmaz, tartalmazhat megállókat is, de egy út csak akkor lesz érvényes ha minden várost meglátogat. Ha az út nem érvényes akkor csökkentjük a T hőmérsékletet, és újra felépítjük a mátrixot, hogy mely városból melyikbe mehetünk. Azt hogy eljuthatunk-e egyik városból a másikba egy valószínűség alapján generálja: pi = 1 / (1 + exp( ΔEi / T)) ahol ΔEi= Wij*sj-ө T- hőmérséklet, kezdetben 100, majd 0.99el csökken.

Példa - Utazó ügynök A program akkor ad megoldást amikor minden város szerepel az útban, és minden városba egyetlen másik városból juthatunk el. Amikor ez megtörténik, akkor a rendszer energiája minimális lesz.

Összegzés A Boltzmann gép tanulása az EM (Expectation maximization) algoritmus egy alkalmazása, amelyet előszeretettel használnak a gépi tanulásban Egy hiányos adathalmazt ismerünk (a latható egységeket) A pozitív fázisban megbecsüljük a teljes adathalmazt a rendszer aktuális paramétereire támaszkodva (kötések) Később a kötések frissülnek, hogy maximalizálják a rendszer valószínűségét

Könyvészet DAVID H. ACKLEY, GEOFFREY E. HINTON, TERRENCE J. SEJNOWSKI: A Learning Algorithm for Boltzmann Machines http://papers.cnl.salk.edu/pdfs/a%20learning%20algorithm%20for%20boltzma nn%20machines_%201985-3542.pdf wikipedia.org/wiki/boltzmann_machine