Inteligencja Obliczeniowa Otwieranie czarnej skrzynki. Wykład 21 Włodzisław Duch Uniwersytet Mikołaja Kopernika
Co było Neuro-fuzzy Feature Space Mapping - motywacje Funkcje transferu
Co będzie Reguły z sieci MLP Rozmywanie danych Dokładność - prostota reguł. Odrzucanie i stopień zaufania do reguł
Reguły logiczne z sieci neuronowych Otwieranie czarnej skrzynki, czyli reguły logiczne z NN. Granice decyzji muszą być prostopadłe, a w MLP są płaszczyznami. Metody globalne: analizuj wejścia i koreluj wyniki z wyjściami. VIA (Validity Interval Analysis) - znajdź interwały definiujące regułę, w którym wyjście stałe. Duża liczba reguł - prostokąty aproksymują skośne granice. Metody lokalne: Analizuj fragment sieci, zamień na reguły logiczne. Węzeł progowy realizuje logikę Jeśli (M-z-N war=T) To T Eksplozja kombinatoryczna: 2N możliwych kombinacji wejść.
Zmienne lingwistyczne Kwantyzacja ciągłych wartości lub wybieranie podzbiorów. Jeżeli (sk=mały lub sk=duży) To Klasa1 Reprezentacja numeryczna: Vsk=(+1,-1,-1,...) dla sk=mały Vsk=(-1,+1,-1,...) dla sk=średni brak wartości = 0, nie wpływa na pobudzenie. L-unit: 2 progi jako par. adaptacyjny, W1= W2= +1 Realizują f. tangh(x) [-1, +1] Miękkie trapezoidy przechodzą dla dużych skosów w funkcje „okienkowe”. 4 typy f. dla różnych znaków Si.
Architektura MLP2LN Agregacja: perceptrony; L - warstwa obliczająca f. przynależności R - reguły, wyjście - suma reguł dla klasy; jedno wyjście na klasę.
Konstruktywny MLP2LN Dodaj jeden neuron R. Upraszczaj sieć by wygenerować regułę. Dodaj kolejny i neuron w warstwie sumującej. Reguły z pierwszego neuronu: najbardziej ogólne, pokrywają dużo danych. Upraszczaj sieć by wygenerować regułę. Dodaj kolejny i neuron w warstwie sumującej. Jak upraszczać by uniknąć eksplozji kombinatorycznej?
F. kosztu Wymuszaj zera; wymuszaj duże skosy; przeprowadź kwantyzację wag by znaleźć obszary, w których MLP ma stałą wartość. Zwykła f. błędu (może być entropowa lub inna) Człon regularyzacyjny (zera) Może być Weigenda itp.. Człon dodatkowy - zera i ±1 Może być 2-6 stopnia. Modyfikacja procedury BP jest trywialna, wystarczy dodać:
Uczenie Dla jednej klasy, algorytm C-MLP2LN Utwórz węzeł ukryty. Ucz sieć za pomocą BP z regularyzacją. l1=10-5, l2=0, skos s=1 Zbieżność słaba => trenuj 2 jednostki ukryte równocześnie. a) Ucz jak długo zmniejsza się błąd; zwiększ l1=10l1, s=s+1 i ucz dalej; powtarzaj aż błąd gwałtownie wzrośnie. b) Zmniejsz l1 by uzyskać poprzednią wartość błędu, doucz. c) Włącz l2= l1, l1=0, trenuj zwiększając l2 aż wagi osiągną wartości 0±0.05 lub ±1±0.05. d) Ustaw skos na s=10000, wagi na 0, ±1. Analizuj wagi i progi badając aktywację neuronów. Analiza pozwala utworzyć reguły logiczne. Zamroź wagi istniejących węzłów (ucz tylko nowe węzły). Dodaj nowy neuron, powtarzaj procedurę aż wszystkie dane będą poprawnie klasyfikowane lub liczba reguł gwałtownie wzrośnie. Powtórz dla pozostałych klas.
Przykład: Iris 1 150 wektorów podzielonych na trzy klasy po 50 wektorów: iris setosa, iris versicolor, iris virginica. 4 cechy, rozmiary liści i płatków w cm. Zmienne lingwistyczne: podział wg. histogramów dla przecięć, np: s3(x3) =T dla x3[1.0,2.0] m3(x3)=T dla x3(2.0,4.93] l3(x3) =T dla x3(4.93,6.9] s4(x4) =T dla x4[0.1,0.6] m4(x4)=T dla x4(0.6,1.7] l4(x4) =T dla x4(1.7,2.5] Konflikt: 3 wektory (m,m,l,l) i 3 (m,l,m,l) z klas virginica i versicolor identyczne: zostają 3 wektory z klasy versicolor.
Iris 2 Sieć po nauczeniu: iris setosa: q=1 (0,0,0;0,0,0;+1,0,0;+1,0,0) iris versicolor: q=2 (0,0,0;0,0,0;0,+1,0;0,+1,0) iris virginica: q=1 (0,0,0;0,0,0;0,0,+1;0,0,+1) If (x3=s x4=s) setosa If (x3=m x4=m) versicolor If (x3=l x4=l) to virginica 147 poprawnie klas. wektorów (teoretyczne maksimum dla tej dyskretyzacji).
Iris z jednostkami L Zwiększanie skosów po 100, 400, 200, 200 epokach; granice optymalne.
Koniec wykładu 21 Dobranoc !