neural network learning rules perceptron hebbian learning
Ovaj produbljeni vodič o pravilima učenja neuronske mreže objašnjava hebbian učenje i algoritam učenja perceptrona sa primjerima:
U našem prethodnom vodiču o kojem smo razgovarali Umjetna neuronska mreža što je arhitektura velikog broja međusobno povezanih elemenata koji se nazivaju neuroni.
Ti neuroni obrađuju primljeni ulaz dajući željeni izlaz. Čvorovi ili neuroni povezani su ulazima, težinama veze i funkcijama aktivacije.
Glavna karakteristika neuronske mreže je sposobnost učenja. Neuronske mreže se uvježbavaju poznatim primjerima. Jednom kad se mreža osposobi, može se koristiti za rješavanje nepoznatih vrijednosti problema.
=> Pročitajte cjelovitu seriju treninga za strojno učenje
Neuronska mreža uči kroz različite sheme učenja koje su kategorizirane kao nadzirano ili nenadzirano učenje.
U nadziranim algoritmima učenja mrežne su ciljne vrijednosti poznate. Pokušava smanjiti pogrešku između željenog rezultata (cilja) i stvarnog rezultata za optimalne performanse. U algoritmima nenadgledanog učenja ciljne vrijednosti su nepoznate i mreža uči sama identificirajući skrivene obrasce u ulaznom obliku formiranjem klastera itd.
ANN se sastoji od 3 dijela, tj. Ulaznog, skrivenog sloja i izlaznog sloja. Postoji jedan ulazni i izlazni sloj, dok možda nema skrivenog sloja ili 1 ili više skrivenih slojeva koji mogu biti prisutni u mreži. Na temelju ove strukture ANN se klasificira u jednoslojne, višeslojne, povratne ili povratne mreže.
Što ćete naučiti:
- Važna ANN terminologija
- Usporedba pravila učenja neuronske mreže
- Zaključak
Važna ANN terminologija
Prije nego što klasificiramo različita pravila učenja u ANN-u, shvatimo neke važne terminologije povezane s ANN-om.
# 1) Utezi: U ANN-u je svaki neuron povezan s ostalim neuronima veznim vezama. Te veze imaju težinu. Uteg sadrži informacije o ulaznom signalu za neuron. Ponderi i ulazni signal koriste se za dobivanje izlaza. Ponderi se mogu označiti u matričnom obliku koji se naziva i matrica veze.
Svaki je neuron povezan sa svim ostalim neuronima sljedećeg sloja preko utega veze. Dakle, ako postoji „n“ čvorova i svaki čvor ima „m“ težine, tada će matrica težine biti:
W1 predstavlja vektor težine počevši od čvora 1. W11 predstavlja vektor težine od 1svčvor prethodnog sloja na 1svčvor sljedećeg sloja. Slično tome, wij predstavlja vektor težine od „i“ procesorskog elementa (neurona) do „jth“ obradnog elementa sljedećeg sloja.
# 2) pristranost : Pristranost se dodaje mreži dodavanjem ulaznog elementa x (b) = 1 u ulazni vektor. Predrasuda također nosi težinu označenu s w (b).
Pristrasnost igra važnu ulogu u izračunavanju izlaza neurona. Predrasude mogu biti pozitivne ili negativne. Pozitivna pristranost povećava neto ulaznu težinu, dok negativna pristranost smanjuje neto ulaznu težinu.
# 3) Prag: Vrijednost praga koristi se u funkciji aktiviranja. Neto ulaz se uspoređuje s pragom da bi se dobio izlaz. U NN-u se funkcija aktiviranja definira na temelju vrijednosti praga i izračunava se izlaz.
Vrijednost praga je:
što je mrežni sigurnosni ključ na usmjerivaču
# 4) Stopa učenja : Označava se alfa?. Stopa učenja kreće se od 0 do 1. Koristi se za prilagođavanje težine tijekom procesa učenja NN.
# 5) Faktor zamaha : Dodan je za brže približavanje rezultata. Faktor impulsa dodaje se težini i obično se koristi u mrežama povratnog razmnožavanja.
Usporedba pravila učenja neuronske mreže
Metode učenja -> | Gradijentni spust | Hebbijski | Natjecateljski | Stohastički | |||||||
---|---|---|---|---|---|---|---|---|---|---|---|
EPOCH 2 | |||||||||||
Tip arhitekture || | |||||||||||
Jednoslojni povratni signal | ADALINE Hopfield Perceptron | Asocijativni Memorija Hopfield | Linearni vektor Kvantizacija | ||||||||
Višeslojno ulaganje naprijed | Kaskada Poveznica Višeslojna feed Naprijed Radijalna pristranost Funkcija | Neokognitron | |||||||||
Ponavljajući | Ponavljajući neuronski Mreža | Dvosmjerni automatski Asocijativni Memorija Mozak-država-u-kutiji Hopfield | Prilagodljiv Teorija rezonancije | Boltzmann Mašina Cauchy Mašina |
Klasifikacija različitih vrsta učenja ANN prikazana je u nastavku.
Klasifikacija algoritama učenja pod nadzorom
- Gradijentni spust
- Stohastički
# 1) Gradient Descent Learning
U ovoj vrsti učenja smanjenje pogrešaka odvija se uz pomoć pondera i aktivacijske funkcije mreže. Funkcija aktivacije trebala bi se razlikovati.
Podešavanje težina ovisi o gradijentu pogreške E u ovom učenju. Pravilo povratnog razmnožavanja primjer je ove vrste učenja. Stoga se podešavanje težine definira kao
# 2) Stohastičko učenje
U ovom učenju težine se prilagođavaju na vjerojatnosni način.
Klasifikacija algoritama učenja bez nadzora
- Hebbijski
- Natjecateljski
# 1) Hebbian učenje
Ovo je učenje Hebb predložio 1949. godine. Temelji se na korelacijskom prilagođavanju težina. Parovi ulaznih i izlaznih uzoraka povezani su s matricom utega, W.
Transpozicija izlaza uzima se za podešavanje težine.
# 2) Natjecateljsko učenje
To je pobjednik uzima sve strategije. U ovoj vrsti učenja, kada se ulazni obrazac pošalje u mrežu, svi se neuroni u sloju natječu i samo pobjednički neuroni imaju prilagodbe težine.
Mc Culloch-Pitts Neuron
Također poznat kao M-P Neuron, ovo je najranija neuronska mreža koja je otkrivena 1943. U ovom su modelu neuroni povezani utezima veze, a funkcija aktiviranja koristi se u binarnom sustavu. Prag se koristi za određivanje hoće li neuron aktivirati ili ne.
Funkcija M-P neurona je:
Hebbijev algoritam učenja
Hebb Network izjavio je Donald Hebb 1949. Prema Hebbovom pravilu utvrđeno je da se ponderi povećavaju proporcionalno proizvodu ulaznih i izlaznih vrijednosti. To znači da se u Hebbovoj mreži ako su dva neurona međusobno povezana tada težine povezane s tim neuronima mogu povećati promjenama u sinaptičkom procjepu.
Ova je mreža prikladna za bipolarne podatke. Hebbijevo pravilo učenja općenito se primjenjuje na logička vrata.
Ponderi se ažuriraju kao:
W (novo) = w (staro) + x * y
Algoritam treninga za hebbijsko pravilo učenja
Koraci treninga algoritma su sljedeći:
- U početku su težine postavljene na nulu, tj. W = 0 za sve ulaze i = 1 do n i n je ukupan broj ulaznih neurona.
- Neka je s izlaz. Funkcija aktiviranja ulaza obično je postavljena kao funkcija identiteta.
- Funkcija aktiviranja za izlaz također je postavljena na y = t.
- Prilagodbe težine i pristranost prilagođavaju se na:
- Koraci 2 do 4 ponavljaju se za svaki ulazni vektor i izlaz.
Primjer hebbijskog pravila učenja
Primijenimo logičku funkciju I s bipolarnim ulazima koristeći Hebbian Learning
X1 i X2 su ulazi, b je pristranost uzeta kao 1, ciljana vrijednost je izlaz logičkog I rada nad ulazima.
Ulazni | Ulazni | Pristranost | Cilj |
---|---|---|---|
X1 | X2 | b | Y |
jedan | jedan | jedan | jedan |
jedan | -1 | jedan | -1 |
-1 | jedan | jedan | -1 |
-1 | -1 | jedan | -1 |
# 1) U početku su težine postavljene na nulu, a pristranost je također postavljena na nulu.
W1 = w2 = b = 0
#dva) Prvi ulazni vektor uzima se kao (x1 x2 b) = (1 1 1), a ciljana vrijednost je 1.
Nove težine bit će:
# 3) Gore navedeni utezi su konačni novi utezi. Kad se prođe drugi ulaz, oni postaju početni ponderi.
# 4) Uzmite drugi ulaz = (1 -1 1). Cilj je -1.
# 5) Slično tome, izračunavaju se i drugi ulazi i težine.
Tablica u nastavku prikazuje sav ulaz:
Ulazi | Pristranost | Ciljni izlaz | Promjene u težini | Promjene pristranosti | Nove težine | ||||
---|---|---|---|---|---|---|---|---|---|
X1 | X2 | b | Y | ? w1 | ? w2 | ? b | W1 | W2 | b |
jedan | jedan | jedan | jedan | jedan | jedan | jedan | jedan | jedan | jedan |
jedan | -1 | jedan | -1 | -1 | jedan | -1 | 0 | dva | 0 |
-1 | jedan | jedan | -1 | jedan | -1 | -1 | jedan | jedan | -1 |
-1 | -1 | jedan | -1 | jedan | jedan | -1 | dva | dva | -2 |
Hebb Net za funkciju AND
Algoritam učenja perceptrona
Perceptron Networks su jednoslojne mreže za prosljeđivanje. Oni se također nazivaju Single Perceptron Networks. Perceptron se sastoji od ulaznog sloja, skrivenog sloja i izlaznog sloja.
Ulazni sloj povezan je sa skrivenim slojem pomoću utega koji mogu biti inhibicijski ili uzbudljivi ili nulti (-1, +1 ili 0). Upotrijebljena funkcija aktiviranja je binarna funkcija koraka za ulazni sloj i skriveni sloj.
Izlaz je
Y = f (y)
Funkcija aktivacije je:
Ažuriranje težine odvija se između skrivenog sloja i izlaznog sloja kako bi se podudaralo s ciljnim izlazom. Pogreška se izračunava na temelju stvarnog učinka i željenog rezultata.
Ako se izlaz podudara s ciljem, ne dolazi do nadogradnje težine. Ponderi se u početku postavljaju na 0 ili 1 i uzastopno se prilagođavaju dok se ne pronađe optimalno rješenje.
Ponderi u mreži mogu se u početku postaviti na bilo koje vrijednosti. Učenje Perceptron konvergirat će se u vektor težine koji daje točne rezultate za sve uzorke ulaznog treninga i to se učenje odvija u konačnom broju koraka.
Pravilo Perceptron može se koristiti i za binarne i za bipolarne ulaze.
Pravilo učenja za jednostruki izlazni perceptron
# 1) Neka postoje “n” ulazni vektori za obuku i x (n) i t (n) su povezani s ciljnim vrijednostima.
#dva) Inicijalizirajte težine i pristranost. Postavite ih na nulu radi jednostavnog izračuna.
# 3) Neka stopa učenja bude 1.
# 4) Ulazni sloj ima funkciju aktiviranja identiteta pa je x (i) = s (i).
# 5) Da biste izračunali izlaz mreže:
# 6) Funkcija aktivacije primjenjuje se preko neto ulaza da bi se dobio izlaz.
# 7) Sada na temelju rezultata uporedite željenu ciljanu vrijednost (t) i stvarni izlaz.
# 8) Nastavite s ponavljanjem dok ne dođe do promjene težine. Prestanite kad se ovaj uvjet postigne.
Pravilo učenja za višestruki izlazni perceptron
# 1) Neka postoje “n” ulazni vektori za obuku i x (n) i t (n) su povezani s ciljnim vrijednostima.
#dva) Inicijalizirajte težine i pristranost. Postavite ih na nulu radi jednostavnog izračuna.
# 3) Neka stopa učenja bude 1.
# 4) Ulazni sloj ima funkciju aktiviranja identiteta pa je x (i) = s (i).
# 5) Da bi se izračunao izlaz svakog izlaznog vektora od j = 1 do m, neto ulaz je:
# 6) Funkcija aktivacije primjenjuje se preko neto ulaza da bi se dobio izlaz.
# 7) Sada na temelju učinka usporedite željenu ciljanu vrijednost (t) i stvarni učinak i izvršite prilagodbe težine.
w je vektor težine veznih veza između i-og ulaznog i j-tog izlaznog neurona, a t ciljni izlaz za izlaznu jedinicu j.
# 8) Nastavite s ponavljanjem dok ne dođe do promjene težine. Prestanite kad se ovaj uvjet postigne.
Primjer pravila učenja Perceptrona
Implementacija funkcije AND pomoću mreže Perceptron za bipolarne ulaze i izlaze.
Uzorak unosa bit će x1, x2 i pristranost b. Neka početne težine budu 0, a pristranost 0. Prag je postavljen na nulu, a stopa učenja je 1.
I Vrata
X1 | X2 | Cilj |
---|---|---|
jedan | jedan | jedan |
jedan | -1 | -1 |
-1 | jedan | -1 |
-1 | -1 | -1 |
# 1) X1 = 1, X2 = 1 i ciljni izlaz = 1
W1 = w2 = wb = 0 i x1 = x2 = b = 1, t = 1
Neto unos = y = b + x1 * w1 + x2 * w2 = 0 + 1 * 0 + 1 * 0 = 0
Kako je prag dakle nula:
Odavde dobivamo, output = 0. Sada provjerite je li output (y) = target (t).
y = 0, ali t = 1, što znači da to nisu isti, stoga dolazi do nadogradnje težine.
Nove težine su 1, 1 i 1 nakon što je predstavljen prvi ulazni vektor.
#dva) X1 = 1 X2 = -1, b = 1 i cilj = -1, W1 = 1, W2 = 2, Wb = 1
Neto unos = y = b + x1 * w1 + x2 * w2 = 1 + 1 * 1 + (-1) * 1 = 1
Neto izlaz za ulaz = 1 bit će 1 iz:
Stoga se opet cilj = -1 ne podudara sa stvarnim izlazom = 1. Obavljaju se ažuriranja težine.
Sada su novi utezi w1 = 0 w2 = 2 i wb = 0
Slično tome, nastavljajući sa sljedećim nizom ulaza, dobivamo sljedeću tablicu:
Ulazni | Pristranost | Cilj | Neto unos | Izračunati izlaz | Promjene u težini | Nove težine | |||||
---|---|---|---|---|---|---|---|---|---|---|---|
X1 | X2 | b | t | jin | Y | ? w1 | ? w2 | ? b | W1 | W2 | wb |
EPOH 1 | |||||||||||
jedan | jedan | jedan | jedan | 0 | 0 | jedan | jedan | jedan | jedan | jedan | jedan |
jedan | -1 | jedan | -1 | jedan | jedan | -1 | jedan | -1 | 0 | dva | 0 |
-1 | jedan | jedan | -1 | dva | jedan | jedan | -1 | -1 | jedan | jedan | -1 |
-1 | -1 | jedan | -1 | -3 | -1 | 0 | 0 | 0 | jedan | jedan | -1 |
jedan | jedan | jedan | jedan | jedan | jedan | 0 | 0 | 0 | jedan | jedan | -1 |
jedan | -1 | jedan | -1 | -1 | -1 | 0 | 0 | 0 | jedan | jedan | -1 |
-1 | jedan | jedan | -1 | -1 | -1 | 0 | 0 | 0 | jedan | jedan | -1 |
-1 | -1 | jedan | -1 | -3 | -1 | 0 | 0 | 0 | jedan | jedan | -1 |
EPOCHS su ciklus ulaznih obrazaca koji se unose u sustav sve dok nije potrebna promjena težine i iteracija se zaustavi.
Algoritam učenja Widrowa Hoffa
Također poznat kao Delta pravilo , slijedi pravilo gradijentnog spuštanja za linearnu regresiju.
Ažurira težine veze s razlikom između ciljne i izlazne vrijednosti. To je najmanji srednje kvadratni algoritam učenja koji spada u kategoriju nadziranog algoritma učenja.
Ovo se pravilo slijedi ADALINE (Adaptive Linear Neural Networks) i MADALINE. Za razliku od Perceptrona, ponavljanja mreža Adaline ne zaustavljaju se, ali konvergira smanjenjem najmanje pogreške srednjeg kvadrata. MADALINE je mreža više od jedne ADALINE.
Motiv pravila delta učenja je minimiziranje pogreške između rezultata i ciljnog vektora.
Ponderi u mrežama ADALINE ažuriraju se prema:
Pogreška najmanje srednjeg kvadrata = (t- yu)dva, ADALINE konvergira kada se postigne najmanja srednje kvadratna pogreška.
Zaključak
U ovom uputstvu raspravljali smo o dva algoritma, tj. O Hebbianovom pravilu učenja i Perceptronovom pravilu učenja. Hebbijevo pravilo temelji se na pravilu da se vektor težine povećava proporcionalno ulaznom i signalnom znaku, tj. Izlaznom. Ponderi se povećavaju dodavanjem umnoška ulaznih i izlaznih vrijednosti staroj težini.
W (novo) = w (staro) + x * y
Primjena Hebbovih pravila leži u problemima udruživanja uzoraka, klasifikacije i kategorizacije.
Pravilo učenja Perceptron može se primijeniti na mrežu s jednim izlazom i na više klasa izlaza. Cilj mreže perceptrona je klasificirati unosni obrazac u određenu klasu članova. Ulazni i izlazni neuroni povezani su vezama s težinama.
Ponderi se prilagođavaju tako da odgovaraju stvarnom izlazu s ciljnom vrijednošću. Stopa učenja postavljena je od 0 do 1 i ona određuje skalabilnost pondera.
Ponderi se ažuriraju prema:
Osim ovih pravila učenja, algoritmi strojnog učenja uče i kroz mnoge druge metode, tj. Nadzirano, nenadzirano i pojačano. Neki od ostalih uobičajenih ML algoritama su Back Propagation, ART, Kohonen Self Organizing Maps, itd.
Nadamo se da ste uživali u svim vodičima iz ove serije strojnog učenja !!
=> Posjetite ovdje za ekskluzivnu seriju strojnog učenja
Preporučena literatura
- Cjelovit vodič za umjetnu neuronsku mrežu u strojnom učenju
- Vrste strojnog učenja: Nadzirano protiv nenadgledanog učenja
- Data Mining vs Machine Learning vs Artificial Intelligence vs Deep Learning
- Testiranje mrežne sigurnosti i najbolji alati mrežne sigurnosti
- 11 Najpopularnijih softverskih alata za strojno učenje 2021. godine
- Vodič za strojno učenje: Uvod u ML i njegove primjene
- 15 najboljih alata za mrežno skeniranje (mrežni i IP skener) od 2021
- Top 30 alata za mrežno testiranje (alati za dijagnostiku mrežne izvedbe)