dr inż. Michał Grochowski

Podobne dokumenty
Klasteryzacja danych

Automatyka - zastosowania, metody i narzędzia, perspektywy

Monitorowanie i Diagnostyka w Systemach Sterowania

Monitorowanie i Diagnostyka w Systemach Sterowania

Sztuczne sieci neuronowe

Literatura. Sztuczne sieci neuronowe. Przepływ informacji w systemie nerwowym. Budowa i działanie mózgu

Monitorowanie i Diagnostyka w Systemach Sterowania na studiach II stopnia specjalności: Systemy Sterowania i Podejmowania Decyzji

Wstęp do sztucznych sieci neuronowych

1. Historia 2. Podstawy neurobiologii 3. Definicje i inne kłamstwa 4. Sztuczny neuron i zasady działania SSN. Agenda

Podstawy Sztucznej Inteligencji (PSZT)

Metody i techniki sztucznej inteligencji / Leszek Rutkowski. wyd. 2, 3 dodr. Warszawa, Spis treści

Wstęp do teorii sztucznej inteligencji Wykład II. Uczenie sztucznych neuronów.

Wstęp do teorii sztucznej inteligencji Wykład III. Modele sieci neuronowych.

Sztuczne sieci neuronowe (SNN)

S O M SELF-ORGANIZING MAPS. Przemysław Szczepańczyk Łukasz Myszor

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 335

Metody Sztucznej Inteligencji II

Sieci neuronowe do przetwarzania informacji / Stanisław Osowski. wyd. 3. Warszawa, Spis treści

Podstawy Sztucznej Inteligencji Sztuczne Sieci Neuronowe. Krzysztof Regulski, WIMiIP, KISiM, B5, pok. 408

Sztuczne sieci neuronowe

Automatyczna predykcja. Materiały/konsultacje. Co to jest uczenie maszynowe? Przykład 6/10/2013. Google Prediction API, maj 2010

METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING

Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta

Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe.

4.1. Wprowadzenie Podstawowe definicje Algorytm określania wartości parametrów w regresji logistycznej...74

Inteligentne systemy przeciw atakom sieciowym

Podstawy sztucznej inteligencji

Elementy Sztucznej Inteligencji. Sztuczne sieci neuronowe cz. 2

Widzenie komputerowe (computer vision)

Lekcja 5: Sieć Kohonena i sieć ART

Uczenie sieci typu MLP

Uczenie sieci radialnych (RBF)

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

Systemy uczące się Lab 4

Co to jest grupowanie

Inteligentne systemy informacyjne

Obliczenia Naturalne - Sztuczne sieci neuronowe

I EKSPLORACJA DANYCH

Elementy kognitywistyki II: Sztuczna inteligencja. WYKŁAD X: Sztuczny neuron

Sztuczne sieci neuronowe i sztuczna immunologia jako klasyfikatory danych. Dariusz Badura Letnia Szkoła Instytutu Matematyki 2010

synaptycznych wszystko to waży 1.5 kg i zajmuje objętość około 1.5 litra. A zużywa mniej energii niż lampka nocna.

HAŁASU Z UWZGLĘDNIENIEM ZJAWISK O CHARAKTERZE NIELINIOWYM

Temat: Sieci neuronowe oraz technologia CUDA

Zastosowania sieci neuronowych

Obliczenia inteligentne Zadanie 4

Analiza skupień. Analiza Skupień W sztucznej inteligencji istotną rolę ogrywają algorytmy grupowania

Pattern Classification

wiedzy Sieci neuronowe

Sztuczna inteligencja

Wprowadzenie do teorii systemów ekspertowych

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

Wykład 1: Wprowadzenie do sieci neuronowych

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

SIECI NEURONOWE Liniowe i nieliniowe sieci neuronowe

Temat: Sztuczne Sieci Neuronowe. Instrukcja do ćwiczeń przedmiotu INŻYNIERIA WIEDZY I SYSTEMY EKSPERTOWE

Sieci Kohonena Grupowanie

Uczenie sieci neuronowych i bayesowskich

Elementy kognitywistyki II: Sztuczna inteligencja. WYKŁAD XI: Sztuczne sieci neuronowe

Wstęp do sieci neuronowych, wykład 07 Uczenie nienadzorowane cd.

Systemy pomiarowo-diagnostyczne. Metody uczenia maszynowego wykład I dr inż. 2015/2016

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

Temat: ANFIS + TS w zadaniach. Instrukcja do ćwiczeń przedmiotu INŻYNIERIA WIEDZY I SYSTEMY EKSPERTOWE

Elementy kognitywistyki III: Modele i architektury poznawcze

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

METODY INŻYNIERII WIEDZY

8. Neuron z ciągłą funkcją aktywacji.

Zastosowanie metod eksploracji danych Data Mining w badaniach ekonomicznych SAS Enterprise Miner. rok akademicki 2014/2015

Wstęp do sieci neuronowych, wykład 6 Wsteczna propagacja błędu - cz. 3

Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Zastosowania sieci neuronowych

SZTUCZNA INTELIGENCJA

BIOCYBERNETYKA SIECI NEURONOWE. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.

Uczenie się pojedynczego neuronu. Jeśli zastosowana zostanie funkcja bipolarna s y: y=-1 gdy z<0 y=1 gdy z>=0. Wówczas: W 1 x 1 + w 2 x 2 + = 0

Sieć przesyłająca żetony CP (counter propagation)

SAS wybrane elementy. DATA MINING Część III. Seweryn Kowalski 2006

MATLAB Neural Network Toolbox przegląd

Elementy statystyki wielowymiarowej

Najprostsze modele sieci z rekurencją. sieci Hopfielda; sieci uczone regułą Hebba; sieć Hamminga;

Sieci neuronowe jako sposób na optymalizacje podejmowanych decyzji. Tomasz Karczyoski Wydział W-08 IZ

Prof. Stanisław Jankowski

Zastosowanie sztucznych sieci neuronowych w prognozowaniu szeregów czasowych (prezentacja 2)

SIECI KOHONENA UCZENIE BEZ NAUCZYCIELA JOANNA GRABSKA-CHRZĄSTOWSKA

Przykładowa analiza danych

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Metody systemowe i decyzyjne w informatyce

ELEMENTY SZTUCZNEJ INTELIGENCJI. Sztuczne sieci neuronowe

Grupowanie Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633

SIECI REKURENCYJNE SIECI HOPFIELDA

WSTĘP I TAKSONOMIA METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING. Adrian Horzyk. Akademia Górniczo-Hutnicza

Sieci neuronowe w Statistica. Agnieszka Nowak - Brzezioska

Instytut Automatyki i Inżynierii Informatycznej Politechniki Poznańskiej. Adam Meissner. Elementy uczenia maszynowego

Elementy inteligencji obliczeniowej

Zastosowanie metod eksploracji danych Data Mining w badaniach ekonomicznych SAS Enterprise Miner. rok akademicki 2013/2014

METODY INTELIGENCJI OBLICZENIOWEJ wykład 5

Optymalizacja ciągła

Seminarium magisterskie. Dyskusja nad tematem pracy magisterskiej pisanej pod kierunkiem pani Dr hab. Małgorzaty Doman

Zmienne zależne i niezależne

METODY INTELIGENCJI OBLICZENIOWEJ wykład 4

TEORETYCZNE PODSTAWY INFORMATYKI

Transkrypt:

Automatyka - zastosowania, metody i narzędzia, perspektywy na studiach I stopnia specjalności: Automatyka i systemy sterowania Uczenie maszynowe (Machine Learning) dr inż. Michał Grochowski m.grochowski@eia.pg.gda.pl kiss.pg.mg@gmail.com tel: 58 347 29 04 Strona (tymczasowa): www.ely.pg.gda.pl/kiss/dydaktyka/automatyka2 -

Co to jest Uczenie maszynowe Uczenie maszynowe jest dziedziną nauki operującą na danych i jest częścią tzw. metod sztucznej inteligencji (ang. Artificial intelligence - AI) oraz metod inteligencji obliczeniowej (Computational Intelligence - CI). Celem uczenia maszynowego jest praktyczna realizacja koncepcji AI oraz CI, stworzenia systemu samouczącego, który jest w stanie się doskonalid na bazie doświadczenia, danych i wiedzy (data mining, data acquisition). źródło: http://gcn.com/articles/2013/03/26/siftscience-machine-learning-anti-fraud.aspx

Celem uczenia maszynowego jest odkrywanie (odnajdowanie) tego co jest w danych ukryte.

Celem uczenia maszynowego jest odkrywanie (odnajdowanie) tego co jest w danych ukryte. Separacja obrazów źródło: A. M. Bronstein, M. M. Bronstein, M. Zibulevsky, "On separation of semitransparent dynamic images from static background", Proc. Intl. Conf. on Independent Component Analysis and Blind Signal Separation, pp. 934-940, 2006.

Celem uczenia maszynowego jest odkrywanie (odnajdowanie) tego co jest w danych ukryte. Data Mining źródło: Lecture Notes: Applied Machine Learning. LASA Laboratory, EPFL CH-1015 Lausanne, Switzerland.

Uczenie maszynowe gwałtownie zyskuje popularnośd z powodu swoich zdolności do pracy w warunkach powodzi danych". Znajduje zastosowania tam gdzie duże rozmiary zbiorów danych uniemożliwiają ich ręczną analizę, tam gdzie system musi się w sposób dynamiczny i autonomiczny dostosowywad do zmieniających się warunków oraz tam gdzie problemy są na tyle złożone i skomplikowane że nie istnieją ich wiarygodne modele teoretyczne.

Uczenie maszynowe sprawdza się znakomicie w takich zagadnieniach jak: podejmowanie decyzji; pozyskiwanie wiedzy z danych i zachowao; inteligentne systemy wyszukiwania informacji; przetwarzanie i rozpoznawanie mowy; przetwarzanie i rozpoznawanie obrazów (w tym twarzy), zachowao, gestów; inteligentne systemy kompresji danych; widzenie komputerowe; autonomiczne sterowanie pojazdów bezzałogowych; systemy wieloagentowe; inteligentne systemy diagnostyczne; inteligentne systemy sterowania; prognozowanie i w wielu innych.

Ceny [zł] Uczenie maszynowe obejmuje takie zagadnienia jak: odkrywanie struktur/cech w danych; klasteryzacja; kompresja; klasyfikacja; regresja, aproksymacja, predykcja; separacja; identyfikacja; rozpoznawanie; optymalizacja; i 3000 2800 2600 2400 2200 2000 1800 WIG20 prognoza 40 60 80 100 120 140 160 Czas [tygodnie]

Najbardziej popularne narzędzia Uczenia maszynowego: Sztuczne sieci neuronowe (wielowarstwowe; radialne; dynamiczne; samoorganizujące; rozmyte; falkowe, neuro-genetyczne); Metody wielowymiarowej analizy statystycznej danych: Analiza Składników Podstawowych (Principal Component Analysis - PCA) oraz Analiza Składników Niezależnych (Independent Component Analysis - ICA); Metody kernelowe; Maszyny Wektorów Podtrzymujących (Support Vector Machines); Sied Kohonena

Najbardziej popularne narzędzia Uczenia maszynowego: k-means; c fuzzy means; Mixture of Gaussian Models; metody hierarchiczne; modele Markowa; algorytmy genetyczne, ewolucyjne; rojowe (Particie swarm optimisation), mrówkowe (Ant colony); Symulowane wyżarzanie (Simulated annealing); Artificial immune system.

Oczekiwania i ograniczenia wobec systemów uczących się: Oczekuje się, że systemy powinny uczyd się korzystając z wiedzy fragmentarycznej, doskonalid się w trakcie pracy, gromadzid doświadczenia, tworzyd nowe pojęcia, indukcyjnie wyciągad wnioski. Oczekiwane zadania systemów: formułowanie nowych pojęd, wykrywanie nieznanych prawidłowości w danych, tworzenie reguł decyzyjnych, przyswajanie nowych pojęd i struktur drogą uogólnienia i analogii, modyfikowanie, uogólnianie i precyzowanie danych, zdobywanie wiedzy poprzez kontakt z otoczeniem, generowanie wiedzy zrozumiałej dla człowieka, Na podstawie: Wykładu "Maszynowe uczenie sie" Jerzy Stefanowski, Instytut Informatyki, Politechnika Poznaoska 2009.

Ograniczenia systemów uczących się: Problemy wynikające z: wprowadzenia danych niekompletnych, wprowadzenia danych częściowo sprzecznych, niezdefiniowania ograniczeo dziedzinowych. Klasyfikacja metod maszynowego uczenia się: W ogólności system zmieniad się może w dwojaki sposób: system nabywa "nową wiedzę" z zewnętrznych źródeł, system modyfikuje się samodzielnie poprzez intensywne wykorzystywanie posiadanej już wiedzy w sposób bardziej efektywny. Podział ze względu na rodzaj informacji dostarczony w zbiorze przykładów: uczenie nadzorowane (ang. supervised learning, reinforcement learning), uczenie nienadzorowane (ang. unsupervised learning). Na podstawie: Wykładu "Maszynowe uczenie sie" Jerzy Stefanowski, Instytut Informatyki, Politechnika Poznaoska 2009.

Klasteryzacja danych

Motywacja Klasteryzacja danych rozwój technologii cyfrowej (informacje z czujników pomiarowych, zdjęcia, bazy danych, digitalizacja zbiorów bibliotecznych, badania genetyczne, przeszukiwanie internetu, obróbka dźwięku i wideo etc ) kreuje coraz większe zbiory danych; szacuje się że w 2011 roku przetwarzanych było ok. 3*10 20 B danych; Zdajemy sobie sprawę z tego że to dopiero początek.

Klasteryzacja danych Celem klasteryzacji powinno byd odnalezienie naturalnego grupowania wzorców, cech, obrazów, itp celem ich późniejszej łatwiejszej obróbki. 7 6 5 4 Klasteryzacja (grupowanie danych) jest jedną z metod nienadzorowanej analizy danych (w odróżnieniu odklasyfikacji). 3 2 1 5 4 3 2 4 5 6 7 8 Jej celem jest podział danych na klastry (grupy), tak aby każdy z nich zawierał możliwie podobne do siebie elementy (homogenicznośd w grupach), a jednocześnie, poszczególne klastry powinny byd jak najbardziej zróżnicowane pomiędzy sobą (heterogenicznośd pomiędzy grupami).

Klasteryzacja danych Podobieostwo grup danych może byd opisane na różne sposoby, w zależności odprzyjętej miary. Grupy danych mogą byd reprezentowane na różne sposoby, najczęściej poprzez centralny punkt w przestrzeni danych. W zależności od sposobu reprezentacji i przyjętej miary, grupy mogą wyglądad zupełnie inaczej. W procesie grupowania danych nie posiadamy danych wzorcowych tak więc proces ten jest uczeniem bez nauczyciela. Jain, A.K. Data clustering: 50 years beyond K-means. Pattern Recognition Lett. (2009),

Wprowadzenie Klasteryzacja danych W zagadnieniach klasyfikacji często operujemy pojęciami: obiekty np. wina, kwiaty, pacjenci, samochody, klienci banków, użytkownicy portali społecznościowych, teksty, obrazy, dźwięki, geny cechy np. kolor, woo, smak; długośd, kolor, długośd płatków kwiatowych; wyniki badao medycznych, parametry samochodów; upodobania ludzkie, rodzaje wykonywanych operacji finansowych; wzorce graficzne; słowa kluczowe

Wprowadzenie Klasteryzacja danych Przyjmujemy, że dane podlegające grupowaniu zapisywane są w postaci macierzy X zawierającej M obiektów, składających się z numerycznych wartości opisujących obiekty (każda po N cech). Zakładając że grupy danych reprezentowane są przez ich środki, celem algorytmu grupowania danych jest uzyskanie c wektorów v i = [v i1,, v in ], i=1,, c będących reprezentantami poszczególnych grup w przestrzeni danych. W problemie grupowania 100 obiektów do 5ciu różnych grup, mamy możliwośd podziału tych danych na 6.57 e 67 różnych sposobów!!!!!!! Celem jest zatem znalezienie efektywnego algorytmu grupowania danych pozwalającego na znalezienie optymalnego (suboptymalnego) podziału tych danych bez konieczności analizy wszystkich możliwych kombinacji.

Wprowadzenie Klasteryzacja danych Przy założeniu 1 mln obrazów i czasie porównywania pary obrazów ok. 10 ms., otrzymamy czas realizacji zapytania ok. 30 godzin; jednak aplikacje porównujące (wyszukujące) tekst działają znacznie szybciej: 10 miliardów dokumentów tekstowych jest przeszukiwana przez Google w ok. 0.1 sekundy!!! (a) a pair of similar images has 370 matching key points; (b) a pair of different images has 64 matching key points. The green lines show the matching key-points between the images (Lee et al., 2008). Jain, A.K. Data clustering: 50 years beyond K-means. Pattern Recognition Lett. (2009),

Metody klasteryzacji grupujące (ostre, rozmyte, posybilistyczne); hierarchiczne

Ostre grupowanie danych Celem ostrego grupowania danych jest podział danych na c grup A i, tak aby: Interpretacja: A i A j A i c i 1 A X, (1) zbiór wszystkich grup zawiera wszystkie wektory danych, a każdy obiekt należy dokładnie do jednej grupy; (2) grupy danych są rozłączne; (3) żadna z grup nie jest pusta ani nie zawiera całego zbioru danych X., Aby podzielid dane na c grup, wygodnie jest przyjąd macierz podziału U o wymiarach cxm, zawierającą stopnie przynależności ᴜ ik k-tej danej do i-tej grupy k=1,, M; i=1,, c. X i 1 1 i i j c c (1) (2) (3)

Cluster Membership Score 6 4 Ostre grupowanie danych Cluster 1 Cluster 2 6 4 Nieostre grupowanie danych Cluster 1 Cluster 2 2 2 0 0-2 -2-4 -4-6 -6-4 -2 0 2 4 6 8-6 -6-4 -2 0 2 4 6 8 1 0.9 Cluster 1 Score Cluster 2 Score 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 50 100 150 200 250 300 Point Ranking

Miary odległości Niezmiernie istotnym czynnikiem wpływającym na wynik podziału danych jest sposób obliczania odległości pomiędzy obiektami zbioru danych. W przypadku grupowania danych mierzymy odległości w przestrzeni cech. Najczęściej stosowaną miarą odległości jest miara euklidesowa, interpretowana jako geometryczna odległośd między dwoma punktami w przestrzeni X. Rozważmy dwa punkty o współrzędnych x s =[x 1, x 2,, x m ] oraz x t =[x 1, x 2,, x m ] i policzmy odległości pomiędzy nimi zgodnie z normami: Euklidesowa; Euklidesowa ważona (odchyleniem standardowym); Manhattan (city block); Mahalanobis; Czebyszewa; Hamminga; Cosine. Miara Manhattan

Algorytmy grupowania danych Algorytm HCM (Hard k-means) Algorytm HCM dzieli jednoznacznie dane X na c grup. W trakcie realizacji algorytmu obliczamy odległośd pomiędzy każdym wektorem: i środkiem grupy: n xk R, k 1,, M v i, i 1,, c Środek grupy jest średnią położenia wszystkich obiektów należących do tej grupy. Przynależnośd do grupy opisujemy za pomocą macierzy: U [ ] ik Z H Elementami macierzy U są zera i jedynki określające przynależnośd obiektu x k do i-tej grupy. Inicjalizacja algorytmu polega na wyborze liczby grup c i ustaleniu początkowego położenia ich środków np. losowo.

Algorytmy grupowania danych Superpozycja k lokalnych modeli Gaussa Inne algorytmy: Algorytm HCM (Hard k-means); Algorytm FCM (Fuzzy C-Means), znany również jako Soft k-means; Algorytm PCM (Possibilistic C-Means); Gaussian Mixture Models (GMM).

Klasteryzacja hirarchiczna (hierarchical clustering)

Klasteryzacja hierarchiczna Klasteryzacja hierarchiczna jest metodą grupowania danych w różnej skali poprzez tworzenie drzewa klastrów zwanego dendrogramem. Drzewo nie jest zwyczajnym zbiorem klastrów a raczej wielopoziomową strukturą hierarchiczną, w której to klastry jednego poziomu tworzą (po połączeniu) klaster na poziomie wyższym. Dzięki temu możemy uzyskad odpowiedni do naszych potrzeb stopieo klasteryzacji. 2.5 2 1.5 1 4 5 1 3 2

Klasteryzacja hierarchiczna Można wyróżnid dwa sposoby klasteryzacji hierarchicznej: klasteryzacja skupiająca zaczynamy od pojedynczych elementów stanowiących klastry, a następnie w kolejnych krokach łączymy klastry na kolejnych poziomach, aż do uzyskania jednej grupy skupiającej wszystkie obiekty; klasteryzacja dzieląca zakładamy że wszystkie dane należą do jednego klastra, a w kolejnych krokach dokonujemy podziału klastra na kolejne, aż do momentu gdy każdy z elementów będzie stanowił pojedynczy klaster. 2.5 2 1.5 1 4 5 1 3 2

Klasteryzacja hierarchiczna źródło: Lecture Notes: Applied Machine Learning. LASA Laboratory, EPFL CH-1015 Lausanne, Switzerland.

Klasteryzacja hierarchiczna źródło: Lecture Notes: Applied Machine Learning. LASA Laboratory, EPFL CH-1015 Lausanne, Switzerland.

Klasteryzacja danych Przykład Sterowania Automatyka - zastosowania, metody i narzędzia, perspektywy

2 klastry

3 klastry

10 klastrów

20 klastrów

50 klastrów

70 klastrów

Sztuczne sieci neuronowe wprowadzenie (wybrane fragmenty materiału wykładowego p. Kazimierza Duzinkiewicza)

Sztuczne sieci neuronowe Geneza: Sieci neuronowe powstały dzięki obserwacjom i próbom naśladowania przetwarzania informacji w centralnym systemie nerwowym organizmów żywych Jakie mają cechy: Sieci neuronowe nie wymagają posiadania wyrazistej wiedzy dla ich stosowania Sieci neuronowe posiadają zdolność uczenia się złożonych zależności funkcyjnych z ograniczonej ilości danych uczących i następnie uogólniania dla danych innych niż dane uczące

Sztuczne sieci neuronowe Czym są obecnie: Sieci neuronowe są prostymi modelami naśladującymi funkcje biologicznego centralnego systemu nerwowego w zakresie przetwarzania informacji Parametry: wagi powiązań pomiędzy neuronami, progi pobudzeń neuronów Struktura: neurony, warstwy, powiązania W sieci neuronowej sposób przetwarzania informacji jest zakodowany strukturą sieci i jej parametrami nazywanymi wagami i progami

Sztuczne sieci neuronowe Jakie mają cechy: Sieci neuronowe nie wymagają dla ich stosowania, posiadania wyrazistej wiedzy o mechanizmach przetwarzania, które chcemy z ich pomocą zrealizować Sieci neuronowe posiadają zdolność uczenia się złożonych zależności funkcyjnych z ograniczonej ilości danych uczących i następnie uogólniania dla danych innych niż dane uczące Jak mogą być wykorzystane: Sieci neuronowe mogą służyć jako modele black box systemów wielowymiarowych, nieliniowych, statycznych i dynamicznych uzyskiwane drogą uczenia w oparciu o dane z obserwacji wejścia wyjścia systemu

Krótki opis neuronu biologicznego Mózg składa się z 10 10-10 11 neuronów (komórek nerwowych) wielu różnych typów, bardzo mocno ze sobą powiązanych Centralnym elementem neuronu jest ciało komórki czyli soma, w którym znajduje się jądro. W ciele komórki realizowane są prawie wszystkie logiczne funkcje neuronu Z ciałem komórki połączonych jest bardzo dużo włókien Długie o nieregularnych kształtach włókna dendryty (wejścia). Z ciałem komórki związanych jest zwykle 10 3 10 4 dendrytów Drzewko wyjściowe neuronu

Dendryty łączą neuron z innymi neuronami. Dendryty, albo otrzymują sygnały z innych neuronów albo są połączone z wyjściem macierzystego neuronu przez specjalne złącza zwane synapsami Połączone z ciałem komórki, jedno, długie włókno akson (wyjście) Akson jest zwykle mocno rozgałęziony na mniejsze włókna tworzące drzewko wyjściowe aksonu. Początkowa część aksonu wzgórek aksonu, gdzie sygnał wytworzony przez neuron jest zamieniany na ciąg impulsów propagowanych bez osłabiania wzdłuż wszystkich gałęzi drzewka aksonu Drzewko wyjściowe neuronu

Na końcach rozgałęzień aksonu znajdują się synapsy. Synapsy spełniają rolę interfejsów łączących aksony neuronów z wypustkami wejściowymi dendrytów. Akson typowego neuronu może mieć kilka tysięcy synaps z innymi neuronami. Synapsy są zdolne zmieniać lokalny potencjał dendrytu w kierunku dodatnim lub ujemnym mieć naturę pobudzającą lub tłumiącą Gromadzenie informacji w neuronie skoncentrowane jest w jego połączeniach synaptycznych dokładnie w ich układzie i siłach Drzewko wyjściowe neuronu

Aspekty na których skupimy nasze zainteresowanie sztucznymi sieciami neuronowymi w tym przedmiocie Klasyfikacja obiektów Przestrzeń rozważań Wektor cech i wyznaczniki (etykiety) klas Sieć neuronowa z zadaniu klasyfikacji faza uczenia Projektowanie klasyfikatora Sieć neuronowa z zadaniu klasyfikacji faza uogólniania Przetwarzanie danych i ekstrakcja cech Obserwowane cechy Etykiety klas Klasyfikator Dobra sieć: sieć, która dobrze uogólnia tzn. dobrze klasyfikuje wzorce, których nie widziała w procesie uczenia, a nie tylko dobrze klasyfikuje wzorce, które nauczyła się dobrze klasyfikować w procesie uczenia

Modelowanie obiektów Dobra sieć: sieć, która dobrze uogólnia tzn. daje dobre wartości wyjść dla wartości wejść, na które nie odpowiadała w procesie uczenia, a nie tylko daje dobre wartości wyjść dla wartości wejść na które odpowiadała w procesie uczenia

Cechy charakteryzujące sieć neuronową przez co definiujemy sieć neuronową Sieć neuronowa jest charakteryzowana przez: 1. funkcje według których neuron reaguje na docierające do niego pobudzenia, nazywane funkcjami pobudzania (propagacji) i funkcjami aktywacji; 2. strukturę połączeń pomiędzy neuronami, nazywaną architekturą sieci; 3. metodę określania wag tych połączeń, nazywaną algorytmem uczenia.

Model pojedynczego neuronu Rozróżnimy dwa rodzaje neuronów: neurony statyczne, neurony dynamiczne, Model neuronu statycznego (stosowany w ciągłych i dyskretnych sieciach statycznych oraz w dyskretnych sieciach dynamicznych) x 1 w k1 Próg b k Funkcja aktywacji Model neuronu statycznego o numerze k Sygnały wejściowe x 2. x j. x m w k2. w kj. w km Wagi g( ) Funkcja pobudzania (propagacji) n k ( ) Sygnał pobudzenia Sygnał odpowiedzi y k Wyjście

Funkcje aktywacji f(.) pojedynczych neuronów 1. Funkcja przekaźnikowa unipolarna (niesymetryczna) y 0 1 gdy gdy n n 0 0 2. Funkcja przekaźnikowa bipolarna (symetryczna) y 1 1 gdy gdy n n 0 0

3. Funkcja liniowa y n 4. Funkcja sigmoidalna logarytmiczna unipolarna (niesymetryczna) y 1 1 exp( ; n ) 0

5. Funkcja sigmoidalna tangensa hiperbolicznego bipolarna (symetryczna) y tanh( n ) exp( exp( n ) n ) exp( exp( n ) ; n ) 0 6. Funkcja Gaussa (Radial Basis) y exp 2 n 2

Struktury sieci neuronowych Architektury sztucznych sieci neuronowych mogą być ogólnie podzielone na trzy duże kategorie: (i) sieci jednokierunkowe (jedno lub wielowarstwowe) (ii) sieci ze sprzężeniem zwrotnym (rekurencyjne) (iii) sieci komórkowe

Struktury sieci neuronowych c.d. (i) sieci jednokierunkowe (jedno lub wielowarstwowe) (a) jednowarstwowe x L y przepływ sygnałów od źródeł do warstwy neuronów wyjściowych (b) wielowarstwowe x L1 L2 L3 y

Struktury sieci neuronowych c.d. Przykłady i terminologia: (a) sieć jednowarstwowa (b) sieć wielowarstwowa we1 n1 we2 we1 n1 wy1 we3 we4 n2 n5 wy1 we2 n2 wy2 we5 we6 n3 n6 wy2 we3 we4 Warstwa wejściowa węzłów źródłowych n3 n4 wy3 wy4 Warstwa neuronów wyjściowych we7 we8 we9 we10 Warstwa wejściowa węzłów źródłowych n4 Warstwa neuronów ukrytych Warstwa neuronów wyjściowych

Struktury sieci neuronowych c.d. (ii) sieci ze sprzężeniem zwrotnym (rekurencyjne) + x L1 L2 y - L3 w sieci występuje co najmniej jedna pętla sprzężenia zwrotnego sygnał wyjściowy z warstwy dalszej jest kierowany do wejść tej samej lub wcześniejszych warstw

Przykłady i terminologia: Struktury sieci neuronowych c.d. Wyjścia Operator opóźnienia jednostkowego Operator opóźnienia jednostkowego Wejścia Wyjścia w sieci mogą występować pętle samo sprzężenia zwrotnego

Struktury sieci neuronowych c.d. (iii) sieci komórkowe N 1 N 4 N 7 N 10 regularnie rozmieszczone przestrzennie neurony zwane komórkami N 5 N 2 N 8 N 11 każda komórka powiązana bezpośrednio z wszystkimi komórkami swego najbliższego sąsiedztwa (przyległymi) N 3 N 6 N 9 N 12 powiązania pomiędzy komórkami są dwukierunkowe

Metody uczenia sieci neuronowych W korzystaniu z sieci neuronowej można wyróżnić dwa etapy: etap uczenia w oparciu o przedstawiane sieci dane, sieć uczy realizować zadanie dla którego została zbudowana się etap uogólniania sieć realizuje zadanie dla którego została zbudowana dla danych które są jej przedstawiane Powinniśmy mieć miary oceny jakości każdego z tych etapów

Metody uczenia sieci neuronowych c.d. W uczeniu z nadzorem występuje nauczyciel, który w fazie uczenia sieci, mówi sieci jak dobrze ona działa (uczenie z ukierunkowywaniem - reinforcement learning) lub jakie powinno być prawidłowe zachowanie sieci (uczenie z całkowitym nadzorem - fully supervised learning) W uczeniu bez nadzoru sieć jest samodzielna (autonomiczna): Patrzy na dane, które są jej prezentowane, znajduje pewne cechy zbioru danych i uczy się odzwierciedlać te cechy na swoim wyjściu. Czym są dokładnie te cechy, które sieć może nauczyć się rozpoznawać zależy od konkretnego modelu sieci i metody uczenia. Zwykle, sieć uczy się pewnych zwięzłych reprezentacji danych.

Dodatek 3: Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty Perceptron W latach 1957 i 1958 został opracowany i pomyślnie wykonany w Cornell Aeronautical Laboratory, przez Franka Rosenblatta i Charlesa Wightmana pierwszy neurokomputer - Mark I Perceptron. Od tej konstrukcji wzięta została nazwa sieci o odpowiadającej jej strukturze. Rosenblatt i Wightman wykorzystali model McCulloch a-pitts a i zaproponowali metodę uczenia sieci złożonej z neuronów o progowych funkcjach aktywacji

Dodatek 3:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty x = 1 0 x 1 x 2... x n Układ wprowadzania obrazu y Poprawne wyjście (dostarczane podczas uczenia) w 0 w 1 w 2 w n y... 1 gdy 0 gdy n i 1 n i 1 w x i w x i i i Matryca sensorów obrazu 0 0 Szafa modułów par silnik - potencjometr Tablica łączeniowa

Dodatek 3:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty Cel działania neurokomputera Mark I Perceptron Neurokomputer Mark I Perceptron został zbudowany dla rozwiązywania zadania klasyfikacji: Czy wskazany element pewniej przestrzeni rozważań należy do pewnego zbioru, czy też nie należy? Przestrzeń rozważań U zbiór wszystkich elementów, które znajdują się w kręgu naszych zainteresowań, np. zbiór wszystkich dużych liter drukowanych

Dodatek 3:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty Przykład: interesuje nas czy pokazywana litera należy do zbioru liter C? przykład klasyfikacji do dwóch zbiorów Niech: Litery C zapisywane w matrycach 4x4 czy należą do zbioru liter C?... TAK NIE TAK?

W jaki sposób pokazujemy sieci litery ze zbiorów C i niec? Wejścia do sieci neuronowej: wektory 16 bitowe jedynek (1) i zer (0) T 1 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1 T 1 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1 T 1 1 1 1 0 0 0 1 0 0 0 1 0 1 1 1 Dodatek 3:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

Dodatek 3:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty Zewnętrzny obraz rozwiązywania zadania

Sztuczne sieci neuronowe -Sieci samoorganizujące się (Self Organizing Maps)

Wstęp Sterowania Automatyka - zastosowania, metody i narzędzia, perspektywy Motywacja Organizacja neuronów kory mózgowej. Nasze czujniki dotyku, obrazu, dźwięku, smaku są odwzorowywane (grupują się) w różnych obszarach kory mózgowej. Ta mapa topologiczna neuronów stanowi podstawę funkcjonowania naszego układu nerwowego. http://antranik.org/wp-content/uploads/2011/11/ left-lateral-view-functional-areas-cerebral-cortex-motor-sensory-association-areas.jpg Neurony (grupy neuronów) stanowią swego rodzaju samodzielne mikro jednostki obliczeniowe, różniące się w niewielkim stopniu w swojej strukturze (wagi).

Wstęp Sterowania Automatyka - zastosowania, metody i narzędzia, perspektywy Abstrahując od mechanizmów uczenia, dużą rolę odgrywa nadmiarowośd danych uczących, stanowiąca klucz do uczenia bez nauczyciela. Wielokrotne pobudzanie sieci tymi samymi (podobnymi) wejściami, stanowi bazę wiedzy sieci, z której to następnie, po aktywacji sieci określonym wejściem wyciągane są na drodze skojarzeo konkluzje w postaci uaktywnienia odpowiedniego wyjścia. źródło: Ossowski, S. Sieci neuronowe do przetwarzania informacji. Oficyna wydawnicza Politechniki Warszawskiej, 2000.

Wstęp Sterowania Automatyka - zastosowania, metody i narzędzia, perspektywy Dwa podstawowe mechanizmy samoorganizacji to: mechanizm oparty o regułę asocjacji Hebba oraz mechanizm współzawodnictwa pomiędzy neuronami Kohonena. Reguła Hebba: "jeżeli akson komórki A bierze systematycznie udział w pobudzeniu komórki B powodującym jej aktywację, to wywołuje to zmianę metaboliczną w jednej lub obu komórkach, prowadzącą do wzrostu skuteczności pobudzania B przez A" (Hebb 1949)

Wstęp Sterowania Automatyka - zastosowania, metody i narzędzia, perspektywy Mechanizm współzawodnictwa: algorytm WTA (Winner Takes All) Zwycięzca bierze wszystko W algorytmie tym wszystkie neurony pobudzane są tymi samymi sygnałami wejściowymi, a neuron którego wyjście osiągnie najwyższy poziom staje się zwycięskim i tylko jego wagi podgalają adaptacji. algorytm WTM (Winner Takes Most) Zwycięzca bierze większośd W algorytmie tym wszystkie neurony pobudzane są tymi samymi sygnałami wejściowymi, a neuron którego wyjście osiągnie najwyższy poziom staje się zwycięskim. W algorytmie WTM oprócz neuronu zwycięskiego również wagi sąsiadujących z nim neuronów podlegają adaptacji.

Podstawowe procesy zachodzące w SOM 1. Współzawodnictwo Dla każdego wejścia neurony konkurują pomiędzy sobą. Neuron o największym sygnale wyjściowym wygrywa. 2. Kooperacja Zwycięski neuron determinuje sąsiedztwo topologiczne pobudzonych neuronów. 3. Adaptacja wag synaptycznych Wagi synaptyczne zwycięskiego neuronu oraz jego sąsiedztwa topologicznego zostają wzmocnione.

SOM w Matlabie Wejście

SOM w Matlabie Inicjalizacja wag sieci

SOM w Matlabie Wagi sieci po 1 epoce

SOM w Matlabie Wagi sieci po 2 epokach

SOM w Matlabie Wagi sieci po 5 epokach

SOM w Matlabie Wagi sieci po 50 epokach

SOM w Matlabie Wagi sieci po 5000 epokach

SOM w Matlabie Wagi sieci po 50000 epokach

SOM w Matlabie Wejście

SOM w Matlabie Inicjalizacja wag sieci

SOM w Matlabie Wagi sieci po 1 epoce

SOM w Matlabie Wagi sieci po 2 epokach

SOM w Matlabie Wagi sieci po 5 epokach

SOM w Matlabie Wagi sieci po 20 epokach

SOM w Matlabie Wagi sieci po 200 epokach

SOM w Matlabie Wagi sieci po 200000 epokach

Kompresja danych, wielowymiarowe metody statystyczne

Wielowymiarowa analiza statystyczna, Analiza Składników Podstawowych (Principal Components Analysis PCA)

Wprowadzenie do Analizy Składników Podstawowych: Zakładamy że mamy n pomiarów o rozmiarze m: X x x Kolejne pomiary 1,1 m,1 x x 1, n m, n zmienne m jest duże,, za duże Celem jest redukcja ilości zmiennych do np. l zmiennych. Jak to efektywnie zrobid?? ile danych odrzucid? które? aby nie utracid ważnych informacji o obiekcie

Wprowadzenie do Analizy Składników Podstawowych: Jeżeli odrzucamy któreś z danych, w opisie obiektu wprowadzamy jakiś błąd; Sztuka polega na tym aby wybrad dane najbardziej cenne z punktu widzenia ilości informacji o procesie i odrzucid takie dane (i tyle danych) aby błąd odwzorowania procesu był jak najmniejszy; Nie da się tego efektywnie zrobid w przestrzeni pomiarów, więc należy przetransformowad je do przestrzeni cech i tam spróbowad je jakoś wybrad; Przestrzeo danych x x 1 2 x m Transformacja Przestrzeo cech x x x 1 l m

Wprowadzenie do Analizy Składników Podstawowych: Wyobraźmy sobie wektor transformacji (również odwrotnej) T który dokona transformacji wektora pomiarów X do nowej przestrzeni w postaci wektora X new ; T X X new Transformacja powinna byd optymalna w sensie minimalizacji popełnianego błędu średniokwadratowego; Wektor X new powinien byd po transformacji T, np. tak zorganizowany aby pierwsze l punktów niosło najwięcej informacji o procesie. Pozostałe m-l można by zaniedbad. Przestrzeo danych x x 1 2 x m Transformacja Przestrzeo cech x x x 1 l m Rozmiary macierzy: T X X new [ m, m] [ m,1] [ m,1]

Sterowania Automatyka - zastosowania, metody i narzędzia, perspektywy Idea metody Analizy Składników Podstawowych: Najpopularniejszą metodą wielowymiarowej analizy statystycznej jest metoda Analizy Składników Głównych/Podstawowych PCA (Principal Components Analysis ); Ideą PCA jest dobór minimalnej ilości nowych zmiennych do możliwie dokładnego opisu wariancji (zmienności) danych wejściowych (np. pomiarowych), przy użyciu kombinacji liniowych oryginalnych zmiennych; Składniki główne są dobrane zgodnie z kierunkami opisującymi największą zmiennośd (wariancję) procesu x2 PC2 PCA PC1 x1

Sterowania Automatyka - zastosowania, metody i narzędzia, perspektywy Idea metody Analizy Składników Podstawowych: Tworzymy nowy układ współrzędnych oparty o nowe, nieskorelowane zmienne składniki główne (PCs); Kierunki te są do siebie ortogonalne; Dane podczas obróbki wstępnej są normalizowane i sprowadzane do wartości średniej równej 0; Analiza PCA ma sens jedynie wtedy gdy dane są ze sobą skorelowane!!! x2 PC2 PCA PC1 x1

Idea metody Analizy Składników Podstawowych: Tworzymy nowy układ współrzędnych oparty o nowe, nieskorelowane zmienne składniki główne (PCs); Kierunki te są do siebie ortogonalne; Dane podczas obróbki wstępnej są normalizowane i sprowadzane do wartości średniej równej 0; Analiza PCA ma sens jedynie wtedy gdy dane są ze sobą skorelowane!!! x2 PC2 PCA PC1 x1

Inne zastosowania PCA Kompresja obrazu Obraz oryginalny (512x512)

Inne zastosowania PCA Kompresja obrazu Kompresja 30 %

Inne zastosowania PCA Kompresja obrazu Kompresja 50 %

Inne zastosowania PCA Kompresja obrazu Kompresja 75 %

Inne zastosowania PCA Kompresja obrazu Kompresja 90 %

Inne zastosowania PCA Kompresja obrazu Kompresja 95 %

Inne zastosowania PCA Kompresja obrazu Kompresja 99 %

Inne zastosowania PCA Rozpoznawanie twarzy Metoda Eigenfaces

Sterowania Automatyka - zastosowania, metody i narzędzia, perspektywy Inne zastosowania PCA Rozpoznawanie twarzy PCA jest transformacją (mapowaniem) które jest niewrażliwe na skalę i obrót danych => cenne w rozpoznawaniu obiektów PC1 PC2

Dziękuję za uwagę