Dolování dat Neuronové sítě Jan Górecki Název prezentace Název projektu Rozvoj vzdělávání na Slezské univerzitě v Opavě Registrační číslo projektu CZ.02.2.69/0.0./0.0/16_015/0002400 Logolink_OP_VVV_hor_barva_cz Obsah přednášky •Biologický neuron •Modely neuronu •Učení neuronu •Vícevrstvý perceptron •Backpropagation •Příklady použití Biologický neuron Mozek Obsahuje asi 50–100 miliard (tedy asi 10^11) neuronů Modely neuronu csvukrs Příklad ADALINE příjem + 0.2 konto = 16000 x1 = příjem, x2 = konto, y = úvěr (bin), w1 = 1, w2 = 0.2, w0 = 16000 Pozor, na obrázku vpravo není regresní přímka! (je to separující přímka pro třídy úvěr = ano a úvěr = ne) Modely neuronu 3.Současné modely x, w Î R, y Î [0, 1] (nebo [-1,1]) Nelinearita v podobě skokové funkce, tak jak je použita v případě Adaline (dávající pouze dvě výstupní hodnoty neuronu), je ve složitějších modelech neuronu nahrazena hladkými funkcemi, které nabývají hodnot z celého intervalu (sigmoida, tanh, ale taky identita). sigmoid tanh hyperbolický tangens f(SUM) = tanh(SUM) csvukrs Schopnost učení csvukrs Příklady chybových funkcí nn-err-lin pro lineární aktivaci: f(SUM) = SUM nn-err-ada csvukrs Perceptron https://news.cornell.edu/stories/2019/09/professors-perceptron-paved-way-ai-60-years-too-soon Dvouvrstvý perceptron Umí: •Rozpoznat písmena z abecedy •Rozpoznat tvary (pattern recognition) • Neumí: •XOR problém (https://dev.to/jbahire/demystifying-the-xor-problem-1blk) •Nelineárně separabilní problémy • Problém: •Jak ho učit? • => Celá oblast neuronových sítí utichla na téměř 20 let! https://slideplayer.com/slide/5323236/ Vícevrstvý perceptron (MLP) Vícevrstvý perceptron s jednou skrytou vrstvou Síť používaná pro klasifikaci resp. predikci 3 vrstvy: 1. vstupní – přenáší vstupní data dál 2. skrytá (tato umožňuje řešit např. XOR problém) 3. výstupní – ukazuje výsledek klasifikace resp. predikce sigmoidální aktivační funkce pro neurony ve skryté a výstupní vrstvě vstupní skrytá výstupní sigmoid w1,2 w2,3 csvukrs Backpropagation - algoritmus učení s učitelem csvukrs •počet iterací •velikost chyby •změna chyby mezi iteracemi • • • • • • Kritéria zastavení T08-EM-pocet_iteraci csvukrs Implementace (Weka) T8-weka_MLP csvukrs •volba vhodné sítě (topologie, počet neuronů) •výběr trénovacích příkladů •učení sítě • • •Typy úloh: –klasifikace (predikce) –regrese Způsob aplikace neuronové sítě vyjadřovací síla vícevrstvého perceptronu • neuronové sítě jsou vhodnější pro numerické atributy • lze „popsat“ složité shluky v prostoru atributů • nalezené znalosti jen obtížně interpretovatelné csvukrs •Úloha: vyhodnocování bonity klienta banky • •Vstupy: údaje o žadateli •Výstupy: doporučení „poskytnout/neposkytnout úvěr“ • • •Řešení: • •Typ sítě: MLP •Vstupní vrstva: jeden neuron pro každý údaj o žadateli •Výstupní vrstva: jeden neuron •Skrytá vrstva: ?? •Učení: informace o dřívějších klientech + závěr banky • Klasifikace csvukrs •Na základě historických dat předpověď dalšího vývoje • •Úloha: predikce vývoje směnných kursů • •Vstupy: předchozí hodnoty kursu •Výstupy: budoucí hodnota kurzu • •Řešení: •Typ sítě: MLP •Vstupní vrstva: jeden neuron pro každou hodnotu •Výstupní vrstva: jeden neuron pro predikovanou hodnotu a jeden pro znaménko změny kursu •Skrytá vrstva: ?? •Učení: historické + aktuální údaje Predikce (Regrese) csvukrs Děkuji za pozornost Některé snímky převzaty od: prof. Ing. Petr Berka, CSc. berka@vse.cz