Entropia Renyi ego, estymacja gęstości i klasyfikacja Wojciech Czarnecki Jacek Tabor 6 lutego 2014 1 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 1/36 36
2 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 2/36 36
Przypomnienie Entropia i Dywergencja Cauchy ego Schwarza D cs (f, g) = log Jądrowa estymacja gęstości f 2 + log g 2 2 log fg f X (x) = 1 X n i=1 Silverman s rule (dla k = 1!) K σx (x X i ) = 1 X σ X (4/3) 1/5 X 1/5 std(x) n N(X i, σx)(x) 2 i=1 3 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 3/36 36
Idea Mamy dane X, Y R d Będziemy szukać takiego v R d, żeby po zrzutowaniu na v nasze dane miały możliwie dużą dywergencję maximize v R d D cs ([X] v, [Y ] v ) n N ( v, Z i, σz), 2 Z {X, Y }, i=1 σ Z = (4/3) 1/5 Z 1/5 std( v, Z ), Z {X, Y } where [Z] v = 1 Z Klasyfikowanie punktu x będzie odbywać się poprzez wybor większej gęstości: m(x; v) = arg max [Z] v(x) Z {X,Y } 4 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 4/36 36
Przykład Toy dataset gaussmp4 5 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 5/36 36
Przykład 2 trianglemp4 6 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 6/36 36
XOR Jeden krok dalej xormp4 7 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 7/36 36
Plan prezentacji (w najgorszym razie na 2 tygodnie :-)) 1 Umiejscowienie modelu w uczeniu maszynowym 2 Modele liniowe, wymiar VC i Structural risk minimization 3 Nasz model a SVM 4 Jawna postać dywergencji 5 Gradientowa optymalizacja na sferze 6 Aspekty algorytmiczne i wydajnościowe 7 Ewaluacja 8 Co dalej? 8 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 8/36 36
Co to znaczy, że model jest dobry? Czy nasz model jest dobry? Po co nam kolejny model? 9 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 9/36 36
Klasyfikacja liniowa m w : R d { 1, +1} m w (x) = m(x; w) = sgn( w, x + b) LDA Perceptron SVM Regresja logistyczna Naive Bayes 10 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 10/36 36
Klasyfikacja liniowa m w : R d { 1, +1} m w (x) = m(x; w) = sgn( w, x + b) LDA Perceptron SVM Regresja logistyczna Naive Bayes Separacja czy rzutowanie? Klasyfikacja liniowa to jest rzutowanie na hiperpłaszczyznę i wybieranie punktu podziału To są rownoważne wypowiedzenia dokładnie tego samego zjawiska 10 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 10/36 36
Moc modelu Założenia: mamy dany model m parametryzowany w dane uczące T = {(x i, y i )} k są wybrane iid z pewnego rozkładu f przyszłe dane testujące rownież pochodzić będą z f [ ] R(w) 1 = E 2 y m(x; w) Ryzyko, prawdopodobieństwo błędu na zbiorze testującym 11 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 11/36 36
Moc modelu [ ] 1 R(w) = E 2 y m(x; w) R emp (w) = 1 T T i=1 1 2 y i m(x i ; w) 12 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 12/36 36
Moc modelu [ ] 1 R(w) = E 2 y m(x; w) Vapnik R emp (w) = 1 T T i=1 1 2 y i m(x i ; w) Z prawdopodobieństwem conajmniej 1 η ḣ (log(2 T / ḣ )+1) log(η/4) R(w) R emp (w) + T 12 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 12/36 36
Moc modelu [ ] 1 R(w) = E 2 y m(x; w) Vapnik R emp (w) = 1 T T i=1 1 2 y i m(x i ; w) Z prawdopodobieństwem conajmniej 1 η ḣ (log(2 T / ḣ )+1) log(η/4) R(w) R emp (w) + T wymiar Vapnika-Chervonenkisa 12 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 12/36 36
Wymiar VC Rozproszenie (shattering) Model może rozproszyć zbior punktow x 1,, x t wtw gdy dla każdego etykietowania tych punktow istnieje taki zbior parametrow, że model klasyfikuje je bezbłednie S(m, x) y { 1,+1} t w i {1,,t} m(x i ; w) = y i 13 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 13/36 36
Wymiar VC Rozproszenie (shattering) Model może rozproszyć zbior punktow x 1,, x t wtw gdy dla każdego etykietowania tych punktow istnieje taki zbior parametrow, że model klasyfikuje je bezbłednie S(m, x) y { 1,+1} t w i {1,,t} m(x i ; w) = y i m(x; w) = sgn( w, x + b) 13 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 13/36 36
Wymiar VC Rozproszenie (shattering) Model może rozproszyć zbior punktow x 1,, x t wtw gdy dla każdego etykietowania tych punktow istnieje taki zbior parametrow, że model klasyfikuje je bezbłednie S(m, x) y { 1,+1} t w i {1,,t} m(x i ; w) = y i m(x; w) = sgn( w, x + b) 13 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 13/36 36
Wymiar VC Wymiar VC Wymiar VC modelu m to największe takie h, że istnieje takie ułożenie h punktow, że m może je rozproszyć V C(m) = max X R d X = h S(m, X) h 14 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 14/36 36
Wymiar VC Model liniowy sgn( w, x + b) na płaszczyznie 3 15 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 15/36 36
Wymiar VC Model liniowy sgn( w, x + b) na płaszczyznie 3 w R d : 15 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 15/36 36
Wymiar VC Model liniowy sgn( w, x + b) na płaszczyznie 3 w R d : d + 1 15 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 15/36 36
Wymiar VC Model liniowy sgn( w, x + b) na płaszczyznie 3 w R d : d + 1 Czemu w takim razie jedne modele liniowe lepiej generalizują a drugie gorzej? 15 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 15/36 36
SVM przypomnienie 1 minimize w,b 2 w 2 subject to y i ( w, x i b) 1, i = 1,, T M = 2 w D = 2 max x i x i 16 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 16/36 36
SVM gap tolerant classifier M = 2 w D = 2 max x i x i 17 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 17/36 36
Gap Tolerant Classifier M = 2 w D = 2 max x i x i { } D 2 V C(m, d, D, M) min, d + 1 M 2 { } = min (max x i ) 2 w 2, d + 1 i 18 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 18/36 36
SVM Gap Tolerant Classifier Maszyna Wektorow Nośnych minimize w,b 1 2 w 2 + C T ξ i i subject to y i ( w, x i b) 1 ξ i, i = 1,, T { } V C(m, d, D, M) min (max x i ) 2 w 2, d + 1 i (przy C ) stara sie rozdzielić dane (minimalizuje R emp ) - Empirical Risk Minimization 19 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 19/36 36
SVM Gap Tolerant Classifier Maszyna Wektorow Nośnych minimize w,b 1 2 w 2 + C T ξ i i subject to y i ( w, x i b) 1 ξ i, i = 1,, T { } V C(m, d, D, M) min (max x i ) 2 w 2, d + 1 i (przy C ) stara sie rozdzielić dane (minimalizuje R emp ) - Empirical Risk Minimization maksymalizuje margines, w konsekwencji zmniejszając wymiar VC i złożoność (geometryczną) modelu (minimalizacja R) - Structural Risk Minimization 19 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 19/36 36
Wymiar VC wnioski Dobry klasyfikator to taki, ktory rownoważy dwa czynniki: zdolność do odwzorowania danych uczących (empirical risk) złożoność modelu (regularyzacja) Jedną z metod regularyzacji jest ograniczanie rodziny hipotez H z ktorej pochodzą nasze modele m (np poprzez ograniczenie geometryczne w konstrukcji SVM) 20 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 20/36 36
Nasz model a SVM Wbrew pozorom, nasze podejście ma sporo wspolnego z maszyną wektorow nośnych Przy σ X 0 rozwiązanie dane przez SVM jest maksimm [proof needed] lokalnym D cs ([X] v, [Y ] v ) Dokonujemy Structural Risk Minimization 21 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 21/36 36
Nasz model a SVM Wbrew pozorom, nasze podejście ma sporo wspolnego z maszyną wektorow nośnych Przy σ X 0 rozwiązanie dane przez SVM jest maksimm [proof needed] lokalnym D cs ([X] v, [Y ] v ) Dokonujemy Structural Risk Minimization ale są i istotne rożnice Rozpatrujemy inną rodzinę hipotez H Inaczej realizujemy pojęcie Structural 21 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 21/36 36
Nasz model a uczenie maszynowe Klasyfikator liniowy: m(x; w) = sgn( w, x + b) 22 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 22/36 36
Nasz model a uczenie maszynowe Klasyfikator liniowy: m(x; w) = sgn( w, x + b) k-progowa klasyfikacja liniowa m(x; w, k) = { 1, if 2 t +1, if 2 t gdzie w, x (b t, b t+1 ), b 0 =, b k+1 = 22 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 22/36 36
Nasz model a uczenie maszynowe Klasyfikator liniowy: m(x; w) = sgn( w, x + b) k-progowa klasyfikacja liniowa m(x; w, k) = { 1, if 2 t +1, if 2 t gdzie w, x (b t, b t+1 ), b 0 =, b k+1 = m(x; w) = m(x; w, 1) 22 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 22/36 36
k-progowa klasyfikacja liniowa Rysunek : The Capacity of Multilevel Threshold Functions; Olafsson 23 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 23/36 36
Zagadka Ile wynosi wymiar VC k-progowych klasyfikatorow liniowych? w R: 24 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 24/36 36
Zagadka Ile wynosi wymiar VC k-progowych klasyfikatorow liniowych? w R: k + 1 w R d : 24 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 24/36 36
Zagadka Ile wynosi wymiar VC k-progowych klasyfikatorow liniowych? w R: k + 1 w R d : problem otwarty [solution needed] 24 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 24/36 36
Otwarte problemy teoretyczne k-progowych klasyfikatorow liniowych 2004 Ịle wynosi wymiar VC k-progowych klasyfikatorow liniowych? 2003 Czy problem znalezienia 2-progowego klasyfikatora liniowego (czy istnieje 2-progowa separacja danych) jest NP-kompletny? W przypadku fałszywosci powyższego Czy problem znalezienia k-progowego klasyfikatora liniowego (czy istnieje k-progowa separacja danych) jest NP-kompletny? 25 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 25/36 36
Blad generalizacji Anthony 2004 Dla k-progowego klasyfikatora liniowego nauczonego na zbiorze T R d { 1, +1} zachodzi z prawdopodobieństwem przynajmniej 1 η R(m) R emp (m) + G(T, d, k) G(T, d, k) = 8 ( (d + k 1) ln T Anthony 2004 ( ) 2e T k + ln d + k 1 ( )) 14k 2 Zachodzi też podobne twierdzenie dla k-progowego klasyfikatora liniowego maksymalizującego margines η 26 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 26/36 36
Rodzina hipotez H A co jesli k? 27 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 27/36 36
Rodzina hipotez H A co jesli k? m(x; w) = sgn(sin(w x)), w R V C(m) = np x i = 10 i, w = π ( i 1(1 y 2 i)10 i) 27 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 27/36 36
Rodzina hipotez H A co jesli k? m(x; w) = sgn(sin(w x)), w R V C(m) = np x i = 10 i, w = π ( i 1(1 y 2 i)10 i) Hipoteza Ṇasz model będzie trzymać w ryzach rozrost k 27 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 27/36 36
Rodzina hipotez H Maszyna wektorow nośnych: liniowa, K(x, y) = x, y, V C(m, d) = d + 1 28 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 28/36 36
Rodzina hipotez H Maszyna wektorow nośnych: liniowa, K(x, y) = x, y, V C(m, d) = d + 1 wielomianowa, K(x, y) = (( x, y + c) ) p, d + p 1 V C(m, d, p) = O(d p ) + 1 p gaussa, K(x, y) = exp( γ x y 2 ), 28 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 28/36 36
Rodzina hipotez H Maszyna wektorow nośnych: liniowa, K(x, y) = x, y, V C(m, d) = d + 1 wielomianowa, K(x, y) = (( x, y + c) ) p, d + p 1 V C(m, d, p) = O(d p ) + 1 p gaussa, K(x, y) = exp( γ x y 2 ), V C(m, d) = 28 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 28/36 36
Rodzina hipotez H Maszyna wektorow nośnych: liniowa, K(x, y) = x, y, V C(m, d) = d + 1 wielomianowa, K(x, y) = (( x, y + c) ) p, d + p 1 V C(m, d, p) = O(d p ) + 1 p gaussa, K(x, y) = exp( γ x y 2 ), V C(m, d) = Nasza metoda: większa moc niż model liniowy 28 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 28/36 36
Rodzina hipotez H Maszyna wektorow nośnych: liniowa, K(x, y) = x, y, V C(m, d) = d + 1 wielomianowa, K(x, y) = (( x, y + c) ) p, d + p 1 V C(m, d, p) = O(d p ) + 1 p gaussa, K(x, y) = exp( γ x y 2 ), V C(m, d) = Nasza metoda: większa moc niż model liniowy istotnie mniejsza niż wielomianowy 28 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 28/36 36
Rodzina hipotez H Maszyna wektorow nośnych: liniowa, K(x, y) = x, y, V C(m, d) = d + 1 wielomianowa, K(x, y) = (( x, y + c) ) p, d + p 1 V C(m, d, p) = O(d p ) + 1 p gaussa, K(x, y) = exp( γ x y 2 ), V C(m, d) = Nasza metoda: większa moc niż model liniowy istotnie mniejsza niż wielomianowy wypełniamy lukę w klasie złożoności V C(mdk) =? = O(dk log k) 28 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 28/36 36
Jawna postać dywergencji Cauchy ego Schwarza D cs ([X] v, [Y ] v ) = log ip XX(v) + log ip Y Y (v) 2 log ip XY (v), ip 1 XY (v) = exp ( v, x y 2 ), 2πH XY (v) X Y 2H XY (v) H XY (v) = H X (v) + H Y (v) x X,y Y H X (v) = (4/3) 1/5 X 1/5 std( v, X ) 29 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 29/36 36
Nasz problem optymalizacyjny maximize v R d log ip XX(v) + log ip Y Y (v) 2 log ip XY (v) subject to v = 1 where ip AB(v) = N AB exp ( v, x y 2 ), 2(H A (v) + H B (v)) N AB = x A,y B 1 2π(H A (v) + H B (v)) A B, H Z (v) = (4/3) 1/5 Z 1/5 std( v, Z ) Z {X, Y } 30 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 30/36 36
Nasz problem optymalizacyjny Błąd na zbiorze uczącym maximize log ip XX(v) + log ip Y Y (v) 2 log ip XY (v) v R d subject to v = 1 where ip AB(v) = N AB N AB = x A,y B exp ( 1 2π(H A (v) + H B (v)) A B, v, x y 2 ), 2(H A (v) + H B (v)) H Z (v) = (4/3) 1/5 Z 1/5 std( v, Z ) Z {X, Y } Regularyzacja 31 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 31/36 36
Nasz problem optymalizacyjny interpretacja czynnikow log ip XX(v) + log ip Y Y (v) 2 log ip XY (v) czynnik regularyzacyjny prowadzi do minimalizacji k czynnik odpowiedzialny za minimalizację błędu stara sie maksymalizować margines (przy pewnych założeniach) 32 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 32/36 36
Nasz problem optymalizacyjny interpretacja czynnikow log ip XX(v) + log ip Y Y (v) 2 log ip XY (v) 33 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 33/36 36
Podsumowanie pierwszej części Nasz model buduje k-progowy klasyfikator liniowy 34 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 34/36 36
Podsumowanie pierwszej części Nasz model buduje k-progowy klasyfikator liniowy opiera sie o koncepcje entropii i estymacji gęstości 34 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 34/36 36
Podsumowanie pierwszej części Nasz model buduje k-progowy klasyfikator liniowy opiera sie o koncepcje entropii i estymacji gęstości jest w pewnym sensie zbliżony ideologicznie do SVM 34 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 34/36 36
Podsumowanie pierwszej części Nasz model buduje k-progowy klasyfikator liniowy opiera sie o koncepcje entropii i estymacji gęstości jest w pewnym sensie zbliżony ideologicznie do SVM realizuje zasadę Structural Risk Minimization 34 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 34/36 36
Podsumowanie pierwszej części Nasz model buduje k-progowy klasyfikator liniowy opiera sie o koncepcje entropii i estymacji gęstości jest w pewnym sensie zbliżony ideologicznie do SVM realizuje zasadę Structural Risk Minimization jest silnie zregularyzowany, w sposob jednorodny 34 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 34/36 36
Plan prezentacji przyszly tydzien 1 Umiejscowienie modelu w uczeniu maszynowym 2 Modele liniowe, wymiar VC i Structural risk minimization 3 Nasz model a SVM 4 Jawna postać dywergencji 5 Gradientowa optymalizacja na sferze 6 Aspekty algorytmiczne i wydajnościowe 7 Ewaluacja 8 Co dalej? 35 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 35/36 36
Dziekuję za uwagę Pytania? Propozycje? Idee? 36 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 36/36 36
Dziekuję za uwagę Pytania? Propozycje? Idee? Rozwiązania otwartych problemow? 36 / Wojciech Czarnecki, Jacek Tabor Renyi s Multithreshold Linear Classifier 36/36 36