SPOTKANIE 2: Podstawy teoretyczne

Transkrypt

SPOTKANIE 2: Podstawy teoretyczne
Wrocław University of Technology
SPOTKANIE 2:
Podstawy teoretyczne
Jakub Tomczak
Studenckie Koło Naukowe ”Estymator”
[email protected]
30.10.2013
Zmienne losowe
Koncepcja zmiennej losowej
1/33
Zmienne losowe
Prawdopodobieństwo
Chcielibyśmy móc mierzyć nasze przekonanie (ang. belief )
związane z obserwacją świata x.
Postulaty dot. miary przekonania b(x) podane przez Coxa:
1. Siła przekonania wyrażona za pomocą liczb rzeczywistych, np.
0 ¬ b(x) ¬ 1.
2. Jakościowa zgodność ze zdrowym rozsądkiem, tj. b(x) + b(¬x) = 1.
3. Spójność, tzn. jeśli konkluzja może być otrzymana w różny sposób,
to każdy z tych sposobów musi dawać tę samą odpowiedź, tj.
b(x, y|z) = b(x|z) b(y|x, z) = b(y|z) b(x|y, z).
Okazuje się, że miara przekonania musi spełniać zasady rachunku
prawdopodobieństwa, tj.:
reguła brzegowa (ang. sum rule)
p(x) =
X
p(x, y)
y
reguła łańcuchowa (ang. product rule)
p(x, y) = p(x|y) p(y)
2/33
Zmienne losowe
Reguła brzegowa: Przykład
p(x, y) y = 1 y = 2
p(x)
x=3
0.3
0.2
0.5
x=2
0.2
0.1
0.3
x=1
0.1
0.1
0.2
0.6
0.4
p(y)
3/33
Zmienne losowe
Reguła łańcuchowa: Przykład
p(x, y) y = 1 y = 2
p(x|y = 2)
x=3
0.3
0.2
0.5
x=2
0.2
0.1
0.25
x=1
0.1
0.1
0.25
p(x, y = 2)
p(y)
0.6
0.4
p(x|y = 2) =
p(x, y = 2)
p(y = 2)
4/33
Zmienne losowe
Zmienne losowe ciągłe
Rozkład prawdopodobieństwa zadany jest
przy pomocy funkcji gęstości.
Interesuje nas, że zmienna losowa przyjmuje
wartości z ustalonego zakresu (a, b):
Z
p(x ∈ (a, b)) =
b
p(x)dx
a
Funkcja gęstości p(x) całkuje się do 1 i
spełnia reguły rachunku
prawdopodobieństwa:
R
Reguła brzegowa: p(x) = p(x, y)dy
Reguła łańcuchowa: p(x, y) = p(x|y)p(y)
5/33
Zmienne losowe
Wartość oczekiwana
Wartość oczekiwana (ang. expected value) oznacza średnią
wartość jaką przyjmuje funkcja f zależna od zmiennej losowej x:
X
E[f ] =
f (x)p(x)
x
Gdy f (x) ≡ x mówimy o wartości oczekiwanej zmiennej x.
Wartość oczekiwana może być oszacowana przez N obserwacji
wygenerowanych z rozkładu p(x):
E[f ] ≈
N
1 X
f (xn )
N n=1
6/33
Zmienne losowe
Wariancja i kowariancja
Wariancja (ang. variance) funkcji f oznacza miarę, jak odchylają się
wartości f (x) od średniej E[f ]:
var[f ] = E[(f (x) − E[f ])2 ]
= E[f (x)2 ] − (E[f ])2
Kowariancja (ang. covariance) oznacza miarę, jak zmienne x, y
razem odchylają się od średniej:
cov[x, y] = Ex,y [(x − E[x])(y − E[y])]
= Ex,y [xy] − E[x]E[y]
Kowariancja jest miarą zależności pomiędzy zmiennymi losowymi.
Oczywiście cov[x, x] = var[x].
7/33
Podejmowanie decyzji
Wstęp
Zakładamy dwa rodzaje zmiennych
losowych:
Zmienne obserwowalne: x
Zmienne decyzyjne: y
Zmienne mają wspólny rozkład p(x, y),
który dla nas jest nieznany.
Wiemy, że istnieje zależność między
zmiennymi x i y.
Zakładamy, że ta zależność może być
przybliżona zależnością funkcyjną
y = f (x), tj. ustalonemu x odpowiada
dokładnie jedna wartość y.
8/33
Podejmowanie decyzji
Teoria decyzji
Wyznaczenie wartości y na podstawie x nazywamy podejmowaniem
decyzji (ang. decision making ) albo predykcją (ang. prediction).
W celu znalezienia zależności f (x) minimalizować będziemy ryzyko:
Z
R[f ] = L(y, f (x)) p(x, y)dxdy
= Ex,y L(y, f (x)) .
L oznacza funkcję straty (ang. loss function):
1, jeśli y 6= f (x)
L(y, f (x)) =
0, w p.p.
2
L(y, f (x)) = y − f (x)
(klasyfikacja)
(regresja)
9/33
Podejmowanie decyzji
Rozkład warunkowy p(y|x)
Zauważmy, że
Z
R[f ] =
L(y, f (x)) p(x, y)dxdy
Z
L(y, f (x)) p(y|x) p(x)dxdy
Z Z
=
L(y, f (x)) p(y|x)dy p(x)dx
{z
}
|
=
Ey L(y,f (x))|x
Można pokazać, że w celu minimalizacji
ryzyka R[f ] wystarczy
minimalizować Ey L(y, f (x))|x .
Z
f ∗ (x) = Ey y|x = y p(y|x)dy
(regresja)
f ∗ (x) = arg max p(y|x)
y
(klasyfikacja)
10/33
Modelowanie
Wstęp
11/33
Modelowanie
Wstęp
Najogólniej relacja pomiędzy zmiennymi x i y może być opisana przy
pomocy łącznego rozkładu p(x, y). Wtedy rozkład warunkowy
p(y|x), na podstawie którego wnioskujemy, wyznaczamy z
zależności:
p(x, y)
p(x, y)
=P
p(y|x) =
p(x)
y p(x, y)
Zakładamy, że rzeczywisty rozkład p(x, y) może być zamodelowany
poprzez p(x, y|θ∗ ), gdzie parametry θ∗ nie są dla nas znane.
Znana jest jedynie postać modelu p(x, y|θ).
Przykładowo p(x, y|θ) = N (x, y|µ, Σ), gdzie postać modelu to
rozkład normalny, a parametry θ = {µ, Σ}.
12/33
Modelowanie
Podejścia do modelowania
Modele generujące (ang. generative models) – modelujemy osobno
rozkłady p(x|y, θ) i p(y|θ). Wtedy p(x, y|θ) = p(x|y, θ) p(y|θ), skąd
p(x|y, θ) p(y|θ)
.
p(y|x, θ) = P
y p(x|y, θ) p(y|θ)
Modele dyskryminujące (ang. discriminative models) –
bezpośrednio modelujemy rozkład warunkowy na zmienną decyzyjną,
p(y|x, θ).
Modele funkcyjne (ang. discriminant functions) – bezpośrednio
modelujemy zależność funkcyjną y = f (x, θ), bez korzystania z
prawdopodobieństw.
13/33
Uczenie
Wiarygodność parametrów
Dysponujemy ciągiem niezależnych obserwacji
D = {(x1 , y1 ), . . . , (xN , yN )}, wygenerowanych z rzeczywistego
rozkładu p(x, y).
Uczenie polega na optymalizowaniu względem θ wybranej funkcji
kosztu dopasowującej model p(x, y|θ) do obserwacji D.
Definiujemy wiarygodność (ang. likelihood) parametrów przy
danym ciągu obserwacji:
p(D|θ) =
N
Y
p(xn , yn |θ),
n=1
Wartość wiarygodności mówi o pewności z jaką nasz model o
ustalonych parametrach θ mógł wygenerować obserwacje D.
14/33
Uczenie
Niepewność parametru
15/33
Uczenie
Rozkłady a priori i a posteriori
Niepewność paramteru θ będziemy modelować rozkładem a priori
p(θ) (ang. prior).
Reguły prawdopodobieństwa (wzór Bayesa) pozwalają modyfikować
niepewność parametru poprzez uwzględnienie obserwacji.
Otrzymujemy rozkład a posteriori (ang. posterior):
p(θ|D) =
p(D|θ)p(θ)
p(D)
posterior ∝ likelihood × prior
Można pokazać, że jeśli θ∗ jest rzeczywistym parametrem, który
odpowiada za generowanie danych, to jeśli p(θ∗ ) > 0, wtedy:
lim p(θ|Dn ) = δ(θ − θ∗ )
n→∞
16/33
Uczenie
Podejścia do uczenia
Uczenie częstościowe (ang. frequentist learning ) – wyznaczenie
estymatora punktowego parametrów θ:
estymacja maksymalnej wiarygodności (ang. maximum likelihood
estimation, ML):
θML = arg max p(D|θ),
θ
estymacja maksymalnej a posteriori (ang. maximum a posteriori
estimation, MAP):
θMAP = arg max p(θ|D).
θ
Uczenie bayesowskie (ang. Bayesian learning ) – wyznaczenie
rozkładu predykcyjnego (ang. predictive distribution), tj.
wycałkowanie względem nieznanych parametrów:
Z
p(y|x, D) = p(y|x, θ) p(θ|D) dθ.
| {z } | {z }
model
posterior
17/33
Uczenie
Przykład
Niech x ∈ {0, 1} oznacza rzut monetą, gdzie
x = 0 – orzeł, a x = 1 – reszka.
Prawdopodobieństwo p(x = 1) oznaczmy przez θ,
czyli rozkład x można wyrazić następująco:
p(x|θ) = θx (1 − θ)1−x .
Wartość oczekiwana i wariancja:
E[x] = θ
var[x] = θ(1 − θ).
Załóżmy, że mamy zaobserwowane wartości
monety D = {x1 , . . . , xN },
m=
N
X
xn .
n=1
18/33
Uczenie
Przykład: Uczenie ML
Funkcja wiarygodności:
p(D|θ) =
N
Y
p(xn |θ)
n=1
=
N
Y
θxn (1 − θ)1−xn .
n=1
Biorąc logarytm funkcji wiarygodności:
ln p(D|θ) =
N
X
{xn ln θ + (1 − xn ) ln(1 − θ)}.
n=1
Estymator maksymalnej wiarygodności:
θM L =
m
.
N
19/33
Uczenie
Przykład: Uczenie MAP
Wprowadźmy teraz rozkład a priori na parametr θ
(rozkład beta):
p(θ|a, b) =
Γ(a + b) a−1
θ
(1 − θ)b−1 ,
Γ(a) Γ(b)
a,b – hiperparametry (ang. hyperparameters).
Rozkład a posteriori:
p(θ|D, a, b) =
Γ(a + b + N )
θm+a−1 (1−θ)l+b−1 ,
Γ(a + m) Γ(b + l)
gdzie l = N − m.
Interpretacja a i b – aprioryczna liczba obserwacji.
Estymator MAP:
θMAP =
m+a−1
.
N +a+b−2
20/33
Uczenie
Przykład: Uczenie bayesowskie
Stosując uczenie bayesowskie intersuje nas
znalezienie rozkładu predykcyjnego:
Z 1
p(x = 1|D) =
p(x = 1|θ) p(θ|D)dθ
0
Z
1
θ p(θ|D)dθ
=
0
= E θ|D =
m+a
.
N +a+b
Podsumowując:
m
,
N
m+a−1
θMAP =
,
N +a+b−2
m+a
p(x = 1|D) =
.
N +a+b
θML =
Na przykład: θ∗ = 12 ,
D = {1, 1, 1, 1, 0, 1, 1},
a = 2, b = 3
θML = 67 ,
7
θMAP = 10
,
p(x = 1|D) = 23 .
21/33
Problemy uczenia
Overfitting: Wstęp
22/33
Problemy uczenia
Overfitting: Przyczyny
Zjawisko overfittingu, czyli zbytniego dopasowania parametrów θ
do danych D, występuje w przypadku posiadania zbyt małej liczby
obserwacji.
Metody przeciwdziałania:
1.
2.
3.
4.
Pozyskanie większej liczby danych.
Wybór prostszego modelu (o mniejszej liczbie parametrów).
Estymacja MAP / Regularyzacja (ang. regularization).
Uczenie bayesowskie.
23/33
Problemy uczenia
Przekleństwo wymiarowości: Przykład 1
Każdy wymiar podzielmy na K odcinków. Liczba kostek potrzebna
do pokrycia danych wynosi K D . Przykładowo K = 10, D = 20,
wtedy K D = 100000000000000000000.
24/33
Problemy uczenia
Przekleństwo wymiarowości: Przykład 2
Dopasowanie wielomianu stopnia M = 3 do danych
jednowymiarowych, D = 1:
y(x) = θ0 + θ1 x + θ2 x2 + θ3 x3
Liczba parametrów: 4
Dopasowanie wielomianu stopnia M = 3 do danych
wielowymiarowych:
y(x) = θ0 +
D
X
i=1
θ i xi +
D X
D
X
i=1 j=1
θij xi xj +
D X
D X
D
X
θijk xi xj xk
i=1 j=1 k=1
Liczba parametrów: 1 + D + D2 + D3 = O(D3 )
W ogólności dopasowanie wielomianu stopnia M do danych o
wymiarze D wymaga wyznaczenia O(DM ) parametrów.
25/33
Problemy uczenia
Przekleństwo wymiarowości: Przyczyny
Trudności, które pojawiają się w przypadku wielowymiarowych
przestrzeni określa się wspólnym mianem przekleństwa
wymiarowości (ang. curse of dimensionality).
Problemy te pojawiają się przede wszystkim w przypadku
wielowymiarowych danych.
Metody przeciwdziałania polegają m.in. na uzględnieniu struktury
danych w dopasowywanym modelu poprzez:
redukcję wymiarów,
klasteryzację,
selekcję cech.
26/33
Problemy uczenia
Zalew danych: Przyczyny
Problemy z przetworzeniem olbrzymiej liczby danych określa się
często mianem zalewu danych (ang. data flood).
Problemy te występują, gdy przetwarzamy zbiory, gdzie
N > 10k − 100k.
Pojawiają się problemy związane z brakiem zasobów obliczeniowych
i pamięciowych.
Metody przeciwdziałania:
1. Uczenie przyrostowe (ang. incremental learning ).
2. Metody optymalizacji wielkoskalowej.
3. Optymalizacja rozproszona i równoległa.
4. Redukcja danych.
27/33
Selekcja modelu
Wstęp
Klasa modeli – modele o ustalonej postaci.
Przykłady klas modeli:
wielomiany stopnia M ;
drzewa decyzyjne o ustalonej strukturze;
mieszanina K rozkładów Gaussa;
Selekcja modelu (ang. model selection)
polega na wybraniu klasy modeli najlepiej
uogólniającej dane.
Przykład: Wybranie wielomianów stopnia
10 z rodziny wielomianów.
28/33
Selekcja modelu
Dekompozycja bias-variance
Obciążenie (ang. bias) – odchylenie predykcji modelu na wszystkich
możliwych danych od predykcji teoretycznej f ∗ .
Wariancja (ang. variance) – odchylenie predykcji modelu
nauczonego na skończonych zbiorach danych D od predykcji na
wszystkich możliwych danych.
(a) Wysoki bias.
(b) Odpowiednie.
(c) Wysoka wariancja.
29/33
Selekcja modelu
Ciąg treningowy, walidacyjny i testowy
Dzielimy zbiór danych na:
zbiór treningowy – służy do uczenia modelu
(wyznaczenia parametrów);
zbiór walidacyjny – służy do wyboru klasy
modelu;
zbiór danych
zbiór testowy – służy do ostatecznej oceny
jakości.
Modele o dużym błędzie na zbiorze treningowym i
walidacyjnym charakteryzują się dużym
obciążeniem.
treningowy
walidacyjny
Modele o małym błędzie na zbiorze treningowym,
a dużym błędzie na zbiorze walidacyjnym
charakteryzują się dużą wariancją.
testowy
Selekcja modelu polega na wybraniu klasy
modelu, który ma najmniejszy błąd na zbiorze
walidacyjnym.
30/33
Selekcja modelu
Bayesowskie porównywanie modeli
Niech m oznacza klasę modelu.
Korzystając z reguły Bayesa:
p(D|m) p(m)
p(D)
gdzie
Z
p(D|m) =
p(D|θ, m) p(θ|m)dθ
oznacza wiarygodność modelu (ang.
model evidence lub marginal
likelihood).
Zbyt prosty
p(D|m)
p(m|D) =
Akurat!
D
Zbyt złożony
Wszystkie możliwe zbiory danych o rozmiarze N
Selekcja modelu polega na wybraniu
klasy modelu m o najwyższej wartości
p(m|D).
31/33
Selekcja modelu
Aproksymacje wiarygodności modelu
Często w praktyce policzenie wiarygodności modelu jest zadaniem
złożonym, a nawet niemożliwym. Dlatego stosuje się różnego
rodzaju aproksymacje.
Bayesowskie kryterium informacyjne (ang. Bayesian Information
Criterion, BIC):
BIC = −2 ln p(D|θMAP ) + M ln(N ).
(BIC)
W powyższym przypadku θMAP można zastąpić θML .
Bardziej zaawansowane techniki:
aproksymacja Laplace’a (ang. Laplace approximation),
Expectation Propagation,
metody wariacyjne (ang. variational methods),
metody próbkowania, np. Markov Chain Monte Carlo (MCMC).
32/33

Podobne dokumenty