Wstęp do sieci neuronowych, wykład 14 Maszyna Boltzmanna

Podobne dokumenty
Wstęp do sieci neuronowych, wykład 9 Sieci rekurencyjne. Autoasocjator Hopfielda

Wstęp do sieci neuronowych, wykład 9 Sieci rekurencyjne. Autoasocjator Hopfielda

Wstęp do sieci neuronowych, wykład 12 Wykorzystanie sieci rekurencyjnych w optymalizacji grafowej

Wstęp do sieci neuronowych, wykład 10 Sieci rekurencyjne. Autoasocjator Hopfielda

Wstęp do sieci neuronowych, wykład 10 Sieci rekurencyjne. Autoasocjator Hopfielda

Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa

Wstęp do sieci neuronowych, wykład 11 Łańcuchy Markova

Wst p do sieci neuronowych, wykªad 13 Maszyna Boltzmanna

Optymalizacja ciągła

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka Adaline.

Elementy inteligencji obliczeniowej

Uczenie sieci neuronowych i bayesowskich

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

Algorytmy MCMC (Markowowskie Monte Carlo) dla skokowych procesów Markowa

Optymalizacja. Symulowane wyżarzanie

Metody Optymalizacji: Przeszukiwanie z listą tabu

Algorytm Metropolisa-Hastingsa

Uczenie sieci typu MLP

Prawdopodobieństwo i statystyka

Metody probabilistyczne

Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I

Procesy stochastyczne

Procesy stochastyczne

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Wstęp do sieci neuronowych, wykład 6 Wsteczna propagacja błędu - cz. 3

Najprostsze modele sieci z rekurencją. sieci Hopfielda; sieci uczone regułą Hebba; sieć Hamminga;

Wstęp do teorii sztucznej inteligencji Wykład III. Modele sieci neuronowych.

Wstęp do teorii sztucznej inteligencji Wykład II. Uczenie sztucznych neuronów.

Wstęp do sieci neuronowych, wykład 07 Uczenie nienadzorowane cd.

Optymalizacja ciągła

Spacery losowe generowanie realizacji procesu losowego

Wprowadzenie do Sieci Neuronowych Laboratorium 05 Algorytm wstecznej propagacji błędu

wiedzy Sieci neuronowe

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

Optymalizacja ciągła

Transformaty. Kodowanie transformujace

Fuzja sygnałów i filtry bayesowskie

Podstawy Sztucznej Inteligencji (PSZT)

Procesy stochastyczne

Prawdopodobieństwo i statystyka

Układy równań i nierówności liniowych

Prognozowanie i Symulacje. Wykład I. Matematyczne metody prognozowania

Sieć przesyłająca żetony CP (counter propagation)

Ćwiczenia: Ukryte procesy Markowa lista 1 kierunek: matematyka, specjalność: analiza danych i modelowanie, studia II

Zastosowania sieci neuronowych

I EKSPLORACJA DANYCH

8. Neuron z ciągłą funkcją aktywacji.

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka ADALINE.

Lista zadania nr 7 Metody probabilistyczne i statystyka studia I stopnia informatyka (rok 2) Wydziału Ekonomiczno-Informatycznego Filia UwB w Wilnie

Wykład 9: Markov Chain Monte Carlo

Metody matematyczne w analizie danych eksperymentalnych - sygnały, cz. 2

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 335

Proces rezerwy w czasie dyskretnym z losową stopą procentową i losową składką

ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH

Geometryczna zbieżność algorytmu Gibbsa

Elementy wspo łczesnej teorii inwersji

Metody probabilistyczne

Ważną rolę odgrywają tzw. funkcje harmoniczne. Przyjmujemy następującą definicję. u = 0, (6.1) jest operatorem Laplace a. (x,y)

Co to jest model Isinga?

ANALIZA MATEMATYCZNA Z ELEMENTAMI STATYSTYKI MATEMATYCZNEJ

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Algorytmy stochastyczne Wykład 12, Uczenie parametryczne w sieciach bayesowskich

Prawa potęgowe w grafach przepływu informacji dla geometrycznych sieci neuronowych

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Deep Learning na przykładzie Deep Belief Networks

Rozdział 1. Wektory losowe. 1.1 Wektor losowy i jego rozkład

Algorytmy metaheurystyczne Wykład 6. Piotr Syga

REGRESJA LINIOWA Z UOGÓLNIONĄ MACIERZĄ KOWARIANCJI SKŁADNIKA LOSOWEGO. Aleksander Nosarzewski Ekonometria bayesowska, prowadzący: dr Andrzej Torój

Matematyka Dyskretna Zestaw 2

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka Adaline.

Programowanie liniowe

Matematyka Dyskretna 2/2008 rozwiązania. x 2 = 5x 6 (1) s 1 = Aα 1 + Bβ 1. A + B = c 2 A + 3 B = d

Lekcja 5: Sieć Kohonena i sieć ART

Funkcje analityczne. Wykład 4. Odwzorowania wiernokątne. Paweł Mleczko. Funkcje analityczne (rok akademicki 2016/2017) dla każdego s = (s.

Metody systemowe i decyzyjne w informatyce

Przegląd metod optymalizacji wielowymiarowej. Funkcja testowa. Funkcja testowa. Notes. Notes. Notes. Notes. Tomasz M. Gwizdałła

Zastosowania sieci neuronowych

2. Wykaż, że moment pierwszego skoku w procesie Poissona. S 1 := inf{t : N t > 0} jest zmienną losową o rozkładzie wykładniczym z parametrem λ.

WYKŁAD 6. Witold Bednorz, Paweł Wolff. Rachunek Prawdopodobieństwa, WNE, Uniwersytet Warszawski. 1 Instytut Matematyki

synaptycznych wszystko to waży 1.5 kg i zajmuje objętość około 1.5 litra. A zużywa mniej energii niż lampka nocna.

Obliczenia inspirowane Naturą

Metody iteracyjne rozwiązywania układów równań liniowych (5.3) Normy wektorów i macierzy (5.3.1) Niech. x i. i =1

Modelowanie sieci złożonych

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm

Wstęp do sieci neuronowych, wykład 07 Uczenie nienadzorowane.

Przekształcenia liniowe

Sieć Hopfielda. Sieci rekurencyjne. Ewa Adamus. ZUT Wydział Informatyki Instytut Sztucznej Inteligencji i Metod Matematycznych.

Informacja o przestrzeniach Hilberta

Równanie Schrödingera

Funkcje analityczne. Wykład 4. Odwzorowania wiernokątne. Paweł Mleczko. Funkcje analityczne (rok akademicki 2017/2018)

Prawdopodobieństwo i statystyka

Janusz Adamowski METODY OBLICZENIOWE FIZYKI Kwantowa wariacyjna metoda Monte Carlo. Problem własny dla stanu podstawowego układu N cząstek

Wstęp do sztucznych sieci neuronowych

2. P (E) = 1. β B. TSIM W3: Sygnały stochastyczne 1/27

Metody sztucznej inteligencji Zadanie 3: (1) klasteryzacja samoorganizująca się mapa Kohonena, (2) aproksymacja sieć RBF.

Definicje i przykłady

Prawdopodobieństwo i statystyka

Wstęp do sieci neuronowych, wykład 8 Uczenie nienadzorowane.

Wyznaczniki. Mirosław Sobolewski. Wydział Matematyki, Informatyki i Mechaniki UW. 6. Wykład z algebry liniowej Warszawa, listopad 2013

Transkrypt:

do sieci neuronowych, wykład 14 Maszyna Boltzmanna M. Czoków, J. Piersa Faculty of Mathematics and Computer Science, Nicolaus Copernicus University, Toruń, Poland 2014-01-21

Problemy z siecią Hopfilda Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna minima logalne tendencje do oscylacji (dynamika synchroniczna) płytkie baseny atrakcyjne

Nicolas Metropolis (1915-1999) Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna członek zespołu badawczego Projektu Manhattan współtwórca komputerów MANIAC (1952) i MANIAC II (1957) jeden z autorów metod Monte Carlo (wraz z S. Ulamem i J. von Neumannem) algorytm Metropolisa (1953) zaliczony do czołowych 10 algorytmów, które wywarły najwiekszy wpływ na rozwój i praktyke nauki i techniki w XX wieku (wg Computing Science and Engineering)

Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna Algorytm Metropolisa wersja orginalna Mamy dany otwarty układ termodynamiczny: E i - energia i-tego stanu Cel: znaleźć stan o minimalnej energii

Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna Algorytm Metropolisa wersja orginalna Algorytm: Wykonujemy wielokrotnie: dla danego stanu i-tego wykonujemy statystyczny ruch cząstki, otrzymując stan j-ty, Jeżeli E j E i 0, przechodzimy do stanu j-tego bezwarunkowo, w p.p. przechodzimy do stanu j z prawdopodobieństwem exp( (E j E i ) k b T ), gdzie k b - stała Boltzmanna, T - temperatura bezwzględna

Adaptacja algorytmu Metropolisa Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna Jak dostosować ten algorytm do dziedziny problemów optymalizacyjnych? rozwiązanie stan układu termodynamicznego funkcja oceny energia układu przekształcenie lokalne ruch cząstki optimum globalne stan o minimalnej energii parametr T temperatura i stała Boltzmanna

Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna Rola temperatury T w algorytmie Metropolisa Rozważmy funkcję g(x) = e x/t dla x > 0 T + wtedy x/t 0, więc e x/t 1 każde rozwiązanie jest akceptowane T 0 wtedy x/t +, więc e x/t 0 akceptowane są tylko lepsze rozwiązania (patrz dynamika Glaudera) interpretacja: T > 0 zakres tolerancji dla gorszych rozwiazań

Maszyna Boltzmanna definicja Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna Maszyny Boltzmanna to stochastyczna wersja sieci Hopfielda zaproponowana w pracy Ackley, Hinton, Sejnowski, 1985 doi:10.1016/s0364-0213(85)80012-4 Modyfikacja polega na tym, że dynamika zadana jest przez algorytm Metropolisa.

Dynamika Glaubera przypomnienie Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna Dynamika asynchroniczna w temperaturze 0. wylosuj neuron σ i jeśli spin jest niezgodny z lokalnym polem wypadkowym M i, zmieniamy go σ i = sign( w ij σ j + h i ) j Przypomnienie - pole wypadkowe M i = j w ijσ j + h i powtarzamy aż do ustabilizowania się sytuacji

Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna Maszyna Boltzmanna podstawowe założenia Rozważmy sieć rekurencyjną z dynamiką asynchroniczną Przestrzeń konfiguracji tej sieci stanowi przestrzeń stanów łańcucha Markowa Zadajmy mechanizm przejść zgodny z algorytmem Metropolisa

Maszyna Boltzmanna dynamika Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna wylosuj neuron σ i jeśli spin jest niezgodny z lokalnym polem wypadkowym M i, zmieniamy go σ i = sign( w ij σ j + h i ) j jeśli jest zgodny, zmieniamy go z prawdopodobieństwem exp( 2 M i /T ), lub pozostawiamy z komplementarnym prawdopodobieństwem powtarzamy aż do ustabilizowania się sytuacji

Uwagi Algorytm Metropolisa Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna Rozważmy dwie konfiguracje σ i σ różniące się na i-tym miejscu Niech σ będzie zgodna z lokalnym polem wypadkowym M i, a σ niepożądanym Wtedy zachodzi: Zatem zachodzi E( σ ) E( σ) = 2 M i exp( 2 M i /T ) = exp( (E( σ ) E( σ))/t )

Uwagi Algorytm Metropolisa Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna Obie strony równania są dodatnie Zatem 0 < exp( 2 M i /T ) < 1. E( σ ) E( σ) = 2 M i

Uwagi Algorytm Metropolisa Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna 10 8 6 4 2 0-2 -1 0 1 2 3 4 5

Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna Stacjonarność stanów maszyny Boltzmanna Twierdzenie. Rozkład stacjonarny dla łańcucha Markowa zadanego przez stany maszyny Boltzmanna ma postać: P( σ) = exp( E( σ)/t ) σ exp( E( σ )/T ) = exp( E( σ)/t ), Z(T ) gdzie Z(T ) jest czynnikiem normalizującym znanym jako funkcja rozdziału. Dzięki tej funkcji mamy do czynienia z prawdziwym prawdopodobieństwem. Rozkład ten jest zwany miarą Gibbsa.

Dowód stacjonarności Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna Udowodnijmy stacjonarność zadanego łańcucha Markowa. Niech A i B będą dowolnymi stanami należącymi do tego łańcucha. π jest rozkładem stacjonarnym zadanego łańcucha Markowa o macierzy przejścia P.

Dowód stacjonarności Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna P AB p-stwo przejścia ze stanu A do B w jednym kroku π A p-stwo znalezienia się w stanie A π A P AB p-stwo wychodzące z A do B π A ( B P AB) = π A p-stwo wychodzące z A B π BP BA p-stwo wchodzące do A

Dowód stacjonarności Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna Twierdzenie. Łańcuch jest stacjonarny p-stwo wchodzące = p-stwo wychodzące dla każdego stanu, czyli: A ( B π B P BA = π A ( B P AB ) = π A ) Powyższa równość zachodzi zawsze jeśli spełniony jest warunek: A,B (π B P BA = π A P AB ), ponieważ: A ( B π B P BA = B π A P AB ).

Dowód stacjonarności Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna Pokażemy teraz, że dla naszego łańcucha zachodzi A,B (π B P BA = π A P AB ), czym udowodnimy jego stacjonarność.

Dowód stacjonarności Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna Rozważmy dwie konfiguracje σ i σ różniące się na i-tym miejscu. Niech σ będzie zgodna z lokalnym polem wypadkowym M i, a σ nie. Wówczas przepływ z σ do σ wynosi 1 N P( σ ) = exp( E( σ )/T ), NZ(T ) gdzie N to długość wektora reprezentującego konfigurację sieci.

Dowód stacjonarności Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna Z drugiej strony, przepływ z σ do σ wynosi exp( 2 M i /T ) N P( σ) = exp( (E( σ ) E( σ))/t ) exp( E( σ)/t ) N Z(T ) = exp( E( σ )/T ) NZ(T ) Zatem przepływ z σ do σ wynosi tyle samo co przepływ z σ do σ, co kończy dowód.

Energia a rozkład stacjonarny Idea algorytmu Maszyna Boltzmanna Stacjonarność stanów maszyny Boltzmanna 4 3 energia beta = 0.1 beta = 1.0 beta = 2.0 beta = 5.0 beta = 20.0 2 1 0-1 -2 0 0.2 0.4 0.6 0.8 1

Algorytm symulowanego wyżarzania motywacja W procesie minimalizacji energii bardzo niepożądanym zjawiskiem jest nagły skok do stanu o wyższej energii, gdy już było dość dobrze. Na początku działania algorytmu dopuszczalne jest chaotyczne zachowanie, które może pozwolić znaleźć odpowiedni obszar przestrzeni energetycznej (taki o dużym spadku, który sugeruje bliskość minimum globalnego), W okolicach globalnego minimum nie opłaca się już skakanie do wyższych terenów, bo opóźnia to tylko osiągnięcie owego minimum.

Algorytm symulowanego wyżarzania

Algorytm symulowanego wyżarzania Połączenie dwóch heurystyk: algorytm Metropolisa schemat chłodzenia W istocie symulowane wyżarzanie jest to algorytm Metropolisa ze zmienną temperaturą.

Algorytm symulowanego wyżarzania Dynamika MB z symulowanym wyżarzaniem przypisz numer bieżącej iteracji k = 1 oraz temperaturę T = cτ(k), gdzie c jest to dodatni parametr wylosuj neuron σ i jeśli spin jest niezgodny z lokalnym polem wypadkowym M i, zmień go σ i = sign( w ij σ j + h i ) j jeśli jest zgodny, zmień go z prawdopodobieństwem exp( 2 M i /T ), lub zostaw zwiększ k o jeden oraz zaktualizuj wartość temperatury T = cτ(k) powtarzaj, aż osiągniesz temperaturę równą lub bliską 0 i stan się ustabilizuje

Algorytm symulowanego wyżarzania Schematy chłodzenia schemat logarytmiczny (Boltzmanna): τ(k) = 1/ log k, schemat liniowy (Cauchy ego) τ(k) = 1/k, dla małego k > 0 np. k = 1/4 schemat geometryczny τ(k) = a k, gdzie 0 < a < 1 schemat logarytmiczny (w przeciwieństwie do pozostałych) gwarantuje (przy pewnych naturalnych założeniach) znalezienie optimum globalnego z prawdopodobieństwem 1, jednak średni czas potrzebny do jego osiągnięcia jest porównywalny z rozmiarem przestrzeni rozwiązań badania empiryczne sugerują, że największą przydatność praktyczną ma schemat geometryczny (najszybszy)

Algorytm symulowanego wyżarzania 0-0.5-1 -1.5-2 -2.5-10 -5 0 0 5 10 5-5 10-10

Algorytm symulowanego wyżarzania Ewolucja maszyny Boltzmanna w wysokiej temperaturze click

Algorytm symulowanego wyżarzania Ewolucja maszyny Boltzmanna w niskiej temperaturze click

Wprowadzenie Algorytm - założenia ogólne Problem przeszukiwania przestrzeni Maszyny Boltzmanna są zasadniczo używane do rozwiązywania dwóch różnych obliczeniowych problemów. przeszukiwanie przestrzeni stanów, w którym wagi dla połączeń są stałe i są wykorzystywane do reprezentacji funkcji kosztu próbkowanie wektorów stanów, które mają małe wartości funkcji kosztu.

Wprowadzenie Algorytm - założenia ogólne Problem uczenia maszyn Boltzmanna Dane: Wynik: zbiór przykładów, który odzwierciedla częstość występowania (zadaję miarę probabilistyczną (empiryczną) na zbiorze konfiguracji sieci) wagi połączeń sieci, tak aby generowała te dane z zadanym prawdopodobieństwem.

Wprowadzenie Algorytm - założenia ogólne Architektura maszyny Boltzmanna warstwa wejściowa, warstwa wyjściowa i jednostki ukryte. Konfigurację warstwy wejściowej = α i, warstwy wyjściowej = α 0, przez wektor α konfiguracja obu widocznych warstw, (tzn. scalone wektory α i i α 0 ) Konfiguracja jednostek ukrytych = β. Jednostki ukryte nie tworzą warstw. Nie wyróżniamy żadnej konkretnej struktury połączeń między jednostkami.

Architektura maszyny Boltzmanna Wprowadzenie Algorytm - założenia ogólne wyjście 0 { w ij i j i wejście

Wprowadzenie Algorytm - założenia ogólne Architektura maszyny Boltzmanna Ukryte neurony nie są brane pod uwagę jako część zapamiętanego wzorca w procesie uczenia Jednostki ukryte pozwalają zwiększyć moc obliczeniową sieci (uwalniając ją od statystyki drugiego rzędu i zapamiętywania wzorców wyłącznie na podstawie korelacji między parami elementów

Wprowadzenie Algorytm - założenia ogólne Uwagi pracujemy w kodownaiu 0, 1 lub 1, 1. nie ma pól zewnetrznych, ale dopuszczamy wagi w ii dla kodowania 0, 1

Założenia ogólne Algorytm Metropolisa Wprowadzenie Algorytm - założenia ogólne Q(α) rozkład empiryczny po zbiorze danych P(α) rozkład stacjonarny w maszynie Boltzmanna, zależny tylko od wag i temperatury T (= const w trakcie uczenia) Prawdopodobieństwo konfiguracji widocznych jednostek: P(α) = β P(α, β) = exp( E αβ/t ), Z(T ) β gdzie E αβ energia przy zadanych α i β Z(T ) jak wcześniej

Wprowadzenie Algorytm - założenia ogólne Entropia względna Cel: znalezienie takiego zestawu wag, który minimalizuje entropię względną (rozbieżność Kullbacka-Lieblera) tych dwóch rozkładów: D KL (Q(α), P(α)) = α Q(α)log Q(α) P(α) intuicyjne: odległość między rozkładami P i Q jeżeli P i Q są identyczne, to D KL (Q, P) = 0

Wprowadzenie Algorytm - założenia ogólne Uczenie maszyny Boltzmanna gradien descent uaktualniamy wagi zgodnie ze wzorem: w ij = η D kl w ij = η α Q(α) P(α), P(α) w ij η współczynnik uczenia zauważmy że Q jest zadane i nie zależy od wag: Q(α) w ij = 0

Uczenie maszyny Boltzmanna Wprowadzenie Algorytm - założenia ogólne w ij = η α Q(α) P(α), P(α) w ij = Pβ P(α) = ( e E αβ /T Z(T ) ) w ij w ij ( P β exp E αβ /T ) (Z(T )) w ij Z(T ) w ij β e E αβ/t Z(T ) 2 = ( P β exp E αβ /T ) w ij Z(T ) (Z(T )) w ij β e E αβ/t Z(T ) 2

Uczenie maszyny Boltzmanna Wprowadzenie Algorytm - założenia ogólne = ( P β exp E αβ /T ) w ij Z(T ) (Z(T )) w ij β e E αβ/t Z(T ) 2 = β e E αβ/t ( E αβ /T ) w ij Z(T ) ( P αβ e E αβ /T ) w ij β e E αβ/t Z(T ) 2 = β e E αβ/t ( ( 1 2 TZ(T ) P i j w ij s i s j )) w ij ( P αβ e E αβ /T ) w ij β e E αβ/t Z(T ) 2 = β e E αβ/t s i s j TZ(T ) ( P αβ e E αβ /T ) w ij β e E αβ/t Z(T ) 2

Uczenie maszyny Boltzmanna Wprowadzenie Algorytm - założenia ogólne = = = β e E αβ/t s i s j TZ(T ) β e Eαβ/T s i s j TZ(T ) β P(α, β)s is j T ( P αβ e E αβ /T ) w ij β e E αβ/t Z(T ) 2 ( αβ e E αβ/t s i s j )( β e E αβ/t ) TZ(T ) 2 ( αβ P(α, β)s is j )( β P(α, β)) T = 1 T [ β s i s j P(α, β) s i s j P(α) P(α)]

Uczenie maszyny Boltzmanna Wprowadzenie Algorytm - założenia ogólne Z wyrażeń: P(α) w ij w ij = η α = 1 T [ β Q(α) P(α), P(α) w ij s i s j P(α, β) P(α) s i s j P(α) ] wynika: w ij = η T [ α Q(α) P(α) s i s j P(α, β) α β Q(α) s i s j P(α) ] = η T [ αβ Q(α)P(β α)s i s j α Q(α) s i s j P(α) ] = η T [ s is j Q(α) s i s j P(α) ]

Wprowadzenie Algorytm - założenia ogólne Uczenie maszyny Boltzmanna Uwagi: s i s j Q(α) liczymy bezpośrednio z danych s i s j P(α) liczymy metodą Monte-Carlo ten algorytm zawsze zbiega, ponieważ D KL jest funkcją wypukłą