1. Zadanie wnioskowania, reprezentacja wiedzy, rodzaje i cele wnioskowania.
1 Rodzaje i cele wnioskowania
Wnioskowanie jest to przetwarzanie formuł, także z pewnego zbioru znanych formuł
(bazy wiedzy) wyprowadzanie nowych formuł. Wnioskowanie dzielimy na dwa główne rodzaje:
•
wnioskowanie formalne - stwierdzenia tutaj zapisane są w ustalonym, precyzyjnym języku, a wyprowadzenie nowych stwierdzeń rządzi sie precyzyjnie ustalonymi regułami
•
wnioskowanie nieformalne - stwierdzenia tutaj są w języku naturalnym, a wyprowadzenie nowych stwierdzeń odbywa sie ze znacznym udziałem intuicji Język użyty do wnioskowania jest to sposób zapisu i interpretacji formuł
reprezentujących wiedzę. Wyprowadzanie formuł odbywa sie zgodnie z regułami wnioskowania, które określają jak z formuły określonej postaci uzyskać nową. Celem wnioskowanie jest wykazanie pewnej formuły docelowej na podstawie zestawu znanych formuł. Wykazanie to nosi nazwę przeprowadzenie dowodu wnioskowania. Dowód to ciąg formuł z których każda kolejna albo pochodzi z początkowej bazy wiedzy, albo jest wynikiem zastosowania pewnej reguły wnioskowania do formuł
wcześniejszych. Ostatnia formuła dowodu jest formuła docelowa. Od systemów wnioskujących oczekuje sie także uzasadnienia poprawności dowodu, czyli uzyskanie zastosowanych do jego skonstruowania reguł wnioskowania.
System ekspertowy – program, który ma naśladować eksperta, rozwiązywać jego problemy. Za cechy eksperta uważa się wiedzę dziedzinowa oraz umiejętność wnioskowania. Elementami składowymi systemu eskertowego są:
•
baza wiedzy - wiedza dziedzinowa, istotna dla pojemowania racjonalnych decyzji
•
system wnioskujący - system podejmujący decyzje na podstawie bazy wiedzy
•
edytor bazy wiedzy - umożliwia edycję, aktualizacje i usuwanie bazy wiedzy
•
interfejs uzytkownika - komunikacja systemu z użytkownikiem
•
dynamiczna baza wiedzy - służąca do przechowywania odpowiedzi użytkownika i wyników wnioskowania
2 Reprezentacja wiedzy
Do opisania pewnej dziedziny wiedzy niezbędne są reguły. Ogólna postać reguły to: IF przesłanka THEN konkluzja/działanie Przesłanka może zawierać pewną liczbę stwierdzeń połączonych funktorami logicznymi. Wyróżniamy dwa rodzaje reguł: proste (mające postać wniosków pośrednich) oraz złożone (umożliwiające bezpośrednie wyznaczenie wniosków przez system).
Klauzule Horna
Fakt – może być uważany za wniosek reguły, której warunki są zawsze prawdziwe.
Fakty zapisujemy jako A, B, C itd.
Twierdzenie
Dowolne zagadnienie dające się wyrazić w języku logiki można wyrazić za pomocą Klauzul Horna
Jeżeli z tych samych warunków mogą wynikać dwa wnioski to zapisujemy w postaci dwóch Klauzul Horna:
A, B, C – wniosek 1; A, B, C – wniosek
2. Jeżeli ten sam wniosek uzyskujemy z wyniku spełnienia dwóch różnych zbiorów warunków to zapisujemy:
A, B, C – wniosek; D, E, F – wniosek
- zapis w postaci faktów: (nr_reguły, wniosek[wniosek 1,..., wniosek n]) reguła
- zapis reguły przybliżonej, niepewnej; warunki i wnioski takich reguł są przybliżone współczynnikom pewności CF co zapisujemy:
A, B, C -> CF -> X gdzie CF=[-1,1] wsp. pew. reguł
- dla warunków niepewnych współczynnik pewności CF_W zapisujemy jako: W(CF_W) Warunki dopytywane – nie będące wnioskami innych reguł (wyprowadza użytkownik)
Warunki niedopytywalne – wnioski innych reguł (wyprowadza system) Wnioskowanie elementarne dokładne
W przód
Celem jest wyznaczenie wszystkich faktów wynikających z elementarnej dokładnej bazy reguł, z bany ograniczeń i ze zbioru tych warunków dopytywanych, które zostały uznane za fakty przez użytkownika. Wnioskowanie na drodze wielokrotnego testowania wszystkich reguł w kolejności ich występowania w bazie wiedzy. Testowanie polega na wyznaczeniu wartości logicznej wniosku reguły na podstawie znajomości wartości logicznych warunków i aktualizacje dynamicznej bazy wiedzy.
Działanie
Testowanie reguły może dać następujące wyniki:
• Jeżeli reguła ma wniosek niedopytywalny o nieokreślonej wartości logicznej to jest pomijana
• Jeżeli wszystkie warunki reguły są faktami to reguła jest spełniona i jej wniosek jest faktem – dodawanym do dynamicznej bazy danych
• Jeżeli jeden z warunków nie jest faktem, to reguła jest niespełniona i jej wniosek nie jest faktem, czego nie piszemy bo:
◦ to co nie wynika z bazy reguł nie jest faktem
◦ elementarna baza dokładna nie ma reguł z zanegowanymi warunkami niedopytywalnymi
• Jeżeli kilka reguł ma ten sam wniosek to spełnienie co najmniej jednej z nich czyni wniosek faktem
• Jeżeli reguła została już testowana i jej wniosek uznano za fakt zostaje pomijana w następnym cyklu testowania
Wstecz
Przy wnioskowaniu w przód użytkownik deklaruje pewne fakty otrzymując na wyjściu nowe fakty, wynikające z bazy wiedzy bez ograniczeń.
Użytkownik nie musi być zainteresowany znalezieniem wszystkich faktów o jedynie stwierdzeniem prawdziwości jednego z nich – nazywamy go hipotezą. Wynikiem wnioskowania wstecz może być:
•
weryfikacja hipotezy – potwierdzenie
•
falsyfikacja hipotezy – zanegowanie
Dla zweryfikowania hipotezy musi ona być wnioskiem co najmniej jednej z reguł. W
przypadku gdy nie jest wnioskiem żadnej z reguły jest falsyfikowana ( założenie zamkniętego świata)
Działanie
• Wnioskowanie zaczyna sie od testowania reguły, której wnioskiem jest hipoteza
• Wartość logiczna warunków dopytywanych testowanej reguły określa użytkownik
• Jeżeli warunki dopytywane testowanej reguły są faktami a reguła ma warunki niedopytywane staja sie one hipotezami pomocniczymi, dla których testuje sie kolejno odpowiadające im reguły aż do wyczerpania sie hipotez pomocniczych lub pojawienia sie warunków dopytywanych nie będących faktami
• Hipoteza główna zostaje zweryfikowana gdy odpowiadające jej warunki doptywalne są faktami a hipotezy pomocnicze zostaną zweryfikowane Wnioskowanie rozwinięte dokładne
Rozwinięta baza reguł – baza w której występują zanegowane warunki niedopytywane np. NW dla W będącego wnioskiem reguły.
Istota wnioskowani w BRD – w trakcie wnioskowania nie tylko zwracamy uwagę na wniosek.
Celem jest wyznaczenie wszystkich faktów wynikających z bazy wiedzy, bazy ograniczeń i zbioru warunków dopytywanych uznanych przez użytkownika za fakty. Sposób testowania odbywa się na drodze wielokrotnego testowania wszystkich reguł w kolejności ich występowania.
Działanie
Testowanie rozwinięte dokładnie to wyznaczenie wartości logicznej wniosku zapisane w dynamicznej bazie danych wyniki wraz z numerem reguły z której został otrzymany.
W przód
• Jeżeli reguła ma warunek niedopytywany o nieokreślonej wartości to jest pomijana i testowana jest następna
• Jeżeli wszystkie warunki reguły są faktami to jest ona spełniona i jej wniosek jest faktem oraz zostaje dodana wraz z nr reguły, który go wygenerował do dynamicznej bazy danych oraz:
◦ gdy jej zanegowany odpowiednik jest juz w bazie danych jest z nie usuwany
◦ dodawanie odbywa sie także, gdy fakt juz został wygenerowany przez inna regułę co umożliwia śledzenie wszystkich reguł generujących ten fakt
• Jeżeli jeden z warunków reguły nie jest faktem lub jest faktem zanegowanym to reguła jest niespełniona ale jej wniosek musi zostać zapisany w bazie danych wraz z numerem reguły niespełnionej przy czym:
◦ zaistnienie faktu nX gdy w bazie jest już fakt X lub nX generowany przez inna regułę nie powoduje dopisania zanegowanego faktu do bazy
◦ zaistnienie faktu nX gdy w bazie jest juz fakt X wygenerowany przez ta sama regułę oraz nie ma faktów X wygenerowanych przez inne reguły, wówczas nX dodawany jest wraz z numerem reguły do bazy a fakt X z tym numerem jest usuwany
◦ zaistnienie faktu nX gdy w bazie jest juz fakt X generowany przez dokładnie tą samą regułę oraz sa fakty X generowane przez inne reguły wówczas następuje tylko usuniecie faktu X generowanego przez tę regułę co nX
Wstecz
• Hipoteza może być nie tylko jednym z wniosków rozwiniętej dokładnej bazy danych ale także jego negacją
• Cel wnioskowania wstecz:
◦ weryfikacja hipotezy – wskazanie że jest prawdziwa
◦ falsyfikacja hipotezy – wskazanie że negacja jest prawdziwa
• Gdy hipoteza nie jest wnioskiem żadnej z reguł uznawana jest za fałszywą na mocy załóżenia zamkniętego świata
Weryfikacja hipotezy
• Jeżeli wszystkie warunki dopytywane reguły odpowiadające hipotezie głównej są faktami, a reguła ma warunki niedopytywane staja sie one hipotezami pomocniczymi, Hipoteza jest zweryfikowana gdy warunki dopytywane są faktami a wszystkie jej hipotezy pomocnicze zostały zweryfikowane
• Jeżeli choć jeden z warunków dopytywanych nie jest faktem bądź jedna z hipotez pomocniczych nie została zweryfikowana, a nie ma innej reguły, której hipoteza jest wnioskiem to hipoteza główna nie jest zweryfikowana
• Jeżeli choć jeden warunek dopytywany nie jest faktem albo choć jedna z hipotez pomocniczych nie jest zweryfikowana, a w bazie reguł jest dotychczas nie testowana inna reguła, której wnioskiem jest hipoteza główna to jest ona testowana
• Do weryfikacji hipotezy wystarczy weryfikacja jednej hipotezy, której wnioskiem jest hipoteza główna
Falsyfikowanie hipotezy – weryfikacja hipotezy będącej negacją wniosku falsyfikowanej reguły
• Jeżeli choć jeden warunek dopytywany wymienionej reguły nie jest faktem, a w bazie reguł nie ma innych reguł których wniosek będąc hipoteza główna nie został sfalsyfikowany, to hipoteza ta nie jest prawdziwa, a więc została pomyślnie sfalsyfikowana. Gdy taka reguła jest przystępujemy do falsyfikowania jej wniosku
• Jeżeli choć jeden warunek dopytywany nie jest faktem albo choć jedna z hipotez pomocniczych nie jest zweryfikowana a w bazie reguł jest dotychczas nie testowana inna reguła, której wnioskiem jest hipoteza główna to jest ona testowana
Do weryfikacji hipotez wystarczy weryfikacja jednej hipotezy, której wnioskiem jest hipoteza główna
Sprzeczność w elementarnej baza reguł
Typu SED 1
• Źródłem tylko baza reguł - sprzeczność generowana w obrębie jednej bazy
• Mogą być tylko typu zewnętrznego
◦ Zewnętrznie SED 1 samosprzeczna – jednym z warunków jest wniosek: M, N, X -> X
◦ Zewnętrzne bezpośrednio SED 1 sprzeczna – wniosek jednej z reguł jest wśród warunków drugiej i na odwrót: M, N Y -> X; P, Q, X -> Y
• Zastąpienie wniosku jednej z reguł warunkami drugiej daje regułę SED 1
samosprzeczną
◦ Zewnętrznie pośrednio SED 1 sprzeczna – gdy podstawienie wniosku jednej z reguł do kolejnej, tej do jeszcze następnej doprowadza do reguły SED 1 samosprzecznej: K, B -> H; C, D, X -> K; H, A -> X
Typu SED 2
• Źródłem sprzeczności jest interakcja z bazą reguł i bazą ograniczeń.
Sprzecznością SED 2 jest wystepowanie reguł o warunkach wykluczających się: A, B, C -> W przy ograniczeniu A, C
Nadmiarowość
Typu NED 1
• Źródłem nadmiarowości tylko baza reguł
◦ NED 1.1 – występowanie reguło jednakowych warunkach i wnioskach: A, B, G -> Y; C, D -> A; E, F -> B; C, D, E, F, G -> Z
◦ NED 1.2 – występowanie reguł subsumowanych: A, B, C, D -> W; A, B -
> W
Typu NED 2 – interakcja BED z bazą ograniczeń: A, B, C -> W; A, B, D -> W; A, B ,E
-> W Z lista warunków wykluczających sie: C, D, E
2. Reprezentacja bazy wiedzy w języku Prolog, przykłady reguł prologowych.
(Czy budowa bazy wiedzy też?)
1 Reprezentacja bazy wiedzy
Prolog - deklarowany język programowania, nie implementuje się algorytmu tylko dostarcza receptur i fakty. Jest językiem programowania w
logice. Pisząc program w prologu skupiamy się na definicjach obiektu a związkach między nimi, a nie na sposobie wykonania danego zadania.
Nacisk kładziemy na to Co obliczyć a nie JAK to obliczyć.
Język prolog to kompilatory wyposażony w system wnioskowania (sam rozstrzyga prawdziwość podanego calu dla podanych reguł i faktów). Dzięki w/w cechom umożliwia łatwe projektowanie systemów ekspertowych, które mogą być realizowane w innym języku. Baza wiedzy składa się z reguł i faktów. Program w Prologu składa się z faktów, relacji, reguł i zapytań. Reguły to wiedza dziedzinowa o charakterze ogólnym, natomiast fakty to wiedza dziedzinowa o charakterze szczegółowym.
Reprezentacja faktów:
Fakty przedstawia się za pomocą predykatów (
symbol_predykatu(ob_1,ob_2,...,ob_n). )
mezczyzna(jarek)
Jarek jest mężczyzną.
Reprezentacja reguł:
( B:-A1,A2,...,An ) gdzie A1,...,An są predykatami. Ponieważ reguły odnoszą się do relacji pomiędzy pewnymi zbiorami obiektów, jako argumenty mogą wystąpić zmienne.
rodzic(anna, jarek)
Anna jest rodzicem Jarka.
Cel:
Mając bazę faktów i reguł można zadawać pytania czyli stawiać cele do rozwiązania. Cel to pojedynczy predykat lub koniunkcja predykatów.
Przykład reguły
"Jeżeli student X otrzymał wszystkie zaliczenia w terminie i student X zdał wszystkie egzaminy to zaliczył wszystko"
Przykład faktu
"Student X otrzymał zaliczenia ze wszystkiego w terminie"
Bazę wiedzy w postaci klauzul Prologu zapisujemy w pliku tekstowym. Fakty to klauzule o pustym ciele. Pytania to klauzule posiadające tylko ciało. Reguły to klauzule, które maja niepuste zarówno nagłowek jak i ciało.
2 Przykładowe reguły
Sprawdzenie parzystości:
parzysta(X):-Y is X mod 2, Y =0.
Silnia:
silnia(N,F):-N>0, N1 is N-1, silnia(N1,F1), F is N*F1.
silnia(0,1).
Ciąg Fibonacciego:
f(0,1).
f(1,1).
f(N,F):-N>1, N1 is N-1, N2 is N-2, f(N1,F1), f(N2,F2), F is F1 + F2.
NWD
nwd(X,X,X).
nwd(X,Y,Z):-X>Y, X1 is X-Y, nwd(X1,Y,Z).
nwd(X,Y,Z):-X<Y, Y1 is Y-X, nwd(X,Y1,Z).
Względnie pierwsze
wp(X,Y):-nwd(X,Y,1).
nww(X,Y,Z):-nwd(X,Y,Z1), Z is X*Y/Z1.
Wieża Hanoi
wh(1,X,Y,_):- write(X), write('->')write(Y), nl.
wh(N,X,Y,Z):- N>1, M is N-1, wh(M,X,Z,Y), wh(1,X,Y,_),wh(M,Z,X,Y).
3. Przeszukiwanie przestrzeni stanów, grafowa reprezentacja problemu przeszukiwania, przeszukiwanie w głąb i wszerz.
1 Przeszukiwanie przestrzeni stanów
Przeszukiwanie to staranne rozważanie wielu możliwości prowadzące do wybory tej, która wydaje się być optymalna. Jest ono elementem wszystkich metod sztucznej inteligencji. przeszukiwaniami są miedzy innymi uczenie czy wnioskowanie.
Przeszukiwanie przestrzeni stanów - reprezentacja
•
Opis przestrzeni stanów
◦
iloczyn kartezjański (para, trójka,...)
◦
dziedzina parametrów opisu przestrzeni
•
Przestrzeń stanów może być skończona bądź nieskończona
◦
skończoność czy nieskończoność przestrzeni nie musi determinować trudności problemu
◦
w przestrzeni stanów mogą istnieć stany nieosiągalne
• Stan początkowy – jest to stan jawny
• Stan końcowy – jest on jawny; niejawny – w tym przypadku dysponujemy warunkami osiągnięcia stanu końcowego, funkcją oceny stanu
• Operator zmiany stanu – warunki zastosowania stanu, efekty działania; opis może być parametryczny ( np. ruch w labiryncie )
Schemat algorytmu przeszukiwania stanów
Algorytm GT (Generate and test)
•
Rozpocznij od stanu początkowego
•
Dopóki niespełniony warunek celu
◦
wybierz operator stosowany w stanie Stan
◦
zastosuj wybrany operator przechodząc w nowy stan Algorytm ten sugeruje, że wybiera pierwszy możliwy do zastosowania w aktualnym stanie operator. Wywiera on wypływ na wybór operatora poprzez odpowiednie ich posortowanie. W praktyce stosowanie operatorów wyznacza kolejka. Kluczowym elementem jest wybór odpowiedniej strategii przeszukiwania.
Rodzaje strategii przeszukiwania
Ślepa
Możliwa do zastosowania we wszystkich przypadkach. Zakłada stosowanie operatorów zgodnie z kolejnością występowania w
kolejce, np. strategia prawej ręki w przeszukiwaniu labiryntu.
Poinformowana
Wykonuje informacje specyficzne dla problemu. Informacja taka może być dostępna w ogólnym przypadku, np. przeszukiwanie labiryntu w którym z miejsca wyjścia dochodzą głosy.
Mamy z nią do czynienia, gdy istnieje wgląd w całą przeszukiwana przestrzeń, istnieje możliwość symulowania ruchu lub jego cofnięcia. W
praktyce pomimo możliwości symulowania wielkość przestrzeni uniemożliwia jej pełne przeszukanie.
2 Grafowa reprezentacja problemu przeszukiwania 3 Przeszukiwanie w głąb i wszerz
Przeszukiwanie wszerz
• Zbadaj wszystkie stany w odległości d od stanu początkowego przed zbadaniem jakiegokolwiek stanu w odległości d-1
• Jest wersja algorytmu przeszukiwania z nawracaniem z kolejką FIFO, tzn nowe stany umieszczone są na końcu
• Własności:
◦ Zawsze gwarantuje znalezienie rozwiązania gdy istnieje
◦ Złożoność wykładnicza
Przeszukiwanie w głąb
• Zbadaj wszystkie nowe stany ( potomki ) danego stanu s przed powrotem do badania sąsiadów stanu s
• Jest wersja algorytmu przeszukiwania z nawracaniem z kolejką LIFO, tzn nowe stany umieszczane na początku
• Własności:
◦ Nie gwarantuje znalezienia rozwiązania gdy istnieje
◦ Może nie znaleźć rozwiązania optymalnego w sensie długości drogi dojścia do niego
◦ Złożoność wykładnicza
• Dla przestrzeni nieskończonych użyteczne jest ograniczenie głębokości 4. Przeszukiwanie w grach dwuosobowych, drzewo gry, algorytm min-max.
1 Przeszukiwanie w grach dwuosobowych
• W grze bierze udział dwóch graczy którzy na przemian wykonują ruch
• W każdym momencie gry wykonać można tylko skończoną liczbą ruchów
• Wynikiem w grze może być:
◦ wygrana pierwszego lub drugiego gracza bądź remis
• Przeszukiwanie przestrzeni stanów dla gier dwuosobowych nie może być stosowane bezpośrednio ze względu na to że nie są znane ruchy przeciwnika
• Rozwiązaniem jest schemat uwzględniający wszystkie możliwe ruchy przeciwnika
• W pewnych przypadkach pełna wiedza o stanie w ogóle nie jest dostępna dla obydwu graczy
2 Drzewo gry dwuosobowej
• Partię gry można opisać w pełni przez ciąg naprzemiennych ruchów obu graczy, od początkowego ustawienia do rozstrzygnięcia
• W celu wyboru optymalnego ruchu na pewnym poziomie rozważyć można wszystkie możliwe scenariusze rozpoczynające sie możliwymi ruchami tego gracza po każdym z których może nastąpić każdy możliwy ruch drugiego gracza itd.
• Scenariusz gry reprezentujemy w postaci drzewa, którego kolejne poziomy reprezentują na przemian ruchy graczy, a każdy węzeł obrazuje aktualny stan gry
• Korzeń drzewa – reprezentuje początkowy stan gry, kolejny poziom stan gry po pierwszym ruchu itd.
• Gałęzie – reprezentują wszystkie możliwe do wykonania ruchy gracza który aktualnie wykonuje ruch
• Każda gałąź prowadzi do węzła reprezentującego stan gry po ruchu
• Liście – reprezentują sytuacje, w których partia gry jest rozstrzygnięta 3 Algorytm min-max
Może być stosowany dla gier deterministycznych z pełną informacja, polega na obliczaniu wartości węzła startowego poprzez propozycje wartości końcowych w górę drzewa.
• Ruchów przeciwnika nie można przewidzieć ani opisać dlatego przyjmujemy, że przeciwnik również dąży do wygranej
• Zakładając, że węzłom drzewa gry przypisujemy wartości liczbowe będące ocena szans wygranej gracza, to na poziomie ruchu gracza należy zakładać wybór maxujący tą ocenę a na poziomie przeciwnika min
• Algorytm ten działa wg schematu i może być stosowany do gier deterministycznych z pełną informacją, polega na obliczeniu wartości węzła startowego poprzez propagację wartości końcowych w gore drzewa
• Poziom drzewa odpowiada ruchom graczy MAX-a i MIN-a. Zakładamy, że MAX
wykonuje pierwszy ruch
• Stanom końcowym reprezentowanym przez liście przypisujemy wartości wygranej ( przegrana – liczba ujemna )
• Węzłom drzewa powyżej liści przypisujemy stopniowo wartości: maksymalna ze wszystkich gałęzi, jeśli węzeł odpowiada ruchowi MAX-a minimalna gdy MIN-a
• Najwyższa gałąź z największą wartością wskazuje optymalny ruch MAX-a.
5. Zadanie uczenia pod nadzorem i uczenia nienadzorowanego. Przykłady algorytmów.
5.1 Uczenie pod nadzorem – w przypadku gdy zbiór uczący składa sie z wektorów cech oraz wektorów odpowiedzi:
- wektor wejściowy – wektor cech
- wektor wyjściowy – wektor zmiennych opisywanych
- cel uczenia – nauczenie systemu odpowiedzi na wektory wejściowe
- przykład – zadanie klasyfikacji, wyjściem etykieta klasy W trybie uczenia z nauczycielem (nazywanym również uczeniem pod nadzorem) oprócz danych wejściowych posiadamy również sygnały wyjściowe, jakie chcemy uzyskać. Dobór wag musi być przeprowadzony w taki sposób, aby aktualny sygnał wyjściowy y był najbliższy wartości zadanej d.
5.2 Uczenie nienadzorowane – zbiór uczący składa sie z wektora cech.
- cel uczenia - opisanie i objasnienie zbioru dnaych wejściowych tylko na podstawie ich samych, wykrycie wewnętrznej struktury danych, wykrycie współzależności.
- przykład - zadanie grupowania danych w rozłączne klasy (klasyfikacja nienadzorowana)
Uczenie maszynowe albo uczenie się maszyn
( ang. machine learning) jest dziedziną sztucznej inteligencji której przedmiotem zainteresowania
są
metody
umożliwiające
uczenie
się
programom
komputerowym. Program uczy się, jeśli potrafi modyfikować jakiś aspekt samego siebie (swój stan) i dzięki temu działać coraz lepiej lub wydajniej. Uczenie maszynowe
(nienadzorowane)
znajduje
zastosowanie
na
przykład
w
rozwiązywaniu problemów, dla których ze względu na ich złożoność niemożliwe jest podanie gotowego programu rozwiązującego dany problem w racjonalnym czasie.
6. Zadanie uczenia klasyfikacji, ocena klasyfikatora.
6.1. Zadanie uczenia klasyfikacji.
Zbiór obserwacji próbek (próbek) nazywamy zbiorem wektorów uczących -
oznaczamy symbolem V.
Każdy element zbioru V opisywany jest przez zestaw atrybutów (cech) a1,...,ap ze zbioru A oraz przez klasę, którą reprezentuje Atrybuty tworzą tak zwaną przestrzeń cech.
...
Algorytmem klasyfikacji (regułą decyzyjną) nazywamy funkcję odwzorowującą przestrzeń cech w zbiór numerów klas, tzn (przy przyjętych założeniach) funkcję:
taką, że
, gdy wektor x jest elementem
klasy i.
Każda próbka może należeć tylko i wyłączenie do jednej klasy.
...
6.2. Ocena klasyfikatora.
Walidacja klasyfikatora – sprawdzenie sprawnośći (prawdopodobieństwa poprawnje klasyfikacji) klasyfikatora na podstawie niezależnej od zbioru uczącego próby, zwanej próba walidacyjną.
Testowanie – ostateczna ocena sprawności kklasyfikatora.
7. Podstawowe architektury sieci neuronowych, reguła uczenia perceptronu, perceptron wielowarstwowy. Reguła propagacji wstecznej błędu.
7.1.Podstawy architektury sieci neuronowych.
Neuron
- W oryginale - komórka nerwowa. W sieci neuronowej -
podstawowy jej składnik.
Jądro - "centrum obliczeniowe" neuronu. To tutaj zachodzą procesy kluczowe dla funkcjonowania neuronu.
Akson - "wyjście" neuronu. Za jego pośrednictwem neuron powiadamia świat zewnętrzny o swojej reakcji na dane wejściowe. Neuron ma tylko jeden akson.
Wzgórek aksonu - stąd wysyłany jest sygnał wyjściowy, który wędruje dalej poprzez akson.
Dendryt - "wejście" neuronu. Tędy trafiają do jądra sygnały mające być w nim później poddane obróbce. Dendrytów może być wiele -
biologiczne neurony mają ich tysiące.
Synapsa - jeśli dendryt jest wejściem neuronu, to synapsa jest jego furtką. Może ona zmienić moc sygnału napływającego poprzez dendryt.
Wejścia to dendryty,
lub
ściślej: sygnały przez
nie
nadchodzące. Wagi to
cyfrowe
odpowiedniki
modyfikacji
dokonywanych
na
sygnałach
przez synapsy. Blok sumujący to
odpowiednik jądra, blok aktywacji to wzgórek aksonu, a wyjście -
to akson. Zaznaczam, że fakt, iż na rysunku są trzy dendryty, jest czysto przypadkowy. Liczba ich jest dowolna, (zaś na moich rysunkach wynosi trzy jedynie ze względów estetycznych.) 7.2. Reguła uczenia perceptronu.
7.3.Perceptron wielowarstwowy.
Perceptron wielowarstwowy jest aproksymatorem nieliniowym. Węzeł grafu sieci odpowiada pojedynczemu neuronowi. Krawędź odpowiada połączeniu między neuronami (tzw. połączenie synaptyczne) – jest skierowana od wyjścia jednego do wejścia drugiego neuronu, co odpowiada jednokierunkowemu przepływowi danych.
Neuron działa w taki sposób, że dokonuje się ważonego sumowania wartości wejść, obliczając wartość, zwaną pobudzeniem :
7.4. Reguła propagacji wstecznej błędu
Podanie na wejście wektora uczącego x i obliczenie aktualnego wyjścia y.
Obliczanie błędów w warstwie ostatniej na podstawie różnicy otrzymanych wartości wektora y oraz wzorcowych y. Adaptacja wag od warstwy wejściowej do wyjściowej. Obliczenie błędów dla neuronów we wszystkich warstwach wcześniejszych po kolei. Powtarzamy procedurę do momentu kiedy sygnał
wyjściowy sieci będzie dostatecznie blisko.