1
Obsah přednášy 1. Principy Meta-learningu 2. Bumping 3. Bagging 4. Stacing 5. Boosting 6. Shrnutí 2
Meta learning = Ensemble methods Cíl použít predici ombinaci více různých modelů Meta learning (meta učení) ombinování více modelů metaznalost znalost o znalosti Záladní parametry (co musíme určit?) ja použijeme (rozdělíme) trénovací data jaé typy modelů ombinujeme ja ve výsledu lasifiujeme? Co je cílem meta-learningu? 3
Bumping cesta meta-learningu metoda využívající pouze jeden model, terý je ale vybraný z více modelů naučených na jedněch trénovacích datech z trénovacích dat o N prvcích je vytvořeno M trénovacích množin náhodným výběrem s opaováním o N prvcích (metoda bootstrap) použití poud je málo dat chyba modelu je spočtena ze všech trénovacích dat a na jejím záladě jsou vybrány nejlepší parametry modelu b z M vytvořených modelů b... b výsledy na nových testovacích datech doládají, že tento způsob vede výběru lepšího modelu než při výpočtu ze všech trénovacích dat (zejména robustní vůči uvíznutí v loálních extrémech) b arg min b N i j 1 M 1 LF y, i f b j, x i 4
Bagging idea Bagging = bootstrap aggregating Vytvořím z trénovacích dat M množin metodou bootstrap tedy výběr s opaováním Z dat naučím M modelů stejného typu (např. rozhodovacích stromů) Při lasifiaci nechám M modelů hlasovat o onečné predici, všechny modely jsou si rovnocené (mají stejnou váhu) vede e zpřesnění (a stabilizaci) predice, zhoršení pozorována jen ve výjimečných případech princip metody založen na teorii bias-variance deompozice 5
Bagging tvorba modelu máme N trénovacích dat, vybereme z nich náhodně výběrem s opaováním N instancí jao v metodě bootsrap pravděpodobnost výběru jednoho příladu je 1/N při výběru N prvů je pravděpodobnost, že jeden onrétní nebude ve výběru N 1 N N N 1 0,368 e teoreticy po výběru N prvů zbude 0,368.N prvů na testování Tento postup zopaujeme M-rát, poaždé jinou N-tici prvů, taže modely nebudeme trénovat na stejných datech Učení modelu pa vypadá ta, že vždy vybereme náhodně s opaováním N prvů, naučíme model a uložíme jeho nastavení. Máme ta na onci M různě nastavených modelů stejného typu. 6
Bagging - predice máme novou instanci x pro aždý z M modelů urči třídu, do teré má být prve lasifiován vrať třídu, terá byla nejčastěji prediována, dílčí modely jsou tedy rovnocené (C je počet tříd) G bagging x i1... C x v případě regrese vrať průměrnou výstupní hodnotu f bagging x arg max 1 M M j1 M j1 f j f j x? Popiš princip a vlastnosti baggingu (v čem spočívá diverzifiace) 7
Bagging vlastnosti, použití použití v případě nedostatu dat zvyšuje stabilitu a přesnost (snižuje varianci a rizio přeučení) typicá apliace na nestabilní modely (např. rozhodovací stromy, NN) předností RS je jejich interpretovatelnost, terá se vša použitím baggingu ztrácí nepoužívá se na lineární (velý bias, silná generalizace) a robustní (IBL) modely nemá efet existuje i váhová varianta MetaCost (poud výstupy modelu mají pravděpodobnostní charater Bayes, NN) 8
Stacing záladní rysy učíme model, terý ombinuje libovolné typy modelů nižší úrovně na vyšší úrovni učíme zpravidla jednoduchý (např. lineární) model je výhodné, dyž model nižší úrovně romě predice udává taé míru důvěryhodnosti své predice (logitový model, NN, Bayes, ) trénovacích data určena výběrem typu Cross-Valiadation, což je výpočetně náročné variantou je označení dílčích modelů váhou w i, terou je násobena predice aždého modelu nižší úrovně modely nižší úrovně, úroveň 0, jsou učeny vždy na záladě stejné množiny trénovacích dat, jejich predicí na testovacích datech zísáme vstupní hodnoty do modelu úrovně 1 (metalearner). Jeho strutura je jednoduchá (lineární, RS). Počet vstupů do meta-modelu odpovídá počtu modelů úrovně 0, nebo jeho násobu počtem tříd (dyž je výstupem nižšího modelů pravděpodobnost lasifiace do aždé ze tříd) V čem spočívá diverzifiace stacingu? 9
Stacing varianta s výpočtem vah cílem je nastavit váhy w i pro M modelů f i nižší úrovně ta, aby byla minimalizována chyba LF od požadovaného výsledu test představuje množinu testovacích dat. Zápis f -t znamená model nastavený na záladě trénovacích dat (bez t testovacích), x +t testovací data, test počet dělení pomocí Cross-Validation w arg min w test LF y t M t1 j1, w j f t j x t ideálně jsou váhy nastaveny ta, aby jejich součet byl roven 1 10
Boosting idea nejpoužívanější metoda meta-learningu smyslem je vytvoření více modelů stejného typu, jejichž přesnost stačí lepší než náhodná, tzv. wea learner (více než 50% úspěšně lasifiovaných prvů) princip diverzifiace metody spočívá v tom, že jsou postupně vytvářeny modely více specializované na trénovací data, terá model předešlý lasifioval chybně různé algoritmy se liší způsobem, jaým zvyšují význam trénovacích dat, terá nebyla v předešlých modelech rozpoznána předpolad je, že více jednoduchých modelů poryje přesněji prostor možných řešení V čem spočívá diverzifiace boostingu? 11
Boosting bez váhy (ostraňuje data) původní idea nepoužívá vah, jedinou diverzifiací je cílený výběr trénovacích prvů podle úspěšnosti lasifiace předešlých modelů na první model je použito např. N/3 dat výběrem bez opaování, z nich nastaven první model f 1 s přesností lepší než 50% další model f 2 je nastaven z dat, terá model f 1 lasifiuje chybně a z dalších dosud nepoužitých dat ta lze poračovat do vyčerpání trénovací množiny lasifiace pa probíhá jao hlasování naučených modelů není jasně definováno, jaým způsobem jsou data vybírána, respetive není důaz o tom, jaý způsob je nejlepší (výběry jsou vša vždy bez opaování) 12
Boosting bez váhy přílad 13
Boosting s váhou (aždý prve má váhu) tato verze počítá s váhami jednotlivých záznamů model je vždy trénován na všechna trénovací data, avša chybu lasifiace jednoho prvu ovlivňuje jeho váha (poud ho předešlé modely vždy poznaly, má na chybu menší vliv) obecně se tento postup stále více specializuje na problémové prvy a vede větší chybě dílčího modelu (nově vytvořeného) dále je aždému vytvořenému modelu na záladě jeho přesnosti přidělena váha modelu, terá určuje jeho vliv na onečnou lasifiaci modifiací je výběr nových trénovacích prvů s opaováním podle jejich pravděpodobnosti odvozené z veliosti váhy w 14
Boosting celová chyba modelu s přibývajícím počtem modelů se jejich dílčí chyba zvětšuje (zelená), ale celová chyba ja na trénovacích (černá) ta na testovacích datech se zmenšuje? Proč se u Boostingu s rostoucí iterací dílčí trénovací chyba modelů zhoršuje 15
AdaBoost princip AdaBoost významný boostingový algoritmus dáno N záznamů x,y váha aždého prvu W 1 (i)=1/n, de i=1..n opauj -rát nauč model C z dat s ohledem na váhy W (i) z chyby E modelu C vypočti váhu modelu vytvoř W +1 ta, že zvětšena váha chybně lasifiovaných, oslabena dobře lasifiovaných záznamů vytvořen lasifiátor tvořený modely? popište princip algoritmu AdaBoost 16
Boosting záladní algoritmus (binární lasifiace) Algoritmus učení nastav stejné váhy všem N prvům, =1 (index iterace), opauj: nauč model s ohledem na váhy W prvů vypočti chybu modelu E na všech trénovacích datech E N i1 W i LFy, C ( x ) i onec dyž E =0 nebo E >=0,5 (horší než náhodný) přepočti W všech prvů a spočti pro tento model, =+1 W 1 i W i E 1 E 1 i chybná lasifiace správnálasifiace W 1 i W W 1 i i 1 E log 1 E 1 E log E? Vysytuje se v algoritmu boosting resubstituční chyba 17
AdaBoost omentáře algoritmu Poznáma Kódování tříd 1 / +1 Odhad chyby modelu protože se počítá přes trénovací data, jedná se o chybu resubstituční (byť je model učen na datech váhovaných) Váha dílčího lasifiátoru je váha lasifiátoru C Konečná lasifiace E N i1 W i LFy, C ( x ) i i G x sign M i1 C i i x 18
AdaBoost - vlastnosti AdaBoost reduuje trénovací chybu exponenciálně v závislosti na rostoucím počtu max v hlasující supině. poud aždý z lasifiátorů ve supině dává lepší výsledy než náhodné, váhové rozhodnutí celé supiny zaručuje poles chyby na trénovacích datech velmi často dochází podobnému polesu i na testovacích datech pozor, algoritmus je možné přeučit (odvíjí se zejména od přílišné složitosti dílčích modelů) Occamovo ostří identicá chyba boosting modelů, druhý vša z více modelů empiricy zjištěno, že je na testovacích datech přesnější; není v rozporu, viz. hranice (meze) u separace optimální nadrovinou respetive modely nejsou ve sutečnosti identicé 19
AdaBoost přílad binární lasifiace 10 vstupních veličin všechny mají normální rozložení 2.000 trénovacích 10.000 testovacích sledujeme chybu na testovacích datech (test error) 20
Hlavní charateristiy 1/2 Bagging trénovacích dat N, náhodným výběrem s opaováním M trénovacích množin, použití dyž máme málo dat a nestabilní preditor (RS, NN) M modelů stejného typu naučené z M trénovacích výběrů diverzifiace různými trénovacími množinami jednotlivé modely jsou rovnocené, rozhoduje nejčastější výslede (lasifiace) nebo průměr (regrese) Stacing použití dělení dat typu Cross-Validation modely různého typu naučené vždy ze stejných trénovacích dat diverzifiace různými algoritmy aždý model má svou váhu (míru důvěry ve svou predici) 21
Hlavní charateristiy 2/2 Boosting trénovací data váhována, posilování chybně prediovaných záznamů použití M modelů stejného typu diverzifiaci tvoří postupně se měnící váhy trénovacích dat v závislosti na tom, ja úspěšně jsou lasifiovány jednotlivými modely lasifiace probíhá na záladě hlasování jednotlivých modelů; je brána v potaz váha aždého modelu VIS charaterizuj hlavní rysy aždé z metod 22