52
Maszyny Boltzmanna Janusz A. Starzyk Wyzsza Szkola Informatyki i Zarzadzania w Rzeszowie W oparciu o wyklad Prof. Geoffrey Hinton University of Toronto and http://en.wikipedia.org/wiki/Boltzmann_machine oraz Prof. Włodzisława Ducha Uniwersytet Mikołaja Kopernika Inteligentne Systemy Autonomiczne

Maszyny Boltzmann a

  • Upload
    prisca

  • View
    41

  • Download
    0

Embed Size (px)

DESCRIPTION

Maszyny Boltzmann a. Inteligentne Systemy Autonomiczne. W oparciu o wyklad Prof. Geoffrey Hinton University of Toronto and http://en.wikipedia.org/wiki/Boltzmann_machine oraz Prof. Włodzisław a Duch a Uniwersytet Mikołaja Kopernika. - PowerPoint PPT Presentation

Citation preview

Page 1: Maszyny  Boltzmann a

Maszyny Boltzmanna

Janusz A. Starzyk Wyzsza Szkola Informatyki i Zarzadzania w Rzeszowie

W oparciu o wyklad Prof. Geoffrey HintonUniversity of Toronto andhttp://en.wikipedia.org/wiki/Boltzmann_machineoraz Prof. Włodzisława DuchaUniwersytet Mikołaja Kopernika

Inteligentne Systemy Autonomiczne

Page 2: Maszyny  Boltzmann a

Maszyna Boltzmanna

• Maszyna Boltzmana jest typem stochastycznej rekurencyjnej sieci neuronowej symulowanego wyżarzania.

• Maszyny Boltzmana można traktować jako stochastyczny, generujący odpowiednik sieci Hopfielda.

• Maszyna Boltzmana jest siecią jednostek mających jednostki „energii”, które są binarnie stochastyczne.

• Były one jednymi z pierwszych przykładów sieci neuronowej zdolnej do uczenia wewnętrznych reprezentacji i są w stanie rozwiązywać trudne problemy kombinatoryczne.

Page 3: Maszyny  Boltzmann a

Wejścia Wyjścia /i i ip V V E T

Maszyna Boltzmana

Stochastyczna siec atraktorowa Podobna do modelu Hopfielda

Binarne neuronySymetryczne połączeniaUkryte neurony.

Asynchroniczna dynamika.Neurony stochastyczne i stopniowe chłodzenie:

Page 4: Maszyny  Boltzmann a

ij i j i jdane szum

W VV VV

Działanie Maszyn Boltzmana

Uczenie: sieć modeluje środowisko. Znaleźć zbiór wag pozwalających odtworzyć obserwowane częstości sygnałów wejściowych- model maksymalnego prawdopodobieństwa.

Założenia: sygnały wejściowe wolnozmiennesieć dochodzi do równowagibrak korelacji pomiędzy strukturami danych wejściowych:

prawdopodobienstwo p+(Va) każdego z 2n wektorów binarnych wystarczy.

Różnice między działaniem swobodnym i wymuszonym pozwalają obliczyć korelacje wzbudzeń neuronów i pożądaną zmianę wag:

Page 5: Maszyny  Boltzmann a

Zajmowanie się strukturami złożonymi

• Rozważ zestaw danych, w którym każdy obraz zawiera N różnych rzeczy:– Rozproszona reprezentacja wymaga pewnej liczby

neuronów, która jest liniową funkcją N. – Lokalna reprezentacja (np. model mieszany) wymaga

liczby neuronów, która jest wykładniczą funkcją N. • „Mieszanki” wymagają jeden model dla każdej możliwej

kombinacji.• Reprezentacje rozproszone są generalnie trudniejsze w

dopasowaniu do danych, ale są jedynym sensownym rozwiązaniem.– Maszyny Boltzmana wykorzystują reprezentacje

rozproszone do modelowania binarnych danych.

Page 6: Maszyny  Boltzmann a

Jednostki stochastyczne

• Zastąp binarne jednostki progowe przez jednostki stochastyczne, które podejmują przypadkowe decyzje.– Temperatura kontroluje poziom szumu.– Prawdopodobieństwo włączenia jednostek wynosi:

)()(

1

1

1

1)(

10

1

iii

TETwsi

sEsEEgapEnergy

eesp

ij ijj

temperatura

ji

ijjiii

i wssbsE

Page 7: Maszyny  Boltzmann a

Jak maszyny Boltzmana modelują dane?

• To nie jest przyczynowy model generatywny (jak model mieszany) w którym najpierw wybieramy stany ukryte a następnie wybieramy stany widoczne przy tych stanach ukrytych.

• Zamiast tego, wszystko jest zdefiniowane poprzez energie konfiguracji łącznych jednostek widzialnych i ukrytych.

• Jednostki widzialne V są tymi, które otrzymują informację ze „środowiska”, np. zbiór treningowy jest grupą wektorów binarnych okreslonych na zbiorze V

Page 8: Maszyny  Boltzmann a

Energia konfiguracji łącznej

ji

ijjiunitsi

ii wssbsE

prog i waga pomiędzy i oraz j

Energia z konfiguracją alfa w widzialnych jednostkach i beta w niewidzialnych.

binarny stan jednostki i w konfiguracji łącznej alfa, beta

indeksy wszystkich roznych par i oraz j

Page 9: Maszyny  Boltzmann a

Wykorzystanie energii do zdefiniowania prawdopodobieństwa

• Prawdopodobieństwo konfiguracji łącznej jednostek widzialnych i ukrytych zależy od energii tej konfiguracji łącznej w porównaniu z energiami wszystkich innych konfiguracji łącznych.

• Prawdopodobieństwo konfiguracji widzialnych jednostek jest sumą prawdopodobieństw wszystkich konfiguracji łącznych, które je zawierają.

E

E

e

ep ),( hv

E

E

e

e

p )(v

konfig. alfa na widzialnych jednostkach

funkcja podziału

Page 10: Maszyny  Boltzmann a

Wykorzystanie energii do zdefiniowania prawdopodobieństwa

• Naszym celem jest aproksymacja „realnego" rozkładu p(v) wykorzystując p(v,h) dostarczane (ewentualnie) przez maszynę.

• Aby określić podobieństwo dwóch rozkładów wykorzystujemy odległość Kullback-Leiblerga,

• Są dwie fazy trenowania maszyny.– Faza „Pozytywna” jest gdy stany jednostek

widzialnych są przypisane do konkretnego binarnego wektora stanu pobranego ze zbioru treningowego.

– Faza „Negatywna” występuje gdy żadne jednostki nie mają stanów zdeterminowanych przez dane zewnętrzne.

E

E

e

e

p )(v

E

E

e

ep ),( hv

),(

)(ln)(

hvp

vPvPG

v

Page 11: Maszyny  Boltzmann a

Wykorzystanie energii do zdefiniowania prawdopodobieństwa

• Gradient odległości G w stosunku do danej wagi, wij, jest przedstawiony za pomocą bardzo prostego równania:

• jest prawdopodobieństwem ze obie jednostki i oraz j, sa aktywne gdy maszyna jest w równowadze w fazie pozytywnej.

• jest prawdopodobieństwem ze obie jednostki i oraz j, sa aktywne gdy maszyna jest w równowadze w fazie negatywnej.

),(

)(ln)(

hvp

vPvPG

v

ijijij

ppTw

G 1

ijp

ijp

Page 12: Maszyny  Boltzmann a

Wykorzystanie energii do zdefiniowania prawdopodobieństwa

• W równowadze cieplnej prawdopodobieństwo dowolnego globalnego stanu s gdy sieć działa swobodnie jest dane przez rozkład Boltzmana (stąd nazwa „Maszyna Boltzmana”).

• Ta reguła uczenia się jest biologicznie wiarygodna ponieważ wykorzystuje tylko „lokalne” informacje. – Aby zaistnieć, połączenie potrzebuje tylko informacji o

dwóch łączonych neuronach.

ijijij

ppTw

G 1

Page 13: Maszyny  Boltzmann a

Sieci zaszumione znajdują lepsze minima energii

• Sieć Hopfielda zawsze wykonuje decyzje, które redukują energię.– To uniemożliwia wyjscie z lokalnego minimum.

• Możemy użyć przypadkowego szumu aby uniknąć mało znaczącego minimum.- Wystartowanie z dużym poziomem szumu

ułatwia przekroczyć bariery energii. - Powolna redukcja szumu pozostawia system

w głębokim minimum-To jest „symulowane wyżarzanie”

A B C

Page 14: Maszyny  Boltzmann a

1 1 1 1 2 7.39 .186 1 1 1 0 2 7.39 .186 1 1 0 1 1 2.72 .069 1 1 0 0 0 1 18.5 .0251 0 1 1 1 2.72 .0691 0 1 0 2 7.39 .1861 0 0 1 0 1 .0251 0 0 0 0 1 12.11 .0250 1 1 1 0 1 .0250 1 1 0 0 1 .0250 1 0 1 1 2.72 .0690 1 0 0 0 1 5.72 .0250 0 1 1 -1 0.37 .0090 0 1 0 0 1 .0250 0 0 1 0 1 .0250 0 0 0 0 1 3.37 .025 suma =39.70

Przykład jak wagi definiują rozkład. )(),( vhvhv ppeeE EE

E

E

e

ep ),( hv

-1h1 h2

+2 +1

v1 v2

0.466

0.305

0.144

0.084

E

E

e

e

p )(v

Page 15: Maszyny  Boltzmann a

Uzyskanie próbki z modelu.

• Jeśli jest więcej niż kilka ukrytych jednostek, używamy metodę Monte Carlo łańcuchów Markowa (ang. Markov Chain Monte Carlo, MCMC) aby uzyskać próbki z modelu:– Zacznij w przypadkowej konfiguracji globalnej.– Wybieraj jednostki przypadkowo, dopuszczając do

stochastycznego uaktualnienia ich stanów w oparciu o przyrosty energii (ang. energy gap)

– Użyj symulowanego wyżarzania by zredukować czas potrzebny do otrzymania równowagi cieplnej.

• W równowadze cieplnej, prawdopodobieństwo konfiguracji globalnej jest określone rozkładem Boltzmana.

)()(1

1)(

10

1

iii

TEi

sEsEEgapEnergye

spi

Page 16: Maszyny  Boltzmann a

Cel nauki

• Maksymalizacja wyniku prawdopodobieństwa, które maszyna Boltzmana przypisuje do wektorów w zbiorze treningowym.– Jest to równoznaczne z maksymalizacją sumy

logarytmów prawdopodobieństw wektorów treningowych .

– Jest to również równoznaczne z maksymalizacją prawdopodobieństw, że zaobserwujemy te wektory w jednostkach widzialnych jeśli weźmiemy przypadkowe próbki po uzyskaniu przez całą sieć równowagi cieplnej bez udziału sygnału zewnętrznego.

Page 17: Maszyny  Boltzmann a

Bardzo dziwny wynik

• Wszystko co jedna waga musi wiedzieć o innych wagach i o danych jest zawarte w różnicy dwóch korelacji.

freejijiij

ssssw

p

v

v)(log

Pochodna logarytmu prawdopodob. jednego wektora treningowego

wartość oczekiwana iloczynu stanów w równowadze cieplnej gdy wektor treningowy jest ‘wymuszony’ na

jednostkach widocznych

wartość oczekiwana iloczynu stanów w równowadze cieplnej gdy nic nie jest ‘wymuszone’

Page 18: Maszyny  Boltzmann a

Wsadowy algorytm uczenia.

• Faza pozytywna– Wymuś wektor danych na jednostkach widocznych. – Pozwól jednostkom ukrytym uzyskać równowagę cieplną o

temperaturze 1 (można użyć wyżarzania, by to przyspieszyć)– Policz dla wszystkich par jednostek– Powtórz dla wszystkich wektorów danych w zbiorze treningowym

• Faza negatywna– Nie wymuszaj żadnej z jednostek – Pozwól całej sieci osiągnąć równowagę cieplną o temperaturze 1

(gdzie zaczynamy?)– Policz dla wszystkich par jednostek.– Powtórz wielokrotnie aby dobrze oszacować wyniki

• Aktualizacja wag– Uaktualnij każdą wagę proporcjonalnie do różnicy w

w dwóch fazach

jiss

jiss

jiss

Page 19: Maszyny  Boltzmann a

Ograniczone Maszyny Boltzmana (ang. Restricted Boltzmann Machines)

• Ograniczamy spójność aby ułatwić wnioskowanie i uczenie.– Tylko jedna warstwa

jednostek ukrytych.– Brak połączeń między

jednostkami ukrytymi.• W RBM wystarczy jeden krok

aby uzyskać równowagę cieplną gdy jednostki widzialne są ‘wymuszone’.– Możemy więc szybko

otrzymać dokładną wartość :

visiijij wsb

j

e

sp)(

1

1)( 1

v jiss

ukryte

widocznei

j

Page 20: Maszyny  Boltzmann a

Algorytm uczenia ograniczonej maszyny Boltzmana

0 jiss1 jiss

i

j

i

j

t = 0 t = 1

)( 10 jijiij ssssw

Zacznij od wektora treningowego na jednostkach widocznych.

Uaktualnij równolegle wszystkie jednostki ukryte.

Uaktualnij równolegle wszystkie jednostki widoczne by uzyskać „rekonstrukcję”

Uaktualnij jednostki ukryte jeszcze raz.

Nie postępuje to z gradientem logarytmu prawdopodobieństwa (likelihood). Ale funkcjonuje bardzo dobrze.

rekonstrukcjadane

Page 21: Maszyny  Boltzmann a

Pytania?

Page 22: Maszyny  Boltzmann a

Boltzmann Machines

Pelna wersja

Page 23: Maszyny  Boltzmann a

Modeling binary data

• Given a training set of binary vectors, fit a model that will assign a probability to other binary vectors.– Useful for deciding if other binary vectors come from

the same distribution.– This can be used for monitoring complex systems to

detect unusual behavior.– If we have models of several different distributions it

can be used to compute the posterior probability that a particular distribution produced the observed data.

j

jModelpjModeldatap

iModelpiModeldatapdataiModelp

)()|(

)()|()|(

Page 24: Maszyny  Boltzmann a

Limitations of mixture models

• Mixture models assume that the whole of each data vector was generated by exactly one of the models in the mixture. – This makes is easy to compute the posterior distribution

over models when given a data vector.– But it cannot deal with data in which there are several

things going on at once.

mixture of 10 models mixture of 100 models

Page 25: Maszyny  Boltzmann a

Boltzmann Machine

• A Boltzmann machine is the name given to a type of simulated annealing stochastic recurrent neural network by Geoffrey Hinton and Terry Sejnowski.

• Boltzmann machines can be seen as the stochastic, generative counterpart of Hopfield nets.

• Boltzmann machine is a network of units with an "energy" units are binary stochastic.

• They were one of the first examples of a neural network capable of learning internal representations, and are able to represent and (given sufficient time) solve difficult combinatoric problems.

Page 26: Maszyny  Boltzmann a

Wejścia Wyjścia /i i ip V V E T

Maszyna Boltzmana

Stochastyczna siec atraktorowa Podobna do modelu Hopfielda

Binarne neuronySymetryczne połączeniaUkryte neurony.

Asynchroniczna dynamika.Neurony stochastyczne i stopniowe chłodzenie:

Page 27: Maszyny  Boltzmann a

ij i j i jdane szumW VV VV

Dzialanie Maszyn Boltzmana

Uczenie: sieć modeluje środowisko. Znaleźć zbiór wag pozwalających odtworzyć obserwowane częstości sygnałów wejściowych- model maksymalnego prawdopodobieństwa.

Założenia: sygnały wejściowe wolnozmiennesieć dochodzi do równowagibrak korelacji pomiędzy strukturami danych wejściowych:

prawdopodobienstwo p+(Va) każdego z 2n wektorów binarnych wystarczy.Różnice między działaniem swobodnym i wymuszonym pozwalają obliczyć korelacje wzbudzeń neuronów i pożądaną zmianę wag:

Page 28: Maszyny  Boltzmann a

Dealing with compositional structure

• Consider a dataset in which each image contains N different things:– A distributed representation requires a number of

neurons that is linear in N. – A localist representation (i.e. a mixture model)

requires a number of neurons that is exponential in N.• Mixtures require one model for each possible combination.

• Distributed representations are generally much harder to fit to data, but they are the only reasonable solution.– Boltzmann machines use distributed representations

to model binary data.

Page 29: Maszyny  Boltzmann a

Stochastic units

• Replace the binary threshold units by binary stochastic units that make biased random decisions.– The temperature controls the amount of noise.– Decreasing all the energy gaps between configurations

is equivalent to raising the noise level.– The probability of a unit being on is given by:

)()(

1

1

1

1)(

10

1

iii

TETwsi

sEsEEgapEnergy

eesp

ij ijj

temperature

ji

ijjiii

i wssbsE

Page 30: Maszyny  Boltzmann a

How a Boltzmann Machine models data

• It is not a causal generative model (like a mixture model) in which we first pick the hidden states and then pick the visible states given the hidden ones.

• Instead, everything is defined in terms of energies of joint configurations of the visible and hidden units.

• The visible units V are those which receive information from the "environment", i.e. the training set is a bunch of binary vectors over the set V

Page 31: Maszyny  Boltzmann a

The Energy of a joint configuration

ji

ijjiunitsi

ii wssbsE

bias of unit i

weight between units i and j

Energy with configuration alpha on the visible units and beta on the hidden units

binary state of unit i in joint configuration alpha, beta

indexes every non-identical

pair of i and j once

Page 32: Maszyny  Boltzmann a

Using energies to define probabilities

• The probability of a joint configuration over both visible and hidden units depends on the energy of that joint configuration compared with the energy of all other joint configurations.

• The probability of a configuration of the visible units is the sum of the probabilities of all the joint configurations that contain it.

E

E

e

ep ),( hv

E

E

e

e

p )(v

configuration alpha on the visible units

partition function

Page 33: Maszyny  Boltzmann a

Using energies to define probabilities

• Our goal is to approximate the "real" distribution p(v) using the p(v,h) produced (eventually) by the machine.

• To measure how similar the two distributions are we use the Kullback-Leibler distance, G:

• There are two phases of machine training.– “Positive" phase is where the visible units'

states are set to a particular binary state vector sampled from the training set.

– “Negative" phase where no units have their state determined by external data.

E

E

e

e

p )(v

E

E

e

ep ),( hv

),(

)(ln)(

hvp

vPvPG

v

Page 34: Maszyny  Boltzmann a

Using energies to define probabilities

• The gradient of G with respect to a given weight, wij, is given by the very simple equation:

• is the probability of units i and j both being on when the machine is at equilibrium on the positive phase.

• is the probability of units i and j both being on when the machine is at equilibrium on the negative phase.

),(

)(ln)(

hvp

vPvPG

v

ijijij

ppTw

G 1

ijp

ijp

Page 35: Maszyny  Boltzmann a

Using energies to define probabilities

• This result follows from the fact that at the thermal equilibrium the probability of any global state s when the network is free-running is given by the Boltzmann distribution (hence the name "Boltzmann machine").

• This learning rule is biologically plausible because the only information needed to change the weights is provided by "local" information. – That is, the connection (or biological synapse)

needs only information about the two neurons it connects.

ijijij

ppTw

G 1

Page 36: Maszyny  Boltzmann a

Noisy networks find better energy minima

• A Hopfield net always makes decisions that reduce the energy.– This makes it impossible to escape from local minima.

• We can use random noise to escape from poor minima.– Start with a lot of noise so its easy to cross energy

barriers. – Slowly reduce the noise

so that the system ends up in a deep minimum. This is “simulated annealing”.

• We will come back to simulated annealing later. For now, we will keep the noise level fixed to avoid unnecessary complications in explaining the other good things that result from using stochastic units.

A B C

Page 37: Maszyny  Boltzmann a

1 1 1 1 2 7.39 .186 1 1 1 0 2 7.39 .186 1 1 0 1 1 2.72 .069 1 1 0 0 0 1 18.5 .0251 0 1 1 1 2.72 .0691 0 1 0 2 7.39 .1861 0 0 1 0 1 .0251 0 0 0 0 1 12.11 .0250 1 1 1 0 1 .0250 1 1 0 0 1 .0250 1 0 1 1 2.72 .0690 1 0 0 0 1 5.72 .0250 0 1 1 -1 0.37 .0090 0 1 0 0 1 .0250 0 0 1 0 1 .0250 0 0 0 0 1 3.37 .025 total =39.70

An example of how weights define a distribution

)(),( vhvhv ppeeE EE

E

E

e

ep ),( hv

-1h1 h2

+2 +1

v1 v2

0.466

0.305

0.144

0.084

E

E

e

e

p )(v

Page 38: Maszyny  Boltzmann a

Getting a sample from the model

• If there are more than a few hidden units, we cannot compute the normalizing term (the partition function) because it has exponentially many terms.

• So use Markov Chain Monte Carlo (MCMC) to get samples from the model:– Start at a random global configuration– Keep picking units at random and allowing them to stochastically

update their states based on their energy gaps.

– Use simulated annealing to reduce the time required to approach thermal equilibrium.

• At thermal equilibrium, the probability of a global configuration is given by the Boltzmann distribution.

)()(1

1)(

10

1

iii

TEi

sEsEEgapEnergye

spi

Page 39: Maszyny  Boltzmann a

Getting a sample from the posterior distribution

• The number of possible hidden configurations is exponential so we need MCMC to sample from the posterior over distributed representationsfor a given data vector.– MCMC is just the same as getting a sample from the

model, except that we keep the visible units clamped to the given data vector.

• Only the hidden units are allowed to change states

• Samples from the posterior are required for learning the weights.

ijijij

ppTw

G 1

Page 40: Maszyny  Boltzmann a

The goal of learning

• Maximize the product of the probabilities that the Boltzmann machine assigns to the vectors in the training set.– This is equivalent to maximizing the sum of

the log probabilities of the training vectors.– It is also equivalent to maximizing the

probabilities that we will observe those vectors on the visible units if we take random samples after the whole network has reached thermal equilibrium with no external input.

Page 41: Maszyny  Boltzmann a

w2 w3 w4

Why the learning could be difficult

Consider a chain of units with visible units at the ends

If the training set is (1,0) and (0,1) we want the product of all the weights to be negative.

So to know how to change w1 or w5 we must know w3.

hidden

visible

w1 w5

Page 42: Maszyny  Boltzmann a

A very surprising fact

• Everything that one weight needs to know about the other weights and the data is contained in the difference of two correlations.

freejijiij

ssssw

p

v

v)(log

Derivative of log probability of one training vector

Expected value of product of states at thermal equilibrium when the training vector is clamped on the visible units

Expected value of product of states at thermal equilibrium when nothing is clamped

Page 43: Maszyny  Boltzmann a

The batch learning algorithm

• Positive phase– Clamp a datavector on the visible units. – Let the hidden units reach thermal equilibrium at a

temperature of 1 (may use annealing to speed this up)– Sample for all pairs of units– Repeat for all datavectors in the training set.

• Negative phase– Do not clamp any of the units – Let the whole network reach thermal equilibrium at a

temperature of 1 (where do we start?)– Sample for all pairs of units– Repeat many times to get good estimates

• Weight updates– Update each weight by an amount proportional to the

difference in in the two phases.

jiss

jiss

jiss

Page 44: Maszyny  Boltzmann a

Why is the derivative so simple?

• The probability of a global configuration at thermal equilibrium is an exponential function of its energy.– So settling to equilibrium makes the log

probability a linear function of the energy• The energy is a linear function of the weights

and states

• The process of settling to thermal equilibrium propagates information about the weights.

jiij

ssw

E

Page 45: Maszyny  Boltzmann a

Why do we need the negative phase?

The positive phase finds hidden configurations that work well with v and lowers their energies.

The negative phase finds the joint configurations that are the best competitors and raises their energies.

u g

gu,h

hv,

v)(

)(

)(E

E

e

e

p

Page 46: Maszyny  Boltzmann a

Restricted Boltzmann Machines

• We restrict the connectivity to make inference and learning easier.– Only one layer of hidden

units.– No connections between

hidden units.• In an RBM it only takes one

step to reach thermal equilibrium when the visible units are clamped.– So we can quickly get the

exact value of :

visiijij wsb

j

e

sp)(

1

1)( 1

v jiss

hidden

visiblei

j

Page 47: Maszyny  Boltzmann a

A picture of the Boltzmann machine learning algorithm for an RBM

0 jiss1 jiss

jiss

i

j

i

j

i

j

i

j

t = 0 t = 1 t = 2 t = infinity

)( 0 jijiij ssssw

Start with a training vector on the visible units.

Then alternate between updating all the hidden units in parallel and updating all the visible units in parallel.

a fantasy

Page 48: Maszyny  Boltzmann a

A surprising short-cut

0 jiss1 jiss

i

j

i

j

t = 0 t = 1

)( 10 jijiij ssssw

Start with a training vector on the visible units.

Update all the hidden units in parallel

Update the all the visible units in parallel to get a “reconstruction”.

Update the hidden units again.

This is not following the gradient of the log likelihood. But it works very well.

reconstructiondata

Page 49: Maszyny  Boltzmann a

Why does the shortcut work?• If we start at the data, the Markov chain wanders away

from them data and towards things that it likes more. We can see what direction it is wandering in after only a few steps. It’s a big waste of time to let it go all the way to equilibrium.– All we need to do is lower the probability of the

“confabulations” it produces and raise the probability of the data. Then it will stop wandering away.

• The learning cancels out once the confabulations and the data have the same distribution.

• We need to worry about regions of the data-space that the model likes but which are very far from any data.– These regions cause the normalization term to be big

and we cannot sense them if we use the shortcut.

Page 50: Maszyny  Boltzmann a

Neurodynamika

Spoczynkowa aktywność neuronów (1-5 impulsów/sek) Ok. 10.000 impulsów/sek dochodzi do neuronu w pobliżu progu.

1. Stabilna sieć z aktywnością spoczynkową: globalny atraktor.2. Uczenie się przez tworzenie nowych atraktorów.

Model Amit, Brunel 1995Aktywność tła ma charakter stochastyczny.Jednorodność: neurony w identycznym środowisku. Impulsy wysyłane przez różne neurony nie są skorelowane. Aktywacja neuronu jest sumą wkładów synaptycznych.

Page 51: Maszyny  Boltzmann a

Inne

obszary

kory Lokalna podsieć

Lokalna podsiećpobudzająca

hamująca

wyjście

Schemat kolumny

Ogólny schemat sieci: model kolumny, 105 neuronów.Kolumna ma około 1 mm2, 105 neuronów.

Połączenia: pobudzające i hamujące wewnątrz modułu, pobudzające dochodzące z zewnątrz (komórki piramidowe).

50-80% impulsów z lokalnych obwodów pobudzających. Około 20% jednostek hamujących; C ~ 20.000 synaps/neuron;

Page 52: Maszyny  Boltzmann a

( ) ( ) ( )V t V t I t

Struktura sieci

Sieć złożona z lokalnych modułów.

Uczenie: początkowo moduł biorący udział w rozpoznawaniu zwiększa w nieselektywny sposób częstość impulsacji dla wszystkich sygnałów.Powyżej krytycznej wartości wzmocnienia LTP pojawiają się lokalne atraktory na tle globalnej aktywności - struktura sygnału uczącego. Aktywność spoczynkowa rośnie do około 20 Hz, utrzymuje się po zniknięciu bodźca - aktywna reprezentacja bodźca w pamięci. Pobudzenia wewnętrzne silniejsze niż zewnętrzne, utrzymują spontaniczną aktywność, modelowane przez rozkład Poissona. 50-80% impulsów z lokalnych obwodów pobudzających o modyfikowalnych synapsach.

Depolaryzacja membrany V(t) o t10ms opisana jest równaniem: