Neurale Netwerken Kunstmatige Intelligentie Rijksuniversiteit Groningen April 2005
2 hc 3 herhaling hc 2 herhaling hc 2 de delta regel de delta regel begin hc4 begin hc4 boek: H3, H4, H5 en 6.1 boek: H3, H4, H5 en 6.1
3 overzicht herhaling TLU’s trainen H3 en 4 herhaling TLU’s trainen H3 en 4 de delta regel H5 de delta regel H5 de sigmoid transfer function de sigmoid transfer function inleiding multilayer nets en 6.1 backpropagation inleiding multilayer nets en 6.1 backpropagation
4 een TLU met 2 inputs, 1 output y = 1 if a >= Θ y = 0 if a < Θ x1x1 w1w1 x2x2 w2w2 y
5 y = 1 if a >= Θ y = 0 if a < Θ x1x1 w1w1 x2x2 y w2w2 1 TLU trainen (2 inputs, 1 output) “ordening” patterns en opsplitsen in trainingset {p 1,..., p n } en testset {p n + 1,..., p m } training set van patterns {p 1,..., p n }, p i = (x i1, x i2, t i ) voor elk pattern p i gewichten aanpassen dmv. error estimate (t i – y i ) y i is de output die de TLU geeft t i is wat de output zou moeten zijn test set van patterns {p n + 1,..., p m } error op de test set is de prestatie maat testen gebeurt na elk epoch
6 the augmented weight vector y = 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 >= 0 y = 0 if w ∙ x < 0 w ∙ x = 0 decision hyperplane y = 1 if a >= Θ y = 0 if a < Θ x1x1 w1w1 x2x2 y w2w2 y = 1 if a >= 0 y = 0 if a < 0 x1x1 w1w1 x2x2 y w2w2 θ
7 w’ = w + αvw’ = w – αv t y w’ = w + α(t – y)v Δw = α(t – y)v vector components i = 1 t/m (n + 1): Δw i = α(t – y)v i w = (w 1, w 2,..., w n, θ) v = (v 1, v 2,..., v n, -1) Perceptron Training Rule
8 the perceptron training algorithm boek p. 34 repeat for each training vector pair (v, t) update weight vector w end for loop until y = t for all input vectors.
9 the perceptron training algorithm boek p. 34 repeat for each training vector pair (v, t) evaluate the output y when v is input to the TLU if y ≠ t then form new weight vector w’ according to (4.4) else do nothing end if end 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)
10 niet-lineair scheidbare klasses neuron 1 zegt AB, neuron 2 zegt AD: tabel 4.2 kan alleen als de input van klasse A is dit gaat ook op voor klasse B, C en D decoderen: tabel 4.3
11
12 overzicht herhaling TLU’s trainen H3 en 4 herhaling TLU’s trainen H3 en 4 de delta regel H5 de delta regel H5 de sigmoid transfer function de sigmoid transfer function inleiding multilayer nets en 6.1 backpropagation inleiding multilayer nets en 6.1 backpropagation
13 de delta regel train het netwerk zonder a priori kennis (zonder zelf de gewichten in te stellen) de perceptron regel (eq. 4.4) is hiervoor niet geschikt vandaar de delta regel...
14 gradient descent E “n + 1 weights” locale minima globaal minimum E w
15 formules In het boek worden formules opgesteld via tussenstappen. Bij het tentamen hebben we alleen de “eindproducten” nodig. Die krijg je erbij, maar je wordt wel getoetst op je begrip van de formules. Deze formule-kaart wordt op de website ge-update, bij het tentamen zal een uitdraai van de laatste versie uitrgedeeld worden.
16 where 1 ≤ i ≤ n + 1: gradient descent E n + 1 weights true error E: batch learning langzaam! E = f(w)
17 pattern training (sequential ipv. batch) error estimate e p : sequential learning snel, schatting delta regel w convergeert naar w 0, E(w 0 ) is een minimum bij niet lineair scheidbare problemen geeft w 0 het beste decision hyperplane perceptron regel w blijft oscilleren perceptron rule is afgeleid van hyperplane manipulation delta regel van gradient descent op de kwadratische fout
18 the delta rule training algorithm boek p. 59 repeat for each training vector pair (v, t) evaluate activation a when v is input to the TLU adjust each of the weights according to (5.13) end for loop until the rate of change of the error is sufficiently small.
19 y = 1 if a >= 0 y = 0 if a < 0 x1x1 w1w1 x2x2 y w2w2 θ tabel 5.1 in het boek, logical AND operator w1w1 w2w2 θx1x1 x2x2 atαδ*αδ*δw 1 **δw2δw2 δθδθ 0,000,400,3000-0,30-1,00-0,17-0,00 0,17 0,000,400,4801-0,08-1,00-0,23-0,00-0,230,23...
20 overzicht herhaling TLU’s trainen H3 en 4 herhaling TLU’s trainen H3 en 4 de delta regel H5 de delta regel H5 de sigmoid transfer function de sigmoid transfer function inleiding multilayer nets en 6.1 backpropagation inleiding multilayer nets en 6.1 backpropagation
21 de sigmoid transfer functie σ(a) σ’(a) a 0,25
22 σ(a) σ’(a) a uitbreiding van één TLU naar een single layer netwerk: σ’(a) Is het grootst rond a = 0, dan zijn de aanpassingen aan de gewichtsvector ook het grootst. input pattern index p neuron index j gewichts/input index i
23 batch learning, echte gradient decent sequential learning, α = 0,25 sequential learning, α = 0,6 sequential learning, α = 1,6
24 overzicht herhaling TLU’s trainen H3 en 4 herhaling TLU’s trainen H3 en 4 de delta regel H5 de delta regel H5 de sigmoid transfer function de sigmoid transfer function inleiding multilayer nets en 6.1 backpropagation inleiding multilayer nets en 6.1 backpropagation
25 multilayer nets en backpropagation gradient descent op error E(w) sequential learning (pattern mode of training) outputs worden vergeleken met targets probleem: geen targets voor hidden neurons credit assignment problem
26 de gegeneraliseerde delta regel input pattern index p neuron index k, j gewichts/input index i I k : de verzameling van neuronen die de output van neuron k als input hebben
27 forward pass, backward pass forward pass: output doorgeven aan de volgende laag backward pass: δ j teruggeven aan de vorige laag
(1,1) x2x2 x1x1 (0,1) (1,0) (0,0) 0 x1x1 x2x2 t p1p1 110 p2p2 101 p3p3 011 p4p4 000 XOR probleem: niet lineair scheidbaar, niet op te lossen door single layer net
29 XOR backpropagation demo