Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

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

Podobne prezentacje


Prezentacja na temat: "Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych Wykład 4 Włodzisław Duch Katedra Informatyki Stosowanej UMK Google: W. Duch."— Zapis prezentacji:

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

2 Neurony 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.

3 Szybka powtórka Modele bezwagowe, korelacyjne, Hebbowskie Pamięć autoasocjacyjna i rozpoznawcza BCM Macierze korelacji. Model BAM.

4 SDM, Sparse Distributed Memory (Kanerva 1988). Model statystyczny, inspiracja: pamięć w móżdżku. Jaka jest funkcja neuronu? Neuron biologicznyNeuron 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órkowa

5 SDM, cd.1 Uwagi wstępne. Synapsy w niektórych częściach mózgu zmieniają swój stan skokowo – resorpcja kolców dendrytycznych?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 wejść. Potraktujmy je binarnie. Jak zapisać/odczytać długie ciągi bitów wykorzystując przypadkowe adresy? Nawet 100 bitów daje =10 30 możliwości. Mając do dyspozycji 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.

6 SDM, cd.2 Problem najlepszego wzorca: Dany wektor bitów z, znaleźć najbardziej podobny zapamiętany wektor. Adres neuronu o wagach W = {W 0, W 1,..W n-1 }, W i =±1 a = { (W 0 ), (W 1 ),... (W n-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)

7 Próg decyduje o promieniu Hamminga (liczbie bitów) wokół a. n duże, 2 n 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.3 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

8 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 2 n komórek tylko adresy zajęte. Czy to wystarczy jako pamięć rozpoznawcza? Nieliczne komórki RAM, adresy fizyczne (hard locations). Np. N'=2 20 na N= komórek. Adres fizyczny reprezentuje średnio logicznych. SDM, cd.4

9 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. 5

10 Dla N'=2 20 oraz n = % ciągów bitów ma d(x) pomiędzy 411 do 430 bitów. 1 na ma 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.maleje eksponencjalnie Pytanie z, odpowiedź – średnia z otoczenia z. SDM, cd. 6

11 Iteracje: z uśredniane wielokrotnie. Np. z i (1) będzie 0 lub 1 jeśli większość bitów y i = 0 lub 1. Jeśli odległość d(z, x) jest zbyt duża ciąg rozbiega się.ciąg rozbiega Pojemność: c(n) N' L. słów/komórkę pamięci c(n) maleje: 16.5% dla n=10 2, 10% dla n=10 3, 7% dla n=10 4 5% dla n=10 5. Przepełnienie: SDM zapomina stare wzorce. SDM, cd. 6

12 SDM, zastosowania Pamięć rozpoznawcza. Klasyfikacja obiektów. Cmattie (Anwar, Franklin 2000), świadomy agent programowy, wg. teorii Baarsa. Realizacje VLSI. Analiza działania móżdżku. Sterowanie?

13 CMAC Cerebellar Model Arithmetic Computer (Albus 1971). Model również wzorowany na móżdżku. n-wymiarowa przestrzeń wejściowa X = {x=(x 1,...x n )} Przestrzeń asocjacyjna A, zbiory G -wymiarowe. Kwantowanie danych q i = Q(x i ) daje numery kwantów q i Segmenty pamięci wirtualnej, v ij =V(q i ), i=1..n, j=1..G. Konkatenacja segmentów daje adres wirtualny v j =[v 1j v 2j... v nj ], j=1..G Adres fizyczny RAM: funkcja mieszająca hj=H(vj).

14 CMAC - schemat Wynik: suma W(h j ) dla j=1..G

15 CMAC - działanie Uczenie: pary danych (x,y), odpowiedź sieci C(x) Współczynnik uogólniania G rzędu 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.

16 Metoda n-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) = {h k (X), k=1..N}, czyli transformacja danych z A wymiarów do N wymiarów. Sieć: każdy węzeł realizuje funkcję h k (X) Trening: przeczytaj wszystkie wektory X należące do klasy C(X). Przypisz h k (X) klasę, w której która dany podciąg występuje najczęściej. Topograficznie poprawna zamiana x R L (stringi binarne)

17 n-ki, sieć. Np. wejście z siatkówki, próbki obrazu z kilku obszarów pozwalają na rozpoznanie całego obiektu.

18 Kodowanie 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ści Przepis: zrobić XOR(x,x/2), np. w C: gray = x^(x/2) lub gray = x^(x>> 1) Kodowanie Greya ma liczne zastosowania; Wiki o kodowaniu Greya W Matlabie: Dla liczby całkowitej I chcemy ciąg a bitów I G =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|

19 n-ki, algorytm. C klas, wybierz z L bitów podciągi, czyli n-ki. Np. 3-kę =[b 3 =0,b 4 =1,b 8 =1]. To daje nam adres (funkcję n-ki) i jej położenie. Pozycje bitów h 348 (a)=(3,4,8) i adresie B(a)=[011] określają n-kę. Liczba n-ek N = 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 m CiB =1 oznacza obecność i-tej cechy n-ki z adresem B. Wynik: X => Klasa c=arg max_C Sum (m CiB (X)), Interpretacja: złożony obraz, fragmentaryczne dane, sakady oka.

20 n-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 m CiB =1, nie m CiB =0. Klasyfikacja: wybierz klasę, dla której liczba zgodnych cech m CiB =1 z cechami obecnymi w wzorcach danej klasy jest największa.

21 n-ki zastosowania. Zalety: bardzo szybkie; niewielka pamięć często daje bardzo dobre wyniki Testy: kodowanie Graya z a =5 i K =8. x skalowane do przedziału [0,248], kodowane na 40 bitach 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 p u uzyskania 1 na wyjściu. Neurony impulsujące, po uśrednieniu aktywność p u. 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...

22 Iteracje: z uśredniane wielokrotnie. Np. z i (1) będzie 0 lub 1 jeśli większość bitów y i = 0 lub 1. Jeśli odległość d(z, x) jest zbyt duża ciąg rozbiega się.ciąg rozbiega Pojemność: c(n) N' L. słów/komórkę pamięci c(n) maleje: 16.5% dla n=10 2, 10% dla n=10 3, 7% dla n=10 4 5% dla n=10 5. Przepełnienie: SDM zapomina stare wzorce. Zastosowania - przykłady

23 Inne 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.

24 Co dalej? Dynamiczne pamięci skojarzeniowe Sieci Hopfielda Sieci Hebbowskie i modele mózgu Perceptrony proste Perceptrony wielowarstwowe

25 Koniec wykładu 4 Dobranoc


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

Podobne prezentacje


Reklamy Google