Biologie | Chimie | Didactica | Fizica | Geografie | Informatica | |
Istorie | Literatura | Matematica | Psihologie |
Scopul antrenarii in cazul RN feed-forword este calculul ponderilor astfel incat reteaua sa invete setul de sabloane de antrenare cu eroarea impusa. Din start se cunoaste arhitectura retelei, numarul de straturi, numarul de neuroni din stratul ascuns. Se cunoaste setul de sabloane si eroarea totala impusa.
Pas1. Se initializeaza ponderile retelei cu numere aleatoare mici, de exemplu din intervalul [-0.5, +0.5].
SE REPETA (for(;;))
Inceput
Pentru i=1, Nr.totalSabloane se repeta (for(i=1; . ))
Inceput
Se propaga inainte intrarile sablonului i
Se calculeaza eroarea de invatare a sablonului i
Se propaga ianpoi ajustand ponderile conform regulii δ
Sfarsit
Calculez eroarea totala de invatare a setului de sabloane
sfarsit
CAT TIMP eroarea totala de invatare set sabloane este mai mare decat eroarea impusa
Calcularea erorii de invatare pentru un sablon oarecare
Se poate folosii ca module suma modulelor diferenta intre iesirea dorita si cea calculata pentru fiecare neuron
In mod tipic se foloseste abaterea medie patratica: suma patratelor diferentelor.
Eroarea totala de invatare a setului de sabloane
Se calculeaza ca suma erorilor de invatare pentru fiecare sablon.
In aplicarea regulii δ avem nevoie de derivata functiei de transfer.
Implementam printr-un program etapa de programare inainte intr-o retea neuronala ce are Ni neuroni de intrare, NH neuroni in stratul ascuns si NO neuroni de iesire.
Se cunosc ponderile; le vom initializa cu numere aleatoare mici in gama (-0.5; +0.5).
Se cunosc intrarile; le citim de la tastatura, vrem sa calculam iesirile. De la tastatura citim numarul de neuroni de intrare, din stratul ascuns si de iesire.
Etapa aceasta de propagare inainte se gaseste ca atare in cazul testarii.
Class PropagareInainte
For(i=0;i<NO;i++)
Sistem.out.println("iesirea"+i+"+y0[i]);
}
}
Regula δ
Indiferent ca avem de actualizat ponderea intre un neuron din stratul ascuns si cel de iesire sau alte ponderi din alte straturi, formula tipica este :
Modul de calcul al valorii neuronului difera dupa cum i este neuron de iesire sau din strat ascuns.
In cazul in care i este neuron de iesire valoarea δ este egala cu produsul dintre eroare si derivata functiei de transfer in neuronul i. Eroarea este eroarea de invatare a sablonului curent in neuronul i si este y calculat in i-y sabloane in i.
Caz general:
Daca i este un neuron din stratul ascuns: δi= suma ponderata δfii * derivata functiei de transfer in i.
Copyright © 2024 - Toate drepturile rezervate