Podstawy Sztucznej Inteligencji Sztuczne Sieci Neuronoweregulski/esi/05_PoIS_neuro.pdf · 2019. 5....

Post on 21-Jul-2021

4 views 0 download

Transcript of Podstawy Sztucznej Inteligencji Sztuczne Sieci Neuronoweregulski/esi/05_PoIS_neuro.pdf · 2019. 5....

Podstawy Sztucznej Inteligencji Sztuczne Sieci Neuronowe

Krzysztof Regulski, WIMiIP, KISiM, regulski@agh.edu.pl B5, pok. 408

2

Inteligencja

— Czy inteligencja jest jakąś jedną dziedziną, czy też jest to nazwa dla zbioru odrębnych i niepowiązanych zdolności?

— Co zyskujemy w procesie uczenia się?

— Co to jest intuicja?

— Czy inteligencja może być nabyta wskutek nauki lub obserwacji, czy też jest jakoś uwarunkowana wewnętrznie?

— Jak wiedza wpływa na wzrost inteligencji?

— Czy inteligencja to szczegółowa wiedza o jakiejś dziedzinie, czy zbiór związanych ze sobą różnych zdolności?

KISIM, WIMiIP, AGH

3 KISIM, WIMiIP, AGH

Inteligencja

Inteligencja jest zdolnością do sprawnego rozwiązywania zadań intelektualnych,

które zazwyczaj uchodzą za trudne.

… są trudne tak długo, jak długo nie są znane algorytmy ich

rozwiązywania, potem przestają być traktowane jako zadania

sztucznej inteligencji

w ten sposób sztuczna inteligencja nigdy nie ma żadnych osiągnięć

4

sztuczna inteligencja - rozwiązywanie „trudnych” zadań

Czy to jest trudny problem ?

98731269868414316984251684351 × 985316846315968463198643541684

A to:

”Kochanie, kup ładny kawałek wołowiny…”

KISIM, WIMiIP, AGH

5 KISIM, WIMiIP, AGH

Czy nam to szybko grozi?

6 KISIM, WIMiIP, AGH

Robot kolejkowy EWA-1

- Moja konstrukcja jest optymalna, tylko ludzie nie dorośli do tego. Wolą sami stać w kolejkach.

-Pan tu nie stał, pan nie jest w ciąży.

Krzysztof Manc

(Wynalazca)

7 KISIM, WIMiIP, AGH

Zagadnienia Sztucznej Inteligencji (AI)

Computational Intelligence - numeryczne

Artificial Intelligence - symboliczne

Soft Computing

Sieci neuronowe

Rachunek prawdopodobieństwa

Uczenie maszynowe

Systemy ekspertowe

Rozpoznawanie Wzorców

Logika rozmyta

Algorytmy ewolucyjne i genetyczne

Wizualizacja

Metody statystyczne

Data mining

Optymalizacja badania

operacyjne

wnioskowanie

reprezentacja wiedzy

8 KISIM, WIMiIP, AGH

Przykłady zadań sztucznej inteligencji

— dokonywanie ekspertyz ekonomicznych, prawnych, technicznych, medycznych (ocena)

— wspomaganie podejmowania decyzji (doradzanie)

— rozpoznawanie obrazów, twarzy, wzorców, etc.

— optymalizacja (harmonogramowanie, alokacja zasobów, planowanie tras)

— generacja nowej wiedzy (poszukiwanie zalezności, tendencji, reguł, etc – data mining)

— prognozowanie zjawisk ekonomicznych, przyrodniczych

— rozumienie języka naturalnego

— sterowanie urządzeniami (roboty etc)

— i inne…

9 KISIM, WIMiIP, AGH

Zadania sztucznej inteligencji

Wnioskowanie

» procesem stosowania reguł wnioskowania w sposób skutecznie i efektywnie prowadzący do określonego celu wnioskowania, którym zazwyczaj jest uzyskania pewnego docelowego stwierdzenia.

Uczenie się

» proces zmiany zachodzącej w systemie na podstawie doświadczeń, która prowadzi do poprawy jego jakości działania rozumianej jako sprawność rozwiązywania stojących przed systemem zadań.

Przeszukiwanie

» Znajdowanie zadawalających rozwiązań bez pełnego przeglądania wszystkich możliwości, a więc jak najbardziej efektywne przeszukiwanie przestrzeni rozwiązań

» Przeszukiwanie przestrzeni jest procesem stosowania dostępnych operatorów do przemieszczania się między różnymi stanami w tej przestrzeni, tak aby ostatecznie trafić ze stanu początkowego do jednego ze stanów końcowych

10 KISIM, WIMiIP, AGH

Uczenie się –

Sztuczne Sieci Neuronowe

11 KISIM, WIMiIP, AGH

Sztuczny neuron, McCulloch i Pitts,1943

12 KISIM, WIMiIP, AGH

Z czego składa się sztuczna sieć neuronowa?

neurony

13 KISIM, WIMiIP, AGH

» Rozproszone są:

– program działania

– baza wiedzy

– dane

– proces obliczania

» Sieć działa zawsze jako całość, równolegle

» Wszystkie elementy mają wkład we wszystkie czynności

» Duża zdolność do działania nawet po uszkodzeniach

» wagi – pojęcie kluczowe

Jak to wszystko działa?

14 KISIM, WIMiIP, AGH

Po co są wagi?

WAGA "NOWY"

WAGA „ŁADNY"

Co na to neuron?

5 1 Lubi nowe samochody; ich wygląd mało się liczy.

1 -1 Wszystko mu jedno...

-5 4 Samochód musi być ładny, ale stary.

4 5 Lubi nowe i piękne auta.

-4 -4 Ekstrawagancki neuron - lubi stare, brzydkie maszyny.

15 KISIM, WIMiIP, AGH

Po co są funkcje aktywacji?

Wartość sygnału wyjściowego zależy od rodzaju funkcji w bloku aktywacji

16 KISIM, WIMiIP, AGH

Rozpoznawanie

17 KISIM, WIMiIP, AGH

Rozpoznawanie

W jaki sposób błyskawicznie rozpoznajemy twarze znanych osób? (nawet zniekształcone) Cudów nie ma! Rozpoznajemy tylko taką twarz, której nasz mózg się nauczył.

18 KISIM, WIMiIP, AGH

Kojarzenie

19 KISIM, WIMiIP, AGH

Przewidywanie

20 KISIM, WIMiIP, AGH

Do czego służy sieć neuronowa?

... do wszelkiego rodzaju

– rozpoznawania,

– kojarzenia,

– przewidywania

... praktycznie we wszystkich dziedzinach życia, nauki, techniki, przemysłu, ...

21 KISIM, WIMiIP, AGH

Klasyfikacja. Do budowy klasyfikatorów wykorzystuje się neurony o wyjściach binarnych. Przy prezentacji obrazu uaktywnia się tylko jeden element wyjściowy. Obraz wejściowy zostaje przyporządkowany określonej klasie reprezentowanej przez aktywny element.

- rozpoznawanie - klasyfikacja

Klasyfikacja

Zadaniem procesu uczenia jest podział wzorców uczących na klasy obrazów zbliżonych do siebie i przyporządkowanie każdej klasie osobnego elementu wyjściowego

22 KISIM, WIMiIP, AGH

Co ma wpływ na sygnały wyjściowe?

Sygnał wyjściowy neuronu zależy od:

sygnałów wejściowych,

współczynników wagowych,

funkcji aktywacji,

budowy sieci

23 KISIM, WIMiIP, AGH

• Zmieniając wartości współczynników wagowych możemy zmieniać zależności pomiędzy wektorami sygnałów wejściowych i wyjściowych sieci.

• Jak ustawić te współczynniki aby uzyskać żądane zależności pomiędzy tymi wektorami?

• Sieci neuronowych się nie programuje. Oznacza to, że wartości współczynników wag nie ustala się bezpośrednio, ulegają one zmianom podczas procesu nazywanego uczeniem sieci.

Uczenie

24 KISIM, WIMiIP, AGH

• W procesie uczenia z nauczycielem, dla nowych wartości sygnałów wejściowych nauczyciel (zmienna zależna) podpowiada pożądaną odpowiedź.

• Błąd odpowiedzi służy do korygowania wag sieci.

Sieć

adaptacyjna

W = var

Obliczenie błędu

= t - a

p a

t

Uczenie nadzorowane

Dane uczące – zmienna zależna

Wyjście sieci

25 KISIM, WIMiIP, AGH

Uczenie sieci jednowarstwowej

1

K

k

z1

zk

zK

y1

yj

yJ

w11

wk1w

K1

w1j w

1J

wk1

wkj

wKj

wkJ

wKJ

.

.

.

.

.

.

.

.

.

.

.

.

minimalizacja błędu uczenia

Dla jakich wartości współczynników wagowych, błąd uczenia przyjmuje najmniejszą (minimalną) wartość?

26 KISIM, WIMiIP, AGH

1

J-1

j

x1

xi

xI-1

z1

zk

zK

v11

vj1

v1i

v1i v

1I

vj1

vji

vjI

vJ-1,I

.

.

.

.

.

.

.

.

.

.

.

.

xJ = -1

w11

v11

1

K

k

.

.

.

.

.

.

yJ = -1

wk1

w1j

wkj

wKj

wkJ

wKJ

w1J

warstwa wyjściowawarstwa ukryta

WE

(x)

WY

(z)

WE

(k)

WY

(j)

Uczenie sieci wielowarstwowej Algorytm wstecznej propagacji błędu

Rzutowanie wstecz błędu

• Dla każdej próbnej liczby neuronów ukrytych tworzymy losowe wagi początkowe i uczymy sieć do chwili, gdy przestajemy osiągać poprawę.

• Sprawdzamy działanie sieci przy pomocy danych testowych.

• Jeżeli jakość sieci jest wyraźnie gorsza niż na zbiorze uczącym, to:

- albo zbiór uczący jest zły (za mały lub

mało reprezentatywny) - albo mamy za dużo neuronów ukrytych.

Sieć jest przetrenowana.

27 KISIM, WIMiIP, AGH

Uczenie bez nauczyciela

28 KISIM, WIMiIP, AGH

• W procesie uczenia z nauczycielem, dla nowych wartości sygnałów wejściowych nauczyciel podpowiada pożądaną odpowiedź.

• Błąd odpowiedzi służy do korygowania wag sieci.

Sieć

adaptacyjna

W = var

Obliczenie błędu

= t - a

p a

t

Uczenie bez nauczyciela

• Podczas uczenia bez nauczyciela pożądana odpowiedź nie jest znana.

• Sieć sama musi uczyć się poprzez analizę reakcji na pobudzenia (o których naturze wie mało albo nic).

Sieć

adaptacyjna

W = var

p a

29 KISIM, WIMiIP, AGH

Istnieją sytuacje, gdy sieć nie może się sama nauczyć, bez nauczyciela lub bez dodatkowej informacji o analizowanym problemie.

x2

x1

+ ++

+

++

+

+

+

+

++ +

+++

++ +

+

+

+

++

Uczenie bez nauczyciela

Uczenie „bez nauczyciela” jest możliwe, gdy mamy nadmiarowość danych wejściowych.

x2

x1

+

+

++

++

+

+ ++

++ +

+++

++ +

++

+

+

30 KISIM, WIMiIP, AGH

Reguła Hebba (1949) oparta jest na doświadczeniu Pawłowa (odruch Pawłowa).

OB - odruch bezwarunkowy, OW - odruch warunkowy, BB - bodziec bezwarunkowy, BW - bodziec warunkowy.

Reguła Hebba

pokarm (BB) ślinienie (OB)

pokarm (BB) + dzwonek (BW) ślinienie (OW)

dzwonek (BW) ślinienie (OW)

31 KISIM, WIMiIP, AGH

Jeżeli akson komórki A bierze systematycznie udział w pobudzaniu komórki B powodującym jej aktywację, to wywołuje to zmianę metaboliczną w jednej lub w obu komórkach, prowadzącą do wzrostu skuteczności pobudzania B przez A

Często powtarzające się obrazy wejściowe dają silniejsza odpowiedź na wyjściu.

A

By

A

yB

Reguła (model neuronu) Hebba (1949)

32 KISIM, WIMiIP, AGH

x1

x2

wi1

.

.

.

.

.

.

i-ty neuron

wij

wi2

win

xj

xn

yi

generator

sygnału

uczącego rti

xwi

x

c

r

Sygnałem uczącym jest po prostu sygnał wyjściowy neuronu.

Korekta wektora wag:

xwwww iiiii cykkk )()()1(

nazywa się także niekiedy uczeniem korelacyjnym

Reguła Hebba

Często powtarzające się obrazy wejściowe dają więc silniejsza odpowiedź na wyjściu.

33 KISIM, WIMiIP, AGH

Interpretacja geometryczne reguły Hebba

x

w

φ |w|cos(φ) x wTx=|x||w|cos(φ)

w(t+1)

Δw

Wektor wag przemieszcza się w kierunku środka ciężkości wielkości uczących

Niebezpieczeństwo: Długość wektora wag rośnie w sposób nieograniczony (o ile nie zapewnimy stopniowego zmniejszania współczynnika c)

34 KISIM, WIMiIP, AGH

Ile warstw ukrytych ?

Sieci o większej liczbie warstw ukrytych uczą się dłużej i proces uczenia jest słabiej zbieżny. Rozbudowanie sieci do dwóch warstw ukrytych jest uzasadnione w zagadnieniach w których sieć ma nauczyć się funkcji nieciągłych. Zaleca się rozpoczynać zawsze od jednej warstwy ukrytej. Jeżeli pomimo zwiększenia liczby neuronów sieć uczy się źle, wówczas należy podjąć próbę dodania dodatkowej drugiej warstwy ukrytej i zmniejszyć jednocześnie liczbę neuronów ukrytych.

35 KISIM, WIMiIP, AGH

Również i tutaj brak jednoznacznej odpowiedzi Zbyt mała liczba neuronów w warstwie ukrytej - mogą wystąpić trudności w uczenia sieci. Zbyt duża liczba neuronów - wydłużenie czasu uczenia. Może doprowadzić do tzw. nadmiernego dopasowania. Sieć uczy się wtedy "na pamięć" pewnych szczegółów i zatraca zdolność do uogólnień. Taka sieć uczy się wprost idealnie i wiernie odwzorowuje wartości zbioru uczącego. Jednakże wyniki testowania sieci na danych spoza zbioru uczącego są zazwyczaj bardzo słabe.

Ile neuronów w warstwach ukrytych ?

36 KISIM, WIMiIP, AGH

Reasumując: Ze względu na fakt, że brak jest teoretycznych przesłanek do projektowania topologii sieci, zgodnie z zaleceniami podanymi przez Masters'a, we wstępnych pracach nad siecią dobrze jest przestrzegać następujących 3 zasad:

1. należy stosować tylko jedną warstwę ukrytą, 2. należy używać niewielu neuronów ukrytych, 3. należy uczyć sieć do granic możliwości.

Jak konstruować sieć ?

37 KISIM, WIMiIP, AGH

Oznaką przetrenowania jest wzrost błędu dla danych testowych,

przy malejącym błędzie danych uczących

Dane testowe

Dane uczące

Liczba iteracji

Błą

d

Jak długo uczyć sieć ?

38 KISIM, WIMiIP, AGH

Prawidłowa procedura uczenia sieci

• Ocena jakości sieci

• Zbiór danych do uczenia sieci

• Skalowanie sygnałów

• Liczebność zbioru danych uczących

• Rozkład danych w zbiorze uczącym

• Trendy danych uczących

• Sieć nie ma zdolności do ekstrapolacji

39 KISIM, WIMiIP, AGH

Automatyczne Sieci Neuronowe STATISTICA

Adult_uczacy.sta

40 KISIM, WIMiIP, AGH

Adult_uczacy.sta

1

2

41 KISIM, WIMiIP, AGH

3

4

5

6

42 KISIM, WIMiIP, AGH

Uwaga na czas uczenia….

43 KISIM, WIMiIP, AGH

44 KISIM, WIMiIP, AGH

45 KISIM, WIMiIP, AGH

46 KISIM, WIMiIP, AGH

47 KISIM, WIMiIP, AGH

Sieci Kohonena (samoorganizujące się) (Self Organizing Maps – SOM)

Wykrywanie grup (clustering) Uczenie rywalizacyjne

x w(t)

w(t+1)

α(x-w(t)) x-w(t)

48 KISIM, WIMiIP, AGH

49 KISIM, WIMiIP, AGH

Uwaga na czas uczenia….

50 KISIM, WIMiIP, AGH

10,7

1,1

10,10

1,10

51 KISIM, WIMiIP, AGH

10,7

52 KISIM, WIMiIP, AGH

53 KISIM, WIMiIP, AGH

10,10

54 KISIM, WIMiIP, AGH

1,1

55 KISIM, WIMiIP, AGH

1,10

56 KISIM, WIMiIP, AGH

Regresja

1

57 KISIM, WIMiIP, AGH

58 KISIM, WIMiIP, AGH

1

2 3

59 KISIM, WIMiIP, AGH

1

2 3

R2=0,21