Sieci wielowarstwowe
Igor T. Podolak
Uniwersytet Jagielloski w Krakowie
26 luty 2014
1
Igor T. Podolak, WMiI UJ
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
1/32
Wielo-warstwowy perceptron
funkcje aktywacji
1
1 + exp(v)
exp(v)
(v) =
= (v)[1 (v)]
[1 + exp(v)]2
(v) =
tangens hiperboliczny
(v) = tanh(v) =
1 exp(v)
1 + exp(v)
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
2/32
Wielo-warstwowy perceptron
warstwy ukryte
out
liniowo
neurony warstwy wyjciowej w dalszym cigu realizuj
jedynie liniowy podzia
przeksztacenie do innej przestrzeni daje nadziej, e
problem bdzie w niej separowalny
nie wiemy jednak nic o tym jakie powinny by wartoci
aktywacji warstw ukrytych std dugotrwae
problemy ze znalezieniem algorytmu uczenia
algorytm musi sam zdecydowa, ktre cechy (ang.
features) reprezentowa
igor.podolak@uj.edu.pl
sieci wielowarstwowe
hid 2
.
hid 1
x1 x2 x3 x4
xn
3
/32
3/32
Wielo-warstwowy perceptron
nauczanie
3. uczenie epokami
zmiany parametrw po przedstawieniu wszystkich
przykadw
dokadna estymacja wektora gradientu funkcji kosztu
umoliwia urwnoleglenie ale pamicioerny
x1 x2 x3 x4
xn
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
4/32
Wielo-warstwowy perceptron
algorytm wstecznej propagacji regua delta
wkj =
E vk
E
=
= k yj
wkj
vk wkj
j =
E yj
E
=
(vj )
yj vj
yj j
x1 x2 x3 x4
xn
5
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
5/32
Wielo-warstwowy perceptron
algorytm wstecznej propagacji regua delta
E
E vk
=
= k yj
wkj
vk wkj
E yk
E
k =
=
(vk )
yk vk
yk j
wkj =
j
1.
E
yj
ek vk
[dk yk ]
E
=
ek
=
ek
yj
vk yj
vj
k
k
| {z } |
=
k (vk )
ek k (v)wkj =
j = j (vj )
wkj yj
yj
{z
wkj
k wkj
k wkj
x1 x2 x3 x4
xn
6
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
6/32
Wielo-warstwowy perceptron
wspczynnik nauczania
E
E vk
=
= k yj
wkj
vk wkj
E yk
E
k =
=
j (vk )
j = j (vj )
k wkj
yk vk
yk
wkj =
j
1. metoda momentum
nt
E(t)
.
wji(t)
igor.podolak@uj.edu.pl
sieci wielowarstwowe
x1 x2 x3 x4
xn
7
/32
7/32
Wielo-warstwowy perceptron
kryteria stopu
4. Po kadej epoce nauczania sie jest sprawdzana pod ktem jej zdolnoci
generalizacji. Moe by do tego wykorzystany oddzielny zbir przykadw nie
wykorzystywanych w nauczaniu. Nauczanie jest przerywane, jeli poziom
generalizacji jest wystarczajcy, albo poziom generalizacji przekroczy swoje
minimum.
8
Igor T. Podolak, WMiI UJ
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
8/32
Wielo-warstwowy perceptron
rne heurystyki
2. maksymalizacja informacji
najlepiej wybiera przykady niosce najwicej informacji, np. dajce
najwikszy bd czy maksymalnie rne od poprzednich
dobrym rozwizaniem jest randomizacja kolejnoci, take by kolejne
przykady nie naleay do tej samej klasy
innym rozwizaniem jest aktywne nauczanie (active learning)
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
9/32
Wielo-warstwowy perceptron
pomocne heurystyki
4. normalizacja wej
rednia wartoci wej powinny by bliskie zeru
gdyby wszystkie wejcia byy dodatnie, to wagi do warstwy ukrytej bd albo si
10
Igor T. Podolak, WMiI UJ
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
10/32
Wielo-warstwowy perceptron
5. inicjalizacja wag pocztkowych
v = E[vj ] = E[
wji yi ] =
E[wji ]E[yi ] = 0
i
warto wariancji
]
[
v2 = E[(vj v )2 ] = E[vj2 ] = E
wji wjk yi yk
i
k
N
2
2
E[wji
] = N w
igor.podolak@uj.edu.pl
sieci wielowarstwowe
11
/32
11/32
porwnywanie
model
.
bdy
aproksymacji
klasykacji
eksperymenty
walidacja
krzyowa
melody
bootstrap
funkcje . ryzyka
i kosztu
.
.
.
spojrzenie
statystyczne
dekompozycja
bdu
12
Igor T. Podolak, WMiI UJ
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
12/32
Ryzyko i koszt
.
Denicja
.
Niech (x, y, f (x)) X Y Y bdzie trjk wektor wejciowy x,
odpowied y i predykcja f (x). Wtedy mapowanie
c : X Y Y [0, ) speniajce c(x, y, y) = 0 x y nazywamy
funkcj
kosztu (loss function).
.
.
Uwaga
.
Koszt jest ograniczony od dou, a std nigdy nie otrzymamy dodatkowego
zysku
za jak niezwyk predykcj.
.
13
Igor T. Podolak, WMiI UJ
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
13/32
Klasykacja binarna
.
Denicja
.
Bd niepoprawnej klasykacji zlicza przypadki, gdy przykad jest klasykowany
niepoprawnie
{
c(x, y, f (x)) =
0,
1,
jeli f (x) = y
w przeciwnym przypadku
.
.
Uwaga
.
.Nie rozrnia midzy rnymi bdami typu false positive i false negative
14
Igor T. Podolak, WMiI UJ
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
14/32
Klasykacja binarna
.
Denicja
.
Asymetryczny bd niepoprawnej klasykacji zlicza przypadki, gdy przykad jest
klasykowany niepoprawnie biorc pod uwag
{
c(x, y, f (x)) =
0,
c(x),
jeli f (x) = y
w przeciwnym przypadku
gdzie
c() moe by funkcj zalen od zadanego wejcia.
.
.
Uwaga
.
.A rozrnianie kamieni od diamentw?
.
Uwaga
.
Mona
uzaleni bd od oczekiwanej odpowiedzi.
.
15
Igor T. Podolak, WMiI UJ
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
15/32
Soft margin
.
Denicja
.
Niech etykiet klasy bdzie okrelona przez sgn(f (x)). Bd typu soft margin
bierze pod uwag odlego od hiperpaszczyny rozdzielajcej
{
0,
jeli f (x) y
c(x, y, f (x)) = max(0, 1yf (x))
1 yf (x), w przeciwnym przypadku
.
.
Uwaga
.
Dla
. wygodnych oblicze brana jest pod uwag take kwadratowa posta.
.
Denicja
.
Bd
logistyczny deniujemy jako c(x, y, f (x)) = ln(1 + exp(yf (x)))
.
16
Igor T. Podolak, WMiI UJ
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
16/32
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
17/32
Bd testowania
.
Denicja
.
Jeli poza zbiorem uczcy jest take dostpny zbir testujcy {x1 , . . . , xm }
dla ktrego bdziemy przewidywa y , to naszym celem jest minimalizacja
oczekiwanego bdu
m
1
Rtest [f ] =
c(x , y, f (x ))dP (y|x )
m i=1 Y
.
.
Denicja
.
[Oczekiwane ryzyko] Jeli nie ma wiedzy o przykadach testujcych, to celem
jest minimalizacja oczekiwanego bdu dla wszystkich moliwych zbiorw
przykadw
X Y
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
18/32
Ryzyko empiryczne
1. niestety wszystko co jest dostpne w trakcie nauczania to dane uczce
2. prawdziwy rozkad P (x, y) moemy aproksymowa
pemp (x, y) =
m
1
x (x)yi (y)
m i=1 i
.
Denicja
.
Ryzyko empiryczne deniujemy jako
Remp [f ] =
.
X Y
m
1
c(xi , yi , f (xi ))
m i=1
19
Igor T. Podolak, WMiI UJ
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
19/32
Spojrzenie statystyczne
likelihood i log-likelihood
L[f ] =
ln p(yi |f, xi )
i=1
20
Igor T. Podolak, WMiI UJ
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
20/32
ln p(yi |f, xi )
i=1
1+y
1y
ln P (y = 1|f (x)) +
ln P (y = 1|f (x))
2
2
= ln P (y|f (x)) dla y {1, +1}
c(x, y, f (x)) =
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
21/32
Gaussian
squared loss
2.0
2.0
1.5
1.5
c(x,y,f(x))
c(x,y,f(x))
2.5
1.0
0.5
Huber
Huber loss
1.0
0.5
0.0
0.0
3
(yf(x))
1 2
2
2
1
p(y f (x)) = exp( )
2
2
c(x, y, f (x)) =
(yf(x))
{
c(x, y, f (x)) =
1 2
2
|| 2
{
p(y f (x)) =
|| <
w.p.p.
2
)
exp( 2
exp( 2 ||)
|| <
w.p.p.
22
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
22/32
Laplacian
wart. bezwzgl.
2.0
2.0
1.5
1.5
c(x,y,f(x))
c(x,y,f(x))
2.5
1.0
0.5
rozklad
- insensitive
1.0
0.5
0.0
0.0
3
(yf(x))
c(x, y, f (x)) = ||
1
p(y f (x)) = exp(||)
2
(yf(x))
exp( max(|| , 0)
2(1 + )
23
Igor T. Podolak, WMiI UJ
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
23/32
Eksperymenty
1, 2, 3 i 5 neuronw
8
6
6
6
6
igor.podolak@uj.edu.pl
sieci wielowarstwowe
24
/32
24/32
Eksperymenty
7, 9, 12 i 16 neuronw
8
6
6
6
6
igor.podolak@uj.edu.pl
sieci wielowarstwowe
25
/32
25/32
Eksperymenty
21x9 oraz 17x11 neuronw
8
6
6
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
26/32
Eksperymenty
cele porwnywania modeli
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
27/32
Biasvariance decomposition
1. jeli przyjmiemy model Y = f (x) + , przy czym E[] = 0 oraz
V ar[] = 2 , to otrzymujemy rozkad bdu kwadratowego na proste
skadniki
Err(x0 ) = E[(Y f(x0 )2 |X = x0 ]
28
Igor T. Podolak, WMiI UJ
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
28/32
Biasvariance decomposition
1. jeli przyjmiemy model Y = f (x) + , przy czym E[] = 0 oraz
V ar[] = 2 , to otrzymujemy rozkad bdu kwadratowego na proste
skadniki
Err(x0 ) = E[(Y f(x0 )2 |X = x0 ]
28
Igor T. Podolak, WMiI UJ
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
28/32
Biasvariance decomposition
1. jeli przyjmiemy model Y = f (x) + , przy czym E[] = 0 oraz
V ar[] = 2 , to otrzymujemy rozkad bdu kwadratowego na proste
skadniki
Err(x0 ) = E[(Y f(x0 )2 |X = x0 ]
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
28/32
Bias-variance decomposition
Closest fit in population
1. MODEL SPACE to
obszar wszystkich
predykcji dla zaoonego
modelu
2. niebieskie koo to obszar
bdu z jakim widzimy
prawdziwe dane poprzez
zbir uczcy
Realization
Closest fit
Truth
Model bias
Estimation Bias
Shrunken fit
Estimation
Variance
RESTRICTED
MODEL SPACE
MODEL
SPACE
igor.podolak@uj.edu.pl
sieci wielowarstwowe
29
/32
29/32
Walidacja krzyowa
1. potrzebujemy metody okrelania bdu generalizacji gdy danych jest
ograniczona ilo
2. algorytm walidacji krzyowej
2.1 podziel zbir przykadw uczcych na K czci; zwykle K = 10 lub 5
2.2 dla k = 1, . . . , K
2.2.1 zbuduj model fk na zbiorze uczcym bez czci k
2.2.2 oblicz bd generalizacji na czci k-tej
1
N
i=1
L(xi , yi , f k(i) )
30
Igor T. Podolak, WMiI UJ
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
30/32
Metody bootstrap
(
)N
1
P (i Z ) = 1 1
1 e1 0.632
N
b
31
Igor T. Podolak, WMiI UJ
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
31/32
Bd ze zbiorw bootstrap
1.
d boot =
Err
1.1
N
B
1 1
L(xi , yi , fb (xi ))
B N b=1 i=1
P (i Z b ) 1 e1 0.632
1.2 zbiory b nakadaj si, wic estymacja bdu bdzie zbyt optymistyczna
1.3 klasykator binarny z rwn liczb przykadw w kadej klasie, z etykietami
niezalenymi od wej: oczekiwana warto 0.5 (1 0.632) = 0.184
2.
d
Err
(1)
1
1
L(xi , yi , fb (xi ))
N i=1 |C 1 |
1
bC
3.
d
Err
(.632)
d
= 0.368 err + 0.632 Err
(1)
igor.podolak@uj.edu.pl
sieci wielowarstwowe
/32
32/32