25
Inteligencja Obliczeniowa Inteligencja Obliczeniowa Binarne modele pamięci Binarne modele pamięci skojarzeniowych skojarzeniowych Wykład 4 Włodzisław Duch Katedra Informatyki Stosowanej UMK Google: W. Duch

Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

  • Upload
    louise

  • View
    63

  • Download
    0

Embed Size (px)

DESCRIPTION

Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych. Wykład 4 Włodzisław Duch Katedra Informatyki Stosowanej UMK Google: W. Duch. Co już było. SDM, Rozproszona Pamięć Komórkowa CMAC – model móżdżku. RAMnet – sieci n -ek. Sieć Hamminga Macierz ucząca się Steinbucha - PowerPoint PPT Presentation

Citation preview

Page 1: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

Inteligencja ObliczeniowaInteligencja Obliczeniowa

Binarne modele pamięci Binarne modele pamięci skojarzeniowychskojarzeniowych

Wykład 4

Włodzisław DuchKatedra Informatyki Stosowanej UMK

Google: W. Duch

Page 2: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

Neurony logiczneNeurony logiczne

• Co już było.

• SDM, Rozproszona Pamięć Komórkowa

• CMAC – model móżdżku.

• RAMnet – sieci n-ek

• Sieć Hamminga

• Macierz ucząca się Steinbucha

• MBR - Memory Based Reasoning.

• Co będzie dalej.

Page 3: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

Szybka powtórkaSzybka powtórka

• Modele bezwagowe, korelacyjne, Hebbowskie

• Pamięć autoasocjacyjna i rozpoznawcza BCM

• Macierze korelacji.

• Model BAM.

Page 4: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

SDM, Sparse Distributed Memory (Kanerva 1988).

Model statystyczny, inspiracja: pamięć w móżdżku.

Jaka jest funkcja neuronu?

Neuron biologiczny wykrywa korelacje (t,x).

1. Sygnały z dendrytów definiują hiperpłaszczyzny dyskryminujące.

2. Sygnały z dendrytów działają jako klucze-adresy.

SDM, Rozproszona Pamięć KomórkowaSDM, Rozproszona Pamięć Komórkowa

0i ii

W x

Page 5: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

SDM, cd.1SDM, cd.1

• Uwagi wstępne.

Synapsy w niektórych częściach mózgu zmieniają swój stan skokowo – resorpcja kolców dendrytycznych?

Powolne i gwałtowne zmiany współistnieją.Neurony początkowo reagują przypadkowo na kombinację pobudzeń. ¾ wszystkich neuronów jest w móżdżku, kodują głównie złożone

ruchy, każdy neuron ma 103-105 wejść. Potraktujmy je binarnie.

Jak zapisać/odczytać długie ciągi bitów wykorzystując przypadkowe adresy? Nawet 100 bitów daje 2100=1030 możliwości.

Mając do dyspozycji 1010 komórek w móżdżku trzeba przypisać każdej hipersferę i notować, czy pojawił się w niej jakiś element, a więc traktować jako znacznik.

Page 6: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

SDM, cd.2SDM, cd.2

• Problem najlepszego wzorca: Dany wektor bitów z,

znaleźć najbardziej podobny zapamiętany wektor.

Adres neuronu o wagach W = {W0, W1,..Wn-1}, Wi=±1

a = {(W0), (W1), ... (Wn-1)}

Neuron o 4 wejściach, wagach W={}, a =1000, =+1, realizuje funkcję:

Reaguje na ciągi binarne x o odległości Hamminga d(x,a)

0 1 2 3( ) ( )u x x x x x

Page 7: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

Próg decyduje o promieniu Hamminga (liczbie bitów) wokół a.

n duże, 2n stanów, znikomy procent użyty w czasie treningu. N ciągów n-bitów w kuli o promieniu d, funkcja rozkładu N(d).

Wektory binarne przypadkowe: średnia odległość do najbliższego wektora dla dużego n wynosi n/2 a wariancja rozkładu średniej odległości n/4.

SDM, cd.3SDM, cd.3

1 1; ,

2 2

nnN l n

l

/ 2 / 4n n

Zakładamy, że każdy bit jest jednakowo prawdopodobny.

l bitów o wartości 1 w ciągu n bitów opisany rozkładem dwumiennym

Przybliżenie rozkładem Gaussa: max. dla n/2, wąski pik rozkładu

Page 8: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

Sieć neuronów - dekodery adresów, pamiętają prototypy ciągów bitów a, reagując na adresy z hipersfery o promieniu .

„ Pamięć oszczędna”, zamiast 2n komórek tylko adresy zajęte.

• Czy to wystarczy jako pamięć rozpoznawcza?

Nieliczne komórki RAM, adresy fizyczne (hard locations). Np. N'=220 na N=21000 komórek.

Adres fizyczny reprezentuje średnio 2980 logicznych.

SDM, cd.4SDM, cd.4

Page 9: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

Prawd. rozkładu N(d; x) liczby N ciągów bitów oddalonych o d od x

Rozkład dla adresów fizycznych N'(d; x) jest analogiczny.

Prawdopodobieństwo p znalezienia ciągu y poza sferą o promieniu d wynosi 1-N(d; x).

Dla N' punktów całkowite p = (1-N(d; x))N‘ Prawd. znalezienia jednego z N’ adresów w odległości d:

SDM, cd. 5SDM, cd. 5

'

' ' ( )

'( ) 1 1 ( )

1 1 ' ( ) / ' 1

N

N N N d

N d N d

N N d N e

( ) Pr ( , ) | ,N d d x y d x y N

Page 10: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

Dla N'=220 oraz n = 1000 98% ciągów bitów ma d(x) pomiędzy 411 do 430 bitów.1 na 10.000 ma d<400 bitów lub d> 432 bity.Wniosek:

najbliższy adres fizyczny może mieć > 40% różnych bitów.

Rozwiązanie : rozproszone przechowywanie tego samego ciągu bitów pod wieloma adresami.

Ciągi bitów znajdują się pod fizycznymi adresami w O(r,x) o promieniu r wokół x.

Zbiór adresów fizycznych O'(r,x)=N'O(r,x) to mała część N'. Np. dla r = 451 bitów to około 1000, czyli N’/1000. Dla O'(r,x), O'(r,y) liczba wspólnych fizycznych adresów

maleje eksponencjalnie.

Pytanie z, odpowiedź – średnia z otoczenia z.

SDM, cd. 6SDM, cd. 6

Page 11: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

Iteracje: z uśredniane wielokrotnie.

Np. zi(1) będzie 0 lub 1 jeśli większość bitów yi = 0 lub 1.

Jeśli odległość d(z,x) jest zbyt duża ciąg rozbiega się.

Pojemność: c(n) N'

L. słów/komórkę pamięci c(n) maleje:

16.5% dla n=102, 10% dla n=103, 7% dla n=104 5% dla n=105.

Przepełnienie: SDM zapomina stare wzorce.

SDM, cd. 6SDM, cd. 6

Page 12: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

SDM, zastosowaniaSDM, zastosowaniaPamięć rozpoznawcza.Klasyfikacja obiektów.

Cmattie (Anwar, Franklin 2000), „świadomy agent programowy”, wg. teorii Baarsa.

• Realizacje VLSI.• Analiza działania

móżdżku. • Sterowanie?

Page 13: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

CMACCMAC

• Cerebellar Model Arithmetic Computer (Albus 1971).

Model również wzorowany na móżdżku.

• n-wymiarowa przestrzeń wejściowa X = {x=(x1,...xn)}

• Przestrzeń asocjacyjna A, zbiory G-wymiarowe.

• Kwantowanie danych qi = Q(xi) daje numery kwantów qi

• Segmenty pamięci wirtualnej, vij=V(qi), i=1..n, j=1..G.

• Konkatenacja segmentów daje adres wirtualny

vj=[v1j v2j ... vnj], j=1..G • Adres fizyczny RAM: funkcja mieszająca hj=H(vj).

Page 14: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

CMAC - schemat

Wynik: suma W(hj) dla j=1..G

X

Przestrzeń wejściowa Przestrzeń asocjacji, G=3

Pamięć fizyczna

A W

x1

x2

x3

v

vij

Page 15: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

CMAC - działanieCMAC - działanie

Uczenie: pary danych (x,y), odpowiedź sieci C(x)

( ) /i iW W y C x G

• Współczynnik uogólniania G rzędu 10-1000. • Zbiory asocjacyjne: topograficznie poprawne rozmywanie danych,

lokalne uogólnianie. • Zbiory A dla bliskich x mają elementy wspólne.• Prezentacja x pobudza element A, komórki RAM, sumuje się wag

tych komórek. • Zastosowania: aproksymacja, kontrola procesów, np. sterowanie

kończynami robota.

Page 16: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

Metoda Metoda nn-ek-ek

RAMnets, metoda n-ek (1959), rozpoznawanie wzorców.Chociaż stara i nikt jej nie zna to jest prosta i daje dobre wyniki.Główna idea: utwórz M nowych cech.

A-liczba cech, przeznaczamy n-bitów na cechę,

N – liczba n-ek;

Odwzorowanie : reprezentacja wektora danych X w n-kę X => H(X) = {hk(X), k=1..N}, czyli transformacja danych z A wymiarów do N wymiarów.

Sieć: każdy węzeł realizuje funkcję hk(X) Trening: przeczytaj wszystkie wektory X należące do klasy C(X).

Przypisz hk(X) klasę, w której która dany podciąg występuje najczęściej.

Topograficznie poprawna zamiana x R L (stringi binarne)

Page 17: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

n-ki, sieć. n-ki, sieć.

Np. wejście z siatkówki, próbki obrazu z kilku obszarów pozwalają

na rozpoznanie całego obiektu.

{x}

L bitów

b1

b2

bL

....

+1

-1

+1

Klasa C2

Klasa C1

bity cechwykrywa (1,0,1)

Page 18: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

Kodowanie GreyaKodowanie Greya

Kod binarny Graya: dwa kolejne słowa kodowe różnią się o 1 bit. Można go zastosować dla liczb rzeczywistych o skończonej dokładnościPrzepis: zrobić XOR(x,x/2), np. w C: gray = x^(x/2) lub gray = x^(x>> 1)

Kodowanie Grey’a ma liczne zastosowania; Wiki o kodowaniu Grey’ahttp://pl.wikipedia.org/wiki/Kod_Graya

W Matlabie:http://www.mathworks.com/matlabcentral/fileexchange/8051-dec2gc-m

Dla liczby całkowitej I chcemy ciąg a bitów IG=XOR(I,I/2) L(x) = konkatenacja K ciągów Graya, dla (x+j-1)/K, j=1..K L reprezentuje x [0, (2a-1)K] tak, że jeśli |x-y|<K to |L(x)-L(y)|<K

Wektor X={xi} zamieniamy na {L(xi)}, długości L=aKA

hk(X) wybiera z tego jeden podciąg i daje 1 (obecny) lub 0 (nieobecny).

Page 19: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

nn-ki, algorytm. -ki, algorytm.

C klas, wybierz z L bitów podciągi, czyli n-ki.

Np. 3-kę =[b3=0,b4=1,b8=1].

To daje nam adres (funkcję n-ki) i jej położenie.

Pozycje bitów h348(a)=(3,4,8) i adresie B(a)=[011] określają n-kę.

Liczba n-ek N =100-1000 dla klasy.

Wszystkie n-ki mogą być o tych samych lub różnych długościach.

przypisuje ciągom L-bitów n-ki, odwzorowanie ustalone w sposób przypadkowy by uniknąć jakiegoś szczególnego sposobu wyboru.

Klasyfikator = sieć C N elementów, 1 bit/el (n-ka jest/nie).

Klasa C, n-ka i=1..N, o adresie B, bit mCiB =1 oznacza obecność i-tej cechy n-ki z adresem B.

Wynik: X => Klasa c=arg max_C Sum (mCiB(X)),

Interpretacja: złożony obraz, fragmentaryczne dane, sakady oka.

Page 20: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

nn-ki algorytm cd. -ki algorytm cd.

Trening: • zamień X na L(X)• porównaj grupę bitów wybranych z L bitowych ciągów,

zawierającą bity o wartościach B() na pozycjach A(), określonych przez odwzorowanie , z ustalonymi w n-kach bitami.

• Jeśli bity są zgodne wstaw bit mCiB =1, nie mCiB =0.

Klasyfikacja:

wybierz klasę, dla której liczba zgodnych cech mCiB =1 z cechami

obecnymi w wzorcach danej klasy jest największa.

Page 21: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

nn-ki zastosowania. -ki zastosowania. Zalety:• bardzo szybkie; niewielka pamięć• często daje bardzo dobre wynikiTesty: kodowanie Graya z a=5 i K=8.

x skalowane do przedziału [0,248], kodowane na 40 bitach. 1000 n-ek przy n=8 dla każdej klasy.  Probabilistyczne sieci pRAM (Gorse, Taylor 1988), uogólnienie

n-ek, stochastyczne neurony użyteczne dla neurobiologii.Prawdopodobieństwo pu uzyskania 1 na wyjściu.Neurony impulsujące, po uśrednieniu aktywność pu. pRAM zrobiono w VLSI (256 neuronów, 6 wejść).

Liczne zastosowania: wykrywanie obiektów w sygnale wideo, prognozowanie, identyfikacja głosu, OCR, biometria, gra Othello, rozpoznawanie twarzy, kontrolery ...  

Page 22: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

Iteracje: z uśredniane wielokrotnie.

Np. zi(1) będzie 0 lub 1 jeśli większość bitów yi = 0 lub 1.

Jeśli odległość d(z,x) jest zbyt duża ciąg rozbiega się.

Pojemność: c(n) N'

L. słów/komórkę pamięci c(n) maleje:

16.5% dla n=102, 10% dla n=103, 7% dla n=104 5% dla n=105.

Przepełnienie: SDM zapomina stare wzorce.

Zastosowania - przykładyZastosowania - przykłady

Page 23: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

Inne modele bezwagoweInne modele bezwagowe

• Istnieje wiele wariantów przedstawionych tu metod.• Wielką zaleta jest możliwość realizacji sprzętowej.

• Elementy PLN (Probabilistic Logic Nodes): 2 bity: 0, 1, 0.5=?Łączone w piramidy.

• m-PLN, elementy PLN o m stanach, kilka odpowiedzi.• GSN, Goal Seeking Neurons, pamiętają 0, 1, ?

Różne architektury, piramidy, rekurencja.• GRAM – generalizing RAM, rozmywanie na poziomie

elementów. • GNU – General Neural Unit, rekurencyjna architektura z

węzłami GRAM.

Page 24: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

Co dalej? Co dalej?

• Dynamiczne pamięci skojarzeniowe

• Sieci Hopfielda

• Sieci Hebbowskie i modele mózgu

• Perceptrony proste

• Perceptrony wielowarstwowe

Page 25: Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych

Koniec wykładu 4Koniec wykładu 4

Dobranoc