PV021: Neuronové sítě. Tomáš Brázdil

Podobné dokumenty
Fiala P., Karhan P., Ptáček J. Oddělení lékařské fyziky a radiační ochrany Fakultní nemocnice Olomouc

5. Umělé neuronové sítě. Neuronové sítě

Umělé neuronové sítě

Neuronové sítě Ladislav Horký Karel Břinda

Neuronové sítě. Vlasta Radová Západočeská univerzita v Plzni katedra kybernetiky

Vytěžování znalostí z dat

Algoritmy a struktury neuropočítačů ASN - P1

Ambasadoři přírodovědných a technických oborů. Ing. Michal Řepka Březen - duben 2013

Algoritmy a struktury neuropočítačů ASN - P11

5. Umělé neuronové sítě. neuronové sítě. Umělé Ondřej Valenta, Václav Matoušek. 5-1 Umělá inteligence a rozpoznávání, LS 2015

3. Vícevrstvé dopředné sítě

ANALÝZA A KLASIFIKACE BIOMEDICÍNSKÝCH DAT. Institut biostatistiky a analýz

Architektura - struktura sítě výkonných prvků, jejich vzájemné propojení.

Trénování sítě pomocí učení s učitelem

Nervová soustává č love ká, neuron r es ení

Neuronové sítě. 1 Úvod. 2 Historie. 3 Modely neuronu

Algoritmy a struktury neuropočítačů ASN P4. Vícevrstvé sítě dopředné a Elmanovy MLNN s učením zpětného šíření chyby

1. Soutěživé sítě. 1.1 Základní informace. 1.2 Výstupy z učení. 1.3 Jednoduchá soutěživá síť MAXNET

Neuronové sítě (11. přednáška)

NG C Implementace plně rekurentní

Úvod do optimalizace, metody hladké optimalizace

Neuropočítače. podnět. vnímání (senzory)

Asociativní sítě (paměti) Asociace známého vstupního vzoru s daným výstupním vzorem. Typická funkce 1 / 44

Rosenblattův perceptron

Katedra kybernetiky laboratoř Inteligentní Datové Analýzy (IDA) Katedra počítačů, Computational Intelligence Group

2. RBF neuronové sítě

Emergence chování robotických agentů: neuroevoluce

Nervová soustava Centrální nervový systém (CNS) mozek mícha Periferní nervový systém (nervy)

Úvod Příklad Výpočty a grafické znázornění. Filip Habr. České vysoké učení technické v Praze Fakulta jaderná a fyzikálně inženýrská

Nervová soustava Centrální nervový systém (CNS) mozek mícha Periferní nervový systém (nervy)

Moderní systémy pro získávání znalostí z informací a dat

Membránový potenciál, zpracování a přenos signálu v excitabilních buňkách

Lineární klasifikátory

Klíčové pojmy: Informační mohutnost, mozek, myšlení, nepřesné algoritmy, neuron, neuronová síť, simulace, umělá neuronová síť.

K možnostem krátkodobé předpovědi úrovně znečištění ovzduší statistickými metodami. Josef Keder

Rozpoznávání písmen. Jiří Šejnoha Rudolf Kadlec (c) 2005

Jednotlivé historické modely neuronových sítí

Algoritmy a struktury neuropočítačů ASN - P10. Aplikace UNS v biomedicíně

1. Vlastnosti diskretních a číslicových metod zpracování signálů... 15

Dálkový průzkum Země. Ústav geoinformačních technologií Lesnická a dřevařská fakulta MENDELU

Algoritmy a struktury neuropočítačů ASN P3

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

ANALÝZA A KLASIFIKACE DAT

Kybernetika a umělá inteligence, cvičení 10/11

Úloha - rozpoznávání číslic

LOKALIZACE ZDROJŮ AE NEURONOVÝMI SÍTĚMI NEZÁVISLE NA ZMĚNÁCH MATERIÁLU A MĚŘÍTKA

Neuronové sítě v DPZ

Už bylo: Učení bez učitele (unsupervised learning) Kompetitivní modely

METODY DOLOVÁNÍ V DATECH DATOVÉ SKLADY TEREZA HYNČICOVÁ H2IGE1

Samoučící se neuronová síť - SOM, Kohonenovy mapy

Neuronové sítě AIL002. Iveta Mrázová 1 František Mráz 2. Neuronové sítě. 1 Katedra softwarového inženýrství. 2 Kabinet software a výuky informatiky

VYUŽITÍ NEURONOVÝCH SÍTÍ V DIAGNOSTICE

Algoritmy a struktury neuropočítačů ASN P9 SVM Support vector machines Support vector networks (Algoritmus podpůrných vektorů)

Algoritmy a struktury neuropočítačů ASN - P2. Topologie neuronových sítí, principy učení Samoorganizující se neuronové sítě Kohonenovy mapy

1 Neuronové sítě - jednotlivý neuron

Strojové učení se zaměřením na vliv vstupních dat

NEURONOVÉ SÍTĚ A EVOLUČNÍ ALGORITMY NEURAL NETWORKS AND EVOLUTIONARY ALGORITHMS

Klasifikace předmětů a jevů

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Klasifikace a rozpoznávání. Lineární klasifikátory

Teorie systémů TES 1. Úvod

ANALÝZA A KLASIFIKACE DAT

9. Léčiva CNS - úvod (1)

Preceptron přednáška ze dne

Principy počítačů I Netradiční stroje

Anotace: Materiál je určen k výuce přírodopisu v 8. ročníku ZŠ. Seznamuje žáky se základními pojmy a informacemi o stavbě a funkci nervové soustavy.

Zpracování informace v NS Senzorická fyziologie

NEURONOVÉ SÍTĚ EVA VOLNÁ CZ.1.07/2.2.00/

Senzorická fyziologie

Iva Pařízková 1 PREDIKČNÍ MODELY V TECHNOLOGII ZEVO

Automatizace je proces při němž je řídicí funkce člověka nahrazována činností

Využití neuronové sítě pro identifikaci realného systému

Framework pro neuronovou sít Flexible Neural Tree Flexible Neural Tree Framework

BAKALÁŘSKÁ PRÁCE ZÁPADOČESKÁ UNIVERZITA V PLZNI FAKULTA STROJNÍ. Studijní program: B 2301 Strojní inženýrství

Neuronové časové řady (ANN-TS)

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

7. Nervová soustava člověka

ANALÝZA A KLASIFIKACE DAT

StatSoft Úvod do neuronových sítí

8. Sběr a zpracování technologických proměnných

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

PV021 Vícevrstvá neuronová síť pro rozeznávání mikroteček. Matúš Goljer, Maroš Kucbel, Michal Novotný, Karel Štěpka 2011

Státnice odborné č. 20

SIGNÁLY A LINEÁRNÍ SYSTÉMY

METODA PŮLENÍ INTERVALU (METODA BISEKCE) METODA PROSTÉ ITERACE NEWTONOVA METODA

Neuronové sítě. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Zpracování biologických signálů umělými neuronovými sítěmi

Technická fakulta. Katedra technologických zařízení staveb. Využití neuronových sítí pro integraci PZTS do inteligentních budov.

Využití metod strojového učení v bioinformatice David Hoksza

Neuronové sít. aneb to málo, co o nich vím. J. Doubravová. Seminá o seismologickém softwaru, Teorie Ukázka Webnet a výhledy

Digitální učební materiál

Biologicky inspirované výpočty. Schématické rozdělení problematiky a výuky

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

AB = 3 CB B A = 3 (B C) C = 1 (4B A) C = 4; k ]

Základy matematické analýzy

Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma

Neuronové sítě výuka2

Mgr. Marek Malý Katedra elektroniky a vakuové fyziky Matematicko-fyzikální fakulta Univerzity Karlovy. Školitel prof. RNDr. Rudolf Hrach, DrSc.

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2016

Četba: Texty o lineární algebře (odkazy na webových stránkách přednášejícího).

Transkript:

1 PV021: Neuronové sítě Tomáš Brázdil

Cíl předmětu 2 Na co se zaměříme Základní techniky a principy neuronových sítí (NS) Přehled základních modelů NS a jejich použití Co si (doufám) odnesete Znalost základních modelů NS (Perceptron, vícevrstvá sít, Hopfieldova sít, Boltzmannův stroj, Kohonenova mapa) Znalost jednoduchých aplikací těchto modelů Znalost základních principů učení NS Přehled elementárních implementačních technik pro učení a aplikaci NS Základní literatura: Jiří Šíma a Jan Neruda, Teoretické otázky neuronových sítí http://www2.cs.cas.cz/~sima/kniha.pdf (Nás bude zajímat převážně Část I.)

3 Základy neuronových sítí Základní přehled a motivace Biologický neuron Formální neuron Neuronové sítě a jejich dynamika

Co jsou umělé neuronové sítě Umělý neuron je hrubou matematickou aproximací biologického neuronu. (Umělá) neuronová sít se skládá ze vzájemně propojených (umělých) neuronů. Schopnosti sítě jsou zakódovány v síle spojů mezi neurony. y σ ξ x 1 x 2 x n Zdroj obrázku: http://tulane.edu/sse/cmb/people/schrader/ 4

Proč umělé neuronové sítě... 5 Modelování biologických neuronových sítí (computational neuroscience). zjednodušený matematický model pomáhá identifikovat důležité mechanismy Jak mozek přijímá a zpracovává informace? Jak uchovává informace? Jak se mozek vyvíjí? neurovědy jsou silně multidisciplinární - precizní (matematický) popis usnadňuje komunikaci mezi odborníky na jednotlivé podoblasti

Proč umělé neuronové sítě... 6 Inženýrské aplikace neuronových sítí. jedinečné vlastnosti biologických sítí vhodně doplňují standardní architekturu počítačů umělé neuronové sítě byly (a jsou) aplikovány v mnoha oblastech. rozpoznávání vzorů (pattern recognition) - rozpoznávání řeči, psaného textu, sonarových signálů predikce vývoje časových řad - vývoj cen akcií, měnových kurzů, počasí další aplikace ve finančnictví - analýza rizik, dělení klientů do specifických skupin řízení - robotika, řízení výrobních procesů analýza dat - komprese, dolování znalostí, redukce dimenze dat redukce šumu - ECG, obraz, zvuk

Významné vlastnosti neuronových sítí 7 Masivní paralelismus mnoho pomalých výpočetních prvků zpracovává informace paralelně na mnoha úrovních Adaptace a učení dítě se naučí poznat králíka poté, co se mu ukáže několik králíků Schopnost generalizace po shlédnutí několika králíků je dítě schopno poznat další (jiné) králíky Odolnost vůči nepřesnosti vstupu rozmazaná fotka králíka může být stále klasifikována správně jako obraz králíka Odolnost vůči poškození mnoho experimentů prokázalo, že i poškozená neuronová sít je stále schopna uspokojivě fungovat poškozená sít se může přeadaptovat, stávající neurony mohou převzít funkci poškozených

8 Biologická neuronová sít Nervová soustava člověka se skládá z přibližně 10 11 neuronů (centimetr krychlový lidského mozku obsahuje až 50 milionů nervových buňek) Každý neuron je spojen s přibližně 10 4 neurony Neurony jsou velmi komplexní systémy Velmi hrubý popis funkce nervové soustavy: Vnější podněty jsou přijímány receptory (např. buňky oka). Informace jsou dále přenášeny pomocí periferní nervové soustavy (PNS) do centrální nervové soustavy (CNS - mícha, mozek) kde jsou zpracovávány (integrovány) Po zpracování informace jsou (pomocí PNS) případně aktivovány efektory (např. svalové buňky)

Biologická neuronová sít - příklad Zdroj: N. Campbell and J. Reece; Biology, 7th Edition; ISBN: 080537146X 9

Mozková kůra 10

Biologický neuron Zdroj: http://www.web-books.com/elibrary/medicine/physiology/nervous/nervous.htm 11

Sumace a akční potenciál Klidový potenciál v těle neuronu 70 mv Vnější podněty mění potenciál v axonovém hrbolku Po překročení prahu 55 mv je generován akční potenciál 40 mv Poté nastane krátká refrakce 80 mv akční potenciál se šíří axonem, v axonovém zakončení vyvolá chemický proces, který změní potenciál v sousedním neuronu Zdroj obrázku: http://www.yaldex.com/games-programming/0672323699_ch12lev1sec9.html#ch12fig30 12

Sumace a akční potenciál - detailněji 1. Při 55mV se otevřou kanály pro Na +, které se nahrnou dovnitř 2. Při +40mV se Na + kanály uzavřou a K + otevřou - K + se vyhrnou ven 3. Při 80mV se K + uzavřou, poté iontové pumpy obnoví klidový potenciál Zdroj obrázku: V. Hevern; http://web.lemoyne.edu/~hevern/psy340_11s/psy340.html 13

Šíření akčního potenciálu axonem Zdroj: D. A. Tamarkin; STCC Foundation Press 14

Synaptický přenos http://changingmindsaboutdownsyndrome.blogspot.com/2011/01/as-promised-synaptic-plasticity.html 15

Formální neuron bez biasu 16 y σ ξ w 1 w 2 w n x 1 x 2 x n x 1,..., x n jsou reálné vstupy ( dendrity ) w 1,..., w n jsou reálné váhy ( propustnost synapsí ) ξ je vnitřní potenciál; většinou ξ = n i=1 w ix i y je výstup daný y = σ(ξ) kde σ je aktivační funkce; např. ostrá nelinearita 1 ξ h ; σ(ξ) = 0 ξ < h. kde h je reálný práh.

Formální neuron (s biasem) bias x 0 = 1 práh w 0 = h y σ ξ w 1 w 2 w n x 1 x 2 x n x 1,..., x n jsou reálné vstupy x 0 je speciální vstup, který má vždy hodnotu 1 w 0, w 1,..., w n jsou reálné váhy ξ je vnitřní potenciál; většinou ξ = w 0 + n i=1 w ix i y je výstup daný y = σ(ξ) kde σ je aktivační funkce; např. ostrá nelinearita 1 ξ 0 ; σ(ξ) = 0 ξ < 0. ( práh aktivační funkce σ je roven 0; reálný práh byl nahrazen vstupem x 0 = 1 a váhou w 0 = h) 17

Neuron a lineární separace 18 ξ > 0 ξ = 0 vnitřní potenciál n ξ = w 0 + w i x i i=1 ξ > 0 ξ < 0 ξ < 0 zadává separační nadrovinu v n-rozměrném vstupním prostoru v 2d přímka v 3d plocha

Neuron a lineární separace 1/0 podle A/B x 0 = 1 w 0 σ w 1 w n x 1 x n Zde n = 8 8 tedy počet pixelů v obrazcích. Vstupy jsou binární vektory dimenze n (tmavý bod 1, světlý bod 0). 19

20 Neuron a lineární separace A w 0 + n i=1 w ix i = 0 A A w 0 + n i=1 w ix i = 0 B Červená přímka nesprávně klasifikuje Zelená klasifikuje správně (může být výsledkem korekce učícího algoritmu) A B B

Neuron a lineární separace 21 x 1 (0, 1) 1 0 (1, 1) Neexistuje přímka, která by oddělila body 1 od bodů 0. (0, 0) 0 1 (0, 1) x 2

Neuronové sítě Neuronová sít se skládá z formálních neuronů, které jsou vzájemně propojeny tak, že výstup jednoho neuronu je vstupem obecně více neuronů. Architektura sítě je určena počtem a vzájemným propojením neuronů. Stav sítě je vektor hodnot všech neuronů. (Stavy sítě s n neurony jsou prvky R n ) Stavový prostor sítě je množina všech stavů. Konfigurace sítě je vektor hodnot všech vah v síti. (Konfigurace sítě s m spoji jsou prvky R m ) Váhový prostor sítě je množina všech konfigurací. 22

23 Neuronové sítě Neurony rozdělujeme na Výstupní Skryté Vstupní

Neuronové sítě 24 Dynamiku sítě dělíme do tří režimů Organizační architektura sítě a její případná změna Aktivní počáteční stav sítě (hodnoty neuronů) a jeho změny v čase (při pevné architektuře a konfiguraci) (mimo jiné určuje způsob výpočtu vnitřních potenciálů ξ a aktivační funkce σ všech neuronů) Adaptivní počáteční konfigurace sítě (hodnoty vah) a její změna v čase (učení)

Organizační dynamika Organizační dynamika určuje strukturu sítě. Rozlišujeme dva typy architektury: Cyklická (resp. rekurentní), pokud obsahuje orientovaný cyklus. Acyklická (resp. dopředná) 25

Organizační dynamika - vícevrstvé sítě 26 Výstupní Skryté Vstupní Neurony jsou rozděleny do y 1 y 2 vrstev (vstupní a výstupní vrstva, obecně několik skrytých vrstev) Vrstvy číslujeme od 0; vstupní vrstva je nultá Např. třívrstvá sít se skládá z jedné vstupní, dvou skrytých a jedné výstupní vrstvy. x 1 x 2 Neurony v i-té vrstvě jsou spojeny se všemi neurony ve vrstvě i + 1. Vícevrstvou sít lze zadat počty neuronů v jednotlivých vrstvách (např. 2-4-3-2)

Aktivní dynamika Aktivní dynamika určuje, jakým způsobem sít počítá. Mějme sít s n neurony z nichž k je vstupních a l výstupních. Vstup sítě je vektor k reálných čísel, tedy prvek R k. (někdy se omezíme pouze na jistou podmnožinu R k ) Vstupní prostor sítě je množina všech vstupů. Počáteční stav Vstupní neurony jsou nastaveny na hodnoty ze vstupu sítě (každá složka vstupu má přiřazen příslušný vstupní neuron) Ostatní neurony jsou iniciálně nastaveny na 0. 27

Aktivní dynamika - výpočet Výpočet (obvykle) probíhá v diskrétních krocích. V každém kroku se provede následující: 1. Podle pravidla aktivní dynamiky je vybrán jeden neuron (sekvenční výpočet) nebo více neuronů (paralelní výpočet). 2. Vybraný neuron změní svůj stav v závislosti na hodnotách svých vstupů. (Hodnota neuronu, který nemá vstupy, zůstává konstantní.) Výpočet je konečný pokud se od jistého kroku dál nemění stav sítě. Výstup sítě je vektor hodnot všech výstupních neuronů (tedy prvek R l ). Výstup se mění v průběhu výpočtu! Pro vícevrstvé sítě používáme následující pravidlo aktivní dynamiky: V i-tém kroku vyhodnot právě všechny neurony v i-té vrstvě. 28

Aktivní dynamika - funkce sítě 29 Definice Mějme neuronovou sít s n neurony z nichž k je vstupních a l výstupních. Necht A R k a B R l. Předpokládejme, že výpočet této sítě skončí pro každý vstup z A. Řekneme, že tato sít počítá funkci F : A B pokud pro každý vstup v A je F( v) výstupem sítě po skončení výpočtu. Podle toho, zda je funkce sítě diskrétní nebo spojitá rozlišujeme diskrétní a analogové neuronové sítě. Příklad 1 Tato sít počítá funkci z R 2 do R.

Aktivní dynamika - aktivační funkce 30 Aktivní dynamika určuje aktivační funkci σ pro každý neuron. Ostrá nelinearita 1 ξ 0 ; σ(ξ) = 0 ξ < 0. Logistická sigmoida σ(ξ) = Hyperbolický tangens 1 1 + e λ ξ kde λ R je prametr strmosti. σ(ξ) = 1 e ξ 1 + e ξ

Aktivní dynamika - vnitřní potenciál 31 Aktivní dynamika určuje způsob výpočtu vnitřního potenciálu ξ každého neuronu. Pokud nebude uvedeno jinak, předpokládáme, že ξ = w 0 + n w i x i i=1 Později využijeme další možnosti, např. ξ = x w kde je daná vektorová norma (nejčastěji Euklidovská), x = (x 1,..., x n ) jsou vstupy neuronu a w = (w 1,..., w n ) jsou váhy.

Aktivní dynamika - XOR 32 1 2 1 0101 σ 1 3 0001011011 1 σ 0100011011 σ 1 2 2 2 2 1010 1001 1 Aktivační funkce je ostrá nelinearita 1 ξ 0 ; σ(ξ) = 0 ξ < 0. Sít počítá funkci XOR(x 1, x 2 ) x 1 x 2 y 1 1 0 1 0 1 0 1 1 0 0 0

Neuron a lineární separace 33 1 2 σ x 1 1 1 (0, 1) 1 0 (1, 1) 1 3 1 σ σ 1 2 2 2 2 (0, 0) 0 1 (0, 1) P 1 P 2 x 2 Přímka P1 má rovnici 1 + 2x 1 + 2x 2 = 0 Přímka P3 má rovnici 3 2x 1 2x 2 = 0

Aktivní dynamika - příklad 34 1 2 010 σ 2 5 1 1 01 σ 1 1 1 2 01 σ 1 Aktivační funkce ostrá nelinearita 1 ξ 0 ; σ(ξ) = 0 ξ < 0. vstup je roven 1 1 x 1 1

35 Adaptivní dynamika Adaptivní dynamika určuje, jakým způsobem se sít učí. počáteční konfigurace váhy mohou být nastaveny bud náhodně nebo na základě předběžné znalosti vstupů sítě učící pravidlo pro (postupnou) adaptaci vah cílem je adaptovat váhy tak, aby sít počítala danou funkci

Adaptivní dynamika - učící pravidla 36 učení s učitelem Požadovaná funkce je zadána množinou tréninkových vzorů což jsou dvojice tvaru (vstup, výstup). Při učení se hledá konfiguraci sítě, která nejlépe odpovídá daným vzorům (vzhledem k danému kvalitativnímu kritériu). učení bez učitele Tréninková množina obsahuje pouze vstupy sítě. Cílem je odhalit strukturu v množině vstupů (shlukování, samoorganizace)

37 Učení s učitelem - ilustrace klasifikace v rovině pomocí jednoho neuronu A A A A B B B tréninkové vzory jsou tvaru (bod, hodnota) kde hodnota je bud 1 nebo 0 podle toho zda je bod ze skupiny A nebo B po předložení nesprávně klasifikovaného vzoru skupiny A (červená přímka), učící algoritmus pootočí přímku ve směru nesprávně klasifikovaného bodu (zelená přímka).

38 Učení bez učitele - ilustrace A A A X A X X B B X B hledáme dva reprezentanty shluků červené křížky odpovídají reprezentantům před aplikací učícího algoritmu, zelené po aplikaci učící algoritmus může např. napočítat množinu bodů, které jsou nejblíže danému reprezentantovi a potom reprezentanta posunout do těžiště této množiny bodů

Výhody umělých neuronových sítí 39 Masivní paralelismus neurony mohou být vyhodnocovány současně Adaptace a učení existuje mnoho učících algoritmů, které programují neuronové sítě na základě příkladů požadovaného chování Schopnost generalizace a odolnost vůči nepřesnosti vstupu informace jsou v síti kódovány přibližně pomocí vah mnoha neuronů na vstup podobný vstupu tréninkového vzoru, reaguje naučená sít podobným výstupem takto je schopna extrahovat charakteristické vlastnosti dat Odolnost vůči poškození poškození se obvykle projevuje postupnou ztrátou přesnosti výsledků