FEKT Vysokého učení technckého v Brně Strojové učení Garant předmětu: Ing. Petr Honzík, Ph.D. Autoř textu: Ing. Petr Honzík, Ph.D. Brno.0. 006
FEKT Vysokého učení technckého v Brně Obsah VSTUPNÍ TEST... 6 ÚVOD DO STROJOVÉHO UČENÍ... 7. ZAŘAZENÍ STROJOVÉHO UČENÍ...7. KOMPONENTY PROCESU MODELOVÁNÍ...9.3 TEORÉMY A TERMINOLOGIE....4 SOUHRN... 3 CHYBOVÉ FUNKCE... 6. METODA NEJMENŠÍCH ČTVERCŮ... 6. MAXIMÁLNÍ VĚROHODNOST... 8.3 MNČ VS. MLE... 0.4 DALŠÍ TYPY A MODIFIKACE CHYBOVÝCH FUNKCÍ....5 CHYBOVÁ FUNKCE V KLASIFIKÁTORECH... 4.6 SOUHRN... 5 3 GENETICKÉ ALGORITMY... 8 3. ÚVOD... 8 3. ZÁKLADY GENETICKÝCH ALGORITMŮ... 9 3.. Přehled základní termnologe... 9 3.. Prncp genetckých algortmů... 30 3.3 OPERÁTORY GENETICKÝCH ALGORITMŮ... 3 3.3. Kódování... 3 3.3. Křížení... 3 3.3.3 Mutace... 33 3.3.4 Selekce... 35 3.3.5 Ftness hodnotící funkce... 37 3.4 PRAKTICKÁ APLIKACE GENETICKÝCH ALGORITMŮ... 38 3.4. Přehled parametrů GA... 38 3.4. Nastavení parametrů GA... 39 3.4.3 Příklady aplkací genetckých algortmů... 4 3.5 SOUHRN... 44 4 ROZHODOVACÍ STROMY... 47 4. ÚVOD... 47 4. ZÁKLADY ROZHODOVACÍCH STROMŮ... 48 4.. Termnologe rozhodovacích stromů... 48 4.. Prncp rozhodovacích stromů... 49 4..3 Rozdělení rozhodovacích stromů... 50 4.3 VYBRANÉ ALGORITMY PRO TVORBU ROZHODOVACÍCH STROMŮ... 5 4.3. ID3... 5 4.3. CART... 54 4.3.3 Další algortmy pro generování RS... 57 4.4 SOUHRN... 60 5 UČENÍ ZALOŽENÉ NA INSTANCÍCH... 6 5. ÚVOD... 6 5. VZDÁLENOST DVOU PRVKŮ... 64
Strojové učení 3 5.3 VÝBĚR A ULOŽENÍ PRVKŮ, VYHLEDÁNÍ NEJBLIŽŠÍCH SOUSEDŮ... 66 5.4 ALGORITMY IBL... 68 5.4. K-Nearest Neghbour... 69 5.4. Lokálně vážená regresní metoda... 7 5.4.3 Obecně regresní modely... 7 5.5 SOUHRN... 73 5.6 LITERATURA... 75 APPENDIX A... 76 A. KLASIFIKÁTORY ROC ANALÝZA... 76 A. ČTYŘPOLNÍ TABULKA... 76 A.3 GRAF ROC... 78 A.4 PLOCHA POD GRAFEM ROC AUC... 8 A.5 EKVIVALENTY A APROXIMACE AUC... 83 ŘEŠENÍ VSTUPNÍHO TESTU... 85
4 FEKT Vysokého učení technckého v Brně Seznam obrázků OBR..: ZAŘAZENÍ OBORU STROJOVÉ UČENÍ...7 OBR..: MODEL UČENÍ S UČITELEM...9 OBR..3: TYPY VELIČIN... 0 OBR..4: PŘEUČENÝ MODEL ROZHODOVACÍHO STROMU... OBR..5: ÚROVNĚ ZÁZNAMŮ PODLE TYPU NESENÉ INFORMACE... OBR..: ODCHYLKY REÁLNÝCH DAT OD MODELU Y... 0 OBR..: TRANSFORMACE Y PODLE MNČ A ML... 0 OBR..3: ODCHYLKY REÁLNÝCH DAT OD MODELU Y... OBR..4: TRANSFORMACE Y PODLE MNČ A ML... OBR..5: RŮZNÉ CHYBOVÉ FUNKCE PRO REGRESNÍ KLASIFIKÁTOR... 3 OBR. 3.: BINÁRNĚ KÓDOVANÝ CHROMOZOM... 3 OBR. 3.: REÁLNĚ KÓDOVANÝ CHROMOZOM... 3 OBR. 3.3: KŘÍŽENÍ JEDINCŮ... 3 OBR. 3.4: KŘÍŽENÍ JEDINCŮ... 3 OBR. 3.5: MUTACE JEDINCŮ... 33 OBR. 3.6: MUTACE JEDINCŮ... 34 OBR. 3.7: PROCENTUÁLNÍ ROZLOŽENÍ NA RULETĚ... 35 OBR. 3.8: A) BEZ POUŽITÍ ELITISMU B) S POUŽITÍM ELITISMU... 37 OBR. 3.9: PRŮBĚH FUNKCE F(X,Y)... 4 OBR. 3.0: VÝVOJ NEJLEPŠÍHO JEDINCE A PRŮMĚRNÉ KVALITY GENERACE NA POČTU GENERACÍ PRO A) BINÁRNÍ KÓDOVÁNÍ B) REÁLNÉ KÓDOVÁNÍ... 44 OBR. 4. ANALYZOVANÁ DATA - TERMINOLOGIE... 48 OBR. 4. ROZHODOVACÍ STROM... 49 OBR. 4.3 VYGENEROVANÉ BODY URČENÉ KE KLASIFIKACI... 55 OBR. 4.4 A) VYGENEROVANÝ ROZHODOVACÍ STROM. B) PREDIKCE (BAREVNÉ PLOCHY) NA ZÁKLADĚ DAT.... 56 OBR. 4.5 A) VYGENEROVANÝ ROZHODOVACÍ STROM. B) PREDIKCE (BAREVNÉ PLOCHY) NA ZÁKLADĚ DAT.... 56 OBR. 4.6 A) VYGENEROVANÝ ROZHODOVACÍ STROM. B) PREDIKCE (BAREVNÉ PLOCHY) NA ZÁKLADĚ DAT.... 57 OBR. 4.7 A) VYGENEROVANÝ ROZHODOVACÍ STROM. B) PREDIKCE (BAREVNÉ PLOCHY) NA ZÁKLADĚ DAT.... 57 OBR. 4.8 PŘEUČENÝ STROM... 58 OBR. 4.9 SROVNÁNÍ PRŮBĚHŮ CHYBOVÝCH FUNKCÍ PŘI BINÁRNÍ KLASIFIKACI... 59 OBR. 5.: K-NN PŘI K=5... 69 OBR. 5.: VORONÉHO GRAF... 69 OBR. A.: GRAF ROC... 79 OBR. A.: DVĚ RŮZNÉ ROC KŘIVKY SE STEJNOU AUC... 8 OBR. A.3: DVĚ ROC KŘIVKY S RŮZNÝM AUC A STEJNÝM OPTIMÁLNÍM BODEM... 8
Strojové učení 5 Seznam tabulek TABULKA.: CHYBA. A. DRUHU... 4 TABULKA.: ILUSTRATIVNÍ NÁKLADOVÁ MATICE... 5 TABULKA 3.: KVALITY JEDNOTLIVÝCH JEDINCŮ PO MUTACI... 34 TABULKA 3.: PRAVDĚPODOBNOSTI JEDNOTLIVÝCH JEDINCŮ... 35 TABULKA 3.3: KVALITY VYLOSOVANÝCH JEDINCŮ... 36 TABULKA 3.4: PŘÍKLAD METODY TURNAJ... 36 TABULKA 3.5: PARAMETRY POUŽITÉ PŘI MODELOVÁNÍ PŘÍKLADU:... 43 TABULKA 4. DĚLENÍ ROZHODOVACÍCH STROMŮ... 5 TABULKA 5.: METRIKA PRO PODOBNOST JAZYKŮ... 65 TABULKA A.: ROZDĚLENÍ VÝSLEDKŮ BINÁRNÍ KLASIFIKACE... 77 TABULKA A.: POČTY PRVKŮ V SOUBORU SE STEJNOU A ROZDÍLNOU DIFERENCÍ... 84
6 FEKT Vysokého učení technckého v Brně Vstupní test. Vysvětl pojmy a) kvanttatvní data (proměnná) b) kvaltatvní data (proměnná).. Jak se dělí kvanttatvní data (proměnné)? 3. Jak se dělí kvaltatvní data (proměnné)? 4. Co je to nezávslá proměnná? 5. Co je to závslá proměnná? 6. Vysvětl rozdíl mez pojmy klasfkátor a regresní model.
Strojové učení 7 Úvod do strojového učení Cíle kaptoly: Po nastudování této kaptoly je student znalý zařazení strojového učení mez ostatní obory a způsobu, jakým ostatní vědní dscplíny strojové učení ovlvňují. Rozumí složení významu komponent v procesu učení s učtelem, rozlšuje základní typy velčn, modelů, chybových funkcí, testů přesnost a meta-algortmů. Je obeznámen se základním teorémy a termíny, jejchž znalost je nezbytná pro další studum oboru strojové učení.. Zařazení strojového učení zařazení strojového učení Strojové učení (SU) je českým ekvvalentem anglckého termínu Machne Learnng (ML). Jedná se o vědní dscplínu zabývající se algortmy a programy, které umožňují strojům proces učení. Samotné herarchcké zařazení SU jako kategore mez ostatním vědním dscplínam není jednoznačné. Důvodem je jejch vzájemné prolínání se a doplňování. Následující schéma proto není jedným možným způsobem, kam SU zařadt. Matematka Aplkovaná matematka Kybernetka Umělá ntelgence Strojové učení Dolování dat Pravděpodobnost a statstka Optmalzace Obr..: Zařazení oboru strojové učení Mez obory, které významným způsobem zasahují do SU a přtom jsou herarchcky v odlšné oblast náleží zejména statstka a optmalzace. Statstka nabízí slný matematcký aparát využívaný zejména ve fáz předzpracování dat a př vyhodnocování modelů (průběžném konečném). Termín model lze z pohledu statstky nahradt termínem hypotéza (model je ve své podstatě hypotézou o vztazích a vazbách mez vstupním a výstupním velčnam v modelovaném procesu č objektu). Optmalzace se zabývá algortmy, které vedou k nalezení extrému funkce. Tento obor tedy na model pohlíží jako na funkc. Cílem optmalzace ve SU je nastavení parametrů modelu
8 FEKT Vysokého učení technckého v Brně umělá ntelgence strojové učení dolování dat statstka tak, aby př daných vstupních hodnotách byla mnmalzována odchylka mez výstupem požadovaným a získaným z modelu. Jak je ze schématu na obr.. patrné, umělá ntelgence (UI), ang. Artfcal Intellgence (AI), je oboru SU nadřazená. Marvn Mnský defnoval UI jako vědu, která se zabývá tím, jak přmět stroje projevovat se takovým chováním, které by v případě člověka vykazovalo potřebu ntelgence. Exstuje tzv. Turngů test, který zjednodušeně spočívá v tom, že člověk klade otázky (např. písemnou formou) a dostává odpověd. Na základě těchto odpovědí se rozhoduje, jestl komunkuje s člověkem nebo strojem. Pokud stroj př tomto testu oklame člověka, projevuje se ntelgentně. Je to však opravdu důkaz exstence umělé ntelgence? Stroj mohl nalézt odpověd v nějaké databáz, přtom ve skutečnost vůbec nechápe jejch smysl. Pak hovoříme o tzv. slabé UI. Slná UI naprot tomu chápe obsah podobně jako člověk. Nedostatečnost Turngova testu na dokázání slné UI byla provedena pomocí tzv. čínského pokoje. Osoba neznalá čínštny, jen na základě určtých pravdel, korektně odpoví na otázky v tomto exotckém jazyce. Prncp tohoto důkazu přrovnal Stansław Lem ke skládání puzzle obrázku. Podstata pokusu spočívá v tom, že dílky jsou obráceny rubem nahoru, není tedy možné puzzle sestavt na základě obrázku, jehož vzhled je vodítkem př skládání. Přesto je možné v případě, že je každý dílek unkátní (vhodný formální pops jazyka), poskládat puzzle správně tak, aby obrazec (nebo např. text) na lícové straně dával smysl. Tím byla prokázána nedostatečnost Turngova testu na dokázání slné UI. Vývoj UI ovlvňuje nejen akademcká obec. Celá oblast lteratury označovaná jako scence fcton s pohrává s prognostckým myšlenkam o možném vývoj a vlvu UI. Prognózy některých spsovatelů jsou brány velce vážně (A.C.Clark, Stansław Lem,...). Smyslem těchto příkladů bylo vysvětlt, že UI se jako obor nezabývá pouze přímou aplkací matematckých modelů, ale také flosofckým a etckým důsledky plynoucím z jejch použtí. Skutečná realzace však nakonec končí u algortmů a konkrétních matematckých modelů. Tím se dostáváme do oblast, která je středem zájmu tohoto předmětu, ke strojovému učení. Strojové učení je nauka o algortmech, které umožňují učení umělých objektů. Učením se je rozuměno automatcké zlepšování se na základě zkušeností. SU se tedy orentuje na matematcký aparát, na jehož základě dochází k techncké realzac cílů defnovaných v UI. Skutečné meze těchto algortmů ve vztahu k člověku a jeho chápání včetně ostatních flosofckých úvah do SU nespadají. Dolování dat (ang. Data Mnng) je dscplínou defnovanou cílem získávat netrvální a potencálně užtečné nformace z dat, případě z databází (Knowledge Dscovery n Databases). Jsou defnovány určté metodologe (SEMMA, CRISP- DM,...), jak postupovat př zpracování dat. Formálně lze říc, že dscplína dolování dat využívá nástrojů SU. Statstka je s algortmy strojového učení spjata velce úzce. Řada postupů používaných ve SU vychází přímo ze statstckých metod. Zcela zásadní rozdíl mez SU a statstkou spočívá v tom, že podstatou SU je vytvořt model (hypotézu), který bude predkovat a ve fnále skutečně rozhodovat, přčemž proces učení nemusí vést př opakovaném výpočtu ke stejným výsledkům, tedy stejným modelům. Cílem je nastavt model co nejlépe. Statstka je matematcký obor, který se zabývá popsem (charakterstky datových souborů), ndukcí
Strojové učení 9 optmalzace shrnutí (předpoklady o základním souboru ze vzorků), porovnáváním a testováním (posuzuje hladnu významnost hypotéz na základě předpokladů). Co do číselných výpočtů je narozdíl od SU jednoznačná. Umožňuje tak absolutní hodnocení, na jehož základě lze provádět různá srovnání. Zjednodušeně řečeno, SU vytváří hypotézy na základě velce pestré škály názorů, nápadů a postupů. K posouzení míry zdařlost této čnnost (ať už během procesu učení nebo po jeho ukončení) se pak obrací na statstku jako na metodolog garantující korektnost př absolutním posuzování kvalty vytvořených modelů. Optmalzace je poslední oblastí, která hraje ve SU zásadní rol. SU zahrnuje mnoho různých modelů, ve kterých lze uložt znalost v podobě jejch struktury a parametrů. Nastavení hodnot parametrů závsí na vstupních nformacích, tedy trénovacích datech. Postup, jak nastavt model na základě dat, se nazývá optmalzace (spočívá v mnmalzac odchylek rozdílů výstupních hodnot modelu a požadovaných výstupních hodnot). Součnnost uvedených vědních dscplín s lze představt tak, že z databáze SU je vybrán model (matematcký objekt, který má schopnost uložt v sobě znalost), optmalzace poskytne postup, kterým se model na základě dostupných dat správně nastaví a statstka pak poslouží jako absolutní měřítko jeho dosažené přesnost. Celý tento proces spadá do oboru SU.. Komponenty procesu modelování základní schéma Schéma na obrázku. znázorňuje objekty a funkce, které dohromady tvoří základní komponenty procesu modelování z pohledu strojového učení. Je tvořeno vstupní velčnou X, výstupní velčnou Y, predkovanou výstupní velčnou Ŷ, modelem s parametry M(b), chybovou funkcí LF a optmalzačním (učcím) algortmem UA. Obr..: Model učení s učtelem Jeden cyklus procesu učení s učtelem probíhá následovně: postupně jsou předkládána vstupní data X modelu M(b); výstup modelu Ŷ je porovnáván s požadovaným výstupem Y; míru vznklé odlšnost kvantfkuje chybová funkce LF (ang. loss functon) na tzv. chybu Err (ang. error); optmalzační (učcí) algortmus UA upravuje parametry modelu b na základě nformace o chybě Err tak, aby její hodnota byla v příštím cyklu co nejmenší.
0 FEKT Vysokého učení technckého v Brně velčny Vstupní, výstupní predkované velčny (X,Y,Ŷ) mohou být různého typu. Jejch základní dělení znázorňuje obrázek.3. Charakterstcké pro kvanttatvní velčnu je skutečnost, že její číselná hodnota má nějakou jednotku (metry, procenta, počet ldí v tramvaj,...) a vyjadřuje množství (kvantum) v dané jednotce. Mez kvanttatvním daty pak exstuje operace sčítání a odečítání. Kvanttatvní velčny se dále dělí na spojté a dskrétní (obdoba analogové a dgtální). Například délka nosníku je velčna spojtá, počet ldí v tramvaj velčna dskrétní. DATA KVANTITATIVNÍ KVALITATIVNÍ SPOJITÉ DISKRÉTNÍ NOMINÁLNÍ ORDINÁLNÍ Obr..3: Typy velčn modely chybové funkce Kvaltatvní velčny nenesou číselnou nformac. Dělí se na ordnální a nomnální. Prvky v ordnální velčně lze seřadt, ve smyslu orentace je mez nm možno defnovat relace <, >, =. Často však relace závsejí na kontextu, ve kterém jsou data použta. Například vztaženo ke vzdálenost od slunce lze množnu planet {Merkur, Venuše, Země, Mars, Jupter, Saturn, Uran, Neptun} považovat za ordnální. Neplatí však, že by vzdálenost mez Zemí a Marsem byla stejná jako mez Marsem a Jupterem. Pokud bychom ze zabýval hmotností planet, pořadí by bylo odlšné. Jestlže kontext neznáme nebo dokonce neexstuje, na pořadí prvků v množně nezáleží. Taková velčna je nomnální. V lteratuře se lze setkat s různou symbolkou odlšující výstupní velčny podle jejch typu. Kvanttatvní velčně bývá přřazován symbol Y (Ŷ), kvaltatvní G (Ĝ). Podle výše zmíněného dělení velčn na kvanttatvní a kvaltatvní se dělí modely podle typu výstupní velčny na modely regresní výstup je kvanttatvní, a klasfkátory výstup je kvaltatvní. Běžná je kombnace obou typů modelů dohromady, tzv. regresní klasfkátory. Jejch prncp spočívá v tom, že kvaltatvní výstupní velčna je nahrazena čísly, která jsou v regresním modelu použta jako kvanttatvní velčna. Na spojtém výstupu regresního modelu je následně stanovena tzv. krtcká hodnota (práh, mezní hodnota), na jejíž základě (překročení, nedosažení) je klasfkováno. Typcká je tato substtuce u bnárních dat (muž/žena, ano/ne nahrazeno čísly 0/ nebo -/). Vstupy chybové funkce jsou požadovaná výstupní hodnota Y (G) a výstupní hodnota modelu Ŷ (Ĝ). Cílem je kvantfkovat míru chyby modelu. Pokud platí rovnost obou výstupních velčn (Y=Ŷ, G=Ĝ), je chyba nulová. V případě jejch odlšnost chybu jednoznačně kvantfkuje chybová funkce LF. Pokud je výstupní velčna kvaltatvní, používají se k určení chyby tzv. nákladové matce. Protože
Strojové učení optmalzační algortmy testy přesnost modelů meta algortmy chybová funkce představuje zpětnou vazbu v optmalzačním procesu, je její korektní stanovení důležté. Jejímu určení a výpočtu je ve skrptech věnována celá kaptola. Smyslem optmalzačního algortmu je hledání extrému funkce. V případě SU je cílem najít takové parametry b modelu M(b), př kterých je chyba predkce na trénovacích datech co nejmenší. I toto nastavení má však svoj hranc v podobě tzv. přeučení modelu (vz. další kaptola). Optmalzační algortmy jsou samostatnou dscplínou v oboru matematky. V rámc těchto skrpt bude věnována zvýšená pozornost tzv. genetckým algortmům, které kopírují proces evoluce podle Darwnovy teore přírodního výběru. U některých metod SU bude použtý optmalzační algortmus popsán a vysvětlen, u jných bude pouze naznačena jeho základní myšlenka. Aby bylo možné ověřt skutečnou přesnost modelu, dělí se dostupná data na data trénovací a testovací. Trénovací data jsou použta pro naučení modelu, testovací na zjštění jeho přesnost. Problém však spočívá v tom, že model naučený na pouhou část dat (trénovací) nemusí dosahovat přesnost, které by dosahoval v případě, že by byla použta veškerá dostupná data (trénovací testovací). Tímto problémem se zabývají testy přesnost modelů (crossvaldataon, bootstrap), které umožňují použít na naučení modelu všechna data, přtom však nedochází ke ztrátě nformace o skutečné přesnost modelu. Meta algortmy se zabývají tím, jak využt k predkc větší počet modelů. Metody se dělí podle toho, jestl pracují se stejným typy modelů (baggng, boostng) nebo různým typy modelů (bumpng, stackng). Jejch použtí může ovlvnt proces samotného učení, ve výsledku zvyšuje přesnost predkce. Největší přínos mají zejména v případech, kdy jednotlvé modely predkují optmálně jen s lokální platností..3 Teorémy a termnologe přeučení Chyba [%] 45 40 35 30 5 0 5 0 5 0 Trénovací data Testovací data 0 0 40 60 80 00 Počet uzlů [-] Obr..4: Přeučený model rozhodovacího stromu
FEKT Vysokého učení technckého v Brně Jedním z problémů př učení modelu na dostupných datech je tzv. přeučení modelu. Tento stav spočívá v tom, že se model naučí zdánlvé, ve skutečnost neexstující souvslost. Důvodem může být přílš mnoho parametrů modelu (Occamovo ostří) nebo zašuměnost a chyby v trénovacích datech. Vznklý efekt je patrný z obr..4. V uvedeném příkladě je vytvářen rozhodovací strom. Postupným přdáváním dalších uzlů je možno zvyšovat přesnost klasfkace na trénovacích datech. Z grafu je patrné, že od určtého počtu uzlů se chyba na testovacích datech začala zvětšovat. Příčnou je skutečnost, že byl model na trénovacích datech přeučen, tzn. naučl se závslost, které ve skutečnost neexstují a které ve svém důsledku vedou ke zhoršení přesnost predkce. ocaamovo ostří Tento teorém je přpsován anglckému flosofu Wllamu Ockhamov (4. století). Z pohledu SU je podstatná následující nterpretace: pokud pro nějaký jev exstuje vícero vysvětlení, je lépe upřednostňovat to méně komplkované. Přeneseněj řečeno, pokud dva různé modely predkují dentcky, je správný ten jednodušší (mající méně parametrů). data ndukce, dedukce učcí algortmy Obr..5: Úrovně záznamů podle typu nesené nformace Na obr..5 je schéma přechodu od šumu k metaznalost. Nejnžší úrovní z pohledu nesené nformace je šum. Výběr smysluplných údajů ze šumu tvoří data. Data představující konkrétní vlastnost jsou označována termínem nformace. Znalost je specalzovaná nformace, která má schopnost transformovat nformac v jnou nformac; v případě SU se jedná o model. Metaznalost je pak schopnost transformovat znalost v novou znalost nebo nformac (např. rozhodování o tom, který z modelů znalostí bude použt). Dále lze data rozdělt podle toho, jestl mají otevřenou nebo uzavřenou doménu. Pokud má proces nebo objekt konečný počet vlastností, které jsou známy, má uzavřenou doménu. V opačném případě, tedy pokud je počet vlastností procesu č objektu neomezený nebo neznámý, hovoříme o tzv. doméně otevřené. Indukce je logcký proces, přechod od konkrétního k obecnému (od dat ke znalostem, modelu). Algortmy SU jsou nduktvního charakteru. Jsou platné vždy jen s určtou pravděpodobností. Dedukce je přechod od obecného ke konkrétnímu (od znalostí k datům, novým závěrům). Tento proces postupuje od předpokladů k jstým (jednoznačným) závěrům. Pokud jsou závěry v rozporu se skutečností, je vyvrácena platnost předpokladu (např. modelu). V první řadě rozlšujeme učení s učtelem (ang. supervsed learnng) a bez učtele (ang. unsupervsed learnng). Rozdíl spočívá v tom, jestl je v trénovacích datech obsažena požadovaná výstupní hodnota Y (G) nebo ne. Pokud ano, jedná se o učení s učtelem (učtelem je tedy ona požadovaná výstupní hodnota), v opačném případě se jedná o učení bez učtele. V takovém případě jsou v datech
Strojové učení 3 generalzace a specalzace hledány dosud neznámé souvslost, jsou hledány tzv. shluky (ang. clusters), tedy oblast tvořené daty, která jsou s vzájemně podobná. Takto nalezené shluky pak mohou představovat nové třídy nebo hledané objekty. Další vlastností je schopnost učt se na základě nových dat bez potřeby použít znovu všechna dosud známá trénovací data. Pokud tedy model potřebuje k nové úpravě maxmálně k předešlých příkladů, aby znalost uloženou ve své struktuře rozšířl o nformac obsaženou v nově příchozí nstanc, hovoříme o nkrementálním učení. V opačném případě jde o nenkrementální učení. Algortmy lze také dělt podle toho, zda je možné model upravovat během jeho používání. Pokud ano, hovoříme o on-lne učení, v opačném případě o offlne učení. Př hledání správné hypotézy na základě trénovacích dat lze postupovat dvěma odlšným způsoby. Prvním postupem je specalzace. Nejdříve je vytvořena zcela obecná hypotéza. S přbýváním nových případů je tato hypotéza zpřesňována (specalzována) tak, aby elmnovala všechny negatvní případy. Opačným směrem se ubírá generalzace. Na základě prvního poztvního trénovacího prvku je vytvořena zcela specfcká hypotéza zahrnující pouze tento jedný prvek. S přbýváním nových příkladů je hypotéza rozšřována tak (generalzace), aby zahrnovala nové poztvní příklady. Podrobněj se touto problematkou zabývá nduktvní učení. U generalzace rozlšujeme správnou generalzac (např. všechna sudá čísla větší než nejsou prvočísla ) neoprávněnou generalzac (např. přrozená čísla končící na jsou prvočísla ) a podceněnou generalzac (např. žádné prvočíslo není větší než 00 ). aplkace SU Mez typcké úlohy využívající SU patří vyhledávání (nternetové vyhledávače), lékařské dagnostcké systémy, rozlšení nelegálního použtí kredtních karet, rozlšení řeč, písma a psaného textu, analýza nvestčních trhů, expertní systémy,....4 Souhrn Strojové učení je jednou z oblastí spadající do umělé ntelgence. Zaměřuje se na strukturu, učení a aplkac matematckých modelů schopných automatckého učení se. Pro tyto účely uvádí v součnnost především dva další obory, statstku a optmalzac. Hlavní strukturu procesu učení s učtelem tvoří následující komponenty: vstupní data X; model M(b); výstup modelu Ŷ; požadovaným výstup Y; chybová funkce LF; chyba Err; optmalzační (učcí) algortmus UA; parametry modelu b. Cílem procesu učení s učtelem je takové nastavení modelu, aby co nejlépe odpovídal skutečným vztahům a vazbám v modelovaném procesu nebo objektu. Specfckým problémy spojeným s učením modelů jsou tzv. přeučení modelu a stanovení skutečné chyby modelu.
4 FEKT Vysokého učení technckého v Brně Kontrolní otázky a úlohy. Jak se dělí velčny? Kvanttatvní (spojtá, dskrétní), kvaltatvní (nomnální, ordnální).. Jaké úrovně záznamů podle obsahu rozlšujeme? Šum, data, nformace, znalost, metaznalost. 3. Jaký je rozdíl mez umělou ntelgencí a strojovým učením? Umělá ntelgence se zabývá tím, jak naučt stroje projevovat se podobně jako člověk, jak tento stav dokázat a jaké důsledky z toho společensky vyplývají. Strojové učení je součástí umělé ntelgence, které se zabývá matematckým aparátem, tedy matematckým modely a algortmy umožňující učení se strojů. 4. Nakresl a popš komponenty procesu učení s učtelem. Jeden cyklus procesu učení s učtelem probíhá následovně: postupně jsou předkládána vstupní data X modelu M(b); výstup modelu Ŷ je porovnáván s požadovaným výstupem Y; míru vznklé odlšnost kvantfkuje chybová funkce LF (ang. loss functon) na tzv. chybu Err (ang. error); optmalzační (učcí) algortmus UA upravuje parametry modelu b na základě nformace o chybě Err tak, aby její hodnota byla v příštím cyklu co nejmenší. 5. Vysvětl pojmy occamovo ostří a přeučení modelu. Occamovo ostří: pokud dva různé modely predkují dentcky, je správný ten jednodušší. Přeučení modelu: naučení závslostí, které ve skutečnost neexstují; způsobeno chybam nebo šumem v použtých trénovacích datech. 6. Vysvětl pojmy ndukce a dedukce. Indukce je zobecnění, z konkrétních dat k obecnému pravdlu (model). Dedukce je směr opačný, tedy konkrétní závěr z obecně platného pravdla. Lteratura: [] Berry M.J.A., Lnoff G.S.: Data Mnng Technques, Wley Publshng, Inc., 004. ISBN 0-47-47064-3. [] Feldng A.H., Bell J.F.: A revew of methods for the assessment of predcton errors n conservaton presence/absence models. Foundaton for Envronmental Conservaton. 997, pp. 38-49. [3] FRANK, E., HARRELL, J. Regresson Modelng Strateges. NY: Sprnger, 00. 568 pages. ISBN 0-387-953-.
Strojové učení 5 [4] Haste T., Tbshran R., Fredman J.: The Elements of Statstcal Learnng. Sprnger, 00. ISBN 0-387-9584-5. [5] Lem S.: Tajemství čínského pokoje. Mladá fronta, 999. ISBN 80-04-086-6. [6] Machová K.: Strojové učene, Košce 00, http://neurona.tuke.sk/~machova/su4.pdf [7] Mtchel T.: Machne Learnng. MacGraw Hll Scence, 997. ISBN 007048077. [8] Schölkopf B., Smola A.J.: Learnng wth Kernels. MIT Press, Cambrdge, MA, 00. ISBN 0-6-9475-9. [9] Theodords S.: Pattern Recognton, Elsever, 003. ISBN 0--685875-6.
6 FEKT Vysokého učení technckého v Brně Chybové funkce Cíle: Po nastudování této kaptoly má student jasnou představu o významu chybové funkce a matematckých vztazích, kterým j lze vypočíst. Chápe rozdíly společné rysy, které jsou mez metodou nejmenších čtverců a maxmální věrohodností, rozumí rozdílnost v přístupu k chybovým funkcím z pohledu typu vstupních dat (kvanttatvní, kvaltatvní), umí použít nákladové matce. chybová funkce defnce chybové funkce Podstatou chybové funkce je vyjádřt odlšnost mez modelem a realtou. Stejně, jako se od sebe lší různé typy modelů, lší se chybové funkce, které jsou pro jejch nastavování používány. Základní dělení chybových funkcí vyplývá z toho, pro jaký typ dat (kvanttatvní, kvaltatvní) jsou určeny. Zápsem (x,y,f(x)) X Y Y rozumíme uspořádanou trojc, ve které velčna x představuje vstupní hodnotu, y představuje požadovanou výstupní hodnotu a f(x) představuje predkovanou výstupní velčnu (též ŷ). Funkce L:X Y Y 0; ), pro kterou platí, že pro x X a y Y je L(x,y,y)=0, je označována jako chybová funkce.. Metoda nejmenších čtverců defnce MNČ lneární MNČ Metoda nejmenších čtverců (MNČ) je aproxmační metoda, která spočívá v tom, že hledáme takové parametry zvolené funkce, pro které je součet čtverců odchylek vypočtených hodnot od hodnot naměřených mnmální. Výpočet chyby Err podle uvedené defnce vyjadřuje následující vztah: Err = N [ y f ( x )] =,b (.) kde y je požadovaná výstupní hodnota, x je hodnota vstupní velčny a b je vektor parametrů modelu f(x,b). Lneární MNČ se týká regresních modelů, které jsou lneární ve svých parametrech b, jak ukazuje následující rovnce ( x b) = b + b f ( x) +... b f N ( xm ) f + ; 0 N (.) Hlavní předností modelů lneárních v parametrech je skutečnost, že pro nalezení optmálních hodnot jejch parametrů zpravdla exstují známá analytcká řešení. Pokud je to možné, bývají z tohoto důvodu lnearzovány modely nelneární. To má většnou za následek, že rozložení chyby měření jž není normální, což je mplctní předpoklad pro použtí lneární MNČ. Navzdory tomu však bývají výsledky takto upravených závslostí uspokojvě přesné. Nevýhodou modelů lneárních v parametrech je problematcká aproxmace složtějších závslostí a ctlvost vůč prvkům, které jsou např. vnou chyby měření výrazně vzdáleny od prvků ostatních (ang. outlers). Pokud je použta lnearzace složtější závslost, je třeba brát zřetel na nterval, ve kterém toto zjednodušení platí; závslost nelze extrapolovat.
Strojové učení 7 nelneární MNČ váhová MNČ absolutní chyba pásmo nectlvost ε polynomcké varanty V mnoha případech není lnearzovaná aproxmace řešení dostatečně přesná nebo vůbec možná a je použt nelneární model. K hledání optmálních hodnot parametrů takových modelů se používá nelneární MNČ. Hlavní myšlenka výpočtu chyby zůstává stále stejná. Ke stanovení hodnot neznámých parametrů modelu je však třeba použít numercké terační metody (optmalzační algortmus), s jejchž použtím souvsí řada komplkací (volba samotné terační metody, uvíznutí v lokálním extrému, závslost nalezeného řešení na počátečních odhadech parametrů, ). V určtých případech může mít stejná odchylka př odlšné vstupní hodnotě různou váhu. Příkladem je např. stude vztahu mez předpokládanou a skutečnou cenou stavebního projektu. Stejná odchylka v malém projektu má odlšnou váhu než v projektu rozsáhlém. Typckou ukázkou je také rozdílný rozptyl chyby měření př jednotném rozsahu a různě velkým naměřeným hodnotam. Ukázkou upravené chybové funkce je následující vztah: Err = N ( y f ( x )) =,b (.3) x Váhovou MNČ lze použít v lneárních nelneárních modelech, jde pouze o modfkac chybové funkce. Místo kvadrátu odchylky požadované hodnoty lze použít absolutní vzdálenost měřené velčny od hodnoty funkce modelu. Takovou odchylku však nelze chápat jako spojtou dferencovatelnou velčnu. Výhodou je, že její hodnota roste proporcálně s chybou (na rozdíl od MNČ). Další varantou chybové funkce založené na absolutní hodnotě je její rozšíření o pásmo nectlvost ε. Smyslem je, že chyba v určtém malém okolí ε nebude penalzována. Nechť y =(y -f(x,b)). Vztah pro chybovou funkc pak vypadá následovně: ( x, y, f ( x, )) max( y ε,0) Err b (.4) = Dalším krokem mmo rámec MNČ je zvýšení mocnny odchylky z kvadrátu na mocnnu vyššího řádu, popřípadě sloučení více různých metod pro výpočet chyby predkce. Jednou varantou je tzv. Huberova robustní chyba (.5), polynomcká chyba (.6) nebo po částech polynomcká chybová funkce (.7): Err Err Err ( x, y, f ( x, )) ( x y, f ( x, )) y, pokud y σ b = σ (.5) σ y, jnak d, b = y (.6) d ( x, y, f ( x, )) d y, pokud y σ d b = dσ (.7) d y σ, jnak d Uvedené vztahy lze dále rozšířt např. o pásmo nectlvost a získat tak další různé chybové funkce. Jejch uplatnění však souvsí spíše se specfckým
8 FEKT Vysokého učení technckého v Brně problémy. Z metod popsaných v této podkaptole nachází v prax největší uplatnění lneární a nelneární MNČ.. Maxmální věrohodnost pravděpodobnost L -věrohodnost věrohodnost vs. pravděpodobnost MLE - odhad maxmální věrohodnost věrohodnost v alternatvním rozložení věrohodnost v obecném Pravděpodobnost je šance, že nastane určtá událost (č množna událostí) vyjádřená lneárně v ntervalu od 0 (událost nenastane) do (událost nastane). Př výpočtu pravděpodobnost můžeme vyjít ze znalost základního souboru nebo expermentu. Na jeho základě jsme schopn vyjádřt, s jakou pravděpodobností nastane konkrétní výběrový soubor. Věrohodnost je hypotetcká pravděpodobnost, že událost, která jž nastala, je následkem specfckého procesu. Podstatou je, že známe výběrový soubor a na jeho základě vyjadřujeme, s jakou pravděpodobností tento výběr nastal za předpokladu zvoleného základního souboru. Základním rozdílem mez věrohodností a pravděpodobností spočívá v tom, že pravděpodobnost se vztahuje k budoucím událostem, zatímco věrohodnost k událostem mnulým se známým výstupy. Pravděpodobnost lze vyjádřt jako P(X p); pravděpodobnost X závsí na parametrech p modelu (základního souboru). Věrohodnost oprot tomu vyjadřuje opačný vztah p a X: L(p X). Rozdíl spočívá v tom, že pokud ze známého základního souboru vypočteme pravděpodobnost všech možných výběrů, jejch součet bude roven. Pravděpodobnost nastolení konkrétní událost je absolutní. V tomto smyslu však nelze chápat věrohodnost. Její hodnota vyjadřuje pravděpodobnost nastolení konkrétního výběru za předpokladu nám zvoleného základního souboru. Hypotetckých základních souborů však lze vymyslet nekonečně mnoho, takže konkrétní hodnotu věrohodnost je třeba chápat podmíněně, nkolv absolutně. Vhodná volba základního souboru na základě maxmalzace věrohodnost je podstatou použtí věrohodnost jako chybové funkce. Odhad maxmální věrohodnost (MLE maxmum lkelhood estmator) je obecná technka sloužící k určení parametrů modelu a vyjádření statstckých vztahů v různých, zvláště nestandardních stuacích. Protože věrohodnost celého výběru se vyjadřuje součnem pravděpodobností nastolení sledované událost u dílčích prvků výběru př daném základním souboru, jsou hledaným parametry právě tyto pravděpodobnost. Mějme množnu výběru y={,0, }, kde znamená nastolení sledované událost A, 0 pak její nenastolení. Dále označme N počet prvků výběru a P pravděpodobnost nastolení událost A. Cílem je stanovt věrohodnost L př zvoleném P. Její hodnotu vypočteme z následujícího vztahu: L = N = P y ( P) y (.8) V obecném případě je pravděpodobnost P nahrazena pravděpodobnostní funkcí f p, jejíž hodnota v daném bodě x vyjadřuje pravděpodobnost nastolení
Strojové učení 9 případě parametrzace funkce f p maxmální věrohodnost a její odhad využtí maxmální věrohodnost entrope událost A. Typcký je výpočet věrohodnost hypotézy, že velčna x je daného rozložení (pro konkrétní parametry) nebo že vztah velčn x a y popsuje určtá funkce za předpokladu známého rozložení chyby měření těchto velčn. V takových případech odpovídá funkce f p funkc hustoty použtého rozložení. Funkce f p může také v bnárních klasfkátorech vyjadřovat pravděpodobnost, se kterou velčna x v konkrétní hodnotě x 0 náleží do třídy 0 nebo (logtový model). Vztah pro výpočet věrohodnost vypadá následovně: L = N = f p [ ] y ( x ) f ( x ) y p (.9) S rostoucím N se hodnota L zmenšuje. Z důvodu lepší srozumtelnost se pracuje s logartmem součnu pravděpodobností. Dále řekněme, že funkce f p má p neznámých parametrů b={b,,b p }. Věrohodnost funkce f p v konkrétních parametrech b pak vyjadřuje rovnce: L = N = y N ( f ( x )) + ( y ) log f ( x ) p = ( ) log (.0) ML je taková hodnota L(b), která je největší dosažtelná ze všech kombnací parametrů vektoru b funkce f p. MLE je proces vedoucí k nalezení ML. Analytcký MLE pro běžná rozložení vychází ze znalost první a druhé dervace L. Numercký MLE slouží pro řešení složtějších a vícerozměrných závslostí. Hledání optmálních parametrů b je v takovém případě proces terační založený na tral-and-error numerckých algortmech (nejčastěj Newton-Raphsonova metoda). Věrohodnost se využívá k ověřování hypotéz, porovnávání různých modelů, kvantfkování míry nformace atd. V řadě těchto aplkací bývá využívána poměrná věrohodnost (lkelhood rato). Hlavní deou je skutečnost, že rozdíl logartmů věrohodností dvou modelů vynásobený má pro dostatečně velké vzorky dat přblžně χ rozložení. Stupeň volnost odpovídá počtu určených parametrů za předpokladu, že nulová hypotéza H 0 nemá žádné neznámé parametry. Pro χ pak platí následující vztah: ( L př H / L př H ) = [ log( L ) log( )] χ = LR = log 0 0 L (.) Shanonova entrope je používána jako chybová funkce pro kvaltatvní výstupní data např. v některých algortmech sloužících k vytváření rozhodovacích stromů (ID3). Máme-l soubor záznamů o N prvcích, každý záznam lze klasfkovat do právě jedné třídy G,, G c a pravděpodobnost klasfkace do každé ze tříd označíme p(g ),, p(g c ), pro výpočet entrope platí: p c H = p = ( G ) p( G ) log (.) c Vzhledem k tomu, že v případě klasfkace je p(g ) vypočteno jako podíl počtu záznamů N náležejících do třídy G ku všem záznamům N, odpovídá uvedený vztah věrohodnost L podělené konstantou, tedy počtem všech záznamů, jak je z následujícího vztahu: c c N N H = log c = N log N N N = = c N N = L N (.3)
0 FEKT Vysokého učení technckého v Brně.3 MNČ vs. MLE příklad.: lneární model Na následujících dvou grafech je deologcké schéma výpočtu hodnotící funkce lneárního modelu pomocí MNČ a ML. 5 4 3 y (x;y) y (x;y) y y3 (x3;y3) y = x/ y4 (x4;y4) 0 0 4 6 8 0 x Obr..: Odchylky reálných dat od modelu y 3 MNČ Err L L4 L 0 ML L3-3 - - 0 3 y Obr..: Transformace y podle MNČ a ML Model je vyjádřen funkcí y=x/. Pro 4 body je vyznačena jejch vzdálenost y od předpokládané hodnoty. Tato hodnota je v dalším grafu transformována do hodnot L a Err. V případě MNČ se s rostoucím y hodnota Err zvětšuje, proto je označována jako chyba; cílem je mnmalzovat její hodnotu. Naopak u ML se s rostoucí absolutní hodnotou odchylky L zmenšuje. Je označováno jako věrohodnost a cílem je jeho maxmalzace. Optmum nalezené na základě ML za předpokladu normálního rozložení chyby je nezávslé na zvoleném σ (pokud má chyba u všech naměřených hodnot stejný rozptyl). Oba postupy (MNČ ML) vedou v takovém případě ke stejnému řešení. Pro výpočet hodnotící funkce platí následující vztahy: L MNČ mnmalzace chyby Err = Err (.4) y ML maxmalzace věrohodnost L ( y ) L = h (.5) kde h( y ) je funkce hustoty normálního rozložení N( f(x ),σ ).
Strojové učení příklad.: logtový model Na následujících dvou grafech je deologcké schéma výpočtu hodnotící funkce logtového modelu pomocí MNČ a ML. 0,8 y(mnč) (x;y) y=/(+exp(-x)) 0,6 f(x) 0,4 y(ml) 0, y(ml) y(mnč) 0 (x;y) -6-4 - 0 x 4 6 Obr..3: Odchylky reálných dat od modelu y Err L 0,8 0,6 0,4 ML L(ML) MNČ 0, 0 L(MNČ) L(MNČ) L(ML) 0 0, 0,4 0,6 0,8 y Obr..4: Transformace y podle MNČ a ML Model je vyjádřen logstckou funkcí y=f(x)=/[+exp(-x)]. V logtovém modelu se však hodnota y pro jednotlvé hodnotící funkce lší. MNČ se vypočítá stejně jako v předešlém příkladě. Př použtí ML je f(x) chápána jako pravděpodobnostní funkce, f(x )=Pr{y= x=x }. Pokud př daném x platí, že y =, pak pravděpodobnost této událost vyjadřuje skutečná hodnota f(x ). Pokud se y =0, pak se pravděpodobnost nastolení této událost rovná -f(x ). Pro hodnoty odchylky tedy platí, že y(ml)=- y(mnč). Výpočet hodnotící funkce vyjadřují následující rovnce: MNČ mnmalzace chyby Err Err = = y = [ f ( x ) y ] (.6) ML maxmalzace věrohodnost L L = = = ( y ) y = y [ f ( x )( ) ] y y f ( x ) ( f ( x )) = [ ] (.7)
FEKT Vysokého učení technckého v Brně společné vlastnost MNČ a MLE rozdíly mez MNČ a MLE Základní společnou vlastností obou uvedených metod je skutečnost, že vycházejí z transformace stejné vstupní nformace dference mez predkovanou a skutečnou hodnotou. Lze tedy vypočíst ohodnocení modelu pro jednotlvý prvek a celková chyba je tvořena souhrnem chyb dílčích. Mějme ohodnocení modelu na základě dvou lbovolných prvků tvořených uspořádanou dvojcí (x;y). Ordnální relace mez těmto ohodnocením bude stejná pro obě uvedené metody. V mnoha případech vedou obě metody ke stejnému řešení. Základní rozdíl mez uvedeným přístupy spočívá v typu transformační funkce, způsobu výpočtu souhrnné chyby modelu a nformac obsažené v celkové chybě modelu. Transformace vstupní dference y je v případě MNČ funkce rostoucí, v případě MLE funkce klesající. Zatímco u MNČ je funkce označována za chybu a je mnmalzována, v případě MLE se hovoří o věrohodnost a její velkost je maxmalzována. Souhrnná chyba je u MNČ získána součtem všech dílčích chyb, u MLE je použt součn jednotlvých věrohodností. Z toho také vyplývá, že u MLE má význam absolutní hodnota chyby, která vyjadřuje podmíněnou pravděpodobnost za předpokladu předem zvoleného typu rozložení chyby..4 Další typy a modfkace chybových funkcí chyba klasfkátoru regresní klasfkátor, model a bnární kódování Chybu klasfkace lze posoudt jednoduše následující funkcí (obr..5) představující bnární chybu klasfkátoru: Err ( x, y, f ( x, )) 0, y = f ( x, b) b = (.8), jnak Tato funkce však nemá schopnost rozlšovat mez typem chyby a její závažností (odlšt různé typy chyb). Lze provést následující rozšíření: Err ( x, y, f ( x, )) 0, y = f ( x, b) b = ~ (.9) Err( x ), jnak Uvedený přístup není stále pro regresní klasfkátory dostačující. Problémem je slučování kvaltatvní klasfkace s kvanttatvní regresí. Rozdílný přístup mez těmto dvěma regresním typy modelů je vysvětlen v následujícím odstavc. U regresního modelu je aprorně předpokládáno, že jeho výstup bude kvanttatvní velčna. Proto je taky typckým vstupem jeho chybové funkce rozdíl mez požadovanou a predkovanou hodnotou, y =y -f(x ). Smyslem regresního klasfkátoru je klasfkace, často bnární. Př použtí tradčních parametrckých modelů je předem dána krtcká hodnota, jejíž překročení výstupem regresního modelu určuje změnu klasfkace. Pokud jsou výstupní třídy nahrazeny prvky z množny {0;}, je předpokládána krtcká hodnota 0,5 (logtový model). Pokud jsou bnární výstupy nahrazeny prvky z množny {-;}, odpovídá krtcká hodnota číslu 0 a jako klasfkátor slouží funkce sgn(y ). V takovém případě je jako vstup chybové funkce používán místo y součn y.f(x ). Má tu vlastnost, že nabývá kladné hodnoty, pokud jsou
Strojové učení 3 lneární a kvadratcká chybová funkce logstcká chybová funkce znaménka funkce sgn(f(x )) a požadovaného bnárního výstupu y z množny {-;} stejná. Tak lze odlšt chybnou a správnou klasfkac regresního klasfkátoru na základě znaménka uvedeného součnu. Následující dvě chybové funkce jsou určené pro regresní klasfkac do tříd {-;}. Jedná se o tzv. soft margn chybové funkce [43], přčemž první z nch je lneární Err ( x y, f ( x, )) = max( 0, y f ( x )), b (.0) a druhá kvadratcká (obdoba MNČ). Err ( x y, f ( x, )) = max( 0, y f ( x )), b (.) Jejch průběh v závslost na y.f(x ) je patrný z grafu na obr..5. Další varantou chybové funkce pro regresní klasfkátory je tzv. logstcká chyba (obr..5), která vychází ze statstcky odvozené chybové funkce ML. Popsuje j následující vztah Err ( x y, f ( x, )) = ln( + exp( y f ( x ))), b (.) Jejím dalším rozšířením je např. tzv. log-log funkce (obr..5): Err ( x y, f ( x, )) = exp( exp( y f ( x ))), b (.3) průběhy různých chybových funkcí Průběh výše popsaných chybových funkcí, jejchž vstupní hodnotou je součn y.f(x ), znázorňuje graf na obr..5. 8 Err 7 6 5 4 lneární kvadratcká logstcká bnární 3 0-3 - - 0 y.f(x) Obr..5: Různé chybové funkce pro regresní klasfkátor
4 FEKT Vysokého učení technckého v Brně robustní chybové funkce Robustností je obecně rozuměna nectlvost vůč malé odchylce od dealzovaných předpokladů. Z toho vyplývá, že robustní chybovou funkcí je např. varanta MNČ s pásmem nectlvost ε (vz. kaptola..). Obecně se robustní metody dělí do tří skupn. První vychází z maxmální věrohodnost (Mestmate), druhá používá lneárních kombnací pořadových statstk jako je např. medán (L-estmate) a poslední je založena na použtí pořadových testů jako jsou neparametrcké korelace a regresní koefcenty (R-estmate)..5 Chybová funkce v klasfkátorech chybná klasfkace nákladová matce bnární klasfkace Velčna kvaltatvní nemá defnovány operace sčítání a odečítání. Není tedy možné na základě hodnot G a Ĝ vypočítat přímo odchylku G. Jednoduše by bylo možné nahradt chybnou klasfkac např. hodnotou, správnou 0. Tato myšlenka je dobrá, jejím rozvnutím jsou tzv. nákladové matce. Nákladová matce je výstžně charakterzována jž svým názvem. Nese nformac o nákladech spojených s chybnou klasfkací. Odlšením závažnost chyby lze pak ovlvnt to, jak bude vytvářený model naučen. Číselné ohodnocení závažnost chyby však nemusí být trvální problém. Je zpravdla podmíněno znalostí modelované problematky, k jejímu stanovení může být nutné provést analýzu výstupní velčny. Častým typem úloh je bnární (dchotomní) klasfkace. Jde o rozhodování typu muž/žena, ano/ne atd. Z pohledu statstky (testování hypotéz) rozlšujeme chybu I. a II. druhu. Chyba I. druhu (též chyba α) spočívá v mylném zamítnutí nulové hypotézy (a přjetí alternatvní hypotézy), chyba II. druhu je nezamítnutí chybné nulové hypotézy (tab..). Závažnost těchto dvou chyb se může zásadním způsobem lšt. Např. nulová hypotéza H 0 pacent nemá akutní zánět slepého střeva je v případě chyby. druhu (H 0 platí, avšak my tuto hypotézu zamítl) ve svých důsledcích méně závažná než v případě chyby. druhu (kdy s chybnou hypotézu nezamítneme pacent zánět má). Pro představu významu těchto nformací s zopakujme, že místo termínu hypotéza, který je používán ve statstce, SU používá termín jný model. Tabulka.: Chyba. a. druhu H 0 nezamítnuta H 0 zamítnuta H 0 platí správné rozhodnutí (p -α) chyba. druhu (p α) H 0 neplatí chyba. druhu (p=β) správné rozhodnutí (p=-β) Pokud by tedy na základě uvedených znalostí měla být vytvořena nákladová matce, skutečnost větší závažnost chyby. druhu by se v ní měla projevt, jak je patrno z tabulky..
Strojové učení 5 Tabulka.: Ilustratvní nákladová matce Predkce: 0 nemá zánět s.s. Predkce: má zánět s.s. Skutečnost: 0 nemá zánět s.s. Skutečnost: má zánět s.s. 0 5 0 vícerozměrná klasfkace regresní klasfkátory Máme-l tedy dagnostcký model, jehož výstup je roven 0 v případě, že se nejedná o zánět slepého střeva, a v případě opačném je roven, bude př učení záměna 0 za 5-krát závažnějším pochybením než pochybení obrácené. Stanovení konkrétních hodnot (čísla a 5 jsou pouze pro názornost) může být obtížným úkolem, závsí m.j. na konečných požadavcích na model (poměr senztvty, specfcty a poztvní predktvní hodnoty). Podrobnější přehled o této problematce v kontextu ROC analýzy je obsažen v Appendxu. Nákladová matce pro vícerozměrnou analýzu má rozměry odpovídající počtu tříd, do kterých je klasfkováno. V SU se lze setkat s přístupem, že nulová hypotéza je příslušnost do jedné třídy, alternatvní hypotéza je příslušnost do lbovolné jné. Tak je problém klasfkace do k tříd rozdělen na k možných případů. Každý model se vyjadřuje k možnost příslušnost prvku do jedné ze tříd, nejvěrohodnější hypotéza je pak vítězná a určuje výstupní hodnotu modelu. Regresní klasfkátory jsou pro SU typcké (neuronové sítě, podpůrné vektory,...). Třídy jsou nahrazeny čísly, kvaltatvní velčna je akceptována jako kvanttatvní. Regresní model je nastaven pomocí MNČ nebo ML. Až na základě vznklého regresního modelu jsou defnovány pomocí krtckých hodnot nebo jného krtéra pravdla, na jejchž základě se výstup regresního modelu převádí zpátky na třídy, které jsou skutečným výstupem modelu. V převodu z kvaltatvní velčny na kvanttatvní však může dojít ke změně nformace v datech, respektve k jejím neoprávněnému přdání. Z toho důvodu je jako zpětná nformace o skutečné přesnost modelu používána např. ROC analýza..6 Souhrn Chybová funkce je uspořádaná trojce (x,y,f(x)), přčemž její hodnota kvantfkuje míru odlšnost mez požadovaným výstupem y a výstupem z modelu f(x)=ŷ. Chybové funkce se dělí podle typu výstupní velčny. Pokud je y kvanttatvní, používá se metoda nejmenších čtverců nebo maxmální věrohodnost včetně celé řady jejch varant. Dalším typy chybový funkcí jsou např. logstcká nebo bnární chybová funkce. U kvaltatvních výstupních velčn se používají nákladové matce nebo např. entrope.
6 FEKT Vysokého učení technckého v Brně Kontrolní otázky a úlohy. Defnuj chybovou funkc. Funkce L:X Y Y 0; ), pro kterou platí, že pro x X a y Y je L(x,y,y)=0, je označována jako chybová funkce.. Uveď hlavní výhody a nevýhody modelů lneárních v parametrech z pohledu stanovení extrému funkce. Hlavní předností modelů lneárních v parametrech je skutečnost, že pro nalezení optmálních hodnot jejch parametrů zpravdla exstují známá analytcká řešení. Nevýhodou modelů lneárních v parametrech je problematcká aproxmace složtějších závslostí a ctlvost vůč prvkům, které jsou např. vnou chyby měření výrazně vzdáleny od prvků ostatních (ang. outlers). Pokud je použta lnearzace složtější závslost, je třeba brát zřetel na nterval, ve kterém toto zjednodušení platí; závslost nelze extrapolovat. 3. Jaké znáte chybové funkce? lneární, nelneární, váhová, robustní (s pásmem nectlvost), polynomcké, logtové, bnomcké, entrop, věrohodnost 4. Jaký je rozdíl mez věrohodností a pravděpodobností? Pravděpodobnost lze vyjádřt jako P(X p); pravděpodobnost X závsí na parametrech p modelu (základního souboru). Věrohodnost oprot tomu vyjadřuje opačný vztah p a X: L(p X). Rozdíl tedy spočívá v tom, že pokud ze známého základního souboru vypočteme pravděpodobnost všech možných výběrů, jejch součet bude roven. Pravděpodobnost nastolení konkrétní událost je absolutní. Věrohodnost vyjadřuje pravděpodobnost nastolení konkrétního výběru za předpokladu zvoleného základního souboru. Hypotetckých základních souborů však lze vymyslet nekonečně mnoho, takže konkrétní hodnotu věrohodnost je třeba chápat podmíněně, nkolv absolutně. 5. Jaké jsou společné vlastnost a rozdíly mez MNČ a MLE? Společnou vlastností je fakt, že vycházejí z transformace stejné vstupní nformace dference mez predkovanou a skutečnou hodnotou. Rozdíly mez uvedeným přístupy spočívají v typu transformační funkce, způsobu výpočtu souhrnné chyby modelu a nformac obsažené v celkové chybě modelu. 6. Co rozumíme robustností u chybové funkce? Robustností je obecně rozuměna nectlvost vůč malé odchylce od dealzovaných předpokladů. 7. Co je to nákladová matce? Nákladová matce nese nformac o nákladech (ztrátách) spojených s chybnou klasfkací. 8. Co je to dchotomní klasfkace? Bnární, tedy dvouhodnotová klasfkace. Lteratura: [] Bradley A.P.: The Use of the Area under the ROC Curve n the Evaluaton of Machne Learnng Algorthms. Pattern Recognton, 30(7): pp. 45-59, 997.
Strojové učení 7 [] Corets C., Mohr M.: AUC Optmzaton vs. Error Rate Mnmzaton. Advances n neural nformaton processng systems 6. 004, Cambrdge MA: MIT Press. [3] FARRAGI, D., REISER, B.: Estmaton of the area under the ROC curve. Statstcs n Medcne. 00, :3093-306. [4] Feldng A.H., Bell J.F.: A revew of methods for the assessment of predcton errors n conservaton presence/absence models. Foundaton for Envronmental Conservaton. 997, pp. 38-49. [5] FRANK, E., HARRELL, J. Regresson Modelng Strateges. NY: Sprnger, 00. 568 pages. ISBN 0-387-953-. [6] Haste T., Tbshran R., Fredman J.: The Elements of Statstcal Learnng. Sprnger, 00. ISBN 0-387-9584-5. [7] HONZÍK, P. Area under the ROC Curve by Bubble-Sort Approach (BSA) In Automatc Control, Modelng and Smulaton (ACMOS'05). 7th WSEAS Internatonal Conference on AUTOMATIC CONTROL, MODELING AND SIMULATION (ACMOS '05). Praha: WSEAS, 005, s. 494-499, ISBN 960-8457- - [8] Huber, P.J. 98, Robust Statstcs (New York: Wley). [9] Zapletal, J.: Základy počtu pravděpodobnost a matematcké statstky. VUT Brno, PC-DIR s.r.o., 995. ISBN 80-4-07-5.
8 FEKT Vysokého učení technckého v Brně 3 Genetcké algortmy Cíle kaptoly: Genetcké algortmy (GA) jsou slným nástrojem pro modelování složtých vícerozměrných nelneárních systémů. Po stručném úvodu o hstor GA následuje část věnovaná základní termnolog a prncpům, na kterých jsou GA založeny. Dále jsou rozebrány jednotlvé operátory a jejch používané varanty. Kaptola je zakončena přehledem základních parametrů GA, doporučením jejch nastavení a uvedením příkladů z praxe. 3. Úvod Genetcké algortmy (GA) jsou součástí evolučního počítání, které spadá do oboru umělé ntelgence. Vycházejí z genetky a jsou nsprovány Darwnovou teorí o evolučním vývoj. Idea evolučního počítání byla představena v roce 960 I. Rechenbergem. Zrod GA je datován do roku 975 a je spojen se jménem John Holland. Tento amercký teoretcký bolog se zaměřl ve svém výzkumu na nalezení formální teore adaptace. Vycházel mj. z knhy R.A.Fshera: The Genetc Theory of Natural Selecton. V ní se mluví o tom, že evoluce, podobně jako učení, je formou adaptace na prostředí. Rozdíl je v tom, že působí v průběhu generací a ne v rámc jednoho žvota. John Holland vydává roku 975 knhu Adaptaton n Natural and Artfcal Systems, ve které shrnuje svůj dlouholetý výzkum a snaží se odpovědět na původně jednoduchou otázku: Proč se navzájem lší jednc patřící ke stejnému žvočšnému druhu? Tato knha položla základ GA, které byly pozděj rozvíjeny a modfkovány. Významnou rol v tomto výzkumu hrál Hollandov student, které profesor zapojl do zkoumání detalů GA. Expermentoval s jejch parametry a snažl se standardzovat tvar algortmu. Prvním aplkacem jsou práce Hollandových studentů (například zjednodušená verze šachů nebo smulace funkcí jednobuněčného organsmu). Jedním z žáků Hollanda byl Davd Goldberg, který Hollandovu teor dopodrobna rozpracoval. Roku 989 vydává další klíčovou knhu Genetc Algotthms n Search, Optmalzaton and Machne Learnng. Goldberg se v této knze snaží obhájt GA jako technku obecně aplkovatelnou na šrokou třídu úloh. Publkace věnované GA dodnes vychází z Goldbergových výsledků a opírají se o ně. Ke konc 70. let došlo k velkému rozvoj klascké umělé ntelgence, která svým úspěchem GA zcela zastínla. V 80.letech opět vrostl zájem o GA především díky pracím Davda Goldberga a dalších. Rozšířla se dea o jejch všemohoucnost. V 90. letech došlo k vystřízlvění. Efektvta GA není vždycky tak velká, jak se předpokládalo. Řada vědců se dodnes snaží GA různě modfkovat a vylepšt, aby se problémy vyřešly. Tvůrcem významných modfkací je Zbgnew Mchalewcz, autor knhy Genetc Algorthms + Data Structures = Evoluton Programs (996)).