Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli...

61
Przypomnienie Sieci Hopfielda w optymalizacji grafowej Uwagi Wstęp do sieci neuronowych, wyklad 12 Wykorzystanie sieci rekurencyjnych w optymalizacji grafowej Maja Czoków, Jaroslaw Piersa Wydzial Matematyki i Informatyki, Uniwersytet Mikolaja Kopernika 2013-01-09 Projekt pn. „Wzmocnienie potencjalu dydaktycznego UMK w Toruniu w dziedzinach matematyczno-przyrodniczychrealizowany w ramach Poddzialania 4.1.1 Programu Operacyjnego Kapital Ludzki M. Czoków, J. Piersa WSN 2011/2012 Wyklad 12

Transcript of Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli...

Page 1: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

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

grafowej

Maja Czoków, Jarosław Piersa

Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika

2013-01-09

Projekt pn. „Wzmocnienie potencjału dydaktycznego UMK w Toruniu w dziedzinach matematyczno-przyrodniczych”realizowany w ramach Poddziałania 4.1.1 Programu Operacyjnego Kapitał Ludzki

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 2: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

1 PrzypomnienieSieci Hopfielda

2 Sieci Hopfielda w optymalizacji grafowejDwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

3 UwagiZłożoność pamięciowaDynamika stochastyczna

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 3: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

UwagiSieci Hopfielda

1 PrzypomnienieSieci Hopfielda

2 Sieci Hopfielda w optymalizacji grafowejDwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

3 UwagiZłożoność pamięciowaDynamika stochastyczna

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 4: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

UwagiSieci Hopfielda

Model sieci rekurencyjnej

każda jednostka ma przypisanyswój spin σi ∈ {−1,+1} — jestto aktualna aktywacja neuronu i ,która może się zmieniać podczasdynamiki,

połączenia synaptyczne mająprzypisane wagi wij = wji ∈ R,

przyjmujemy wii = 0,

jeżeli krawędzi nie ma w grafie,to przyjmujemy w = 0,

ponadto neurony otrzymująswoje pole zewnętrzne hi ∈ R —podobnie jak wagi są to wartościustalone w trakcie procesuuczenia.M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 5: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

UwagiSieci Hopfielda

Energia sieci

Określmy energię sieci zależną od bieżącej konfiguracji spinówneuronów:

energia

E (σ̄) = −12

∑i 6=jwijσiσj −

∑i

hiσi

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 6: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

UwagiSieci Hopfielda

Dynamika Glaubera

Losujemy neuron σi ,

Przypisujemyσi = sign(

∑j

wijσj + hi )

Powtarzamy 1 i 2 aż do ustabilizowania się sytuacji.

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 7: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

UwagiSieci Hopfielda

Dynamika Little’a

Rozpoczynamy z losowego σ̄0

Powtarzamy wielokrotnie:Przypisujemy

σ̄t+1 := sign(W · σ̄t + h̄)

gdzie W = [wij ]i ,j=1..N — macierz wag,h̄ — wektor pól zewnętrznych,σ̄t — wektor spinów w t-tym kroku.

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 8: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

1 PrzypomnienieSieci Hopfielda

2 Sieci Hopfielda w optymalizacji grafowejDwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

3 UwagiZłożoność pamięciowaDynamika stochastyczna

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 9: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Dwupodział Grafu

Problem:

Dany jest graf ważony G = (V, E), v : E → R≥0.

Cel:

Podzielić V na dwa podzbiory V = U1 ∪ U2, takie że sumarycznawaga krawędzi pomiędzy U1 a U2 będzie minimalna.

Krawędzie w obrębie jednej klasy (z U1 do U1 oraz z U2 do U2) sądarmowe. ∑

(u,v)∈E:u∈U1,v∈U2

v((u, v))→ min

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 10: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Dwupodział Grafu

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 11: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Konfiguracja sieci

Oznaczenia:

spin neuronu σi = +1:przynależność do zbioru U1,vi ∈ U1,spin σi = −1: vi ∈ U2.konfiguracja ¯sigmajednoznacznie odpowiadapodziałowi V na dwapodzbiory.

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 12: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Składnik optymalizujący:

E1(σ̄) = −∑i 6=j

σiσjv(ij)

Składnik penalizujący:

E2(σ̄) = (|U1| − |U2|)2 =

(∑i

σi

)2Pomiń obliczenia

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 13: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Składnik optymalizujący:

E1(σ̄) = −∑i 6=j

σiσjv(ij)

Składnik penalizujący:

E2(σ̄) = (|U1| − |U2|)2 =

(∑i

σi

)2Pomiń obliczenia

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 14: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

EnergiaE (σ̄) = c1E1 + c2E2

Gdzie c1, c2 > 0 są skalarami. Powinno przy tym zachodzić:c1E1 ' c2E2.W efekcie:

E (σ̄) = −c1

∑i 6=j

σiσjv(i , j)

+ c2

∑i 6=j

σiσj +∑i

σ2i

ponieważ

∑i σ2i =

∑i 1 = const

E (σ̄) = −12

∑i 6=j

σiσj 2 (c1 · v(i , j)− c2)

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 15: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

EnergiaE (σ̄) = c1E1 + c2E2

Gdzie c1, c2 > 0 są skalarami. Powinno przy tym zachodzić:c1E1 ' c2E2.W efekcie:

E (σ̄) = −c1

∑i 6=j

σiσjv(i , j)

+ c2

∑i 6=j

σiσj +∑i

σ2i

ponieważ

∑i σ2i =

∑i 1 = const

E (σ̄) = −12

∑i 6=j

σiσj 2 (c1 · v(i , j)− c2)

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 16: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

EnergiaE (σ̄) = c1E1 + c2E2

Gdzie c1, c2 > 0 są skalarami. Powinno przy tym zachodzić:c1E1 ' c2E2.W efekcie:

E (σ̄) = −c1

∑i 6=j

σiσjv(i , j)

+ c2

∑i 6=j

σiσj +∑i

σ2i

ponieważ∑i σ2i =

∑i 1 = const

E (σ̄) = −12

∑i 6=j

σiσj 2 (c1 · v(i , j)− c2)

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 17: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

EnergiaE (σ̄) = c1E1 + c2E2

Gdzie c1, c2 > 0 są skalarami. Powinno przy tym zachodzić:c1E1 ' c2E2.W efekcie:

E (σ̄) = −c1

∑i 6=j

σiσjv(i , j)

+ c2

∑i 6=j

σiσj +∑i

σ2i

ponieważ∑i σ2i =

∑i 1 = const

E (σ̄) = −12

∑i 6=j

σiσj 2 (c1 · v(i , j)− c2)

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 18: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

EnergiaE (σ̄) = c1E1 + c2E2

Gdzie c1, c2 > 0 są skalarami. Powinno przy tym zachodzić:c1E1 ' c2E2.W efekcie:

E (σ̄) = −c1

∑i 6=j

σiσjv(i , j)

+ c2

∑i 6=j

σiσj +∑i

σ2i

ponieważ

∑i σ2i =

∑i 1 = const

E (σ̄) = −12

∑i 6=j

σiσj 2 (c1 · v(i , j)− c2)

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 19: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

EnergiaE (σ̄) = c1E1 + c2E2

Gdzie c1, c2 > 0 są skalarami. Powinno przy tym zachodzić:c1E1 ' c2E2.W efekcie:

E (σ̄) = −c1

∑i 6=j

σiσjv(i , j)

+ c2

∑i 6=j

σiσj +∑i

σ2i

ponieważ

∑i σ2i =

∑i 1 = const

E (σ̄) = −12

∑i 6=j

σiσj 2 (c1 · v(i , j)− c2)

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 20: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Wagi

Otrzymujemy zależności na:

wagi

wij = 2 (c1 · v(i , j)− c2)

oraz

pola zewnętrzne

hi = 0

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 21: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Kolorowanie wierzchołkowe

Problem:

Dany graf G = (V, E) oraz k kolorów {1, .., k}.

Cel:

Chcemy każdemu z wierzchołków v ∈ V przypisać jeden z k kolorów,tak aby sąsiadujące wierzchołki otrzymały różne kolorowania. Tzn.znaleźć funkcję F : V → {1, .., k} spełniającą:

∀(u,v)∈EF (u) 6= F (v)

Jeżeli graf jest planarny, to k ≤ 4.

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 22: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Konfiguracja sieci

N = k |V| neuronów, indeksowanych podwójnym oznaczeniemσiα,

i — numer wierzchołka w grafie, α — numer koloru,

σiα ∈ {0,+1},σiα = +1 — wierzchołek i ma przypisany kolor α,

σiα = 0 — wierzchołek i nie ma przypisanego koloru α,

konfiguracja dopuszcza przypisanie więcej niż jednego kolorujednocześnie.

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 23: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Konfiguracja sieci

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 24: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Pomiń obliczenia

Oznaczmy

vij =

{+1 (i , j) ∈ E0 wpw

δαβ =

{+1 α = β0 wpw

Składnik optymalizujący energii:

E1(σ̄) = c1∑i 6=j

∑α,β

vij · σiα · σjβ · δαβ

E1(σ̄) = −12

∑i ,j ,α,β

−2c1vij · δαβ · σiα · σjβ

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 25: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Pomiń obliczenia

Oznaczmy

vij =

{+1 (i , j) ∈ E0 wpw

δαβ =

{+1 α = β0 wpw

Składnik optymalizujący energii:

E1(σ̄) = c1∑i 6=j

∑α,β

vij · σiα · σjβ · δαβ

E1(σ̄) = −12

∑i ,j ,α,β

−2c1vij · δαβ · σiα · σjβ

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 26: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Pomiń obliczenia

Oznaczmy

vij =

{+1 (i , j) ∈ E0 wpw

δαβ =

{+1 α = β0 wpw

Składnik optymalizujący energii:

E1(σ̄) = c1∑i 6=j

∑α,β

vij · σiα · σjβ · δαβ

E1(σ̄) = −12

∑i ,j ,α,β

−2c1vij · δαβ · σiα · σjβ

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 27: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Pomiń obliczenia

Oznaczmy

vij =

{+1 (i , j) ∈ E0 wpw

δαβ =

{+1 α = β0 wpw

Składnik optymalizujący energii:

E1(σ̄) = c1∑i 6=j

∑α,β

vij · σiα · σjβ · δαβ

E1(σ̄) = −12

∑i ,j ,α,β

−2c1vij · δαβ · σiα · σjβ

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 28: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Pomiń obliczenia

Oznaczmy

vij =

{+1 (i , j) ∈ E0 wpw

δαβ =

{+1 α = β0 wpw

Składnik optymalizujący energii:

E1(σ̄) = c1∑i 6=j

∑α,β

vij · σiα · σjβ · δαβ

E1(σ̄) = −12

∑i ,j ,α,β

−2c1vij · δαβ · σiα · σjβ

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 29: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Składnik penalizujący energii:

E2(σ̄) = c2∑i

(−1 +

∑α

σiα

)2

E2(σ̄) = c2∑i

1− 2∑α

σiα +∑α6=β

σiασiβ +∑α

σ2iα

= c2

N −∑i

∑α

σiα +∑i

∑α 6=β

σiασiβ

= c2

N −∑iα

σiα +∑j

δij∑i

∑α6=β

σiασiβ

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 30: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Składnik penalizujący energii:

E2(σ̄) = c2∑i

(−1 +

∑α

σiα

)2

E2(σ̄) = c2∑i

1− 2∑α

σiα +∑α6=β

σiασiβ +∑α

σ2iα

= c2

N −∑i

∑α

σiα +∑i

∑α 6=β

σiασiβ

= c2

N −∑iα

σiα +∑j

δij∑i

∑α6=β

σiασiβ

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 31: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Składnik penalizujący energii:

E2(σ̄) = c2∑i

(−1 +

∑α

σiα

)2

E2(σ̄) = c2∑i

1− 2∑α

σiα +∑α6=β

σiασiβ +∑α

σ2iα

= c2

N −∑i

∑α

σiα +∑i

∑α 6=β

σiασiβ

= c2

N −∑iα

σiα +∑j

δij∑i

∑α6=β

σiασiβ

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 32: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Składnik penalizujący energii:

E2(σ̄) = c2∑i

(−1 +

∑α

σiα

)2

E2(σ̄) = c2∑i

1− 2∑α

σiα +∑α6=β

σiασiβ +∑α

σ2iα

= c2

N −∑i

∑α

σiα +∑i

∑α 6=β

σiασiβ

= c2

N −∑iα

σiα +∑j

δij∑i

∑α 6=β

σiασiβ

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 33: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Składnik penalizujący energii:

E2(σ̄) = −c22

−2∑iα

σiα + 2∑ijαβ

δij(1− δαβ)σiασiβ

E = E1 + E2

E (σ̄) = −12

∑i ,j ,α,β

(−2c1vijδαβ − 2c2δij(1− δαβ))σiασjβ +∑iα

σiαc2

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 34: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Składnik penalizujący energii:

E2(σ̄) = −c22

−2∑iα

σiα + 2∑ijαβ

δij(1− δαβ)σiασiβ

E = E1 + E2

E (σ̄) = −12

∑i ,j ,α,β

(−2c1vijδαβ − 2c2δij(1− δαβ))σiασjβ +∑iα

σiαc2

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 35: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Składnik penalizujący energii:

E2(σ̄) = −c22

−2∑iα

σiα + 2∑ijαβ

δij(1− δαβ)σiασiβ

E = E1 + E2

E (σ̄) = −12

∑i ,j ,α,β

(−2c1vijδαβ − 2c2δij(1− δαβ))σiασjβ +∑iα

σiαc2

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 36: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Wagi

Otrzymujemy zależności na:

wagi

wijαβ = −2c1vijδαβ − 2c2δij(1− δαβ)

oraz

pola zewnętrzne

hiα = c2

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 37: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Cykl Hammiltona

Problem:

Dany jest graf ważony G = (V, E) oraz wagi krawędzi v : V × V → R.Jeżeli (u1u2) /∈ E , to jej waga jest duża v((u1u2))� N ·maxe∈Ev(e).

Cel:

Chcemy znaleźć kolejność wierzchołków (permutację τ ∈ SN), takąby odwiedzenie wierzchołków w jej kolejności, dało minimalny koszt.

N−1∑i=1

v((uτ(i)uτ(i+1))) + v(uτNuτ1)→ min

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 38: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Konfiguracja sieci

sieć składa się z N2 = |V|2 neuronów indeksowanych podwójnymoznaczeniem σiµ,

σiµ = +1 — µ-tym elementem cyklu jest wierzchołek vi ,

σiµ = 0 — że wierzchołek vi nie został odwiedzony w krokuµ-tym cyklu,

konfiguracja σ̄ dopuszcza sytuacje, w których jakiś wierzchołekmoże być odwiedzony więcej niż raz,

dopuszamy też odwiedzenie dwóch lub więcej wierzchołków naraz.

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 39: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Cykl Hammiltona

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 40: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Składnik optymalizujący energii:

E1(σ̄) = c1∑iµ

∑jν

vij · (δµ,ν−1 + δµ−1,ν) · σiµσjν

Składnik penalizujący energii:

E2(σ̄) = c2∑µ

(∑i

σiµ − 1

)2+ c2

∑i

(∑µ

σiµ − 1

)2Pomiń obliczenia

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 41: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Składnik optymalizujący energii:

E1(σ̄) = c1∑iµ

∑jν

vij · (δµ,ν−1 + δµ−1,ν) · σiµσjν

Składnik penalizujący energii:

E2(σ̄) = c2∑µ

(∑i

σiµ − 1

)2+ c2

∑i

(∑µ

σiµ − 1

)2Pomiń obliczenia

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 42: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

E2(σ̄) = c2∑

µ

(∑i σ2iµ +

∑i 6=j σiµσjµ − 2

∑i σiµ + 1

)+ c2

∑i

(∑µ σ2iµ +

∑µ 6=ν σiµσiν − 2

∑µ σiµ + 1

)

E2(σ̄) = c2∑

µν δµν∑ij (1− δij)σiµσjν − c2

∑iµ σiµ

+ c2∑i ,j δij

∑µν (1− δµν)σiµσjν − c2

∑iµ σiµ

E2(σ̄) = c2∑ijµν

(δµν(1− δij) + δij(1− δµν))σiµσjν − 2c2∑iµ

σiµ

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 43: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

E2(σ̄) = c2∑

µ

(∑i σ2iµ +

∑i 6=j σiµσjµ − 2

∑i σiµ + 1

)+ c2

∑i

(∑µ σ2iµ +

∑µ 6=ν σiµσiν − 2

∑µ σiµ + 1

)E2(σ̄) = c2

∑µν δµν

∑ij (1− δij)σiµσjν − c2

∑iµ σiµ

+ c2∑i ,j δij

∑µν (1− δµν)σiµσjν − c2

∑iµ σiµ

E2(σ̄) = c2∑ijµν

(δµν(1− δij) + δij(1− δµν))σiµσjν − 2c2∑iµ

σiµ

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 44: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

E2(σ̄) = c2∑

µ

(∑i σ2iµ +

∑i 6=j σiµσjµ − 2

∑i σiµ + 1

)+ c2

∑i

(∑µ σ2iµ +

∑µ 6=ν σiµσiν − 2

∑µ σiµ + 1

)E2(σ̄) = c2

∑µν δµν

∑ij (1− δij)σiµσjν − c2

∑iµ σiµ

+ c2∑i ,j δij

∑µν (1− δµν)σiµσjν − c2

∑iµ σiµ

E2(σ̄) = c2∑ijµν

(δµν(1− δij) + δij(1− δµν))σiµσjν − 2c2∑iµ

σiµ

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 45: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

E2(σ̄) = c2∑

µ

(∑i σ2iµ +

∑i 6=j σiµσjµ − 2

∑i σiµ + 1

)+ c2

∑i

(∑µ σ2iµ +

∑µ 6=ν σiµσiν − 2

∑µ σiµ + 1

)E2(σ̄) = c2

∑µν δµν

∑ij (1− δij)σiµσjν − c2

∑iµ σiµ

+ c2∑i ,j δij

∑µν (1− δµν)σiµσjν − c2

∑iµ σiµ

E2(σ̄) = c2∑ijµν

(δµν(1− δij) + δij(1− δµν))σiµσjν − 2c2∑iµ

σiµ

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 46: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

E (σ̄) = −12

∑ijµν

σiµσjν · (−c2(δµν(1− δij) + δij(1− δµν))−

−c1vij(δµ,ν−1 + δµ−1,ν))− c2∑iµ

σiµ

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 47: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Wagi

Otrzymujemy zależności na:

wagi

wijµν = −c2(δµν(1− δij) + δij(1− δµν))− c1vij(δµ,ν−1 + δµ−1,ν))

oraz na

pola zewnętrzne

hiµ = c2

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 48: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Przydział zadań

Problem:

Danych jest N zadań oraz N wykonawców. Koszt wykonania zadaniaα przez wykonawcę i wynosi viα, gdzie i , α = 1..N.

Cel:

Chcemy przyporządkować zadania wykonawcom tak, aby każdezadanie zostało wykonane oraz każdy wykonawca wykonał zadanie.Szukamy najtańszego przydziału (permutacji τ ∈ SN):∑

i

vi ,τi → min

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 49: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Konfiguracja sieci

sieć liczy N2 neuronów indeksowanych podwójnym oznaczeniemσiα,

i — numer pracy, α — numer wykonawcy,

Niech σiα ∈ {0,+1},σiα = +1 — zadanie i wykonuje pracownik α,

σiα = 0 — zadania i nie wykonuje pracownik α,

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 50: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Składnik optymalizujący energii:

E1(σ̄) = c1∑iα

viασiα

Składnik penalizujący energii:

E2(σ̄) = c2∑α

(∑i

σiα − 1

)2+ c2

∑i

(∑α

σiα − 1

)2

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 51: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Składnik optymalizujący energii:

E1(σ̄) = c1∑iα

viασiα

Składnik penalizujący energii:

E2(σ̄) = c2∑α

(∑i

σiα − 1

)2+ c2

∑i

(∑α

σiα − 1

)2

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 52: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Energia sieci

Po przeliczeniach (analogicznie jak przy cyklu Hammiltona):

E2(σ̄) = c2∑ijαβ

(δαβ(1− δij) + δij(1− δαβ))σiασjβ − 2c2∑iα

σiα

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 53: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Dwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

Wagi

Zależności na:

wagi

wijαβ = −2c2 (δαβ(1− δij) + δij(1− δαβ))

oraz na

pola zewnętrzne

hiα = 2c2 − c1viα

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 54: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Złożoność pamięciowaDynamika stochastyczna

1 PrzypomnienieSieci Hopfielda

2 Sieci Hopfielda w optymalizacji grafowejDwupodział grafuKolorowanie wierzchołkoweCykl HammiltonaPrzydział zadań

3 UwagiZłożoność pamięciowaDynamika stochastyczna

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 55: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Złożoność pamięciowaDynamika stochastyczna

Reprezentacja naiwna

int N=100;float wagi[N][N][N][N];

Niech |V| = N = 100,

Sieć liczy N2 = 104 neuronów,

Ilość krawędzi synaptycznych (N2)2 = 108,

Tablica float-ów (4B) — 400MB na sieć...

Wagi są symetryczne wijαβ = wjiβα, więc tablice dynamiczneredukują o połowę.

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 56: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Złożoność pamięciowaDynamika stochastyczna

Jak oszczędzić?

Wagi w autoasocjatorze Hopfielda:

wij = − 1N

P∑µ=1

ξµi ξµj ,

∑Pµ=1 ξ

µi ξ

µj ∈ −P, ...,+P,

P � N2, więc 1B wystarczy na 127 wzorców,

zamiast tablicy wag przetrzymujemy P � N2 tablic z wzorcamiuczącymi,

wymaga to PN2 = 100 · 10000(·4B) = 4MB (za cenę liczeniawag za każdym razem).

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 57: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Złożoność pamięciowaDynamika stochastyczna

Jak oszczędzić?

Wagi w problemie kolorowania wierzchołków:

wijαβ = −2c1vijδαβ − 2c2δij(1− δαβ)

c1 i c2 są stałe,

δαβ, δij ∈ {0, 1} i można je policzyć w czasie stałym,

vij jest jedyną informacją, którą trzeba przechować,

tablica (symetryczna) v zajmie N2 · 4B = 40kB

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 58: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Złożoność pamięciowaDynamika stochastyczna

Dynamika stochastyczna

1 Rozpoczynamy ze startowego lub losowego układu spinów σ̄,2 Powtarzamy wielokrotnie:

1 Próbujemy zmienić spin losowo wybranej jednostki,2 Jeżeli redukuje to energię, to przyjmujemy tą zmianę,3 Jeżeli zwiększa to energię o ∆E , to przyjmujemy zmianę z

prawdopodobieństwem

P = exp(−β∆E )

i odrzucamy z komplementarnym. β > 0 jest temperaturąodwrotną i rośnie w trakcie dynamiki.

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 59: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Złożoność pamięciowaDynamika stochastyczna

Ewolucja sieci Hopfielda w wysokiej temperaturze

Uwaga. Animacja jest znacznie przyśpieszona i może powodowaćzmęczenie wzroku!

click

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 60: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Złożoność pamięciowaDynamika stochastyczna

Ewolucja sieci Hopfielda w niskiej temperaturze

Uwaga. Animacja jest znacznie przyśpieszona i może powodowaćzmęczenie wzroku!

click

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12

Page 61: Wstep do sieci neuronowych, wyklad 12 Wykorzystanie sieci ...piersaj/www/contents/... · jeżeli krawędzi nie ma w grafie, to przyjmujemy w = 0, ponadto neurony otrzymują swoje

PrzypomnienieSieci Hopfielda w optymalizacji grafowej

Uwagi

Złożoność pamięciowaDynamika stochastyczna

Zadania

Przedstaw sposób kodowania problemu grafowego (dwupodział,kolorowanie, cykl Hammiltona) na konfigurację sieci neuronowej.

Zaimplementuj sieć neuronową do rozwiązywania problemugrafowego (jeden z powyższych).

Przemodeluj reprezentację, aby sieć mogła pracować nawiększych danych.

Zapoznaj się z zagadnieniem symulowanego wyżarzania(simmulated annealing). Dodaj ten mechanizm doimplementacji.

M. Czoków, J. Piersa WSN 2011/2012 Wykład 12