Neuronové sítě Petr Kačenka

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

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

Rosenblattův perceptron

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

Umělé neuronové sítě

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

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

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

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

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

Vytěžování znalostí z dat

NG C Implementace plně rekurentní

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

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

Jsou inspirovány poznatky o neuronech a nervových sítích živých organizmů a jejich schopnostmi:

Lineární klasifikátory

Stavový model a Kalmanův filtr

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

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

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

Jsou inspirovány poznatky o neuronech a nervových sítích živých organizmů a jejich schopnostmi:

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

PB016 Úvod do umělé inteligence ZÁKLADY Z TEORIE A PRAXE. David Kabáth

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

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

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

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

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

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

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

Jak bude zítra? Skoro jako dneska. Dan Lessner

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

Ú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á

Neuronové sítě Učení bipolárního perceptronu

5. Lokální, vázané a globální extrémy

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

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

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

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

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

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

Státnice odborné č. 20

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

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

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

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

Univerzita Karlova v Praze Matematicko-fyzikální fakulta DIPLOMOVÁ PRÁCE

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

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

Numerické řešení diferenciálních rovnic

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

Klíčová slova Umělá neuronová síť, Komprese obrazu

EM algoritmus. Proč zahrnovat do modelu neznámé veličiny

4. Aplikace matematiky v ekonomii

i=1 Přímka a úsečka. Body, které leží na přímce procházející body a a b můžeme zapsat pomocí parametrické rovnice

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

Úvod do zpracování signálů

Algoritmy a struktury neuropočítačů ASN P3

Pravděpodobně skoro správné. PAC učení 1

Numerická stabilita algoritmů

l, l 2, l 3, l 4, ω 21 = konst. Proved te kinematické řešení zadaného čtyřkloubového mechanismu, tj. analyticky

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

Pravděpodobnost v závislosti na proměnné x je zde modelován pomocí logistického modelu. exp x. x x x. log 1

8-9. Pravděpodobnostní rozhodování a predikce. Gerstnerova laboratoř katedra kybernetiky fakulta elektrotechnická ČVUT v Praze

StatSoft Úvod do neuronových sítí

11. přednáška 10. prosince Kapitola 3. Úvod do teorie diferenciálních rovnic. Obyčejná diferenciální rovnice řádu n (ODR řádu n) je vztah

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

Přehled vhodných metod georeferencování starých map

Strojové učení Marta Vomlelová

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

Toolbox pro neuronové sítě pro prostředí Mathematica

NÁRODNÍ TESTOVÁNÍ 2018/2019

Přírodou inspirované metody umělé inteligence

NMAF 051, ZS Zkoušková písemná práce 16. ledna 2009

verze 1.3 kde ρ(, ) je vzdálenost dvou bodů v R r. Redukovaným ε-ovým okolím nazveme ε-ové okolí bodu x 0 mimo tohoto bodu, tedy množinu

1 Analytické metody durace a konvexita aktiva (dluhopisu) $)*

1.2.9 Usměrňování zlomků

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

3. Sekvenční logické obvody

Úvod do optimalizace, metody hladké optimalizace

9. přednáška 26. listopadu f(a)h < 0 a pro h (0, δ) máme f(a 1 + h, a 2,..., a m ) f(a) > 1 2 x 1

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

Základy navrhování průmyslových experimentů DOE

Ing. Petr Hájek, Ph.D. Podpora přednášky kurzu Aplikace umělé inteligence

Klasifikace předmětů a jevů

APLIKACE NEURONOVÝCH SÍTÍ VE ZPRACOVÁNÍ OBRAZU

Neuronové sítě v DPZ

Obr. 1 Biologický neuron

2 MATEMATIKA A JEJÍ APLIKACE UČEBNÍ OSNOVY

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

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

Zpětnovazební učení Michaela Walterová Jednoocí slepým,

Reálné gymnázium a základní škola města Prostějova Školní vzdělávací program pro ZV Ruku v ruce

Princip řešení soustavy rovnic

5. Sekvenční logické obvody

102FYZB-Termomechanika

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

Instance based learning

Geometrické transformace obrazu

Afinita je stručný název pro afinní transformaci prostoru, tj.vzájemně jednoznačné afinní zobrazení bodového prostoru A n na sebe.

Transkript:

Neuronové sítě Petr Kačenka Neuronové sítě Neuronové sítě jsou jednou z oblastí, které se v poslední době věnuje zvýšená pozornost. Je to zapříčiněno hlavně tím, že mají mnoho vlastností, které je možno s úspěchem využít v řadě oborů. Vtomtočlánečkusedozvíteněcoohistorii,ovyužití,oumělémneuronu,osítích neuronů a jejich speciálních případech jako jsou vrstevnaté neuronové sítě a Kohonenovy mapy. Historie Za počátek historie neuronových sítí se považuje rok 1943, kdy Warrena McCulloch a Walter Pittse vytvořili první model neuronu. V roce 1949 vydal Donald Hebb knihu Organization of Behavior, ve které bylo navrženo učící pravidlo samostatného neuronu(dnes známé jako Hebbovské učení). Velkou smůlou pro neuronové sítě byla diskreditační kampaň vedená Martinem Minským(mimo jiné konstruktor prvního neuropočítače) a Seymourem Papertem. Tato kampaň vyvrcholila roku 1969, kdy byl knižně vydán článek Perceptron, který zdůrazňoval neschopnost neuronu naučit se řešit problém XOR. Aždoroku1982sevtétooblastinedělonicmimořádnéhoanebylyanivypisovány granty. Jedině za podmínky mezioborovosti. V této době vydal fyzik John Hopfield dva články. Ale teprve až roku 1986 byl publikován článek o učícím algoritmu Back-Propagation. Tento algoritmus byl určen pro učení vrstevnatých neuronových sítí. Byl objeven vícekrát, protože předtím byl publikován v letech 1969, 1974, 1985, ale pokaždé zapadl. Velkým úspěchem byl systém NETtalk, který umožňoval převod anglického psaného textu do mluvené angličtiny a dosahoval lepších výsledků než DECtalk, na jehož vývoji se strávilo několik let- převážně formulováním složitých pravidel. Využití neuronových sítí Stručně řečeno se neuronové sítě používají všude tam, kde nám nevadí případná chyba (úspěšnostneuronovýchsítíjecca95%)akdepřesnýalgoritmusjenáročný,aťužna finanční prostředky(hardware, experti) nebo čas(nutnost rychlých rozhodnutí). 12

Petr Kačenka: Neuronové sítě Existuje několik typů neuronových sítí. A každý z nich je určen pro něco jiného. Zatímco samostatný neuron umí rozlišit prvky do dvou(lineárně separabilních) skupin, vrstevnaté neuronové sítě umí rozdělit prvky do libovolného množství skupin a tyto skupiny ani nemusí být lineárně separabilní. Kohonenova síť je určena spíše pro odstraňování šumů, pro rozložení obrazu na více částí, pro výběr reprezentantů(např. pro zmenšování počtu barev či naopak obarvování černobílých filmů), pro kompresi,... Nejvíce se v současné době využívají vrstevnaté neuronové sítě. Jedním z využití je jižzmiňovanýnettalk,kterýseskládalz203vstupníchneuronů(29 7),80 skrytých a 26 výstupních neuronů. Další možností jsou predikce v letecké dopravě(systém AMT, který optimalizuje rezervace letenek). V první fázi systém předpovídá poptávku po volných místech(zde je použita ona neuronová síť) a ve druhé fázi navrhuje rozložení letů(to již tradičními způsoby). Jinou možností je filtrace EKG signálu. Americká firma Hecht-Nielsen Neurocomputer vyvinula síť(50-12-1). Jako vstup slouží 5120 údajů, které se postupně předkládají. Existují systémy, které na základě EKG křivky umožňují odhad nemoci. Další využití v lékařství je např. při podávání antibiotik, kdy neuronová síť pracovala 4 přesněji než lékaři(např. nepředepisovala antibiotika, na které mohl být pacient alergický). Lékařům sloužila pouze jako konzultant. Asi nejlákavější je využití ve finančnictví. Predikuje se změna kurzů měn, změna kurzů akcií. Zatímco při použití klasických metod je úspěšnost cca 55%, při použití neuronových sítí se dosahuje až 75%. Existují práce, které dokázaly(při využití i jiných informací než pouhých hodnot kurzu) predikovat s úspěšností cca 85%. Dále se predikuje spojení či krach podniků. Jiným využitím ve finančnictví může být testování, zda daný klient bude schopen splácet půjčku, nebo dokonce navrhnutí výšky půjčky a doby splácení. Zajímavý nápad je také využít dat ze Španělska v době krize bank(1977-85), kdy zbankrotovalo 58ze108bankaprovéstanalýzuvsoučasnosti. Za zmínku stojí také situace, kdy se neuronová síť nainstalovala a učila se reagovat na nějaké podněty od učitele- Experta. Poté, co byla dostatečně naučena, dokázala reagovat správně i na neznámé podněty(využití např. v atomových elektrárnách, pivovarech, pokusy při řízení automobilů, kdy síť reagovala podobně jako její řidič-jezdilaagresivněplyn,brzda,nebonaopakopatrně... ). 13

Mariánská 98 Často používané typy sítí Obecné poznámky Síť je určena několika vlastnostmi. Svoji strukturou(propojením jednotlivých neuronů), způsobem vybavování a způsobem učení. Obecně můžeme říci, že struktura může být roztodivná, ale my se budeme zabývat pouze necyklickými grafy. Způsob vybavování neuronu je také podobný. Na vstup se předloží nějaké hodnoty. Neurony v okamžiku, kdy mají všechny potřebné údaje, vypočtou svůj výstup a pošlou jej dál. Výstupem celé sítě je výstup výstupních neuronů. Učenísítěsedějenapř.zapomoci učitele, kdytentokáráanebonaopak chválí za špatný, či dobrý výsledek. Znamená to, že ke každému vstupu musí existovat požadovaný výstup. Samotné učení probíhá tak, že se síť nejdříve náhodně nainicializuje. Poté se postupně předkládají vzory. Pokud síť určí správný výstup, nic se neděje, pokud určí špatný, upraví se váhy jednotlivých neuronů. Pokud jsme s celkovým výsledkem spokojeni(např. jsme předložili již všechny vzory a byly spočteny správně), učení ukončíme, jinak předložíme další vzor. Neuron Neuronjezákladníjednotkaneuronovýchsítí.Formálněmáneuron nvstupů x 1, x 2,...,x n,kteréjsouohodnocenyvahami w 1, w 2,...,w n,kteréurčujíjejichpropustnost. Každý neuron má práh θ. Vnitřním potenciálem neuronu chápeme: n ξ= w i x i i=1 Vzávislostinahodnotě ξa θurčujemevýstupneuronu.neuronmůžemítněkolik kombinací výstupu. Např. {0,1}, {-1,1}, nebo 1, 1, 0, 1, ale i mnoho jiných. Výstup se často počítá pomocí sigmoidy y= 1 1+e ξ, jelikož má jednoduchou derivaci. Jak již bylo řečeno, umí samostatný neuron rozdělit prvky množiny na dvě disjunktní množiny(jsou-li lineárně separabilní) tím, že n-rozměrným prostorem(n je počet vstupů) proloží nadrovinu. Učení neuronu. Učení neuronu probíhá v 5 krocích: 1. krok Inicializace vah na malé náhodné hodnoty 14

Petr Kačenka: Neuronové sítě 2.krokPředloženívstupu X= x 1 x 2... x naodpovídajícíhovýstupu d= 1 nebo d=1. 3. krok Výpočet aktuálního výstupu ( n ) y=f w i x i θ, i=1 kde fjenějakáfunkce např.sigmoida. 4.krokUpravenívah,pokudvýstup yjerůznýodočekávanéhovýstupu s w i (t+1)=w i (t)+η d y x i (t), kde w i (t)jehodnotaváhy i-téhovstupuvčase taηjetzv.parametručení. 5. krok Ukončení, nebo opakování od 2. kroku, pokud nejsme spokojeni s výsledkem. Tomuto učení se také říká perceptronové nebo hebbovské. Problém XOR. Za zmínku zde určitě stojí tzv. problém XOR, který na dlouhou dobu zasadil neuronovým sítím těžkou ránu. Jestliže si nakreslíte rozmístění hodnot funkce XOR, zjistíte, že není možno tyto čtyři body odseparovat. Neuron se tedy v takovém případě neustále učí, ale nikdy se danou věc nenaučí. Vrstevnatá síť Vrstevnatá neuronová síť je síť, kde jsou neurony rozděleny do několika vrstev. Spojené jsou neurony mezi dvěma sousedními vrstvami, ale nejsou spojeny mezi sebou ve vrstvě. První vrstvě se říká vstupní, poslední se říká výstupní a ostatním se říká skryté. Často se topologie vrstevnaté neuronové sítě zapisuje zkráceně. Např. 203-80-26 znamená,žesíťmánavstupu203neuronů,jednuskrytouvrstvus80neuronyave výstupní vrstvě 26 neuronů. Existuje věta, která hovoří, že na vyřešení libovolného problému stačí síť s dvěma skrytými vrstvami v praxi se ale často používá vrstev méně. Obecně se doporučuje používat sítě s menším počtem vrstev, jelikož se rychleji učí. Naopak sítě s více vrstvami umí mnohem lépe zobecňovat. Algoritmus vybavování byl naznačen již dříve. Neurony ve vstupní vrstvě předají signál do první skryté vrstvy. Neurony v této první skryté vrstvě spočítají svůj výstup apošloujejjakovstupneuronůmvedruhévrstvě.ataksepokračujedále. Učení Back-Propagation. Toto učení je založeno na tzv. gradientní metodě. Existuje spousta vylepšení tohoto způsobu, z nichž většina pracuje rychleji. Jelikož se jedná o učení s učitelem, můžeme určit míru chyby chybovou funkci. 15

Mariánská 98 E= 1 (d j y j ) 2, 2 j což jekvadrátvzdálenostimezi očekávanýmaskutečnýmvýstupem; y j znamená očekávaný výstup j-tého vzoru. Když provedeme parciální derivace(divný to výraz v tomto jinak krásném textu) podle vah, dostaneme E = E ξ j w ij ξ j w ij Použijeme-li sigmoidu, získáme δ j = f (ξ j )(d j y j )=(1 y j )y j (d j y j ), kde δjevelikostzměnyváhy. Ona parciální derivace nám vlastně říká, kterým směrem je nejbližší údolí. Samotné učení tedy můžeme stručně popsat v 5 krocích: 1. krok Inicializace všech vah náhodnou malou hodnotou. 2. krokpředloženínovéhovzoru X = x 1 x 2... x n aodpovídajícíhovýstupu D=d 1 d 2... d m.trénovacívzoryvybírámenáhodně. 3. krok Výpočet aktuálních výstupů sítě. 4. krok Adaptace vah. Novou hodnotu váhy spočteme jako wij(t+1)=w s ij(t)+ηδ s j s+1 yi s, kde wij s (t)znamenáváhumezi i-týmaj-týmneuronemvs-tévrstvěvt-témkroku adaptace. ηjeparametručení. δj s jsouchybyneuronůvuvažovanévrstvěaξs i jebuď výstup neuronu uvažované vrstvy nebo hodnoty vstupu. Jedná-liseoposlednívrstvu,potom s=ma V ostatních vrstvách platí: δ M j = y j (1 y j )(d y j ). p δj= s yj s+1 (1 yj s+1 s+1 ) δ s+1 k w s+1 jk, k=1 kde s=m 1,...,1akprocházívšemineuronyvs+1vrstvě,tedyty,kteréjsou pod j-touvrstvouatedyblížekvýstupu. 5. krok Opakování procesu učení. Pokud je celková chyba větší než ε, pokračujeme krokem 2. Jinak skončíme. Kohonenovy sítě Jsousicezajímavé,alenestihljsemseknimdostataasiseknimnestihnudostat ani na přednášce. 16