SPOTKANIE 5: Regresja liniowa i logistyczna

Transkrypt

SPOTKANIE 5: Regresja liniowa i logistyczna
Wrocław University of Technology
SPOTKANIE 5:
Regresja liniowa i logistyczna
Szymon Zaręba
Studenckie Koło Naukowe ”Estymator”
[email protected]
3.11.2015
Podstawowe problemy
1. Uczenie z nadzorem (ang. supervised learning)
Regresja (ang. regression)
Klasyfikacja (ang. classification)
2. Uczenie bez nadzoru (ang. unsupervised learning)
Klasteryzacja (ang. clustering)
Redukcja wymiarów (ang. dimensionality reduction)
Uzupełnianie wartości (ang. matrix completion)
3. Uczenie ze wzmocnieniem (ang. reinforcement
learning)
2/16
Ekstrakcja cech
Zbiór M funkcji bazowych (ang. basis function), każda
reprezentuje jedną cechę.
Każda z N obserwacji przetwarzana jest przez każdą z M
funkcji bazowych.
Wynikiem jest macierz zmiennych opisujących (ang.
design matrix) :


φ1 (x1 ) φ2 (x1 ) · · · φM (x1 )


..
..
..
...


Φ=
.
.
.

φ1 (xN ) φ2 (xN ) · · · φM (xN )
3/16
Podstawowe problemy: Problem regresji
Zmienne wejściowe (ang. input variables): x ∈ X
Zmienna wyjściowa (ang. target variable): y ∈ R
Problem: dla zadanego D = {(xn , yn )}N
n=1 przewidzieć
wartość y dla nowego x.
Zgodnie z teorią decyzji wystarczy znać rozkład
warunkowy p(y|x), zatem musimy go modelować.
4/16
Regresja liniowa
Modelem regresji liniowej (ang. linear
regression):
y = wT φ(x) + ε
Zmienna ε ∼ N (ε|0, β −1 ) modeluje
niepewność obserwacji y.
Model rozkładu warunkowego:
p(y|x, w, β) = N (y|wT φ(x), β −1 )
Parametry modelu: w ∈ RM i β > 0.
5/16
Funkcja wiarygodności
Dane: X = {x1 , . . . , xN }, y = {y1 , . . . , yN }.
Warunkowa funkcja wiarygodności:
p(y|X, w, β) =
N
Y
N (yn |wT φ(xn ), β −1 ).
n=1
Logarytm funkcji wiarygodności:
ln p(y|X, w, β) =
J(w) =
N
N
ln β − ln(2π) − βJ(w)
2
2
N
1X
(yn − wT φ(xn ))2 – błąd kwadratowy.
2 n=1
Logarytm funkcji wiarygodności jest funkcją celu, którą
optymalizujemy względem parametrów w.
6/16
Estymator ML
Licząc gradient ze względu na parametry:
∇w ln p(y|X, w, β) =
N
X
yn φ(xn )T − wT
n=1
N
X
φ(xn )φ(xn )T
n=1
=0
i rozwiązując względem w otrzymujemy
wML = (ΦT Φ)−1 ΦT y
Optymalizując względem β:
1
βML
=
N 2
1 X
T
yn − wML
φ(xn )
N n=1
7/16
Problem klasyfikacji
Zmienne wejściowe, atrybuty (ang.
input variables, attributes): x ∈ X
Zmienna wyjściowa, klasa, etykieta
(ang. target variable, class label):
y ∈ {0, 1} lub y ∈ {−1, 1}.
Problem: dla D = {(xn , yn )}N
n=1
przewidzieć wartość klasy (etykietę) y dla
nowego obiektu x.
Zgodnie z teorią decyzji wystarczy znać
rozkład warunkowy p(y|x), zatem chcemy
go modelować.
8/16
Regresja logistyczna
Model regresji logistycznej (ang.
logistic regression):
p(y = 1|x, w) = σ(wT φ(x)).
Funkcja sigmoidalna (ang. sigmoid
function):
σ(a) =
1
1 + exp(−a)
Parametry modelu: w ∈ RM .
9/16
Funkcja wiarygodności
Dane: X = {x1 , . . . , xN }, y = {y1 , . . . , yN }.
Warunkowa funkcja wiarygodności
(σn ≡ σ(wT φ(xn ))):
p(y|w) =
N
Y
σnyn (1 − σn )1−yn .
n=1
Logarytm funkcji wiarygodności:
ln p(y|w) =
N X
yn ln σn + (1 − yn ) ln(1 − σn ) .
n=1
Postać σn zależnej od parametrów w nie pozwala na
analityczne rozwiązanie poprzez przyrównanie gradientu
do zera.
10/16
Algorytm gradientu prostego
Pseudokod:
Initialize w
repeat
w ← w − α∇w E(w)
until convergence
Algorytm wrażliwy na dobór parametru uczenia α oraz
optima lokalne.
3
3
2.5
2.5
2
2
1.5
1.5
1
1
0.5
0.5
0
0
−0.5
−0.5
0
0.5
1
1.5
2
0
0.5
1
1.5
2
11/16
Algorytm gradientu prostego
Pseudokod:
Initialize w
repeat
w ← w − α∇w E(w)
until convergence
Optymalizowana funkcja celu:
E(w) = ln p(y|w) =
N X
yn ln σn + (1 − yn ) ln(1 − σn ) .
n=1
Gradient optymalizowanej funkcji względem parametrów:
∇w E(w) =
N
X
(σn − yn )φ(xn ).
n=1
12/16
Stochastyczny algorytm gradientu prostego
Pseudokod:
Initialize w
repeat
for n = 1 to N do
w ← w − α∇w En (w)
end for
until convergence
Optymalizowana funkcja celu:
En (w) = yn ln σn + (1 − yn ) ln(1 − σn ).
Gradient optymalizowanej funkcji względem parametrów:
∇w En (w) = (σn − yn )φ(xn ).
13/16
Problem wieloklasowej klasyfikacji
Zmienne wejściowe: x ∈ X
Zmienna wyjściowa: y ∈ {1, · · · , K} .
Problem: dla D = {(xn , yn )}N
n=1
przewidzieć wartość klasy (etykietę) y dla
nowego obiektu x.
Zgodnie z teorią decyzji wystarczy znać
rozkład warunkowy p(y|x), zatem chcemy
go modelować.
14/16
Regresja logistyczna wielowymiarowa
Model wieloklasowej regresji logistycznej (ang.
multinomial logistic regression):
exp(Wy· φ(x))
y 0 exp(Wy 0 · φ(x))
p(y|φ(x), W) = P
Parametry modelu: W ∈ RK×M .
Aby model zwracał jedną klasę jako odpowiedź,
wykorzystuje się funkcję softmax (ang. softmax
function):
exp(xj )
p(y = j|x) = K
P
exp(xk )
k=1
15/16
Funkcja wiarygodności
Klasę y reprezentujemy za pomocą wektora y ∈ {0, 1}K
(schemat 1-na-K lub one-hot representation).
Warunkowa funkcja wiarygodności:
p(y|φ(x, )W) =
N Y
K
Y
exp(Wk· φ(x))
P
k0 exp(Wk0 · φ(x))
n=1 k=1
!ynk
Postać funkcji wiarygodności nie pozwala na analityczne
rozwiązanie.
Możliwa jest optymalizacja z wykorzystaniem metod
gradientowych:
∇Wk· ln p(y|φ(x), W) =
N
X
(σ(Wk· φ(xn )) − ynk )φ(xn )
n=1
16/16

Podobne dokumenty