Neurale Netwerken

32
Neurale Neurale Netwerken Netwerken Kunstmatige Intelligentie Kunstmatige Intelligentie Rijksuniversiteit Rijksuniversiteit Groningen Groningen April 2005

description

Neurale Netwerken. Kunstmatige Intelligentie Rijksuniversiteit Groningen. April 2005. hc 2. TLUs, lineaire scheidbaarheid en vectoren TLUs trainen; de perceptron regel boek: H3 en H4. overzicht. voorbeeld TLU: logical AND operator 3.1 - PowerPoint PPT Presentation

Transcript of Neurale Netwerken

Page 1: Neurale Netwerken

NeuraleNeurale NetwerkenNetwerkenKunstmatige IntelligentieKunstmatige Intelligentie

Rijksuniversiteit GroningenRijksuniversiteit Groningen

April 2005

Page 2: Neurale Netwerken

22

hc 2hc 2

• TLUs, lineaire scheidbaarheid en TLUs, lineaire scheidbaarheid en vectorenvectoren

• TLUs trainen; de perceptron regelTLUs trainen; de perceptron regel

• boek: H3 en H4boek: H3 en H4

Page 3: Neurale Netwerken

33

overzichtoverzicht

• voorbeeld TLU: logical AND operator voorbeeld TLU: logical AND operator 3.13.1

• vectoren en lineaire scheidbaarheid vectoren en lineaire scheidbaarheid 3.2, 3.2, 3.33.3

• TLU’s trainen TLU’s trainen 4.1, 4.2, 4.34.1, 4.2, 4.3

• uitbreiding uitbreiding 4.4, 4.5, 4.64.4, 4.5, 4.6

Page 4: Neurale Netwerken

4

een TLU met 2 inputs, 1 output

22111

xwxwxwan

iii

y = 1 if a >= Θy = 0 if a < Θ

x1w1

x2

w2

y

Page 5: Neurale Netwerken

5

logical AND operator

22111

xwxwxwan

iii

y = 1 if a >= Θy = 0 if a < Θwhere Θ = 1,5

x11

x2

1

y

Page 6: Neurale Netwerken

6

input pattern 1

01*01*01

n

iiixwa y = 1 if a >= Θ

y = 0 if a < Θwhere Θ = 1,5

01

0

1

0

Page 7: Neurale Netwerken

7

input pattern 2

11*11*01

n

iiixwa y = 1 if a >= Θ

y = 0 if a < Θwhere Θ = 1,5

01

1

1

0

Page 8: Neurale Netwerken

8

input pattern 3

11*01*11

n

iiixwa y = 1 if a >= Θ

y = 0 if a < Θwhere Θ = 1,5

11

0

1

0

Page 9: Neurale Netwerken

9

input pattern 4

21*11*11

n

iiixwa y = 1 if a >= Θ

y = 0 if a < Θwhere Θ = 1,5

11

1

1

1

Page 10: Neurale Netwerken

10

van klasse grensnaar decision hyperplane

baxx

wx

w

wx

xwxw

xwxw

12

21

2

12

1122

2211

In het voorbeeld van de logical AND operator wordt dat x2 = -1 * x1 + 1,5

de klasses moeten te scheiden zijn door een rechte lijn (hyperplane), anders kan een TLU het niet oplossen.

Page 11: Neurale Netwerken

1111

overzichtoverzicht

• voorbeeld TLU: logical AND operatorvoorbeeld TLU: logical AND operator 3.13.1

• vectoren en lineaire scheidbaarheidvectoren en lineaire scheidbaarheid 3.2, 3.2, 3.33.3

• TLU’s trainen TLU’s trainen 4.1, 4.2, 4.34.1, 4.2, 4.3

• uitbreiding uitbreiding 4.4, 4.5, 4.64.4, 4.5, 4.6

Page 12: Neurale Netwerken

12

vectoren

2D input space(bv. AND):

x = (x1, x2)

nD input space:(bv. 6 * 8 pixels):

x = (x1, x2, ..., xn) w = (w1, w2, ..., wn)

Page 13: Neurale Netwerken

13

kv = (kv1, kv2, ..., kvn)

w = u + v

w = (u1 + v1, u2 + v2, ..., un + vn)

w = u - vw = (u1 - v1, u2 - v2, ..., un - vn)

v

u -v

u

w

w

uv

wu

Page 14: Neurale Netwerken

14

inproduct

coswvwv

n

iiivwwv

1

v

w

Page 15: Neurale Netwerken

15

lineaire scheidbaarheid

Page 16: Neurale Netwerken

1616

overzichtoverzicht

• voorbeeld TLU: logical AND operatorvoorbeeld TLU: logical AND operator 3.13.1

• vectoren en lineaire scheidbaarheid vectoren en lineaire scheidbaarheid 3.2, 3.2, 3.33.3

• TLU’s trainenTLU’s trainen 4.1, 4.2, 4.34.1, 4.2, 4.3

• uitbreiding uitbreiding 4.4, 4.5, 4.64.4, 4.5, 4.6

Page 17: Neurale Netwerken

17

n

iiixwa

1y = 1 if a >= Θy = 0 if a < Θ

x1 w1

x2 yw2

1 TLU trainen (2 inputs, 1 output)• “ordening” patterns en opsplitsen in

trainingset {p1, ..., pn} en testset {pn + 1, ..., pm}

• training set van patterns {p1, ..., pn}, pi = (xi1, xi2, ti)• voor elk pattern pi gewichten aanpassen

dmv. error estimate (ti – yi)yi is de output die de TLU geeft

ti is wat de output zou moeten zijn

• test set van patterns {pn + 1, ..., pm}error op de test set is de prestatie maattesten gebeurt na elk epoch

Page 18: Neurale Netwerken

18

the augmented weight vectory = 1 if w ∙ x >= Θy = 0 if w ∙ x < Θ w ∙ x = Θ decision hyperplane

Θ kun je zien als extra gewicht met vaste input -1

y = 1 if w ∙ x >= 0y = 0 if w ∙ x < 0 w ∙ x = 0 decision hyperplane

n

iiixwa

1y = 1 if a >= Θy = 0 if a < Θ

x1 w1

x2 yw2

n

iiixwa

1y = 1 if a >= 0y = 0 if a < 0

x1 w1

x2 yw2

θ

-1

Page 19: Neurale Netwerken

19

de gewichtsvector aanpassenmisclassificatie:1. t = 1, y = 0 miss

inputvector v = (v1, v2, ..., vn) en gewichtsvector w = (w1, w2, ..., wn)wijzen verschillende kanten op terwijl dat niet de bedoeling isinproduct is negatiefpas de gewichtsvector aan, zodat het inproduct positief wordt

2. t = 0, y = 1 false alarminputvector en gewichtsvector wijzen dezelfde kant op terwijl dat niet de bedoeling ishet inproduct is positiefpas de gewichtsvector aan, zodat het inproduct negatief wordt

learning rate α ongeveer 0,2

Page 20: Neurale Netwerken

20

w’ = w + αv w’ = w – αv

t y

w’ = w + α(t – y)v 1 1

1 00 10 0

Δw = α(t – y)vvector components

i = 1 t/m (n + 1): Δwi = α(t – y)viw = (w1, w2, ..., wn, θ)

v = (v1, v2, ..., vn, -1)

Perceptron Training Rule

Page 21: Neurale Netwerken

21

the perceptron training algorithm boek p. 34

repeatfor each training vector pair (v, t)

update weight vector wend for loop

until y = t for all input vectors

.

Page 22: Neurale Netwerken

22

the perceptron training algorithm boek p. 34

repeatfor each training vector pair (v, t)

evaluate the output y when v is input to the TLUif y ≠ t then

form new weight vector w’ according to (4.4)

elsedo nothing

end ifend for loop

until y = t for all input vectors

(4.4) w’ = w + α(t – y)v

Perceptron Convergence Theorem:Als twee klasses lineair scheidbaar zijn zal het toepassen van

bovenstaand algoritme leiden tot een decision hyperplane dat de twee klasses van elkaar scheidt. bewezen door Rosenblatt (1962)

Page 23: Neurale Netwerken

23

n

iiixwa

1

y = 1 if a >= 0y = 0 if a < 0

x1

w1

x2 y

w2

θ-1

δwi = α(t – y)vi

where α = 0.25

tabel 4.1 in het boek, logical AND operator

w1 w2 θ x1 x2 a y t α(t–y) δw1 δw2 δ θ0,0 0,4 0,3 0 0 0 0 0 0 0 0 0

0,0 0,4 0,3 0 1 0,4 1 0 -0,25 0 -0,25 0,25

0,0 0,15 0,55 1 0 0 0 0 0 0 0 0

0,0 0,15 0,55 1 1 0,15 0 1 0,25 0,25 0,25 -0,25

0,25 0,4 0,3

Page 24: Neurale Netwerken

2424

overzichtoverzicht

• voorbeeld TLU: logical AND operatorvoorbeeld TLU: logical AND operator 3.13.1

• vectoren en lineaire scheidbaarheid vectoren en lineaire scheidbaarheid 3.2, 3.2, 3.33.3

• TLU’s trainen TLU’s trainen 4.1, 4.2, 4.34.1, 4.2, 4.3

• uitbreidinguitbreiding 4.4, 4.5, 4.64.4, 4.5, 4.6

Page 25: Neurale Netwerken

25

het perceptron

Page 26: Neurale Netwerken

26

Page 27: Neurale Netwerken

27

niet-lineair scheidbare klasses

neuron 1 zegt AB, neuron 2 zegt AD: tabel 4.2kan alleen als de input van klasse A isdit gaat ook op voor klasse B, C en Ddecoderen: tabel 4.3

Page 28: Neurale Netwerken

28

Page 29: Neurale Netwerken

29

Page 30: Neurale Netwerken

30

neurale netwerken: modellen op een gewone von Neumann computer...

black box:

Page 31: Neurale Netwerken

3131

overzichtoverzicht

• voorbeeld TLU: logical AND operatorvoorbeeld TLU: logical AND operator 3.13.1

• vectoren en lineaire scheidbaarheid vectoren en lineaire scheidbaarheid 3.2, 3.2, 3.33.3

• TLU’s trainen TLU’s trainen 4.1, 4.2, 4.34.1, 4.2, 4.3

• uitbreiding uitbreiding 4.4, 4.5, 4.64.4, 4.5, 4.6

Page 32: Neurale Netwerken

3232

volgende collegevolgende college

– Herhaling van vandaagHerhaling van vandaag•TLUs, lineaire scheidbaarheid en vectorenTLUs, lineaire scheidbaarheid en vectoren

•TLUs trainen; de perceptron regelTLUs trainen; de perceptron regel

– De delta regelDe delta regel

• boek: H3, H4 enboek: H3, H4 en H5H5