Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ

Metodat për trajnimin e rrjeteve nervore. Trajnimi i rrjeteve nervore

Metodat, rregullat dhe algoritmet e përdorura në trajnimin e topologjive të ndryshme të rrjetit.

... Trajnimi i rrjeteve nervore.

... Metodat e trajnimit të rrjeteve nervore.

Zgjidhja e një problemi në një neurokompjuter është thelbësisht e ndryshme nga zgjidhja e të njëjtit problem në një kompjuter konvencional me arkitekturë Von Neumann. Zgjidhja e problemit në një kompjuter konvencional është përpunimi i të dhënave hyrëse në përputhje me programin. Programi është bërë nga një person. Për të përpiluar një program, duhet të krijoni një algoritëm, d.m.th. një sekuencë e caktuar veprimesh matematikore dhe logjike të nevojshme për të zgjidhur këtë problem. Algoritmet, si programet, zhvillohen nga njerëzit, dhe një kompjuter përdoret vetëm për të kryer një numër të madh operacionesh elementare: mbledhje, shumëzim, kontrollim të kushteve logjike, etj.

Neurokompjuteri përdoret si një "kuti e zezë" që mund të mësohet për të zgjidhur problemet nga një klasë. Neurokompjuterit “paraqiten” me të dhënat fillestare të problemit dhe përgjigjen që korrespondon me këto të dhëna dhe që është marrë në çdo mënyrë. Neurokompjuteri duhet të ndërtojë vetë një algoritëm për zgjidhjen e këtij problemi brenda "kutisë së zezë" në mënyrë që të japë një përgjigje që përkon me atë të saktë. Duket e natyrshme të pritet që sa më shumë çifte të ndryshme (të dhëna fillestare), (përgjigje) t'i paraqiten neurokompjuterit, aq më adekuat do të ndërtojë një model për problemin që zgjidhet.

Pas fazës së trajnimit të neurokompjuterit, duhet shpresuar që nëse ai paraqitet me të dhënat fillestare, të cilat nuk i ka plotësuar më parë, megjithatë jep zgjidhjen e duhur - kjo është aftësia e neurokompjuterit për të përgjithësuar.

Meqenëse një neurokompjuter bazohet në një rrjet nervor artificial, procesi i të mësuarit konsiston në vendosjen e parametrave të këtij rrjeti. Në këtë rast, si rregull, topologjia e rrjetit konsiderohet e pandryshuar, dhe parametrat e rregullueshëm zakonisht përfshijnë parametrat e neuroneve dhe vlerat e peshave sinaptike. Deri më sot, në literaturë, është zakon të kuptohet mësimi si procesi i ndryshimit të peshave të lidhjeve midis neuroneve.

Ne do të shqyrtojmë dy drejtime të klasifikimit të metodave të trajnimit të rrjetit. Drejtimi i parë është mbi mënyrat e përdorimit të mësuesit.

Me një mësues:

Rrjetet tregojnë shembuj të hyrjeve dhe daljeve. Rrjeti transformon të dhënat hyrëse dhe krahason daljen e tyre me atë të dëshiruar. Pas kësaj, peshat korrigjohen për të marrë një konsistencë më të mirë të rezultateve.

Të mësuarit përforcues:

Në këtë rast, rrjetit nuk i jepet vlera e dëshiruar e daljes, por në vend të kësaj rrjeti vlerësohet nëse dalja është e mirë apo e keqe.

Të mësuarit pa mësues:

Vetë rrjeti zhvillon rregullat e të mësuarit duke nxjerrë veçori nga një grup të dhënash hyrëse.

Drejtimi i dytë i klasifikimit të metodave të mësimdhënies është sipas përdorimit të elementeve të rastësisë.

Metodat përcaktuese:

Në to, hap pas hapi, kryhet procedura për korrigjimin e peshave të rrjetit, bazuar në përdorimin e vlerave të tyre aktuale, për shembull, vlerat e daljeve të dëshiruara të rrjetit. Algoritmi i mësimit të përhapjes së prapme i konsideruar më poshtë është një shembull i të mësuarit determinist.

Metodat e të mësuarit stokastik:

Ato bazohen në përdorimin e ndryshimeve të rastësishme të peshave gjatë stërvitjes. Algoritmi i të mësuarit Boltzmann i konsideruar më poshtë është një shembull i të mësuarit stokastik.

... Rregullat e trajnimit të rrjeteve nervore .

Rregullat e të mësuarit përcaktojnë ligjin me të cilin rrjeti duhet të ndryshojë peshën e tij sinaptike gjatë procesit të të mësuarit.

Rregulli i Hebb-it (D.Hebb):

Shumica e metodave të trajnimit bazohen në parimet e përgjithshme të trajnimit të rrjeteve nervore të zhvilluara nga Donald Hebb. Parimi i Hebb-it mund të formulohet si më poshtë: "Nëse dy neurone janë njëkohësisht aktivë, rrisni fuqinë e lidhjes midis tyre", e cila mund të shkruhet si:

dW ij = gf (Y i) f (Y j),

ku: dW ij - vlera e ndryshimit të sinapsit W ij

Y i - niveli i ngacmimit të neuronit i-të

Y j - niveli i ngacmimit të neuronit j

f (.) - funksioni i transformimit

g është një konstante që përcakton shkallën e të mësuarit.

Shumica e rregullave të mësimdhënies bazohen në këtë formulë.

Rregulli i deltës:

Ai njihet si rregulli i zvogëlimit të gabimit në katror dhe është propozuar. Rregulli delta përdoret në mësimin e mbikëqyrur.

dW ij = g (D j - Y j) Y i

ku: D j është dalja e dëshiruar e neuronit j.

Kështu, ndryshimi në forcën e lidhjeve ndodh në përputhje me gabimin e sinjalit të daljes (D j - Y j) dhe nivelin e aktivitetit të elementit hyrës Y. ...

ART - rregull:

Teoria e Rezonancës Përshtatëse (ART) u zhvillua në. ART është mësim i pambikëqyrur, kur vetëorganizimi ndodh si rezultat i një përgjigjeje ndaj një zgjedhjeje të imazheve hyrëse. Rrjeti ART është i aftë të klasifikojë imazhet. ART përdor konceptin e kujtesës afatgjatë dhe afatshkurtër për të mësuar rrjetet nervore. Kujtesa afatgjatë ruan reagimet ndaj imazheve me të cilat është trajnuar rrjeti në formën e vektorëve të peshës. Kujtesa afatshkurtër përmban imazhin aktual të hyrjes, imazhin e pritur, klasifikimin e imazhit hyrës. Modeli i pritur merret nga kujtesa afatgjatë sa herë që një model i ri futet në hyrjen NN. Nëse ato janë të ngjashme sipas një kriteri të caktuar, rrjeti e klasifikon atë si pjesë e klasës ekzistuese. Nëse ato janë të ndryshme, formohet një klasë e re, në të cilën vektori hyrës do të jetë anëtari i parë i klasës.

Ky mësim quhet të mësuarit kundërshtar. Lloji më i thjeshtë i të mësuarit kundërshtar përcaktohet nga rregulli "fituesi merr të gjitha". aktivizohet ansambli me daljen më të mirë, pjesa tjetër shtypet.

Elementi me nivelin më të lartë të aktivizimit quhet "fituesi". Kur zgjidhet, NN shton veçori të imazhit të hyrjes tek anëtarët e memories afatgjatë duke kaluar përpara dhe mbrapa nëpër peshat e kujtesës afatgjatë. Grossberg e quajti këtë proces rezonancë.

Rregulli i Kohonen:

Theo Kohonen i Institutit të Teknologjisë së Helsinkit përdori konceptin e të mësuarit kundërshtar për të zhvilluar rregullin e të mësuarit "të pambikëqyrur" në një rrjet nervor siç është harta e Kohonen (Figura 3.3).

Rregulli i Kohonen është si më poshtë. Së pari, një fitues zgjidhet duke përdorur një strategji fituesi i merr të gjitha. Meqenëse dalja e neuronit të j-të përcaktohet nga produkti skalar (U, W j) i vektorit hyrës U me vektorin e peshave të lidhjeve midis shtresës hyrëse dhe neuronit të j-të, varet nga këndi midis vektorët U, W j. Prandaj, zgjidhet një neuron, vektori i peshave W j i të cilit është më afër vektorit hyrës U. (me fjalë të tjera, zgjidhet neuroni më aktiv). Më pas, ndërtohet një vektor i ri W j në mënyrë që të jetë më afër vektorit hyrës U, d.m.th. :

W ij e re = W ij e vjetër + g (U - W ij e vjetër) i = 1,2, ..., k.

ku: k është numri i hyrjeve në rrjet.

g është një konstante e të mësuarit.

Trajnimi i Boltzmann:

Trajnimi Boltzmann konsiston në përforcimin e trajnimit në përputhje me funksionin objektiv të ndryshimit të prodhimit të rrjetit nervor. Ky trajnim përdor një funksion probabilistik për të ndryshuar peshat. Ky funksion është zakonisht në formën e një shpërndarjeje Gaussian, megjithëse mund të përdoren shpërndarje të tjera.

Trajnimi Boltzmann kryhet në disa faza.

1. Koeficientit T i jepet një vlerë e madhe fillestare.

2. Një vektor hyrës kalon nëpër rrjet dhe funksioni objektiv llogaritet nga dalja.

3. Pesha ndryshohet rastësisht në përputhje me shpërndarjen Gaussian: P (x) = exp (-x 2 / T 2), ku x është ndryshimi në peshë.

4. Produkti dhe funksioni objektiv llogariten sërish.

5. Nëse vlera e funksionit objektiv është ulur (përmirësuar), atëherë mbani ndryshimin në peshë. Nëse jo, dhe vlera e dëmtimit të funksionit objektiv është C, atëherë probabiliteti i mbajtjes së ndryshimit të peshës llogaritet si më poshtë.

Vlera P (C) është probabiliteti i një ndryshimi në C në funksionin objektiv, i përcaktuar duke përdorur shpërndarjen Boltzmann: P (C) ~ exp (- C / kT)

ku: k është një konstante e ngjashme me konstantën e Boltzmann-it, e zgjedhur në varësi të kushteve të problemit.

Pastaj zgjidhni një numër të rastësishëm V duke përdorur një shpërndarje uniforme nga zero në një. Nëse Р (С)> V, atëherë ndryshimi i peshës ruhet, përndryshe ndryshimi i peshës është i barabartë me zero.

Hapat 3 - 5 përsëriten për secilën nga peshat e rrjetit, ndërsa gradualisht zvogëlohen T derisa të arrihet një vlerë e pranueshme e ulët e funksionit objektiv. Pas kësaj, i gjithë procesi mësimor përsëritet për një vektor tjetër hyrës. Rrjeti trajnohet për të gjithë vektorët derisa funksioni objektiv të bëhet i realizueshëm për të gjithë. Për më tepër, për të siguruar konvergjencë, ndryshimi në T duhet të jetë proporcional me logaritmin e kohës t:

T (t) = T (0) / log (1 + t)

Kjo do të thotë që shkalla e konvergjencës së funksionit objektiv është e ulët, prandaj koha e trajnimit mund të jetë shumë e gjatë.

... Algoritme për trajnimin e rrjeteve nervore.

Rrjetet e informacionit të trajnimit.

Për të trajnuar rrjetin, duhet të dini vlerat e daljeve dj (j = 1,2... .N (K)) nga neuronet e shtresës së daljes (daljet e dëshiruara), të cilat rrjeti duhet t'i lëshojë kur vektori i ngacmimit I mbërrin në hyrjen e tij.

Gabimi i funksionimit të rrjetit në këto të dhëna përcaktohet si

ku: y j - dalje e rrjetit.

Për të reduktuar këtë gabim, peshat e rrjetit duhet të ndryshohen sipas rregullit të mëposhtëm:

W k e re = W k e vjetër -  • (E / W k)

ku:  është një konstante që karakterizon shkallën e të mësuarit.

Formula e fundit përshkruan procesin e zbritjes së gradientit në hapësirën e peshave. Shprehja për derivatin dE / dW është si më poshtë:

E / W k-1 ij = (d j - y j) f j u k-1 i për shtresën dalëse, d.m.th. k = K

E / W k-1 ij =  [(d j - y j)  f j w k ij]  f j u k-1 i për shtresat e fshehura,

ato. k = 1,2. ... ... , K-1.

Nëse një funksion sigmoid përdoret si një funksion transformues jolinear, atëherë në vend të dy shprehjeve të fundit, është e përshtatshme të përdoren formulat e mëposhtme të përsëritura për shtresën e daljes:

 k-1 j = (d j - y j) y j  (1- y j), E / W k-1 ij =  k-1 j u k-1 i

për shtresat e fshehura:

 k-1 j =  [ k j w k] u j k  (1- u j k), E / W k-1 ij =  k-1 j u k-1 i

Këto marrëdhënie quhen formulat e kthimit të përhapjes. Nëse, gjatë funksionimit të drejtpërdrejtë, sinjali i hyrjes përhapet përmes rrjetit nga shtresa hyrëse në dalje, atëherë kur rregulloni peshat, gabimi i rrjetit përhapet nga shtresa e daljes në hyrje.

Trajnimi i rrjeteve Kohonen (ndërtimi i hartave të tipareve).

Për të ndërtuar një hartë Kohonen, kërkohet një mostër mjaft përfaqësuese e vektorëve të veçorive të trajnimit (U). Le të ketë çdo vektor U të bashkësisë (U) dimension k: U = (U 1, U 2,..., U k).

Atëherë shtresa e parë (shpërndarëse) e rrjetit Kohonen duhet të ketë k neurone; n neurone të shtresës së dytë (hartë) janë të vendosura jashtë planit në një konfigurim të rregullt, për shembull, nga një rrjet katror drejtkëndor (Figura 3.3). Vlerat e rastësishme u caktohen lidhjeve të sintonizueshme midis neuroneve të shtresës së parë dhe të dytë W ij.

Këtu, indeksi i tregon numrin e neuronit të shtresës së parë, indeksi j - numrin e neuronit të shtresës së dytë. Para fillimit të stërvitjes, vendoset funksioni i ndikimit të neuroneve të shtresës së dytë mbi njëri-tjetrin g (r, t), ku r është distanca midis neuroneve, t është një parametër që karakterizon kohën e stërvitjes.

Ky funksion tradicionalisht ka formën e një "kapele meksikane" (Fig. 3.4.), e cila bëhet "më e ngushtë" në procesin e të mësuarit, me rritjen e parametrit t. Sidoqoftë, shpesh përdoren funksione më të thjeshta, për shembull:

ku: D është një konstante që karakterizon rrezen fillestare të majës pozitive të kapelës meksikane.

Çdo cikël trajnimi konsiston në paraqitjen e alternuar të rrjetit të vektorëve të grupit të stërvitjes me korrigjimin e mëvonshëm të peshave W ij. Rregullimi kryhet si më poshtë:

1. Kur vektori tjetër i trajnimit U shfaqet në hyrje të rrjetit, rrjeti llogarit përgjigjen e neuroneve të shtresës së dytë:

2. Përzgjidhet neuroni fitues (dmth. neuroni me përgjigjen më të lartë). Numri i tij C përcaktohet si:

C = argmax Y j, j = 1,2,. ... ., n.

3. Korrigjimi i peshave të lidhjeve W kryhet sipas formulës së mëposhtme:

W ij e re = W ij e vjetër +  • g (r, t) • (U i - W ij e vjetër), i = 1,. ... ... , k; j = 1,. ... ... n.

Këtu  është një mësim konstant karakterizues.

Nëse, pas ciklit të ardhshëm mësimor, procesi i ndryshimit të peshave është ngadalësuar, rritni parametrin t.

Trajnim për rrjetet Hopfield.

Këtu duhet të theksojmë dy mundësi që lidhen me përdorimin e mëvonshëm të rrjetit: nëse do të përdoret si memorie shoqëruese apo për të zgjidhur një problem optimizimi.

Rrjeti përdoret si memorie shoqëruese. Gjegjësisht: ne duam të ruajmë në të m vektorë binare V s, s = 1,2,. ... .n: V s = (V 1s, V 2s, ..., V ns).

Kjo do të thotë që kur paraqitet një rrjet i ndonjërit prej këtyre vektorëve, ai duhet të vijë në një gjendje të qëndrueshme që i përgjigjet këtij vektori, d.m.th. i njëjti vektor duhet të zgjidhet në daljen e neuroneve. Nëse rrjeti paraqitet me një vektor të panjohur U, atëherë një nga vektorët e ruajtur V i duhet të shfaqet në daljen e rrjetit, i cili është më afër U.

Natyrisht, numri i neuroneve në një rrjet të tillë duhet të jetë i barabartë me gjatësinë e vektorëve të ruajtur n.

Mënyra më e thjeshtë për të formuar peshat e një rrjeti të tillë arrihet me procedurën e mëposhtme:

Megjithatë, kapaciteti i një rrjeti të tillë (d.m.th., numri i vektorëve të ruajtur m) është i vogël, m  log n. Në këtë punë për formimin e peshave është përdorur rregulli i të mësuarit të tipit Hebb, si rezultat i të cilit është arritur kapaciteti i rrjetit m  n.

Rrjeti përdoret për të zgjidhur problemin e optimizimit. Kjo mundësi është për shkak të vetive të jashtëzakonshme të mëposhtme të rrjeteve Hopfield: gjatë funksionimit të rrjetit, vlera (e cila në literaturë zakonisht quhet "energjia" e rrjetit Hopfield) nuk rritet. Një nga opsionet për "energjinë" e rrjetit Hopfield:

ku A, B janë konstantet e përcaktuara nga problemi. Detyra e kërkimit është të formulojë problemin fillestar të optimizimit në termat e një rrjeti nervor dhe të shkruajë E h funksionale të minimizuar. Shprehja e përftuar për W ij jep vlerën e faktorëve të peshimit. Si rezultat i funksionimit, rrjeti sjell një gjendje ekuilibri, e cila korrespondon me një minimum lokal të E h funksionale. Në këtë rast, vlerat e ngacmimit të neuroneve korrespondojnë me vlerat e argumenteve në të cilat arrihet minimumi.

Algoritme për mësimin e rrjeteve nervore

Në fazën e trajnimit, koeficientët sinaptikë llogariten në procesin e zgjidhjes së problemeve specifike nga rrjeti nervor. Mësimi i mbikëqyrur i një rrjeti nervor mund të shihet si një zgjidhje për një problem optimizimi. Qëllimi i tij është të minimizojë funksionet e gabimit (mbetjet) në një grup të caktuar shembujsh duke zgjedhur vlerat e peshave W.

Ka dy lloje të mësimdhënies: me mësues dhe pa mësues. Mësimi i mbikëqyrur përfshin paraqitjen e një sekuence çiftesh trajnimi (X i, D i) në rrjet, ku X i është një shembull trajnimi, D i është një standard që duhet të merret në daljen e rrjetit. Për çdo X i, llogaritet y i dhe krahasohet me D i. Dallimi përdoret për të korrigjuar matricën sinaptike. Të nxënit pa mbikëqyrje supozon vetëm shembuj të mësimdhënies X i. Matrica sinaptike është rregulluar në mënyrë që vektorë të ngjashëm hyrës të korrespondojnë me të njëjtët vektorë që rezultojnë.

Procesi i të mësuarit mund të shihet si një proces diskret i përshkruar nga ekuacionet e diferencave të fundme. Shumica e metodave të mësimdhënies përdorin idenë e Hubb-it për të përsëritur një shembull të memorizuar. Pesha sinaptike rritet nëse dy neurone - burimi dhe destinacioni - aktivizohen. Shtimi i peshës përcaktohet nga produkti i niveleve të ngacmimit të dy neuroneve, i cili mund të shkruhet si më poshtë:

ku janë vlerat e peshës së lidhjes nga neuroni i-të në j-të në përsëritjen e mëparshme të trajnimit dhe atë aktual;

- shkalla e të mësuarit ();

- prodhimi i neuronit i, i cili është hyrja për neuronin j në përsëritjen e 0-të;

- prodhimi i neuronit j në përsëritjen e 0-të.

Procesi i mësimit të një rrjeti nervor konsiderohet si problemi i minimizimit të disa funksioneve F (W) min, ku W është matrica sinaptike e rrjetit.

Për zgjidhjen e një problemi të tillë mund të përdoren metoda të ndryshme programimi jolineare: gradient, kërkim i rastësishëm kuazi-njutonian etj.

E zakonshme për metodat e trajnimit të rrjetit është si vijon: për disa gjendje fillestare të matricës sinaptike, përcaktohet drejtimi i uljes së funksionit objektiv F (W) dhe minimumi i tij gjendet në këtë drejtim. Për pikën e fituar përsëri llogaritet drejtimi i uljes së funksionit dhe kryhet optimizimi njëdimensional. Në përgjithësi, algoritmi mund të përfaqësohet si

ku është madhësia e hapit në fazën 0;

Drejtimi i kërkimit në fazën 0.

Metoda më e avancuar e trajnimit është algoritmi i përhapjes së pasme. Nuk ka kufizime në numrin e shtresave dhe topologjinë e rrjetit. Kërkesa e vetme është që funksioni i ngacmimit të jetë i diferencueshëm kudo. Në mënyrë tipike përdoret një funksion sigmoid (logjistik). Përhapja prapa është një metodë e mbikqyrur e të mësuarit (Figura 6.5).

Oriz. 6.5. Skema e trajnimit të rrjetit nervor me një mësues

Algoritmi i përhapjes së pasme është një evolucion i rregullit të përgjithësuar të deltës dhe është një algoritëm i zbritjes së gradientit që minimizon gabimin total në katror. Qëllimi kryesor është të llogaritet ndjeshmëria e gabimit të rrjetit ndaj ndryshimeve në peshë.

Lëreni që rrjeti nervor të korrespondojë me diagramin në Fig. 6.2. Pastaj algoritmi i të mësuarit mund të përshkruhet:

1. Vendosni matricat sinaptike W, W *.

2. Për çdo çift stërvitor (X i, D i) kryeni veprimet e mëposhtme:

dorëzoni grupin tjetër të të dhënave të trajnimit në hyrjen e shtresës së fshehur;

llogaritni daljen e shtresës së fshehur:

;

llogaritni daljen e shtresës së daljes:

.

midis vlerave të marra të daljes së rrjetit dhe vlerave të referencës;

për neuronet e shtresës së fshehur.

Përsëritni hapat 2 dhe 3 derisa gabimet të jenë të pranueshme.

Shembulli 6.3. Lëreni që rrjeti nervor të korrespondojë me diagramin në Fig. 6.2. Në këtë rast, n = 2, m = 2, k = 1 (Fig. 6.6). Seti mësimor = (1; 2), D = 3. Është e nevojshme të trajnohet rrjeti nervor për të shtuar numrat 1 dhe 2. Të gjithë neuronet ngacmohen nga një funksion sigmoid. Matricat sinaptike për shtresën e fshehur në përsëritjen e parë janë dhënë:

dhe vektori për shtresën dalëse

Oriz. 6.6. Rrjeti nervor me një shtresë të fshehur

Llogaritni shumën e ponderuar

Hyrja e ponderuar për shtresën dalëse

Në të njëjtën kohë, vlera e dëshiruar y (1), e konvertuar nga funksioni i ngacmimit

D = F (3) = 0,952.

Prandaj, gabimi mesatar katror i rrënjës (RMSE):

Prodhimi aktual dhe prodhimi i dëshiruar nuk përputhen, kështu që peshat sinaptike duhet të ndryshohen. Për ta bërë këtë, është e nevojshme të zbuloni se si këto ndryshime do të ndikojnë në madhësinë e gabimit. Analiza, sipas algoritmit të përhapjes së pasme, kryhet duke filluar nga shtresa dalëse e rrjetit dhe duke lëvizur drejt hyrjes:

1) para së gjithash, zbuloni se si ndryshimet e daljes ndikojnë në gabimin e rrjetit. Për ta bërë këtë, mjafton të përcaktohet shkalla e ndryshimit të gabimit në një vlerë të caktuar dalëse. Shpejtësia përcaktohet duke përdorur derivatin. Diferencimi kryhet në argumentin y (1).

Përgjigja e marrë e shkallës së ndryshimit të gabimit në një vlerë të caktuar të prodhimit është negative, gjë që tregon nevojën për të rritur vlerën në dalje;

2) përcaktoni se si secili prej
hyrjet e shtresës dalëse. Për ta bërë këtë, ne përcaktojmë shkallën e ndryshimit të gabimit të rrjetit kur ndryshojmë hyrjen mesatare të ponderuar të shtresës së daljes V * (1):

Vlera EQ tregon se shkalla e ndryshimit të gabimit në
procesi i ndryshimit të hyrjes mesatare të ponderuar të neuronit të daljes është dukshëm më i ulët në krahasim me shpejtësinë e përgjigjes së rrjetit ndaj një ndryshimi në prodhimin e tij.

4. Trajnimi i rrjetit nervor.

4.1 Informacione të përgjithshme rreth rrjeteve nervore

Rrjetet nervore artificiale janë modele të bazuara në idetë moderne në lidhje me strukturën e trurit të njeriut dhe proceset e përpunimit të informacionit që ndodhin në të. ANN-të tashmë kanë gjetur aplikim të gjerë në problemet: ngjeshja e informacionit, optimizimi, njohja e modeleve, ndërtimi i sistemeve të ekspertëve, përpunimi i sinjalit dhe imazhit, etj.

Lidhja midis neuroneve biologjike dhe artificiale

Figura 20 - Struktura e një neuroni biologjik

Sistemi nervor i njeriut përbëhet nga një numër i madh i neuroneve të ndërlidhura, rreth 10 11; numri i lidhjeve llogaritet si 10 15.

Le të paraqesim skematikisht një palë neuronesh biologjike (Figura 20) Një neuron ka disa procese hyrëse - dendritë, dhe një dalje - një akson. Dendritet marrin informacion nga neuronet e tjera, një akson - transmeton. Zona ku akson lidhet me dendritin (zona e kontaktit) quhet sinapsi. Sinjalet e marra nga sinapset ushqehen në trupin e neuronit, ku ato shtohen. Në këtë rast, një pjesë e sinjaleve hyrëse është emocionuese, dhe tjetra është frenuese.

Kur veprimi i hyrjes tejkalon një prag të caktuar, neuroni kalon në një gjendje aktive dhe dërgon një sinjal tek neuronet e tjera përgjatë aksonit.

Një neuron artificial është një model matematikor i një neuroni biologjik (Figura 21). Le të shënojmë sinjalin hyrës përmes x, dhe grupin e sinjaleve hyrëse përmes vektorit X = (x1, x2, ..., xN). Sinjali i daljes së neuronit do të shënohet me y.

Le të vizatojmë një diagram funksional të një neuroni.

Figura 21 - Neuroni artificial

Për të përcaktuar efektin emocionues ose frenues të hyrjes, ne prezantojmë koeficientët w 1, w 1, ..., w N - për secilën hyrje, domethënë vektorin

W = (w 1, w 1,…, w N), w 0 është vlera e pragut. Ndikimet hyrëse X të peshuara në vektorin W shumëzohen me koeficientin përkatës w, përmblidhen dhe gjenerohet sinjali g:

Sinjali i daljes është një funksion i g


,

ku F është funksioni i aktivizimit. Mund të jetë e llojeve të ndryshme:

1) pragu i shkallëzuar

ose

Në përgjithësi:

2) lineare, e cila është e barabartë me mungesën fare të një elementi pragu

F (g) = g


3) lineare pjesë-pjesë, e marrë nga lineare duke kufizuar gamën e variacionit të saj brenda, d.m.th.

4) sigmoidale

5) shumë-prag

6) tangjente hiperbolike

F (g) = tanh (g)


Më shpesh, vlerat e hyrjes konvertohen në intervalin XÎ. Kur w i = 1 (i = 1, 2,…, N), neuroni është elementi i shumicës. Në këtë rast, pragu merr vlerën w 0 = N / 2.

Një version tjetër i imazhit të kushtëzuar të një neuroni artificial është paraqitur në Figurën 22

Figura 22 - Përcaktimi konvencional i një neuroni artificial

Nga pikëpamja gjeometrike, një neuron me një funksion aktivizimi linear përshkruan ekuacionin e linjës, nëse hyrja është një vlerë x 1

ose një plan, kur hyrja është një vektor i vlerave X

Struktura (arkitektura, topologjia) e rrjeteve nervore

Ka shumë mënyra për të organizuar ANN, në varësi të: numrit të shtresave, formës dhe drejtimit të lidhjeve.

Le të përshkruajmë një shembull të organizimit të rrjeteve nervore (Figura 23).


Struktura njështresore Struktura dyshtresore me unaza kthyese me sythe kthyese

Struktura dyshtresore Struktura treshtresore me lidhje direkte me lidhje direkte

Figura 23 - Shembuj të strukturave të rrjeteve nervore

Figura 24 përshkruan një rrjet nervor me tre shtresa të lidhura drejtpërdrejt. Shtresa e neuroneve që merr drejtpërdrejt informacion nga mjedisi i jashtëm quhet shtresa hyrëse dhe shtresa që transmeton informacion në mjedisin e jashtëm quhet shtresa dalëse. Çdo shtresë që shtrihet ndërmjet tyre dhe nuk ka kontakt me mjedisin e jashtëm quhet shtresë e ndërmjetme (e fshehur). Mund të ketë më shumë shtresa. Në rrjetet me shumë shtresa, si rregull, neuronet e një shtrese kanë një funksion aktivizimi të të njëjtit lloj.


Figura 24 - Rrjeti nervor me tre shtresa

Kur dizajnoni një rrjet, këto janë të dhënat fillestare:

- dimensioni i vektorit të sinjalit hyrës, domethënë numri i hyrjeve;

Është dimensioni i vektorit të sinjalit të daljes. Numri i neuroneve në shtresën e daljes është zakonisht i barabartë me numrin e klasave;

- formulimin e problemit që duhet zgjidhur;

- saktësinë e zgjidhjes së problemit.

Për shembull, kur zgjidhet problemi i zbulimit të një sinjali të dobishëm, NS mund të ketë një ose dy dalje.

Krijimi ose sinteza e një rrjeti nervor është një problem që aktualisht nuk është zgjidhur teorikisht. Është private.

Trajnimi i rrjeteve nervore

Një nga vetitë më të shquara të rrjeteve nervore është aftësia e tyre për të mësuar. Përkundër faktit se procesi i të mësuarit të një rrjeti nervor ndryshon nga të mësuarit e një personi në kuptimin e zakonshëm, në fund të një mësimi të tillë, arrihen rezultate të ngjashme. Qëllimi i mësimit të një rrjeti nervor është ta rregullojë atë për një sjellje të caktuar.

Qasja më e zakonshme për trajnimin e rrjeteve nervore është lidhshmëria. Ai siguron trajnimin e rrjetit duke rregulluar vlerat e koeficientëve të peshës wij që korrespondojnë me lidhje të ndryshme midis neuroneve. Matrica W e peshave wij të rrjetit quhet një hartë sinaptike. Këtu, indeksi i është numri serial i neuronit nga i cili buron lidhja, domethënë i shtresës së mëparshme, dhe j është numri i neuronit të shtresës tjetër.

Ekzistojnë dy lloje të të mësuarit NN: mësimi i mbikëqyrur dhe mësimi i pambikëqyrur.

Mësimi i mbikëqyrur konsiston në paraqitjen në rrjet të një sekuence çiftesh mësimore (shembuj) (Xi, Hi), i = 1, 2,…, m imazhe, që quhet sekuencë mësimore. Në këtë rast, për çdo imazh hyrës Xi, përgjigja e rrjetit Y i llogaritet dhe krahasohet me imazhin përkatës të synuar H i. Mospërputhja që rezulton përdoret nga algoritmi i të mësuarit për të korrigjuar hartën sinaptike në atë mënyrë që të reduktojë gabimin e mospërputhjes. Një përshtatje e tillë kryhet me paraqitje ciklike të kampionit të trajnimit derisa gabimi i mospërputhjes të arrijë një nivel mjaft të ulët.

Megjithëse procesi i të mësuarit i mbikëqyrur është i qartë dhe i përdorur gjerësisht në shumë aplikacione të rrjeteve nervore, ai ende nuk korrespondon plotësisht me proceset reale që ndodhin në trurin e njeriut gjatë procesit të të mësuarit. Kur mëson, truri ynë nuk përdor asnjë imazh, por vetë kryen një përgjithësim të informacionit që vjen nga jashtë.

Në rastin e mësimit të pambikëqyrur, sekuenca e trajnimit përbëhet vetëm nga imazhet hyrëse Xi. Algoritmi i të mësuarit rregullon peshat në mënyrë që vektorët e ngjashëm të daljes të korrespondojnë me vektorët e afërt të hyrjes, domethënë, ai në fakt ndan hapësirën e imazheve hyrëse në klasa. Në të njëjtën kohë, para stërvitjes, është e pamundur të parashikohet se cilat modele dalëse do të korrespondojnë me klasat e modeleve të hyrjes. Është e mundur të krijohet një korrespondencë e tillë dhe t'i jepet një interpretim vetëm pas trajnimit.

Trajnimi NN mund të shihet si një proces i vazhdueshëm ose si një proces diskret. Në përputhje me këtë, algoritmet e të mësuarit mund të përshkruhen ose me ekuacione diferenciale ose me ekuacione me diferenca të fundme. Në rastin e parë, rrjeti nervor zbatohet në analog, në të dytën - në elemente dixhitale. Do të flasim vetëm për algoritmet e diferencave të fundme.

Në fakt, një rrjet nervor është një procesor ose program i specializuar paralel që imiton një rrjet nervor në një kompjuter serik.

Shumica e algoritmeve të të mësuarit (AOs) të rrjeteve nervore u rritën nga koncepti Hubb. Ai propozoi një algoritëm të thjeshtë të pambikëqyrur, në të cilin vlera e peshës w ij, që korrespondon me lidhjen midis neuroneve i-të dhe j-të, rritet nëse të dy neuronet janë në një gjendje të ngacmuar. Me fjalë të tjera, në procesin e të mësuarit, lidhjet midis neuroneve korrigjohen në përputhje me shkallën e korrelacionit të gjendjeve të tyre. Kjo mund të shprehet si ekuacioni i mëposhtëm i diferencës së fundme:

ku w ij (t + 1) dhe w ij (t) janë vlerat e peshës së lidhjeve midis neuronit i dhe neuronit j para akordimit (në hapin t + 1) dhe pas akordimit (në hapin t), përkatësisht; v i (t) - dalja e neuronit i dhe dalja e neuronit j në hapin t; v j (t) - prodhimi i neuronit j në hapin t; α është parametri i shkallës së të mësuarit.

Strategjia e të mësuarit të rrjetit nervor

Së bashku me algoritmin e të mësuarit, strategjia e të mësuarit në rrjet është po aq e rëndësishme.

Një nga qasjet është trajnimi sekuencial i rrjetit në një seri shembujsh (X i, H i) i = 1, 2,…, m që përbëjnë kampionin e trajnimit. Në këtë rast, rrjeti trajnohet për t'iu përgjigjur saktë fillimisht imazhit të parë X 1, pastaj X 2 të dytë, etj. Megjithatë, në këtë strategji, ekziston rreziku që rrjeti të humbasë aftësitë e fituara më parë gjatë mësimit të secilit shembull tjetër, domethënë, rrjeti mund të "harrojë" shembujt e paraqitur më parë. Për të parandaluar që kjo të ndodhë, është e nevojshme të trajnoni rrjetin menjëherë me të gjithë shembujt e mostrës së trajnimit.

X 1 = (X 11, ..., X 1 N) ju mund të stërvitni 100 c 1

X 2 = (X 21, ..., X 2 N) 100 q 2 100 q

……………………

X m = (X m 1, ..., X mN) 100 c 3

Meqenëse zgjidhja e problemit mësimor shoqërohet me vështirësi të mëdha, alternativa është minimizimi i funksionit objektiv të formularit:

,

ku l i - parametrat që përcaktojnë kërkesat për cilësinë e trajnimit të rrjetit nervor për secilin prej shembujve, të tillë që λ 1 + λ 2 +… + λ m = 1.

Pjesa praktike.

Le të formojmë një grup trajnimi:

P_o = mace (1, Mt, Mf);

Le të vendosim strukturën e rrjetit nervor për problemin e zbulimit:

net = newff (minmax (P_o),, ("logsig", "logsig"), "trainlm", "learngdm");

net.trainParam.epochs = 100;% numri i specifikuar i cikleve të trajnimit

net.trainParam.show = 5;% numri i sytheve për të treguar rezultatet e ndërmjetme;

net.trainParam.min_grad = 0;% vlerë e gradientit të synuar

net.trainParam.max_fail = 5;% shumësia maksimale e lejueshme e tejkalimit të gabimit të mostrës së testimit në krahasim me vlerën minimale të arritur;

net.trainParam.searchFcn = "srchcha";% emri i algoritmit të optimizimit njëdimensional të përdorur

net.trainParam.goal = 0;% gabim trajnimi i synuar

Funksioni newff është krijuar për të krijuar një rrjet nervor shumështresor "klasik" me trajnime duke përdorur metodën e përhapjes së pasme. Ky funksion përmban disa argumente. Argumenti i parë i funksionit është matrica e vlerave minimale dhe maksimale të grupit të trajnimit P_o, i cili përcaktohet duke përdorur shprehjen minmax (P_o).

Argumentet e dyta të funksionit jepen në kllapa katrore dhe përcaktojnë numrin dhe madhësinë e shtresave. Shprehja do të thotë që rrjeti nervor ka 2 shtresa. Në shtresën e parë - npr = 10 neurone, dhe në të dytën - 2. Numri i neuroneve në shtresën e parë përcaktohet nga dimensioni i matricës së veçorive hyrëse. Në varësi të numrit të veçorive në shtresën e parë mund të ketë: 5, 7, 12 neurone. Dimensioni i shtresës së dytë (shtresa dalëse) përcaktohet nga problemi që zgjidhet. Në detyrat e zbulimit të një sinjali të dobishëm në sfondin e një mikrosizmi, klasifikimi sipas klasave të para dhe të dyta, 2 neurone vendosen në daljen e rrjetit nervor.

Argumentet e funksionit të tretë përcaktojnë llojin e funksionit të aktivizimit në secilën shtresë. Shprehja ("logsig", "logsig") do të thotë se në secilën shtresë përdoret një funksion aktivizimi sigmoidal-logistik, diapazoni i të cilit është (0, 1).

Argumenti i katërt specifikon llojin e funksionit të trajnimit të rrjetit nervor. Shembulli përcakton një funksion trajnimi që përdor algoritmin e optimizimit Levenberg-Marquardt - "trainlm".

Gjysma e parë e vektorëve të matricës T inicializohet me vlerat (1, 0), dhe gjysma tjetër - (0, 1).

net = newff (minmax (P_o),, ("logsig", "logsig"), "trainlm", "learngdm");

net.trainParam.epoka = 1000;

net.trainParam.show = 5;

net.trainParam.min_grad = 0;

net.trainParam.max_fail = 5;

net.trainParam.searchFcn = "srchcha";

net.trainParam.goal = 0;

Programi për inicializimin e daljeve të dëshiruara të rrjetit nervor T:

n1 = gjatësia (Mt (:, 1));

n2 = gjatësia (Mf (:, 1));

T1 = zero (2, n1);

T2 = zero (2, n2);

T = mace (2, T1, T2);

Trajnimi i rrjetit nervor:

net = tren (net, P_o, T);

Figura 25 - Orari i trajnimit të një rrjeti nervor.

Le të kontrollojmë rrjetin nervor:

Y_k = sim (neto, P_k);

Komanda sim transferon të dhënat nga grupi i kontrollit P_k në hyrjen e rrjetit të rrjetit nervor, ndërsa rezultatet shkruhen në matricën e daljeve Y_k. Numri i rreshtave në matricat P_k dhe Y_k është i njëjtë.

Pb = shuma (rrumbullakët (Y_k (1,1: 100))) / 100

Vlerësimi i probabilitetit të zbulimit të saktë të automjeteve të gjurmuara Pb = 1 alfa = shuma (rrumbullakët (Y_k (1,110: 157))) / 110

Probabiliteti i vlerësuar i alarmit të rremë alfa = 0

Ne përcaktojmë gabimin rrënjë-mesatar-katror të kontrollit duke përdorur daljet e dëshiruara dhe reale të rrjetit nervor Еk.

Vlera e gabimit mesatar katror të kontrollit është:

sqe_k = 2.5919e-026

Le të testojmë funksionimin e rrjetit nervor. Për ta bërë këtë, ne do të formojmë një matricë të veçorive të sinjalit të testimit:

h3 = tr_t50-mesatarja (tr_t50);

Mh1 = MATRPRIZP (h3,500, N1, N2);

Mh1 = Mh1 (1:50, :);

Y_t = sim (neto, P_t);

Pb = shuma (rrumbullakët (Y_t (1,1: 100))) / 100

Vlerësimi i probabilitetit të zbulimit të saktë të mjeteve të gjurmuara Pb = 1

Ne gjejmë ndryshimin midis rezultateve të dëshiruara dhe reale të rrjetit nervor E dhe përcaktojmë gabimin mesatar katror të testimit.

Vlera e gabimit të testit të rrënjës mesatare katrore është:

sqe_t = 3.185e-025

Përfundim: në këtë seksion, ne kemi ndërtuar një model të një detektori të sinjalit sizmik në një rrjet nervor me trajnim duke përdorur metodën e përhapjes së pasme. Problemi i zbulimit zgjidhet me gabime të vogla, prandaj, veçoritë janë të përshtatshme për zbulim.

Ky rrjet nervor me dy shtresa mund të përdoret për të ndërtuar një sistem zbulimi të objekteve.


konkluzioni

Qëllimi i kësaj pune të kursit ishte studimi i metodave të përpunimit të informacionit dhe aplikimi i tyre në zgjidhjen e problemeve të zbulimit të objekteve.

Gjatë punës së kryer, e cila u krye në katër faza, u arritën këto rezultate:

1) U ndërtuan histogramet e densitetit të probabilitetit të mostrës së amplitudave të sinjalit si variabla të rastësishëm.

Janë vlerësuar parametrat e shpërndarjes: pritshmëria matematikore, varianca, devijimi standard.

Ne bëmë një supozim në lidhje me ligjin e shpërndarjes së amplitudës dhe testuam hipotezën sipas kritereve Kolmogorov-Smirnov dhe Pearson në një nivel rëndësie prej 0.05. Sipas kriterit Kolmogorov-Smirnov, shpërndarja përputhet, e drejtë. Sipas kriterit të Pearson-it, shpërndarja përshtatet saktë vetëm për sinjalin e sfondit. Për të u pranua hipoteza e një shpërndarjeje normale.

Morëm sinjale për realizimin e funksioneve të rastësishme dhe ndërtuam funksione korrelacioni për to. Sipas funksioneve të korrelacionit, u përcaktua se sinjalet kanë karakter oscilues të rastësishëm.

2) Të dhëna të gjeneruara të trajnimit dhe kontrollit (për trajnimin dhe kontrollin e rrjetit nervor).

3) Për matricën e trajnimit janë vlerësuar parametrat e shpërndarjes së veçorive: pritshmëria matematikore, varianca, devijimi standard. Për çdo veçori të matricës së trajnimit të klasave të dhëna, është llogaritur distanca dhe është zgjedhur tipari me diferencën maksimale. Pragu i vendimit u llogarit dhe lakoret e densitetit të probabilitetit u vizatuan në një grafik. Formuluar rregullin e vendimit.

4) Trajnuar një rrjet nervor me dy shtresa për të zgjidhur problemin e klasifikimit. U vlerësuan probabilitetet e zbulimit të saktë dhe alarmit të rremë. Të njëjtët tregues u vlerësuan duke përdorur sinjale testimi.

Sëmundjet si pasojë e paralizës së frymëmarrjes. 4. Armët ndezëse Një vend të rëndësishëm në sistemin e armëve konvencionale zënë armët ndezëse, të cilat janë një grup mjetesh asgjësimi bazuar në përdorimin e lëndëve djegëse. Sipas klasifikimit amerikan, armët ndezëse janë armë të shkatërrimit në masë. Gjithashtu merret parasysh aftësia e një ndezësi ...

5. Janë marrë një seri të vazhdueshme vëzhgimesh afatgjatë të intensitetit të fluksit dhe shpërndarjeve azimutale të atmosferës VLF, të cilat bënë të mundur gjurmimin e dinamikës së aktivitetit të stuhive në qendrat botërore të stuhive. 5.1. Monitorimi detar ka treguar se kontributin kryesor në aktivitetin botëror të stuhive e japin qendrat e stuhive kontinentale dhe ishullore. Ndryshimet në intensitetin e rrjedhës së pulsit janë të mira ...


Sinjali i koherencës eliminon rezultatet e rastësishme, të rreme të matjes pa humbje të ndjeshmërisë së matësit të frekuencës. Analizuesit e spektrit Ky është tashmë një lloj mjaft i avancuar, por ende premtues i mjeteve të monitorimit të radios, i krijuar për të skanuar spektrat e frekuencës së sinjaleve të moduluara në intervale të ndryshme frekuencash dhe për t'i shfaqur këto spektra në ekranin e ekranit / oshiloskopit. Kur, ...

Rrjeti nervor- një përpjekje për të përdorur modele matematikore për të riprodhuar punën e trurit të njeriut për të krijuar makina poseduese.

Rrjeti nervor artificial zakonisht mësohet me një mësues. Kjo nënkupton praninë e një grupi trajnimi (të dhënash), i cili përmban shembuj me vlera të vërteta: etiketa, klasa, tregues.

Kompletet e paetiketuara përdoren gjithashtu për të trajnuar rrjetet nervore, por ne nuk do ta mbulojmë këtë këtu.

Për shembull, nëse doni të krijoni një rrjet nervor për vlerësimin e ndjenjës së një teksti, grup i të dhënave do të ketë një listë propozimesh me vlerësime emocionale që korrespondojnë me secilën. Përcaktohet tonaliteti i tekstit shenjat(fjalë, fraza, strukturë fjalie) që japin konotacion negativ ose pozitiv. Peshat tiparet në vlerësimin përfundimtar të ndjenjës së tekstit (pozitiv, negativ, neutral) varen nga funksioni matematik, i cili llogaritet gjatë trajnimit të rrjetit nervor.

Njerëzit më parë gjeneronin tipare me dorë. Sa më shumë karakteristika dhe sa më saktë të zgjidhen peshat, aq më e saktë është përgjigja. Rrjeti nervor e ka automatizuar këtë proces.

Një rrjet nervor artificial përbëhet nga tre komponentë:

  • Shtresa hyrëse;
  • Shtresa të fshehura (llogaritëse);
  • Shtresa e daljes.

Ajo zhvillohet në dy faza:

  • gabimet.

Gjatë përhapjes përpara të gabimit, bëhet një parashikim i përgjigjes. Përhapja prapa minimizon gabimin midis përgjigjes aktuale dhe përgjigjes së parashikuar.


Shpërndarja e drejtpërdrejtë

Le të vendosim peshat fillestare në mënyrë të rastësishme:

Le të shumëzojmë të dhënat hyrëse me peshat për të formuar shtresën e fshehur:

  • h1 = (x1 * w1) + (x2 * w1)
  • h2 = (x1 * w2) + (x2 * w2)
  • h3 = (x1 * w3) + (x2 * w3)

Dalja nga shtresa e fshehur kalohet përmes një funksioni jolinear () për të marrë daljen e rrjetit:

  • y_ = fn (h1, h2, h3)

Përhapja e pasme

  • Gabimi total (gabim_gjithsej) llogaritet si diferencë midis vlerës së pritur "y" (nga grupi i trajnimit) dhe vlerës rezultuese "y_" (llogaritur gjatë përhapjes së gabimit përpara), duke kaluar përmes funksionit të kostos.
  • Derivati ​​i pjesshëm i gabimit llogaritet për secilën peshë (këto diferenciale të pjesshme pasqyrojnë kontributin e secilës peshë në humbjen totale).
  • Këto diferenca shumëzohen më pas me një numër të quajtur shkalla e të mësuarit ose shkalla e të mësuarit (η).

Rezultati më pas zbritet nga peshat përkatëse.

Kjo do të rezultojë në peshat e mëposhtme të përditësuara:

  • w1 = w1 - (η * ∂ (gabim) / ∂ (w1))
  • w2 = w2 - (η * ∂ (gabim) / ∂ (w2))
  • w3 = w3 - (η * ∂ (gabim) / ∂ (w3))

Nuk tingëllon si ide e mirë të supozosh dhe të inicializosh peshat në mënyrë të rastësishme dhe ato do të japin përgjigje të sakta, por funksionon mirë.


Meme popullore rreth asaj se si Carlson u bë një zhvillues i Shkencës së të Dhënave

Nëse jeni njohur me seritë Taylor, përhapja e pasme e gabimit ka të njëjtin rezultat përfundimtar. Vetëm në vend të një serie të pafundme, ne po përpiqemi të optimizojmë vetëm termin e saj të parë.

Kompensimet janë pesha të shtuara në shtresat e fshehura. Ata gjithashtu inicializohen dhe përditësohen rastësisht ashtu si një shtresë e fshehur. Roli i shtresës së fshehur është të përcaktojë formën e funksionit themelor në të dhëna, ndërsa roli i kompensimit është të zhvendosë mënjanë funksionin e gjetur në mënyrë që të mbivendoset me funksionin origjinal.

Derivatet e pjesshme

Derivatet e pjesshme mund të llogariten, kështu që dihet se cili ka qenë kontributi në gabim për çdo peshë. Nevoja për derivate është e qartë. Imagjinoni një rrjet nervor që përpiqet të gjejë shpejtësinë optimale për një automjet autonom. Nëse makina zbulon se po ecën më shpejt ose më ngadalë se shpejtësia e kërkuar, rrjeti nervor do të ndryshojë shpejtësinë, duke përshpejtuar ose ngadalësuar makinën. Çfarë është përshpejtimi / ngadalësimi në të njëjtën kohë? Derivatet e shpejtësisë.

Le të shohim nevojën për derivate të pjesshme duke përdorur një shembull.

Supozoni se fëmijëve u kërkohet të hedhin një shigjetë në një objektiv ndërsa synojnë në qendër. Këtu janë rezultatet:

Tani, nëse gjejmë një gabim të përgjithshëm dhe thjesht e zbresim atë nga të gjitha peshat, do të përmbledhim gabimet e bëra nga secila. Pra, le të themi se fëmija goditi shumë ulët, por ne u kërkojmë të gjithë fëmijëve të përpiqen të godasin objektivin, atëherë kjo do të çojë në foton e mëposhtme:

Gabimi i disa fëmijëve mund të ulet, por gabimi total është ende në rritje.

Pasi kemi gjetur derivatet e pjesshme, zbulojmë gabimet që korrespondojnë me secilën peshë veç e veç. Nëse korrigjoni në mënyrë selektive peshat, mund të merrni sa vijon:

Hiperparametrat

Një rrjet nervor përdoret për të automatizuar zgjedhjen e veçorive, por disa parametra janë konfiguruar manualisht.

Shkalla e të mësuarit

Shkalla e të mësuarit është një hiperparametër shumë i rëndësishëm. Nëse shkalla e të mësuarit është shumë e ulët, atëherë edhe pas trajnimit të rrjetit nervor për një kohë të gjatë, do të jetë larg rezultateve optimale. Rezultatet do të duken diçka si kjo:

Nga ana tjetër, nëse shkalla e të mësuarit është shumë e lartë, atëherë rrjeti do të përgjigjet shumë shpejt. Rezultati është si më poshtë:

Funksioni i aktivizimit

Funksioni i aktivizimit është një nga mjetet më të fuqishme që ndikon në forcën që i atribuohet rrjeteve nervore. Pjesërisht, ai përcakton se cilët neurone do të aktivizohen, me fjalë të tjera, dhe çfarë informacioni do të transmetohet në shtresat pasuese.

Pa funksionet e aktivizimit, rrjetet e thella humbasin shumë nga aftësia e tyre e të mësuarit. Jolineariteti i këtyre funksioneve është përgjegjës për rritjen e shkallës së lirisë, e cila lejon përgjithësimin e problemeve me dimensione të larta në dimensione më të ulëta. Më poshtë janë shembuj të funksioneve të zakonshme të aktivizimit:

Funksioni i humbjes

Funksioni i humbjes është në qendër të rrjetit nervor. Përdoret për të llogaritur gabimin ndërmjet përgjigjeve reale dhe atyre të marra. Qëllimi ynë global është të minimizojmë këtë gabim. Kështu, funksioni i humbjes sjell në mënyrë efektive trajnimin e rrjetit nervor më afër këtij qëllimi.

Funksioni i humbjes mat "sa i mirë" është rrjeti nervor për një grup të caktuar trajnimi dhe përgjigjet e pritshme. Mund të varet gjithashtu nga variabla të tilla si peshat dhe paragjykimet.

Funksioni i humbjes është njëdimensional dhe jo vektor, pasi vlerëson se sa mirë po funksionon rrjeti nervor në tërësi.

Disa funksione të dukshme të humbjes:

  • Sheshi (devijimi standard);
  • Entropia e kryqëzuar;
  • Eksponenciale (AdaBoost);
  • Kullback - Distanca Leibler ose fitimi i informacionit.

Devijimi standard është funksioni më i thjeshtë i humbjes dhe më i përdoruri. Është vendosur si më poshtë:

Funksioni i humbjes në një rrjet nervor duhet të plotësojë dy kushte:

  • Funksioni i humbjes duhet të shkruhet si një mesatare;
  • Funksioni i humbjes nuk duhet të varet nga asnjë vlerë aktivizimi të rrjetit nervor, me përjashtim të vlerave të dhëna në dalje.

Rrjetet nervore të thella

(të mësuarit e thellë) është një klasë algoritmesh që mësojnë të kuptojnë të dhënat më thellë (më abstrakte). Algoritmet e njohura për rrjetet nervore të të mësuarit të thellë janë paraqitur në diagramin më poshtë.

Algoritmet e njohura të rrjetit nervor (http://www.asimovinstitute.org/neural-network-zoo)

Më formalisht në mësimin e thellë:

  • Një kaskadë (tubacion, si një rrymë e transmetuar në mënyrë sekuenciale) përdoret nga një grup shtresash përpunuese (jolineare) për të nxjerrë dhe transformuar veçoritë;
  • Bazuar në studimin e veçorive (paraqitja e informacionit) në të dhëna pa mësim të mbikëqyrur. Funksionet e nivelit më të lartë (që janë në shtresat e fundit) përftohen nga funksionet e nivelit më të ulët (që janë në shtresat e shtresave fillestare);
  • Eksploron pamje të shtresuara që korrespondojnë me nivele të ndryshme abstraksioni; nivelet formojnë një hierarki prezantimi.

Shembull

Konsideroni një rrjet nervor me një shtresë:

Këtu, shtresa e parë (neuronet e gjelbër) trajnohet, ajo thjesht transmetohet në dalje.

Ndërsa në rastin e një rrjeti nervor me dy shtresa, pavarësisht se si stërvitet shtresa e gjelbër e fshehur, ajo më pas kalohet në shtresën e fshehur blu ku vazhdon të trajnohet:

Prandaj, sa më i madh të jetë numri i shtresave të fshehura, aq më të mëdha janë mundësitë e të mësuarit për rrjetin.

Nuk duhet ngatërruar me rrjetin e gjerë nervor.

Në këtë rast, një numër i madh i neuroneve në një shtresë nuk çon në një kuptim të thellë të të dhënave. Por kjo çon në studimin e më shumë veçorive.

Shembull:

Studimi i gramatikës angleze kërkon njohjen e një numri të madh konceptesh. Në këtë rast, një rrjet nervor me një shtresë të gjerë funksionon shumë më mirë se një rrjet nervor i thellë, i cili është shumë më i vogël.

Në rastin e studimit të transformimit Fourier, studenti (rrjeti nervor) duhet të jetë i thellë, sepse nuk ka shumë koncepte që duhen njohur, por secili prej tyre është mjaft kompleks dhe kërkon kuptim të thellë.

Gjëja kryesore është ekuilibri

Është shumë joshëse të përdorësh rrjete nervore të thella dhe të gjera për çdo detyrë. Por kjo mund të jetë një ide e keqe sepse:

  • Të dyja kërkojnë shumë më shumë të dhëna trajnimi për të arritur saktësinë minimale të dëshiruar;
  • Të dyja janë të kompleksitetit eksponencial;
  • Një rrjet nervor që është shumë i thellë do të përpiqet të thyejë konceptet themelore, por do të bëjë supozime të gabuara dhe do të përpiqet të gjejë pseudovarësi që nuk ekzistojnë;
  • Një rrjet nervor që është shumë i gjerë do të përpiqet të gjejë më shumë veçori sesa ka. Kështu, si ai i mëparshmi, do të fillojë të bëjë supozime të pasakta për të dhënat.

Mallkim dimensional

Mallkimi i dimensionalitetit i referohet fenomeneve të ndryshme që lindin gjatë analizimit dhe organizimit të të dhënave në hapësira shumëdimensionale (shpesh me qindra ose mijëra dimensione) dhe nuk ndodh në situata me dimensione të ulëta.

Gramatika angleze ka një numër të madh atributesh që ndikojnë në të. Në mësimin e makinerive, ne duhet t'i përfaqësojmë ato si veçori në formën e një grupi / matrice me gjatësi të fundme dhe dukshëm më të shkurtër (se numri i veçorive ekzistuese). Për ta bërë këtë, rrjetet i përgjithësojnë këto veçori. Kjo paraqet dy probleme:

  • Për shkak të supozimeve të pasakta, ndodh paragjykimi. Paragjykimi i lartë mund të bëjë që algoritmi të humbasë një lidhje të rëndësishme midis veçorive dhe variablave të synuar. Ky fenomen quhet nën-mësim.
  • Varianca rritet nga devijimet e vogla në grupin e trajnimit për shkak të mësimit të pamjaftueshëm të veçorive. Varianca e lartë çon në mbipërshtatje, gabimet perceptohen si informacion i besueshëm.

Kompromisi

Në fazat e hershme të të mësuarit, paragjykimi është i madh sepse dalja nga rrjeti është larg nga e dëshiruara. Dhe varianca është shumë e vogël, pasi të dhënat kanë pak ndikim deri më tani.

Në fund të trajnimit, paragjykimi është i vogël sepse rrjeti ka identifikuar funksionin kryesor në të dhëna. Megjithatë, nëse trajnimi është shumë i gjatë, rrjeti do të mësojë gjithashtu zhurmën e natyrshme në këtë grup të dhënash. Kjo çon në një variacion të madh në rezultate kur testohet në grupe të ndryshme, pasi zhurma ndryshon nga një grup grupi në tjetrin.

Vërtet,

Algoritmet me një paragjykim të madh zakonisht bazohen në modele më të thjeshta që nuk janë të prirura për t'u përshtatur, por mund të mos përshtaten dhe të mos zbulojnë modele ose veti të rëndësishme të veçorive. Modelet me paragjykim të ulët, variancë të lartë janë zakonisht më komplekse për sa i përket strukturës së tyre, gjë që u lejon atyre të përfaqësojnë më saktë grupin e trajnimit. Megjithatë, ata mund të shfaqin shumë zhurmë nga grupi i trajnimit, duke i bërë parashikimet e tyre më pak të sakta pavarësisht kompleksitetit të tyre të shtuar.

Prandaj, është përgjithësisht e pamundur të ketë paragjykim të vogël dhe variancë të vogël në të njëjtën kohë.

Ka shumë mjete atje tani që mund të krijoni lehtësisht modele komplekse të mësimit të makinerive, rikualifikimi është thelbësor. Sepse paragjykimi shfaqet kur rrjeti nuk merr informacion të mjaftueshëm. Por sa më shumë shembuj të ketë, aq më shumë variante varësish dhe ndryshueshmërie shfaqen në këto korrelacione.

Ky artikull përmban materiale - kryesisht rusisht-folëse - për studimin bazë të rrjeteve nervore artificiale.

Një rrjet nervor artificial, ose ANN, është një model matematikor, si dhe zbatimi i tij softuer ose harduer, i ndërtuar mbi parimin e organizimit dhe funksionimit të rrjeteve nervore biologjike - rrjetet e qelizave nervore të një organizmi të gjallë. Shkenca e rrjeteve nervore ekziston për një kohë të gjatë, por pikërisht në lidhje me arritjet më të fundit të përparimit shkencor dhe teknologjik kjo zonë fillon të fitojë popullaritet.

libra

Le ta fillojmë koleksionin tonë me mënyrën klasike të të mësuarit - me ndihmën e librave. Ne kemi zgjedhur libra në gjuhën ruse me një numër të madh shembujsh:

  • F. Wasserman, Inxhinieri Neurokompjuterike: Teori dhe Praktikë. viti 1992
    Libri përshkruan bazat e ndërtimit të neurokompjuterëve në një formë publike. Është përshkruar struktura e rrjeteve nervore dhe algoritme të ndryshme për akordimin e tyre. Kapituj të veçantë i kushtohen zbatimit të rrjeteve nervore.
  • S. Khaikin, Rrjetet nervore: Një kurs i plotë. viti 2006
    Ai diskuton paradigmat kryesore të rrjeteve nervore artificiale. Materiali i paraqitur përmban një vërtetim rigoroz matematikor të të gjitha paradigmave të rrjeteve nervore, i ilustruar me shembuj, përshkrime të eksperimenteve kompjuterike, përmban shumë probleme praktike, si dhe një bibliografi të gjerë.
  • D. Forsyth, Computer Vision. Qasje moderne. 2004 r.
    Vizioni kompjuterik është një nga fushat më të kërkuara në këtë fazë në zhvillimin e teknologjive kompjuterike dixhitale globale. Kërkohet në prodhim, kur kontrolloni robotë, kur automatizoni procese, në aplikime mjekësore dhe ushtarake, kur vëzhgoni nga satelitët dhe kur punoni me kompjuterë personalë, veçanërisht kur kërkoni imazhe dixhitale.

Video

Nuk ka asgjë më të arritshme dhe të kuptueshme sesa trajnimi vizual me ndihmën e videos:

  • Për të kuptuar se për çfarë bëhet fjalë për mësimin e makinerive, hidhini një sy këtu. këto dy leksione nga SHAD Yandex.
  • Prezantimi me parimet bazë të projektimit të rrjeteve nervore - e shkëlqyeshme për të vazhduar njohjen tuaj me rrjetet nervore.
  • Kursi leksioni me temën "Vizioni kompjuterik" nga MSU VMK. Vizioni kompjuterik është një teori dhe teknologji për krijimin e sistemeve artificiale që zbulojnë dhe klasifikojnë objektet në imazhe dhe regjistrime video. Këto leksione mund të klasifikohen si një hyrje në këtë shkencë interesante dhe komplekse.

Burime arsimore dhe lidhje të dobishme

  • Portali i inteligjencës artificiale.
  • Laboratori “Unë jam intelekti”.
  • Rrjetet nervore në Matlab.
  • Rrjetet nervore në Python:
    • Klasifikimi i tekstit duke përdorur;
    • E thjeshte.
  • Rrjeti nervor aktiv.

Seria jonë e botimeve mbi këtë temë

Më parë, ne kemi publikuar tashmë një kurs #[email i mbrojtur] mbi rrjetet nervore. Në këtë listë, botimet janë renditur sipas rendit të studimit për lehtësinë tuaj.

Artikujt kryesorë të lidhur