Reprezentace klasifikátoru pomocí „diskriminant“ funkce
Diskriminant funkce nejčastěji se klasifikátor reprezentuje pomocí diskriminant funkce gi(x): klasifikátor přiřadí x do třídy ωi .... když gi(x) > gj(x) pro každé j≠i => klasifikátor je síť/stroj, který spočte c diskriminant funkcí a vybere třídu, která odpovídá největšímu diskriminantu
Bayesovský klasifikátor Bayesovský klasifikátor, který minimalizuje celkovou ztrátu: gi(x) = -li kde li = λki ∙ p(x|ωk) ∙ P(ωk) .... ztráta při klasifikaci x do ωi => maximum diskriminant funkce odpovídá minimu podmíněné ztráty Bayesovský klasifikátor, který minimalizuje pravď. chybné klasifikace: gi(x) = P(ωi|x) => maximum diskriminant funkce odpovídá maximu pravděpodobnosti P(ωi|x) c ∑ k=1
oblasti jsou odděleny rozhodovacími hranicemi Diskriminant funkce diskriminant funkce není jednoznačná můžeme vynásobit kladnou konstantou, posunout o konstantu, ... obecně: když nahradíme gi(x) za f(gi(x)), kde f je monotónní rostoucí funkce => výsledek klasifikace se nezmění => diskriminant funkce mohou být zapsány různě, ale rozhodovací pravidla jsou ekvivalentní: když gi(x) > gj(x) pro každé j≠i => x leží v Ri => x bude klasifikován do ωi oblasti jsou odděleny rozhodovacími hranicemi
Diskriminant funkce pro dvě třídy klasifikátor, který umístí vzor do jedné ze dvou tříd, je dichotomizér když g1(x) > g2(x) => x leží v R1 => x bude klasifikován do ω1 když g1(x) < g2(x) => x leží v R2 => x bude klasifikován do ω2 často se definuje jediná funkce g(x) = g1(x) - g2(x) když g(x) > 0 => x leží v R1 => x bude klasifikován do ω1 když g(x) < 0 => x leží v R2 => x bude klasifikován do ω2 => klasifikace jen podle znaménka diskriminant funkce pro minimalizaci pravď. chybné klasifikace se nejčastěji používají diskriminant funkce: g(x) = P(ω1|x) - P(ω2|x) g(x) = ln + ln p(x|ω1) p(x|ω2) P(ω1) P(ω2)
Gaussovo normální rozdělení mnoho jevů lze považovat za ideální vzory poničené velkým počtem náhodných procesů => Gaussovo normální rozdělení je častý model pro rozdělení pravděpodobností hustota spojitého normálného rozdělení: p(x) = 1/√2π σ2 ∙ exp(-1/2 (x-μ)2 / σ2) μ je očekávaná (střední) hodnota σ2 je očekávaná kvadratická odchylka (rozptyl) p(x) ~ N(μ, σ2)
Multi-normální rozdělení dimenze d hustota spojitého multi-normálního rozdělení p(x) ~ N(μ, Σ) x ... d-rozměrný sloupcový vektor μ ... d-rozměrný vektor středních hodnot Σ ... kovarianční matice velikosti d× d |Σ| ... determinant kovarianční matice Σ-1 ... inverzní matice ke kovarianční matici střední hodnota μ = E[x] = ∫ x ∙ p(x) dx kovarianční matice Σ = E[(x-μ)∙(x-μ)T] = ∫ (x-μ)∙(x-μ)T∙ p(x) dx
Diskriminant funkce pro normální rozdělení pro normální rozdělení se používá diskriminant funkce gi(x) = ln p(x|ωi) + ln P(ωi) podmíněné pravděpodobnosti mají multi-normální rozdělení p(x|ωi) ~ N(μi, Σi) nyní dosadíme za p(x|ωi) do gi(x): gi(x) = – 1/2 (x-μi)T ∙ Σi-1 ∙ (x-μi) – d/2 ∙ ln(2π) – 1/2 ∙ ln |Σi| + ln P(ωi) (*) nyní se na výraz (*) podíváme detailněji pro jednotlivé případy 1. Σi = σ2 ∙ I 2. Σi = Σ 3. Σi libovolná
1. případ: Σi = σ2 ∙ I co to znamená? geometricky: příznaky jsou statisticky nezávislé a všechny mají stejný rozptyl kovariační matice je diagonální a na diagonále jsou σ2 geometricky: vzory spadají do stejně velkých hypersférických shluků shluk pro třídu ωi je vycentrován okolo střední hodnoty μi => jak bude vypadat diskriminant funkce a klasifikátor? v tomto případě lze spočítat determinant a inverzní matici ke kovarianční matici: |Σi| = σ2d Σi-1 = (1/σ2 ) ∙ I po dosazení do vztahu (*) za |Σi| a Σi-1 dostaneme: gi(x) = – 1/(2σ2) ∙ (x-μi)T ∙ (x-μi) – d/2 ∙ ln(2π) – 1/2 ∙ ln (σ2d) + ln P(ωi)
1. případ – diskriminant funkce po dosazení do vztahu (*) za |Σi| a Σi-1 dostaneme: gi(x) = – 1/(2σ2) ∙ (x-μi)T ∙ (x-μi) – d/2 ∙ ln(2π) – 1/2 ∙ ln (σ2d) + ln P(ωi) zanedbáme konstanty: gi(x) = – 1/(2σ2) ∙ (x-μi)T ∙ (x-μi) + ln P(ωi) roznásobíme závorky: gi(x) = – 1/(2σ2) ∙ (xxT - 2μiTx + μiT μi) + ln P(ωi) po zanedbání konstanty dostaneme lineární funkci proměnné x: gi(x) = – 1/(2σ2) ∙ (-2μiTx + μiT μi) + ln P(ωi) gi(x) zapíšeme ve tvaru lineární funkce proměnné x: gi(x) = wiTx + wi0 wi = 1/σ2 ∙ μi wi0 = – 1/(2σ2) ∙ μiT μi + ln P(ωi) ... práh i-té třídy zanedbáme zanedbáme => dostaneme lineární stroj
1. případ - rozhodovací plochy rozhodovací plochy jsou části nadrovin definované rovnicemi: gi(x) = gj(x) rovnici můžeme napsat ve tvaru: wT (x – x0) = 0 w = μi – μj x0 = 1/2 (μi + μj) – (σ2 / ||μi – μj||2) ∙ ln ( P(ωi)/P(ωj) ) ∙ (μi – μj) poloha rozhodovacích nadrovin: nadroviny procházejí bodem x0 a jsou kolmé na w protože w = μi – μj => nadrovina oddělující Ri a Rj je kolmá na spojnici středních hodnot když P(ωi) = P(ωj) ... x0 je střed mezi středními hodnotami když P(ωi) ≠ P(ωj) ... x0 je posunut od více pravděpodobného shluku když σ2 je relativně malý v porovnání s ||μi – μj||2 ... hranice není příliš citlivá na přesné hodnoty apriorních pravděpodobností
1. případ - příklady P(ωi) = P(ωj) d=3 d=2
1. případ - příklady pokud se změní P(ωi) => posunou se hranice pro hodně odlišné pravď. P(ωi) nemusí ležet mezi spojnicí středních hodnot d = 1
1. případ - příklady pokud se změní P(ωi) => posunou se hranice pro hodně odlišné pravď. P(ωi) nemusí ležet mezi spojnicí středních hodnot d = 2
1. případ - příklady pokud se změní P(ωi) => posunou se hranice pro hodně odlišné pravď. P(ωi) nemusí ležet mezi spojnicí středních hodnot d = 3
Klasifikace podle minimální vzdálenosti uvažujme speciální případ, že P(ωi) jsou stejné => ve funkci (*) je člen ln P(ωi) aditivní konstanta ... zanedbáme => dostaneme gi(x)= – ||x – μj|| rozhodovací pravidlo je triviální: 1. předložíme vzor x 2. změříme Eukleidovskou vzdálenost ||x – μj|| pro každou střední hodnotu μj 3. vzor zařadíme do třídy s nejmenší vzdáleností => klasifikátor je založen na minimální vzdálenosti => každý vektor středních hodnot je považován za ideální prototyp pro vzory z jeho třídy (proces template-matching)
2. případ: Σi = Σ co to znamená? geometricky: kovarianční matice jsou pro všechny třídy stejné (ale libovolné) geometricky: vzory spadají do hyperelipsoidních shluků stejného tvaru a velikosti shluk pro třídu ωi má centrum v μi => jak bude v tomto případě vypadat diskriminant funkce a klasifikátor? |Σi| a d/2 ∙ ln(2π) nezávisí na i ... aditivní konstanty ... zanedbáme diskriminant funkce (*) má tvar: gi(x) = – 1/2 (x-μi)T ∙ Σ-1 ∙ (x-μi) + ln P(ωi)
Klasifikace podle Mahalanobisovy vzdálenosti uvažujme speciální případ, že P(ωi) jsou stejné => člen ln P(ωi) zanedbáme výsledné rozhodovací pravidlo: 1. předložíme vzor x 2. změříme Mahalanobisovu vzdálenost (x-μi)T ∙ Σ-1 ∙ (x-μi) 3. vzor zařadíme do třídy s nejmenší Mahalanobisovou vzdáleností
2. případ – rozhodovací plochy vrátíme se k diskriminant funkci gi(x): gi(x) = – 1/2 ∙ (x-μi)T ∙ Σ-1∙ (x-μi) + ln P(ωi) roznásobíme závorky a zanedbáme xT Σ-1x (nezávisí na i): gi(x) = wiTx + wi0 wi = Σ-1 ∙ μi wi0 = – 1/2 ∙ μiT ∙ Σ-1 ∙μi + ln P(ωi) => diskriminant funkce je opět lineární funkce a tedy rozhodovací plochy jsou nadroviny
2. případ – rozhodovací plochy rozhodovací plochy zjistíme z rovnice gi(x) = gj(x) po dosazení dostaneme rovnici nadroviny: poloha rozhodovacích nadrovin: nadroviny procházejí bodem x0 na spojnici středních hodnot w není obecně ve směru μi – μj => nadrovina oddělující Ri a Rj obecně není kolmá na spojnici středních hodnot když P(ωi) = P(ωj) ... x0 je střed mezi středními hodnotami když P(ωi) ≠ P(ωj) ... x0 je posunut od více pravděpodobného shluku
2. případ - příklady nadrovina nemusí být kolmá na spojnici středních hodnot pokud se změní P(ωi) => posunou se hranice d = 2
2. případ - příklady nadrovina nemusí být kolmá na spojnici středních hodnot pokud se změní P(ωi) => posunou se hranice d = 3
3. případ: Σi libovolná co to znamená? kovarianční matice jsou různé pro jednotlivé třídy => jak bude v tomto případě vypadat diskriminant funkce a klasifikátor? lze odstranit pouze člen d/2 ∙ ln(2π) jako aditivní konstantu diskriminant funkce má tvar: gi(x) = xT ∙ Wi ∙ x + wiT ∙ x + wi0 Wi = – 1/2 ∙ Σi-1 wi = Σi-1 ∙ μi wi0 = – 1/2 ∙ μiT ∙ Σi-1 ∙μi – 1/2 ln |Σi| + ln P(ωi) => diskriminant funkce je kvadratická funkce => rozhodovací plochy jsou hyperkvadratické a můžou mít libovolný tvar (nadroviny, dvojice nadrovin, hyper-paraboloidy, hyper-hyperboloidy, ...)
3. případ - příklady
3. případ - příklady
3. případ - příklady oblasti příslušející k jedné oblasti nemusí být spojeny (ani v dimenzi 1)
3. případ - příklady pro případ 4 tříd (každá je normální rozdělení) jestliže jsou rozdělení obecné => rozhodovací oblasti jsou složité
Početní příklad spočtěte hranici dvou tříd daných obrázkem – nechť P(ω1) = P(ω2) pro každou třídu máme 4 body z Gaussova rozdělení 1. třída: 2. třída:
Početní příklad spočteme diskrétní verze střední hodnoty a kovarianční matice: máme nejobecnější případ (různé Σi) spočteme inverzní matice k Σ1 a Σ2
Početní příklad hledáme rozhodovací plochu dosadíme do rovnice g1(x) = g2(x), kde x = po úpravách dostaneme rovnici: x2 = 3.514 – 1.125x1 + 0.1875 x12 => rovnice paraboly s vrcholem v bodě průsečík středních hodnot => rozhodovací hranice neprochází průsečíkem (jiná rozdělení tříd)
Bayesovo rozhodovací kritérium a normální rozdělení Bayesovo rozhodovací kritérium garantuje nejmenší pravděpodobnost chyby ukázali jsme, jak udělat klasifikátor a jak spočítat rozhodovací plochy neřekli jsme, jak spočítat pravděpodobnost chyby spočtení pravděpodobnosti chyby je obecně pro Gaussiány je složité (zejména díky nespojitým oblastem) analyticky lze spočítat horní odhad chyby (vzorce – lze najít v literatuře)