Dolování dat Strojové učení 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 •Co je to učení •Co je to strojové učení •Metody učení •Učení jako aproximace mineiro2.jpg Učení •Je přirozenou charakteristikou živých organismů nezbytnou pro jejich přežití a vývoj (oheň, …) •Schopnost učit se bývá často považováno za definici inteligence •Snaha vybavit touto schopností i stroje •Často bez toho nelze problém ani řešit (vidění, porozumění textu) •Prvky učení lze nalézt v: explorační analýza dat (statistika), rozpoznávání obrazů nebo strojové učení (AI), adaptivní a učící se systémy (kybernetika) Mylně zaměňováno se vzděláváním: Vzdělávání je organizované a cílevědomé zprostředkovávání vědomostí, dovedností a zkušeností https://wikisofia.cz/wiki/Systematizace_pojm%C5%AF_vzd%C4%9Bl%C3%A1v%C3%A1n%C3%AD_a_u%C4%8Den%C3%AD _se https://www.datasciencecentral.com/human-learning-and-machine-learning-how-they-differ/ •Things learn when they change their behavior in a way that makes them perform better in a future. •(Witten, Frank, 1999) • •The field of machine learning is concerned with the question of how to construct computer programs that automatically improve with experience. •(Mitchell, 1997) Učení Autoři populární knihy Data Mining: Practical Machine Learning Tools and Techniques (Ian Witten, Eibe Frank) Obecné schéma učícího se systému Regrese a stromy, klient, úvěr •statistické metody – kontingenční tabulky, regresní metody, shluková analýza •symbolické metody umělé inteligence - rozhodovací stromy a pravidla •subsymbolické metody umělé inteligence - neuronové sítě, bayesovské sítě nebo genetické algoritmy. Metody učení – principy pro získávání znalostí The key difference, however, between the implicit generalization in CBR and the generalization in rule induction lies in when the generalization is made. A rule-induction algorithm draws its generalizations from a set of training examples before the target problem is even known; that is, it performs eager generalization. •Může mít podobu: 1.příkladů zařazených do tříd (učení s učitelem - supervised learning) 2.odměny za správné chování a tresty za chování nesprávné (učení posilováním - reinforcement learning) 3.žádné (učení bez učitele - unsupervised learning) •Příklady: –Úspěch ChatGPT stojí na správném spojení všech těchto tří typů učení –Hide and seek Informace o správnosti učení reinforcement learning: Hra na schovávanou https://www.youtube.com/watch?v=kopoLzvh5jY https://www.youtube.com/watch?v=n6nF9WfpPrA (bonus scenes čas 3:30) parkování https://www.youtube.com/watch?v=VMp6pq6_QjI •objekty, patřící do téže třídy mají podobné charakteristiky (učení na základě podobnosti, similarity-based learning) –příklady téže třídy vytvářejí shluky v prostoru vstupních atributů –cílem učení je tyto shluky nalézt a popsat • Principy empirického učení z dat – 1. csvukrs Principy empirického učení z dat – 2. T4-data_tabulka T4-data_prostor-atributu Zkusit různé separující křivky. Principy empirického učení z dat – 3. •z konečného počtu příkladů odvozujeme obecné znalosti (induktivnost) • • • • • T4-primka_na_trenovacich T4-primka_na_testovacich csvukrs •Analyzovaná data: • • • • •Řádky tabulky reprezentují sledované objekty •Sloupce tabulky odpovídají atributům • Obecná definice strojového učení Ukázat klienty banky •Přidáme-li cílový atribut do datové tabulky, získáme data vhodná pro použití některé metody učení s učitelem (tzv. trénovací data). • • • • • •Klasifikační úloha: hledáme znalosti (reprezentované rozhodovací funkcí (modelem) f), které by umožňovaly k hodnotám vstupních atributů nějakého objektu přiřadit vhodnou hodnotu atributu cílového •f: x ® y. Obecná definice strojového učení (s učitelem) Objekt (trénovací příklad) z této tabulky budeme značit oi = [ xi , yi ] csvukrs •V průběhu klasifikace se tedy pro hodnoty vstupních atributů x nějakého objektu odvodí hodnota cílového atributu ŷ: • •ŷ = f (x). • •Odvozená hodnota ŷ se pro objekty z trénovacích dat může lišit od skutečné hodnoty y. Můžeme tedy pro každý objekt oi ∈ DTR vyčíslit chybu klasifikace Qf(oi, ŷi): •V případě numerického atributu C může být touto chybou například čtverec rozdílu skutečné a odvozené hodnoty cílového atributu •Qf (oi, ŷi) = (yi - ŷi)2, •v případě kategoriálního atributu C může být touto chybou informace o tom že se odvozená a skutečná hodnota vzájemně liší, • Obecná definice strojového učení (s učitelem) Příklad u dalšího slide Chyba na trénovacích datech . Pro celou trénovací množinu DTR pak můžeme vyčíslit souhrnnou chybu Err(f,DTR), například jako střední chybu Cílem učení je nalézt takové znalosti f*, které by minimalizovaly tuto chybu Ukázat na třech bodech v matlabu •Hledáme „pouze“ parametry modelu • •Příklad: •na základě hodnot funkce v konečném počtu bodů snažíme zrekonstruovat její obecnou podobu • • • • • Učení jako aproximace f(x) = q1x + q0 Existuje i učení jako prohledávání •Hledání minima celkové chyby •min åi (yi - f(xi)) 2 • •se převádí na řešení rovnice • Metoda nejmenších čtverců csvukrs •1) analytické (známe typ funkce) • řešení soustavy rovnic pro parametry funkce • • • • •2) numerické (neznáme typ funkce) • gradientní metody • Řešení f(x) = q1x + q0 min åi (yi - f(xi)) 2 csvukrs Gradientní metody Err q q Např. Err(q) = q^2 η = éta Problém uváznutí v lokálním minimu ml-11 Dělám věci tak „jak se dělají“ (lokální minimum) anebo hledám nový přístup (snaha dostat se pod lokální minimum) – katalogové vyhledávače vs google GPT3 – 175 000 000 000 parametrů Děkuji za pozornost Některé snímky převzaty od: prof. Ing. Petr Berka, CSc. berka@vse.cz 1.učení zapamatováním (rote learning neboli biflování), 2.učení se z instrukcí (learning from instruction, learning by being told), 3.učení se z analogie (learning by analogy, instance-based learning, lazy learning), 4.učení na základě vysvětlení (explanation-based learning), 5.učení se z příkladů (learning from examples), 6.učení se z pozorování a objevováním (learning from observation and discovery), Metody učení (dle vynaloženého úsilí) 1)Systém si pouze pamatuje data (nijak je netransformuje) – student se nabifluje skripta 2)Systém si znalosti získané z externího zdroje transformuje do své reprezentace znalostí – student pochopí, co se mu učitel snaží říct 3)Např. jak řešit právní spory 4)Např. výuka ve škole 5)Např. učení se v práci (často neexistují žádná „skripta“ nebo příručky, jak dělat danou práci) 6)Např. učení se hrát šachy 7)Viz skripta Principy empirického učení z dat – 4. •Příklady rozděleny do 2 (někdy 3) množin: –trénovací data pro vytvoření modelu –(validační data pro doladění parametrů) –testovací data pro otestování modelu •empirické – vychází se z velkého množství příkladů a žádných (nebo jen mála) počátečních znalostí •analytické – vychází se z velkého množství počátečních znalostí a jen několika (ilustračních) příkladů Formy učení Analytické – dítě šáhne na rozpálená kamna jen jednou