You are on page 1of 5

Sven Lonari

Neuronske mree: Perceptron

Pregled predavanja

Neuronske mree:
Perceptron

Uvod
Jednoslojni perceptron
Algoritam u enja
Klasifikator maksimalne vjerojatnosti
Diskusija
Zadaci

Prof. dr. sc. Sven Lon ari


Fakultet elektrotehnike i raunarstva
sven.loncaric@fer.hr
http://ipg.zesoi.fer.hr

Uvod

Jednoslojni perceptron

Perceptron je najjednostavnija neuronska mrea za


klasifikaciju uzoraka koji su linearno separabilni (koji
lee na suprotnim stranama hiperravnine)
Perceptron se sastoji od jednog neurona
Algoritam u enja razvio je Rosenblatt, 1958
Rosenblatt je dokazao da ako su uzorci linearno
separabilni onda algoritam uenja konvergira i
postavlja hiperravninu odluke tono izmeu dvije
klase (teorem konvergencije perceptrona)
Da bi perceptron radio uzorci moraju biti linearno
separabilni

x1
x2

w1
w2

(.)

wp

w x
p

j =1

y = (v )

xp

v=

McCulloch-Pitts model neurona

Podruja klasifikacije

Jednoslojni perceptron

Da bi se prikazala podruja klasifikacije C1 i C2


moe se promatrati iznos varijable v u ovisnosti o p
ulaznih varijabli x1, x2, , xp
U sluaju elementarnog perceptrona postoje dva
podruja odvojena hiperravninom definiranom
izrazom:

Perceptron slui za klasifikaciju skupa ulaznih


vektora oblika x = [x1 x2 xp]T u jednu od dvije
klase C1 ili C2
Klasifikacija se odvija tako da se vektor x kojeg
treba klasificirati dovede na ulaz perceptrona
Ako je izlaz perceptrona:

w x = 0
p

y = 1 onda vektor x pripada klasi C1


y = -1 onda vektor x pripada klasi C2

j =1

4-1

Sven Lonari
Neuronske mree: Perceptron

Primjer klasifikacije
u dvije dimenzije
Kod 2-D klasifikacije
granica izmeu klasa
definirana je pravcem
w1x1+w2x2- = 0
Toka koja lei iznad
pravca pripada klasi C1
Toka ispod pravca
pripada klasi C2

Jednoslojni perceptron
Prag neurona
moemo
prikazati kao
dodatni ulaz s
fiksnim
iznosom -1 i
pripadnom
teinom

x2
granica
Klasa C1
x1
Klasa C2

Jednoslojni perceptron

x0 =-1
x1
x2

w0=
w1
w2

(.)

wp
xp

Klasifikacija

Definirajmo p+1 dimenzionalni ulazni vektor kao:


x(n) = [ -1 x1(n) x2(n) xp(n) ]T
Definirajmo p+1 dimenzionalni vektor teina kao:
w(n) = [ (n) w1(n) w2(n) wp(n) ]T
Interna aktivnost neurona v(n) dana je izrazom za
linearnu kombinaciju ulaza i teina (skalarni produkt
vektora):
v(n) = wT(n) x(n)
Za fiksni n jednadba wT(n) x(n) = 0 definira
hiperravninu u p-dimenzionalnom prostoru
koordinata x1, x2, , xp

Ako su dvije klase uzoraka linearno separabilne


onda postoji vektor teina w tako da vrijedi:
wTx >= 0
za svaki vektor x koji pripada klasi C1 i
wT x < 0
za svaki vektor x koji pripada klasi C2
Problem u enja sastoji se u tome da se odredi
vektor teina w koji e omoguiti korektnu
klasifikaciju

Algoritam uenja

Algoritam uenja (nastavak)


2. Ina e teinski vektor w(n) se mijenja na slijede i
nain:

1. Ako je n-ti vektor x(n) korektno klasificiran, teina


w(n) se ne mijenja:

w(n+1) = w(n) - (n) x(n)


ako je w(n)T x(n) >= 0 i x(n) pripada klasi C2
w(n+1) = w(n) + (n) x(n)
ako je w(n)T x(n) < 0 i x(n) pripada klasi C1
gdje je (n) pozitivni parametar koji odreuje brzinu uenja

w(n+1) = w(n)
ako je w(n)T x(n) >= 0 i x(n) pripada klasi C1
w(n+1) = w(n)
ako je w(n) T x(n) < 0 i x(n) pripada klasi C2

4-2

Sven Lonari
Neuronske mree: Perceptron

Klasifikator maksimalne
vjerojatnosti

Klasifikator maksimalne
vjerojatnosti

engl. maximum likelihood (ML) classifier


Pomou jednoslojnog perceptrona moe se
realizirati klasifikator koji radi na principu
maksimalne vjerojatnosti (ML klasifikator)
Problem klasifikacije uzoraka moe se promatrati
kao problem estimacije klase kojoj nepoznati uzorak
pripada

To je problem estimacije parametara (engl.


parameter estimation)
Parametri su veliine koje su fiksne ali nepoznate (u
sluaju klasifikatora nepoznati parametar koji elimo
procjeniti je indeks klase kojoj uzorak pripada)

Estimacija parametara

ML klasifikator
Neka je uzorak opisan p-dimenzionalnim sluajnim
vektorom x koji ima vektor srednje vrijednosti =
E[x] i kovarijancijsku matricu C = E[(x-)(x-)T]
Ako pretpostavimo da slu ajni vektor x ima
Gaussovu razdiobu onda je funkcija gusto e
vjerojatnosti dana izrazom:

Zamislimo da imamo skup uzoraka koji moemo


prema klasama raspodjeliti u podskupove X1, X2, ,
XM
Neka je funkcija gusto e vjerojatnosti uzoraka x za
pojedine klase dana izrazima f (x|zj) gdje je zj
nepoznati vektor parametara koji opisuje klasu Cj
f (x|z) zove se vjerojatnost (engl. likelihood) od z s
obzirom na opaeni vektor x
ML estimacija parametra z je neka vrijednost z koja
maksimizira vjerojatnost f (x|z)

f (x) =

ML klasifikator

1
1

exp (x )T C1 (x )
(2 ) p / 2 (det C)1 / 2
2

ML klasifikator

Pretpostavimo radi ilustracije da imamo problem s


dvije klase (M=2) i da je vektor uzorka x
karakteriziran slijedeim parametrima zavisno da li
pripada klasi C1 ili C2
Ako uzorak x pripada klasi C1:
srednja vrijednost = 1 i kovarijancijska matrica = C
Ako uzorak x pripada klasi C2:
srednja vrijednost = 2 i kovarijancijska matrica = C

Problem ML estimacije parametara se sada sastoji u


tome da za neki opaeni vektor x trebamo procjeniti
da li se ve a vjerojatnost pojave tog vektora dobiva
za vrijednost parametra 1 ili za 2

4-3

Sven Lonari
Neuronske mree: Perceptron

ML klasifikator

ML klasifikator

Za dane dvije klase moemo pisati pripadne funkcije


gusto e vjerojatnosti kao:
f (x | Ci ) =

Logaritmi vjerojatnosti dani su izrazom gdje su samo


zadnja dva pribrojnika ovisna o indeksu klase i:

1
1

exp (x i )T C1 (x i )
(2 ) p / 2 (det C )1 / 2
2

ln f ( x | Ci ) =

Dakle treba odrediti za dani x koja je od vjerojatnosti


f (x|C1) i f (x|C2) ve a
Da bi to odredili radi pojednostavljenja moemo
promatrati i logaritme vjerojatnosti ln f (x|C1) i ln f
(x|C2)

Dakle za usporedbu dvaju logaritama vjerojatnosti


dovoljno je promatrati izraze:
1 T
T
l1 (x ) = 1 C1x 1 C 11
2
1 T
T
l2 (x ) = 2 C1x 2 C12
2

ML klasifikator

ML klasifikator

l (x ) = l1 (x ) l2 (x ) = (1 2 ) C1x
T

1 T 1
1 C 1 2T C 1 2
2

Dakle ML klasifikator moe se realizirati pomou


perceptrona koji ima vektor teina w i prag
Interna aktivnost takvog perceptrona jednaka je:
l = wx -
Klasifikacija nepoznatog uzorka x se obavlja na
slijedei nain:

Razlika l(x) pokazuje koja je vjerojatnost ve a:


ako je l(x) >= 0 onda je f (x|C1) vea vjerojatnost (klasa C1)
ako je l(x) < 0 onda je f (x|C2) vea vjerojatnost (klasa C2)

Moe se vidjeti da je veza izmeu l(x) i x linearna:

ako je l > 0 onda je l1>l2 i znai da x pripada klasi C1


ako je l < 0 onda je l1<l2 i znai da x pripada klasi C2

l (x) = wT x

gdje je:

w = C 1 (1 2 )
= 1 1T C11 2T C12
2

ML klasifikator i perceptron

ML klasifikator i perceptron

ML klasifikator i perceptron su linearni klasifikatori


ML klasifikator je izveden uz pretpostavku da se
klase preklapaju (zato se klase ne mogu tono
separirati) dok perceptron radi uz pretpostavku da
su klase separabilne

Perceptron ne pretpostavlja nikakve distribucije dok


za ML klasifikaciju treba pretpostaviti (tj. znati)
distribucijske funkcije ulaznih uzoraka
Uenje perceptrona je adaptivno i jednostavnije za
realizaciju dok je dizajn adaptivnog Gaussovog ML
klasifikatora sloeniji

granica
f1(x)

f2(x)
x

klasa 2

1
1
1 T
p
T
ln (2 ) ln(det C ) x T C 1 x + i C 1x i C 1i
2
2
2
2

klasa 1

4-4

Sven Lonari
Neuronske mree: Perceptron

Diskusija

Zadaci

Minski je kritizirao Rosenblattov perceptron da ne


moe nau iti ni tako jednostavnu funkciju kao to je
XOR
To nije mogu e jer dva skupa to aka na slici nisu
linearno separabilni

Problem 4.1.
Jednoslojni perceptron je linearni klasifikator. Objasniti ovu
tvrdnju.

Problem 4.2.
Dane su dvije jednodimenzionalne klase C1 i C2 s
Gaussovim distribucijama koje imaju varijancu jednaku 1 i
srednje vrijednosti 1=-10 i 2=10. Izraunati klasifikator za
separaciju ovih klasa.

x2

x1

4-5

You might also like