7. Omówić metody uczenia algorytmów inteligentnych
Metody uczenia algorytmów inteligentnych - w praktyce wyróżniamy trzy podstawowe metody uczenia się czyli: uczenie nadzorowane, uczenie wymuszone (ze wzmocnieniem) i uczenie bez nauczyciela (nienadzorowane). Przy uczeniu nadzorowanym wiemy jakie są poprawne odpowiedzi sieci czyli uczącym sygnałom wejściowym znane są nam wartości wyjściowe. Dla uczenia wymuszonego ważne jest dokonanie zmaksymalizowania celu uczenia. Przy uczeniu nienadzorowanym nie znane są nam odpowiedzi sieci, dlatego musimy odkryć jak na wielkości wejściowe wpływają wielkości wyjściowe.
Metody:
Uczenie się bez nadzoru - celem uczenia się jest zazwyczaj przekształcenie dostarczanej do systemu uczącego się informacji wejściowej w innej formie, lepiej dostosowanej do dalszego przetwarzania. Zasada, zgodnie z którą jest dokonywane to przekształcenie, jest ustalona dla danej klasy zadań uczenia się bez nadzoru i wbudowana jest ona do struktury systemu. Można więc powiedzieć, że system uczący się bez nadzoru ma na stałe wbudowane źródło informacji trenującej. Typowym przykładem zadania uczenia się bez nadzoru jest zadanie wykrywania pewnych regularności w danych wejściowych i grupowanie ich na tej podstawie w pewne kategorie. Jest to tzw. grupowanie. Algorytmy uczenia się bez nadzoru stanowią
ważną grupę algorytmów uczenia sieci neuronowych. Do tego typu uczenia się zaliczają się także uczenie typu konkurencyjnego gdzie każda grupa neuronów walczy oto aby stać się aktywnymi oraz reguła Hebba która polega na aktywny pobudzaniu neuron B przez neuron a co w konsekwencji prowadzi do wzrostu siły połączeń miedzy neuronami i aktywacje neuronu.
Uczenie się z nadzorem - System pobiera informację trenującą z pewnego zewnętrznego źródła, np. od nauczyciela. Pożądany sposób działania systemu jest zdefiniowany według pewnych wzorców trenujących, tj. par określających pożądaną odpowiedź (akcję) systemu dla określonych wejść ze środowiska (stanów). W praktyce informacja dostarczana przez nauczyciela może mieć różne formy: uczący się system może uzyskiwać pożądane odpowiedzi wprost, może być mu dostarczana wielkość błędu (rozbieżności między pożądanym wyjściem a tym, które system faktycznie wygenerował), lub tylko informacja gradientowa, określająca pożądany kierunek zmiany wyjścia systemu w przestrzeni wyjściowej. Kluczowe jest to, że informacja trenująca ma charakter ukierunkowany, czyli mówi uczącemu się systemowi bezpośrednio, jak powinien zmienić swoje działanie, aby było ono bardziej zadowalające. Uczenie się z nadzorem jest najbardziej rozpowszechnionym sposobem uczenia się maszyn. Większość algorytmów stosowanych do uczenia sieci neuronowych to właśnie algorytmy uczenia się z nadzorem.
Uczenie się ze wzmocnieniem - w tym przypadku również istnieje zewnętrzne źródło informacji trenującej, ma ono jednak naturę raczej krytyka niż nauczyciela. Informacja trenująca nie jest tu ukierunkowana. Wartościowanie nie mówi systemowi uczącemu się, jakie akcje byłyby lepsze niż faktycznie wykonane przez niego - dostarcza jedynie informacji o ich jakości. Szczegółowy plan uczenia się ze wzmocnieniem jest następujący. W każdym kroku system obserwuje aktualny stan środowiska i wykonuje pewną akcję, zgodnie ze swoją aktualną strategią decyzyjną. Następnie otrzymuje on pewną wartość na podstawie której następuje zmiana stanu środowiska. Zadaniem systemu uczącego się jest skonstruowanie strategii decyzyjnej prowadzącej do maksymalizacji wartości wzmocnienia. Podstawowa zasada, według której odbywa się uczenie się ze wzmocnieniem, jest naturalna: jeśli wykonanie pewnej akcji w pewnym stanie pociąga za sobą dobre konsekwencje, to tendencja do wykonywania tej akcji w danej sytuacji powinna zostać wzmocniona.
Wieczorek T. „Neuronowe modelowanie procesów technologicznych”, s. 103
Wieczorek T. „Neuronowe modelowanie procesów technologicznych”, s. 107,108.
http://ssn.elektrotechnika.ip.pwsz.edu.pl/ssn6.php
http://ssn.elektrotechnika.ip.pwsz.edu.pl/ssn6.php