Sunteți pe pagina 1din 11

Curs 6

Perceptronul si regula de instruire


In 1943, Warren McCulloch si Walter Pitts au inventat unul dintre primii
neuroni artificiali. Principala caracteristica a modelului lor neuronal este ca o
suma ponderata a semnalelor de intrare este comparata cu un prag pentru a genera
iesirea neuronului, cand suma este mai mare sau egala cu pragul iesirea este 1,
altfel 0, insa fara o regula de instruire.
In 1950, Frank Rosenblatt si alti cercetatori au dezvoltat o clasa de retele
neuronale numite perceptroni, avand neuroni similari cu cei ai lui McCulloch si
Pitts. Contributia majora a lui Rosenblatt este introducerea unei regului de instruire
pentru retelele de tip perceptron pentru a rezolva probleme de recunoasterea
formelor, dovedind si ca aceasta regula va converge intotdeauna catre ponderile
corecte ale retelei daca acestea exista pentru rezolvarea problemei respective.

Limitarea Perceptronului este data de posibilitatea de a rezolva numai


probleme liniar separabile insa aceasta a fost depasita prin implementarea variantei
de Perceptron multistrat mai tarziu in 1980. Perceptronul este vazut inca o retea
neuronala importanta pentru ca este rapida si care rezolva cu incredere clasa de
probleme pe care le poate rezolva.
De reamintit ca regulile de instruire ale retelelor neuronale pot fi
Supervizate, Nesupervizate si Cu recompensa / Fortata (Reinforcement).

Arhitectura Perceptronului

Reteaua de tip Perceptron poate fi schematizata ca:


Datorita functiei treapta unitate

fiecare neuron din retea divide spatiul intrarilor in doua regiuni. Este util de
investigat marginile dintre acestea. Cel mai simplu caz este cel al unui perceptron
cu un singur neuron cu doua intrari:

Perceptronul cu un singur neuron

Daca consideram perceptronul cu neuron si doua intrari ca in Figura:

Iesirea acestei retele este determinata de

Limita de decizie este determinata de vectorii de intrare pentru care intrarea retelei
este zero:
Pentru a da un exemplu se vor considera urmatoarele valori pentru ponderi si prag

Limita de decizie va fi:

Aceasta defineste o linie in spatiul intrarilor astfel incat pe o parte a liniei iesirea
retelei va fi 0 si pe cealalta parte iesirea va fi 1. Pentru a trasa linia se vor gasi
punctele de intersectie cu axele. Pentru p2:

Iar pentru gasirea intersectiei lui p1 setam p2 la 0

Limita de decizie este reprezentata in figura si pentru a afla in ce parte a acesteia


iesirea va fi 1 se poate testa un punct.
Pentru intrarea p = [2 , 0]T , iesirea retelei va fi:

Deci iesirea retelei va fi 1 pentru regiunea de sus si in dreapta liniei de separatie –


zona umbrita din figura:
In primul rand trebuie retinut ca limita de separatie este intotdeauna ortogonala cu
ponderea w. Limita de Separatie este definita de:

Pentru toate punctele de pe limita de separate produsul oricarui vector de intrare cu


vectorul pondere este acelasi. Aceasta implica ca acesti vectori de intrare vor avea
aceeasi proiectie pe vectorul pondere deci vor fi situati pe o linie ortogonala pe
vectorul pondere.

De exemplu acest concept se poate aplica pentru a proiecta o retea perceptron care
sa implementeze o functie logica simpla: Poarta SI logic ( AND)
Perechile intrare/tintadeiesire pentru poarta SI logic sunt:
Primul pas al proiectarii este selectarea unei limite de decizie. Se doreste gasirea
unei linii care separa cercurile albe de cele negre. Asa cum reiese din figura exista
o infinitate de solutii la aceasta problema. Pare eficient sa se aleaga linia care trece
la jumatatea distantei dintre cele doua categorii de intrari asa cum se vede in figura.
Apoi se va alege un vector pondere care sa fie ortogonal pe limita de decizie iar
acesta va avea orice dimensiune rezultand posibilitati infinite. O alegere posibila
este:

In final se va calcula pragul b prin alegerea unui punct pe limita de decizie si


scriem relatia intrare – iesire.

Daca folosim

Acum se poate testa reteaua cu una din perechile intrari/tintaiesire. Daca se aplica
p2 retelei iesirea va fi:
Perceptronul cu mai multi neuroni

Pentru perceptronii cu mai multi neuroni va fi o limita de decizie pentru fiecare


neuron care va fi definita de:

Un perceptron cu un singur neuron poate clasifica vectorii in doua categorii


deoarece iesirea sa poate fi 0 sau 1. Un perceptron cu mai multi neuroni poate
clasifica intrarile in mai multe categorii, fiecare fiind reprezentata de un vector de
iesire diferit. Deoarece fiecare element al iesirii poate fi sau o sau 1 exista un total
de 2n categorii posibile unde n este numarul de neuroni.

Regula de Instruire a Perceptronului

Aceasta regula este un exemplu de instruire supervizata in care este furnizat un set
de exemple de comportament dorit al retelei:

p este o intrare si t este iesirea tinta corespunzatoare. Pe masura ce fiecare intrare


este aplicata retelei, iesirea retelei este comparata cu tinta. Regula de instruire
ajusteaza ponderile si pragurile retelei in sensul deplasarii iesirii retelei cat mai
aproape de tinta dorita.

Construirea regulilor de instruire

Instruirea incepe prin initializarea parametrilor retelei (ponderi si praguri) urmata


de prezentarea de vectori de intrare retelei. Daca reteaua nu returneaza valoarea
corecta inseamna ca vectorul initial al ponderilor produce o limita de decizie care
clasifica incorrect intrarea respectiva. Acest vector al ponderilor trebuie modificat
in sensul de a fi orientat catre sensul in care in viitor va a vea o sansa mai mare de
a clasifica corect intrarea respectiva.

O abordare ar fi ca ponderea w sa fie setata egala cu intrarea p, simplu si ar asigura


ca va clasifica acea intrare corect in viitor.
O alta posibilitate va fi sa se adauge p la w. Prin adaugarea lui p la w vectorul
pondere w va indica mai mult in directia lui p.

Apoi se va trece la urmatoarea intrare si se vor continua schimbarile ponderilor


ciclic cu toate intrarile pana cand toate vor fi clasificate corect.

Urmatorul vector de intrare va fi p2 si daca atunci cand este prezentat intrarii


retelei ca vector din clasa 0 va fi clasificat ca din clasa 1 se va dori ca vectorul
ponderilor sa se indeparteze de intrarea respectiva prin inlocuirea adunarii cu
scadere.

Daca la prezentarea oricarui vector de intrare catre neuron acesta va furniza la


iesire clasificarea corecta pentru respectiva intrare se va aplica a treia parte a
regulii: daca ponderea a functionat corect nu mai trebuie modificata.

Regula de instruire unificata

Cele trei reguli deduse anterior pot fi rescrise ca o singura expresie. Definim o
noua variabila e – eroarea perceptronului:

Astfel cele trei reguli Daca – atunci, (If – then) se pot rescrie cu ecuatii:

Analizand primele doua reguli se observa ca semnul dinaintea intrarii p este la fel
ca semnul erorii e, iar obsenta lui p din a treia regula corespunde lui e = 0. Astfel
se pot unifica cele trei regului intr-o singura expresie:
Aceasta regula poate fi extinsa pentru instruirea pragului tinand cont ca pragul este
o simpla pondere cu intrarea permanent 1.

Instruirea Perceptronilor cu mai multi neuroni

Regula perceptronului anterioara actualizeaza vectorul pondere al unui perceptron


cu un singur neuron. Se poate generaliza aceasta regula pentru un perceptron cu
mai multi neuroni dupa cum urmeaza. Pentru a actualiza randul i al matricii de
ponderi se va folosi:

Iar pentru actualizarea elementului i al vectorului prag se va folosi:

Regula Perceptronului poate fi scrisa convenabil in notatie matriciala:

Dovada de Convergenta a regulii de instruire a Perceptronului se lasa ca studiu


individual optional din materialul bibliografic indicat la curs. Se poate deci
demonstra ca aceasta regula va converge intotdeauna catre ponderi care indeplinesc
clasificarea dorita presupunand ca aceste ponderi exista!

Limitari ale Perceptronului

Regula de instruire a perceptronului va converge garantat catre o solutie intr-un


numar finit de pasi, atat timp cat exista o solutie.
Perceptronul este capabil sa imparta spatial intrarilor in doua regiuni. Limita de
separatie intre regiuni este data de ecuatia:
Aceasta este o limita de separate liniara (hiperplan). Perceptronul poate fi folosit
pentru clasificarea vectorilor de intrare care pot fi separati de o limita liniara.
Acesti vectori se numesc liniar separabili. Problema portii logice SI discutata este
un exemplu bidimensional de problema liniar separabila.
In practica, foarte multe probleme nu sunt liniar separabile. Exemplul clasic este
poarta SAU EXCLUSIV (XOR) si problema care nu poate fi rezolvată de un
perceptron este dată de sarcina de clasificare a setului de date rezultat de la ieşirea
unei porţi sau-exclusiv. Această problemă este exemplul clasic în care vectorii de
trăsături nu sunt liniar separabili şi deci problema nu poate fi rezolvată de către o
reţea neuronală artificială de tip neuron sau perceptron.
Tinand cont de tabelul de adevar al functiei XOR”

x1 x2 t
p1 0 0 0
p2 0 1 1
p3 1 0 1
p4 1 1 0

Reprezentate:

Rezulta ca perechile intrare/iesiretinta pentru poarta SAU EXCLUSIV sunt:

Indiferent de poziţionarea suprafeţei discriminant, va rezulta o grupare în aceeaşi


regiune a spaţiului, deci în aceeaşi clasă, a două elemente aparţinând uneia dintre
clase dar va exista şi un element aparţinând celeilalte clase iar in cea de a doua
regiune spaţială va exista doar un singur element care este corect clasificat.
Rezultă astfel ca pentru această simplă problemă s-ar clasifica în mod greşit cel
puţin un element în situația utilizării unui perceptron.
p2
p4

p1

p3
Suprafaţa de decizie S1 grupează în mod corect elementele p1 şi p4 dar în aceeaşi
regiune a spaţiului se regăseşte şi elementul p3 care este clasificat incorect.

Regula de instruire a neuronului McCulloch-Pitts (Perceptron) este una foarte


eficientă, pentru clase liniar separabile, dar nu are o capacitate de generalizare
foarte bună dar nu este un clasificator optimal deoarece determină diferite
suprafețe de decizie funcție de diferitele condiții de inițializare aleatorie a
ponderilor, în timp ce un clasificator optimal va furniza doar o singură suprafață de
decizie, poziționată între distribuţiile celor două clase, plasată simultan și la
distanţe egale de cele două frontiere ale claselor.
Acest fapt este datort algoritmului, astfel după ce ultimul eşantion a fost clasificat
corect procesul de învăţare se opreşte, lăsând suprafaţa de decizie foarte aproape de
acest eşantion.

S-ar putea să vă placă și