Rozpoznawanie obrazów Ćwiczenia lista zadań nr 5 autorzy: A. Gonczarek, J.M. Tomczak Przykładowe problemy Klasyfikacja binarna Dla obrazu x zaproponowano dwie cechy φ(x) = (φ 1 (x) φ 2 (x)) T. Na obrazie może znajdować się twarz (y = 1) lub nie (y = 0). Zebrano następujące dane dotyczące trzech obrazów: φ 1 (x) 0.1 0.2 0.3 φ 2 (x) 0.5 0.1 0.9 y 0 0 1 Tabela 1: Dane dla trzech obrazów. Chcemy przewidywać czy na nowym obrazie znajduje się twarz, czy nie. Klasyfikacja wieloklasowa Dla dźwięku x zaproponowano dwie cechy φ(x) = (φ 1 (x) φ 2 (x)) T. Rozpoznajemy wypowiedziane słowa, którym nadajemy odpowiednio indeksy ze zbioru y {1, 2, 3}. Zebrano następujące dane dotyczące czterech sygnałów dźwiękowych: φ 1 (x) 0.4 0.1 0.9 0.5 φ 2 (x) 0.1 0.2 0.6 0.4 y 1 1 2 3 Tabela 2: Dane dla czterech sygnałów dźwiękowych. Dla nowego sygnału x chcemy rozpoznać słowo y. Modele Naive Bayes i Gaussian Discriminant Analysis (GDA) Ekstrakcja cech Ekstrakcja cech musi być dostosowana do rozpatrywanego zagadnienia klasyfikacji. Zakładamy, że została ona wykonana wcześniej. 1
Model Rozpatrzmy model o następującej postaci: p(φ y) = N (φ µ y, Σ y ) gdzie µ y jest wektorem średnich dla klasy y, Σ y jest macierzą kowariancji dla klasy y, oraz p(y) = M(y θ) jest rozkładem wielopunktowym o parametrach θ. Wyznacz i odpowiedz: ˆ Zapisać wartość klasy w schemacie 1-na-K, reprezentując ją jako wektor 0-1 y. ˆ Wyznaczyć rozkład łączny p(φ, y). ˆ Jak upraszcza się p(φ y), jeśli przyjmiemy macierz kowariancji następującej postaci: Σ y = diag(σ 2 y). (Naive Bayes) ˆ Który z modeli GDA czy Naive Bayes zastosujesz, gdy wymiar φ jest wysoki, a który, gdy niski? ˆ Podaj liczbę parametrów dla GDA i Naive Bayes, gdy mamy D-wymiarowy wektor cech i K klas. ˆ Wyjaśnij pojęcie modelowania generującego (ang. generative modeling). ˆ Do czego uprości się rozkład wielopunktowy M(y θ) w przypadku klasyfikacji binarnej? Uczenie Oznaczmy parametry modelu przez Θ = {µ 1,..., µ K, Σ 1,..., Σ K, θ}. Dla ciągu obserwacji D = {(φ n, y n )} N n=1 wyznacz i odpowiedz (dla GDA i Naive Bayes): ˆ funkcję wiarygodności; ˆ kryterium uczenia l ML (Θ) (ujemny logarytm funkcji wiarygodności); ˆ gradienty względem odpowiednich parametrów z kryterium uczenia l ML (Θ); ˆ wartości poszczególnych parametrów z Θ minimalizujące kryterium uczenia; ˆ Jaki rozkład a priori standardowo wprowadza się na parametry rozkładu wielopunktowego, a jaki na parametry rozkładu normalnego? 2
Predykcja Wyznacz: ˆ rozkład warunkowy p(y φ) korzystając ze wzoru Bayesa; ˆ Dla rozkładu warunkowego p(y φ) wyznaczyć optymalny model y(φ) minimalizujący ryzyko (średnią stratę) w podejmowaniu decyzji. Przyjąć 0-1 funkcję straty 0, y = y L(y, y) = 1, y y. ˆ Dla K = 2 i D = 1, gdzie µ 0 = 1, µ 1 = 4, σ 2 0 = σ 2 1 = 1 oraz θ = 0.7 wyznacz rozkład warunkowy p(y φ) dla φ = 3 i wyznacz ostateczną predykcję y. 3
Rozkład dwupunktowy: DODATEK B(x θ) = θ x (1 θ) 1 x, gdzie x {0, 1} i θ [0, 1] E[x] = θ Var[x] = θ(1 θ) Rozkład wielopunktowy: D D M(x θ) = θ x d d, gdzie x d {0, 1} i θ d [0, 1] dla każdego d = 1, 2,..., D, θ d = 1 d=1 d=1 E[x d ] = θ d Var[x d ] = θ d (1 θ d ) Rozkład normalny: N (x µ, σ 2 ) = 1 { exp 2π σ E[x] = µ Var[x] = σ 2 } (x µ)2 2σ 2 Rozkład normalny wielowymiarowy: { 1 1 N (x µ, Σ) = (2π) D/2 Σ exp 1 } 1/2 2 (x µ)t Σ 1 (x µ), gdzie x jest wektorem D-wymiarowym, µ D-wymiarowy wektor średnich, Σ macierz D D kowariancji E[x] = µ Cov[x] = Σ Rozkład beta: Γ(a + b) Beta(x a, b) = Γ(a)Γ(b) xa 1 (1 x) b 1, gdzie x [0, 1] oraz a > 0 i b > 0, Γ(x) = E[x] = Var[x] = a a+b ab (a+b) 2 (a+b+1) 0 t x 1 e t dt Rozkład brzegowy: Dla rozkładu ciągłego: p(x) = p(x, y)dy i dla rozładu dyskretnego: p(x) = y p(x, y) 4
Rozkład warunkowy: p(y x) = p(x, y) p(x) Rozkład brzegowy i warunkowy dla wielowymiarowego rozkładu normalnego: Załóżmy, że x N (x µ, Σ), gdzie x = x a x b, µ = µ a µ b wtedy mamy następujące zależności: p(x a ) = N (x a µ a, Σ a ), p(x a x b ) = N (x a ˆµ a, ˆΣ a ), gdzie ˆµ a = µ a + Σ c Σ 1 b (x b µ b ), ˆΣ a = Σ a Σ c Σ 1 b Σ T c. Twierdzenie Bayesa:, Σ = Σ a Estymator największej wiarygodności: Σ T c Σ c Σ b, p(y x) = p(x y)p(y) p(x) Danych jest N niezależnych realizacji D = {x 1... x N } wektora losowego x o rozkładzie p(x θ). Funkcją wiarygodności nazywamy następującą funkcję: N p(d θ) = p(x n θ). n=1 Zlogarytmowaną funkcję p(d θ) możemy określić zależnością: N log p(d θ) = log p(x n θ). n=1 Estymatorem największej wiarygodności nazywamy θ ML takie, że Estymator maksymalnego a posteriori: p(d θ ML ) = max p(d θ). θ Dane są rozkład a priori p(θ) parametru θ oraz N niezależnych realizacji D = {x 1... x N } wektora losowego x o rozkładzie p(x θ). Estymatorem maksymalnego a posteriori (MAP) nazywamy θ MAP maksymalizujący rozkład a posteriori: p(θ MAP D) = max p(θ D). θ 5
Ryzyko w podejmowaniu decyzji: Ryzyko (średnią stratę) definiujemy jako następujący funkcjonał: gdzie L(, ) oznacza funkcję straty. Wybrane własności wektorów i macierzy: R[y] = L(y, y(x)) p(x, y)dxdy, Dane są wektory x, y i macierz A symetryczna i dodatnio określona. Zachodzą wtedy następujące własności: ˆ y (x y)t A(x y) = 2A(x y) ˆ (x y)t A 1 (x y) A ˆ ln det(a) A = A 1 = A 1 (x y)(x y) T A 1 6