Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Recenzije
  • Metode treninga neuronskih mreža. Trening neuronske mreže

Metode treninga neuronskih mreža. Trening neuronske mreže

Metode, pravila i algoritmi koji se koriste u obučavanju različitih mrežnih topologija.

... Obuka neuronskih mreža.

... Metode treninga neuronske mreže.

Rješavanje problema na neuroračunalu bitno se razlikuje od rješavanja istog problema na konvencionalnom računalu s Von Neumannovom arhitekturom. Rješenje problema na konvencionalnom računalu je obrada ulaznih podataka u skladu s programom. Program izrađuje osoba. Za kompajliranje programa morate smisliti algoritam, t.j. određeni slijed matematičkih i logičkih radnji potrebnih za rješavanje ovog problema. Algoritme, kao i programe, razvijaju ljudi, a računalo se koristi samo za izvođenje velikog broja elementarnih operacija: zbrajanje, množenje, provjera logičkih uvjeta itd.

Neuroračunalo se koristi kao "crna kutija" koju se može naučiti rješavati probleme iz razreda. Neuroračunalu se “prezentuju” početni podaci problema i odgovor koji odgovara tim podacima i koji je dobiven na bilo koji način. Neuroračunalo mora samo izgraditi algoritam za rješavanje ovog problema unutar “crne kutije” kako bi dalo odgovor koji se poklapa s točnim. Čini se prirodnim očekivati ​​da što će više različitih parova (početni podaci), (odgovor) biti predstavljeno neuroračunalu, to će ono adekvatnije izgraditi model za problem koji se rješava.

Nakon faze osposobljavanja neuroračunala, treba se nadati da, ako mu se predoče početni podaci, koje do sada nije upoznao, ono ipak daje ispravno rješenje - to je sposobnost neuroračunala da generalizira.

Budući da se neuroračunalo temelji na umjetnoj neuronskoj mreži, proces učenja sastoji se od postavljanja parametara te mreže. U ovom slučaju, u pravilu se topologija mreže smatra nepromijenjenom, a podesivi parametri obično uključuju parametre neurona i vrijednosti sinaptičkih težina. Do danas je u literaturi uobičajeno učenje shvaćati kao proces promjene težine veza između neurona.

Razmotrit ćemo dva smjera klasifikacije metoda mrežnog treninga. Prvi smjer je na načinima korištenja učitelja.

S učiteljicom:

Mreže su prikazane s primjerima ulaza i izlaza. Mreža transformira ulazne podatke i uspoređuje njihov izlaz sa željenim. Nakon toga se ponderi korigiraju kako bi se postigla bolja konzistentnost rezultata.

Učenje s pojačanjem:

U tom slučaju mreži se ne daje željena izlazna vrijednost, već se umjesto toga procjenjuje je li izlaz dobar ili loš.

Učenje bez učitelja:

Sama mreža razvija pravila učenja izdvajanjem značajki iz skupa ulaznih podataka.

Drugi smjer klasifikacije nastavnih metoda je prema korištenju elemenata slučajnosti.

Determinističke metode:

U njima se, korak po korak, provodi postupak ispravljanja mrežnih težina, na temelju korištenja njihovih trenutnih vrijednosti, na primjer, vrijednosti željenih mrežnih izlaza. Algoritam učenja povratnog širenja razmatran u nastavku primjer je determinističkog učenja.

Stohastičke metode učenja:

Temelje se na korištenju slučajnih promjena utega tijekom treninga. Boltzmannov algoritam učenja koji se razmatra u nastavku primjer je stohastičkog učenja.

... Pravila treninga neuronske mreže .

Pravila učenja definiraju zakon po kojem mreža mora mijenjati svoje sinaptičke težine tijekom procesa učenja.

Hebbovo pravilo (D.Hebb):

Većina metoda treninga temelji se na općim principima treninga neuronskih mreža koje je razvio Donald Hebb. Hebbov princip se može formulirati na sljedeći način: "Ako su dva neurona istovremeno aktivna, povećajte snagu veze između njih", što se može zapisati kao:

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

gdje je: dW ij - vrijednost promjene sinapse W ij

Y i - razina ekscitacije i-tog neurona

Y j - razina ekscitacije j-tog neurona

f (.) - funkcija transformacije

g je konstanta koja određuje brzinu učenja.

Većina nastavnih pravila temelji se na ovoj formuli.

Delta pravilo:

Poznato je kao pravilo smanjenja pogreške na kvadrat i predloženo je. Delta pravilo se koristi u nadziranom učenju.

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

gdje je: D j željeni izlaz j-tog neurona.

Dakle, promjena jačine veza događa se u skladu s greškom izlaznog signala (D j - Y j) i razinom aktivnosti ulaznog elementa Y. ...

UMJETNOST - pravilo:

Teorija adaptivne rezonancije (ART) razvijena je u. ART je učenje bez nadzora, kada se samoorganizacija javlja kao rezultat odgovora na izbor ulaznih slika. ART mreža je sposobna klasificirati slike. ART koristi koncept dugoročne i kratkoročne memorije za učenje neuronskih mreža. Dugotrajna memorija pohranjuje reakcije na slike s kojima je mreža trenirana u obliku vektora težine. Kratkoročna memorija sadrži trenutnu ulaznu sliku, očekivanu sliku, klasifikaciju ulazne slike. Očekivani uzorak se dohvaća iz dugotrajne memorije kad god se novi uzorak unese na NN ulaz. Ako su slični prema određenom kriteriju, mreža ga svrstava u postojeći razred. Ako su različiti, formira se nova klasa u kojoj će ulazni vektor biti prvi član klase.

Ovo učenje naziva se suparničkim učenjem. Najjednostavniji tip suparničkog učenja određen je pravilom “pobjednik uzima sve”. ansambl s najboljim izlazom se aktivira, ostali su potisnuti.

Element s najvišom razinom aktivacije naziva se "pobjednik". Kada se odabere, NN dodaje značajke ulazne slike članovima dugotrajne memorije ponovnim trčanjem naprijed-natrag kroz težine dugotrajne memorije. Grossberg je ovaj proces nazvao rezonancijom.

Kohonenovo pravilo:

Theo Kohonen s Helsinškog instituta za tehnologiju upotrijebio je koncept adversarnog učenja kako bi razvio pravilo "nenadziranog" učenja u neuronskoj mreži kao što je Kohonenova karta (slika 3.3).

Kohonenovo pravilo je sljedeće. Prvo, pobjednik se bira pomoću strategije pobjednik uzima sve. Budući da je izlaz j-tog neurona određen skalarnim umnoškom (U, W j) ulaznog vektora U s vektorom težina veza između ulaznog sloja i j-tog neurona, on ovisi o kutu između vektori U, W j. Stoga se odabire neuron čiji je vektor težina W j najbliži ulaznom vektoru U. (drugim riječima, odabire se najaktivniji neuron). Zatim se konstruira novi vektor W j tako da bude bliži ulaznom vektoru U, tj. :

W ij novi = W ij stari + g (U - W ij stari) i = 1,2, ..., k.

gdje je: k broj mrežnih ulaza.

g je konstanta učenja.

Boltzmannova obuka:

Boltzmannova obuka sastoji se u pojačavanju treninga u skladu s ciljnom funkcijom promjene izlaza neuronske mreže. Ovaj trening koristi probabilističku funkciju za promjenu utega. Ova funkcija je obično u obliku Gaussove distribucije, iako se mogu koristiti i druge distribucije.

Boltzmannova obuka se izvodi u nekoliko faza.

1. Koeficijent T dobiva veliku početnu vrijednost.

2. Ulazni vektor se propušta kroz mrežu, a ciljna funkcija se izračunava iz izlaza.

3. Težina se nasumično mijenja u skladu s Gaussovom distribucijom: P (x) = exp (-x 2 / T 2), gdje je x promjena težine.

4. Izlaz i ciljna funkcija se ponovno izračunavaju.

5. Ako se vrijednost ciljne funkcije smanjila (poboljšala), zadržite promjenu težine. Ako nije, a vrijednost oštećenja ciljne funkcije je C, tada se vjerojatnost održavanja promjene težine izračunava na sljedeći način.

Vrijednost P (C) je vjerojatnost promjene C u funkciji cilja, određena pomoću Boltzmannove distribucije: P (C) ~ exp (- C / kT)

gdje je: k konstanta slična Boltzmannovoj konstanti, odabrana ovisno o uvjetima problema.

Zatim odaberite slučajni broj V koristeći jednoličnu distribuciju od nule do jedan. Ako je R (S)> V, tada je promjena težine očuvana, inače je promjena težine jednaka nuli.

Koraci 3 - 5 se ponavljaju za svaku od pondera mreže, uz postupno smanjenje T dok se ne postigne prihvatljivo niska vrijednost ciljne funkcije. Nakon toga se cijeli proces učenja ponavlja za drugi ulazni vektor. Mreža se trenira na svim vektorima sve dok funkcija cilja ne postane izvediva za sve njih. Štoviše, da bi se osigurala konvergencija, promjena T mora biti proporcionalna logaritmu vremena t:

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

To znači da je stopa konvergencije ciljne funkcije niska, stoga vrijeme treninga može biti vrlo dugo.

... Algoritmi za obuku neuronskih mreža.

Trening feedforward mreže.

Da biste trenirali mrežu, morate znati vrijednosti d j (j = 1,2 ...

Pogreška mrežnog rada na tim podacima definirana je kao

gdje je: y j - izlaz mreže.

Da biste smanjili ovu pogrešku, mrežne težine treba promijeniti prema sljedećem pravilu:

W k novo = W k staro -  • (E / W k)

gdje je:  konstanta koja karakterizira brzinu učenja.

Posljednja formula opisuje proces gradijenta spuštanja u prostoru utega. Izraz za derivaciju dE / dW je sljedeći:

E / W k-1 ij = (d j - y j) f j u k-1 i za izlazni sloj, t.j. k = K

E / W k-1 ij =  [(d j - y j)  f j w k ij]  f j u k-1 i za skrivene slojeve,

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

Ako se sigmoidna funkcija koristi kao nelinearna transformirajuća funkcija, tada je umjesto posljednja dva izraza prikladno koristiti sljedeće rekurentne formule za izlazni sloj:

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

za skrivene slojeve:

 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

Ti se odnosi nazivaju formulama povratnog širenja. Ako se tijekom izravnog rada ulazni signal širi mrežom od ulaznog sloja do izlaznog, tada se pri podešavanju pondera mrežna greška širi od izlaznog sloja do ulaza.

Obuka Kohonenovih mreža (izgradnja karata značajki).

Za konstruiranje Kohonenove karte potreban je dovoljno reprezentativan uzorak vektora obilježja treninga (U). Neka svaki vektor U skupa (U) ima dimenziju k: U = (U 1, U 2,..., U k).

Tada prvi (distribucijski) sloj Kohonenove mreže mora imati k neurona; n neurona drugog sloja (karte) smješteno je izvan ravnine u nekoj pravilnoj konfiguraciji, na primjer, iz kvadratne pravokutne mreže (slika 3.3). Nasumične vrijednosti dodjeljuju se podesivim vezama između neurona prvog i drugog sloja W ij.

Ovdje indeks i označava broj neurona prvog sloja, indeks j - broj neurona drugog sloja. Prije početka treninga postavlja se funkcija međusobnog utjecaja neurona drugog sloja g (r, t), gdje je r udaljenost između neurona, t je parametar koji karakterizira vrijeme treninga.

Ova funkcija tradicionalno ima oblik "meksičkog šešira" (slika 3.4.), koji se u procesu učenja čini "užim", kako se parametar t povećava. Međutim, često se koriste jednostavnije funkcije, na primjer:

gdje je: D konstanta koja karakterizira početni polumjer pozitivnog vrha meksičkog šešira.

Svaki ciklus treninga sastoji se u naizmjeničnom predstavljanju mreže vektora skupa za obuku uz naknadnu korekciju težina W ij. Prilagodba se provodi na sljedeći način:

1. Kada se na ulazu mreže pojavi sljedeći vektor treninga U, mreža izračunava odgovor neurona drugog sloja:

2. Odabire se pobjednički neuron (tj. neuron s najvećim odgovorom). Njegov C broj je definiran kao:

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

3. Korekcija težina veza W provodi se prema sljedećoj formuli:

W ij novi = W ij stari +  • g (r, t) • (U i - W ij stari), i = 1,. ... ... , k; j = 1,. ... ... n.

Ovdje je  konstanta koja karakterizira učenje.

Ako se nakon sljedećeg ciklusa učenja proces promjene utega uspori, povećajte parametar t.

Obuka Hopfield mreže.

Ovdje treba istaknuti dvije mogućnosti povezane s kasnijim korištenjem mreže: hoće li se koristiti kao asocijativna memorija ili za rješavanje problema optimizacije.

Mreža se koristi kao asocijativna memorija. Naime: želimo u njega pohraniti m binarnih vektora V s, s = 1,2,. ... .n: V s = (V 1s, V 2s, ..., V ns).

To znači da pri prezentaciji mreže bilo kojeg od ovih vektora ona mora doći u stabilno stanje koje odgovara ovom vektoru, tj. isti vektor treba odabrati na izlazu neurona. Ako je mreža predstavljena s nepoznatim vektorom U, tada bi se na izlazu mreže trebao pojaviti jedan od pohranjenih vektora V i koji je najbliži U.

Očito, broj neurona u takvoj mreži trebao bi biti jednak duljini pohranjenih vektora n.

Najjednostavniji način formiranja težine takve mreže postiže se sljedećim postupkom:

Međutim, kapacitet takve mreže (tj. broj pohranjenih vektora m) je mali, m  log n. U ovom radu za formiranje pondera korišteno je pravilo učenja Hebbovog tipa, čime je postignut kapacitet mreže m  n.

Mreža se koristi za rješavanje problema optimizacije. Ova mogućnost je posljedica sljedeće izvanredne osobine Hopfieldovih mreža: tijekom rada mreže vrijednost (koja se u literaturi obično naziva "energija" Hopfieldove mreže) ne raste. Jedna od opcija za "energiju" Hopfield mreže:

gdje su A, B konstante definirane problemom. Zadatak istraživanja je formulirati početni problem optimizacije u terminima neuronske mreže i napisati minimizirani funkcionalni E h. Izraz dobiven za W ij daje vrijednost težinskih faktora. Kao rezultat funkcioniranja, mreža dolazi u ravnotežno stanje, koje odgovara lokalnom minimumu funkcionalnog E h. U ovom slučaju vrijednosti pobuđenosti neurona odgovaraju vrijednostima argumenata na kojima se postiže minimum.

Algoritmi za učenje neuronskih mreža

U fazi obuke, sinaptički koeficijenti se izračunavaju u procesu rješavanja specifičnih problema neuronskom mrežom. Nadzirano učenje neuronske mreže može se promatrati kao rješenje problema optimizacije. Njegova je svrha minimizirati funkcije pogreške (ostatke) na danom skupu primjera odabirom vrijednosti težina W.

Postoje dvije vrste nastave: s učiteljem i bez učitelja. Nadzirano učenje uključuje predstavljanje niza trening parova (X i, D i) mreži, gdje je X i primjer treninga, D i je standard koji se mora dobiti na izlazu mreže. Za svaki X i izračunava se y i i uspoređuje s D i. Razlika se koristi za ispravljanje sinaptičke matrice. Učenje bez nadzora podrazumijeva samo nastavne primjere X i. Sinaptička matrica je podešena tako da slični ulazni vektori odgovaraju istim rezultirajućim vektorima.

Proces učenja može se promatrati kao diskretni proces opisan jednadžbama konačnih razlika. Većina nastavnih metoda koristi Hubbovu ideju ponavljanja naučenog primjera. Sinaptička težina se povećava ako se aktiviraju dva neurona – izvor i odredište. Dobitak na težini određuje se umnoškom razina pobuđenosti dvaju neurona, koji se može zapisati na sljedeći način:

gdje su vrijednosti težine veze od i-tog neurona do j-tog na prethodnoj i trenutnoj iteraciji treninga;

- stopa učenja ();

- izlaz neurona i, koji je ulaz za j-ti neuron u 0-oj iteraciji;

- izlaz neurona j na 0. iteraciji.

Proces učenja neuronske mreže razmatra se kao problem minimiziranja neke funkcije F (W) min, gdje je W sinaptička matrica mreže.

Za rješavanje takvog problema mogu se koristiti različite metode nelinearnog programiranja: gradijent, kvazi-Newtonova slučajna pretraga itd.

Zajedničko metodama treninga mreže je sljedeće: za neko početno stanje sinaptičke matrice određuje se smjer opadanja ciljne funkcije F (W) i u tom smjeru pronalazi njezin minimum. Za dobivenu točku ponovno se izračunava smjer pada funkcije i provodi se jednodimenzionalna optimizacija. Općenito, algoritam se može predstaviti kao

gdje je veličina koraka na stupnju 0;

Smjer pretraživanja u fazi 0.

Najnaprednija metoda treninga je algoritam povratnog širenja. Nema ograničenja za broj slojeva i topologiju mreže. Jedini uvjet je da je funkcija uzbude svugdje diferencibilna. Obično se koristi sigmoidna (logistička) funkcija. Propagiranje unatrag je metoda učenja pod nadzorom (slika 6.5).

Riža. 6.5. Shema obuke neuronske mreže s učiteljem

Algoritam povratnog širenja je evolucija generaliziranog delta pravila i algoritam gradijentnog spuštanja koji minimizira ukupnu kvadratnu pogrešku. Glavni cilj je izračunati osjetljivost mrežne pogreške na promjene težina.

Neka neuronska mreža odgovara dijagramu na sl. 6.2. Tada se algoritam učenja može opisati:

1. Postavite sinaptičke matrice W, W *.

2. Za svaki trening par (X i, D i) izvršite sljedeće radnje:

dostaviti sljedeći skup podataka za obuku na ulaz skrivenog sloja;

izračunaj izlaz skrivenog sloja:

;

izračunaj izlaz izlaznog sloja:

.

između dobivenih izlaznih vrijednosti mreže i referentnih vrijednosti;

za neurone skrivenog sloja.

Ponavljajte korake 2 i 3 dok pogreške ne budu prihvatljive.

Primjer 6.3. Neka neuronska mreža odgovara dijagramu na sl. 6.2. U ovom slučaju, n = 2, m = 2, k = 1 (slika 6.6). Skup za učenje = (1; 2), D = 3. Neuralnu mrežu potrebno je osposobiti za zbrajanje brojeva 1 i 2. Svi neuroni su pobuđeni sigmoidnom funkcijom. Zadane su sinaptičke matrice za skriveni sloj na prvoj iteraciji:

i vektor za izlazni sloj

Riža. 6.6. Neuronska mreža s jednim skrivenim slojem

Izračunajte ponderirani zbroj

Ponderirani ulaz za izlazni sloj

Istodobno, željena vrijednost y (1), pretvorena uz pomoć funkcije uzbude

D = F (3) = 0,952.

Stoga, srednja kvadratna greška (RMSE):

Stvarni učinak i željeni izlaz se ne podudaraju, pa sinaptičke težine treba promijeniti. Da biste to učinili, potrebno je saznati kako će te promjene utjecati na veličinu pogreške. Analiza se, prema algoritmu povratnog širenja, izvodi počevši od izlaznog sloja mreže i krećući se prema ulaznom:

1) prije svega saznajte kako promjene izlaza utječu na mrežnu pogrešku. Da biste to učinili, dovoljno je odrediti stopu promjene greške na zadanoj izlaznoj vrijednosti. Brzina se određuje pomoću derivacije. Diferencijacija se izvodi na argumentu y (1).

Primljeni odgovor stope promjene pogreške na zadanoj vrijednosti izlaza je negativan, što ukazuje na potrebu povećanja vrijednosti na izlazu;

2) odrediti kako svaki od
ulaze izlaznog sloja. Da bismo to učinili, određujemo stopu promjene mrežne pogreške pri promjeni ponderiranog prosječnog ulaza izlaznog sloja V * (1):

Vrijednost EQ pokazuje da je stopa promjene greške u
proces promjene ponderiranog prosječnog ulaza izlaznog neurona značajno je niži u usporedbi sa brzinom odgovora mreže na promjenu njezina izlaza.

4. Trening neuronske mreže.

4.1 Opći podaci o neuronskim mrežama

Umjetne neuronske mreže su modeli koji se temelje na suvremenim idejama o strukturi ljudskog mozga i procesima obrade informacija koji se u njemu odvijaju. ANN su već našle široku primjenu u problemima: kompresija informacija, optimizacija, prepoznavanje uzoraka, konstrukcija ekspertnih sustava, obrada signala i slike itd.

Veza između bioloških i umjetnih neurona

Slika 20 - Struktura biološkog neurona

Ljudski živčani sustav sastoji se od ogromnog broja međusobno povezanih neurona, oko 10 11; broj veza se računa kao 10 15.

Predstavljajmo shematski par bioloških neurona (slika 20.) Neuron ima nekoliko ulaznih procesa – dendrita, i jedan izlazni – akson. Dendriti primaju informacije od drugih neurona, a akson - prenosi. Područje gdje se akson spaja s dendritom (područje kontakta) naziva se sinapsa. Signali koje primaju sinapse dovode se do tijela neurona, gdje se dodaju. U ovom slučaju, jedan dio ulaznih signala je uzbudljiv, a drugi inhibirajući.

Kada ulazno djelovanje prijeđe određeni prag, neuron prelazi u aktivno stanje i šalje signal drugim neuronima duž aksona.

Umjetni neuron je matematički model biološkog neurona (slika 21). Označimo ulazni signal kroz x, a skup ulaznih signala kroz vektor X = (x1, x2, ..., xN). Izlazni signal neurona bit će označen s y.

Nacrtajmo funkcionalni dijagram neurona.

Slika 21 - Umjetni neuron

Da bismo označili uzbudljiv ili inhibitorni učinak ulaza, uvodimo koeficijente w 1, w 1, ..., w N - za svaki ulaz, odnosno vektor

W = (w 1, w 1,…, w N), w 0 je vrijednost praga. Ulazni utjecaji X ponderirani na vektor W se množe s odgovarajućim koeficijentom w, zbrajaju i generira se signal g:

Izlazni signal je neka funkcija g


,

gdje je F aktivacijska funkcija. Može biti raznih vrsta:

1) stepenasti prag

ili

Općenito:

2) linearni, što je ekvivalentno odsutnosti elementa praga uopće

F (g) = g


3) komadno linearni, dobiven od linearnog ograničavanjem raspona njegove varijacije unutar, tj

4) sigmoidalni

5) višeprag

6) hiperbolička tangenta

F (g) = tanh (g)


Najčešće se ulazne vrijednosti pretvaraju u raspon XÎ. Kada je w i = 1 (i = 1, 2,…, N), neuron je većinski element. U ovom slučaju, prag poprima vrijednost w 0 = N / 2.

Druga verzija uvjetne slike umjetnog neurona prikazana je na slici 22

Slika 22 - Konvencionalna oznaka umjetnog neurona

S geometrijske točke gledišta, neuron s linearnom aktivacijskom funkcijom opisuje jednadžbu linije, ako je ulaz jedna vrijednost x 1

ili ravnina, kada je ulaz vektor vrijednosti X

Struktura (arhitektura, topologija) neuronskih mreža

Postoji mnogo načina organiziranja ANN-a, ovisno o: broju slojeva, obliku i smjeru veza.

Oslikajmo primjer organizacije neuronskih mreža (slika 23).


Jednoslojna struktura Dvoslojna struktura s povratnim petljama s povratnim petljama

Dvoslojna struktura Troslojna struktura s izravnim vezama s izravnim vezama

Slika 23 - Primjeri struktura neuronskih mreža

Slika 24 prikazuje troslojnu izravno spregnutu neuronsku mrežu. Sloj neurona koji izravno prima informacije iz vanjskog okruženja naziva se ulazni sloj, a sloj koji prenosi informacije u vanjsko okruženje naziva se izlazni sloj. Svaki sloj koji leži između njih i nema kontakt s vanjskim okruženjem naziva se srednji (skriveni) sloj. Može biti više slojeva. U višeslojnim mrežama, u pravilu, neuroni jednog sloja imaju funkciju aktivacije istog tipa.


Slika 24 - Troslojna neuronska mreža

Prilikom projektiranja mreže, sljedeći su početni podaci:

- dimenziju vektora ulaznog signala, odnosno broj ulaza;

Je dimenzija vektora izlaznog signala. Broj neurona u izlaznom sloju obično je jednak broju klasa;

- formulacija problema koji treba riješiti;

- točnost rješavanja problema.

Na primjer, kod rješavanja problema detekcije korisnog signala, NS može imati jedan ili dva izlaza.

Stvaranje ili sinteza neuronske mreže je problem koji trenutno nije teorijski riješen. Privatno je.

Trening neuronske mreže

Jedno od najznačajnijih svojstava neuronskih mreža je njihova sposobnost učenja. Unatoč činjenici da se proces učenja neuronske mreže razlikuje od učenja osobe u uobičajenom smislu, na kraju takvog učenja postižu se slični rezultati. Svrha podučavanja neuronske mreže je prilagoditi je za dano ponašanje.

Najčešći pristup treniranju neuronskih mreža je konekcionizam. Omogućuje obuku mreže podešavanjem vrijednosti koeficijenata težine wij koji odgovaraju različitim vezama između neurona. Matrica W težina wij mreže naziva se sinaptička mapa. Ovdje je indeks i serijski broj neurona iz kojeg potječe veza, odnosno prethodnog sloja, a j je broj neurona sljedećeg sloja.

Postoje dvije vrste NN učenja: učenje pod nadzorom i učenje bez nadzora.

Nadzirano učenje sastoji se u predstavljanju mreži niza parova učenja (primjera) (Xi, Hi), i = 1, 2,..., m slika, što se naziva sekvenca učenja. U ovom slučaju, za svaku ulaznu sliku Xi, odgovor mreže Y i se izračunava i uspoređuje s odgovarajućom ciljnom slikom H i. Rezultirajuća neusklađenost koristi se od strane algoritma učenja za ispravljanje sinaptičke karte na način da smanji pogrešku neusklađenosti. Takva se prilagodba izvodi cikličkim prikazom uzorka za obuku sve dok pogreška neusklađenosti ne dosegne dovoljno nisku razinu.

Iako je proces nadziranog učenja jasan i široko korišten u mnogim primjenama neuronskih mreža, on još uvijek ne odgovara u potpunosti stvarnim procesima koji se događaju u ljudskom mozgu tijekom procesa učenja. Prilikom učenja naš mozak ne koristi nikakve slike, već sam provodi generalizaciju informacija koje dolaze izvana.

U slučaju učenja bez nadzora, slijed treninga sastoji se samo od ulaznih slika Xi. Algoritam učenja prilagođava težine tako da slični izlazni vektori odgovaraju bliskim ulaznim vektorima, odnosno zapravo dijeli prostor ulaznih slika u klase. Istodobno, prije treninga, nemoguće je predvidjeti koji će izlazni obrasci odgovarati klasama ulaznih uzoraka. Moguće je uspostaviti takvu korespondenciju i dati joj tumačenje tek nakon obuke.

Trening NN može se promatrati kao kontinuirani ili kao diskretni proces. U skladu s tim, algoritmi učenja mogu se opisati ili diferencijalnim jednadžbama ili jednadžbama konačnih razlika. U prvom slučaju, neuronska mreža je implementirana na analognim, u drugom - na digitalnim elementima. Govorit ćemo samo o algoritmima konačnih razlika.

Zapravo, neuronska mreža je specijalizirani paralelni procesor ili program koji emulira neuronsku mrežu na serijskom računalu.

Većina algoritama učenja (AO) neuronskih mreža izrasla je iz Hubb koncepta. Predložio je jednostavan algoritam bez nadzora, u kojem se vrijednost težine w ij, koja odgovara vezi između i-tog i j-tog neurona, povećava ako su oba neurona u pobuđenom stanju. Drugim riječima, u procesu učenja, veze između neurona se korigiraju u skladu sa stupnjem korelacije njihovih stanja. To se može izraziti kao sljedeća jednadžba konačnih razlika:

gdje su w ij (t + 1) i w ij (t) vrijednosti težine veza između neurona i i neurona j prije ugađanja (u koraku t + 1) i nakon ugađanja (u koraku t), redom; v i (t) - izlaz neurona i i izlaz neurona j u koraku t; v j (t) - izlaz neurona j u koraku t; α je parametar brzine učenja.

Strategija učenja neuronske mreže

Uz algoritam učenja, strategija mrežnog učenja jednako je važna.

Jedan od pristupa je sekvencijalni trening mreže na nizu primjera (X i, H i) i = 1, 2,…, m koji čine uzorak za obuku. U ovom slučaju, mreža je osposobljena da prvo ispravno odgovori na prvu sliku X 1, zatim na drugu X 2, itd. Međutim, u ovoj strategiji postoji opasnost da mreža izgubi prethodno stečene vještine prilikom podučavanja svakog sljedećeg primjera, odnosno mreža može “zaboraviti” prethodno prikazane primjere. Kako se to ne bi dogodilo, potrebno je istovremeno trenirati mrežu sa svim primjerima uzorka za obuku.

X 1 = (X 11, ..., X 1 N) možete trenirati 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

Budući da je rješenje problema učenja povezano s velikim poteškoćama, alternativa je minimizirati ciljnu funkciju oblika:

,

gdje je l i - parametri koji određuju zahtjeve za kvalitetu treninga neuronske mreže za svaki od primjera, tako da je λ 1 + λ 2 +… + λ m = 1.

Praktični dio.

Formiramo trening set:

P_o = mačka (1, Mt, Mf);

Postavimo strukturu neuronske mreže za problem detekcije:

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

net.trainParam.epochs = 100;% specificirani broj ciklusa treninga

net.trainParam.show = 5;% broj petlji za prikaz međurezultata;

net.trainParam.min_grad = 0;% ciljne vrijednosti gradijenta

net.trainParam.max_fail = 5;% maksimalni dopušteni višestrukost prekoračenja pogreške ispitnog uzorka u usporedbi s postignutom minimalnom vrijednošću;

net.trainParam.searchFcn = "srchcha";% naziv korištenog jednodimenzionalnog algoritma optimizacije

net.trainParam.goal = 0;% pogreške ciljanog treninga

Funkcija newff dizajnirana je za stvaranje "klasične" višeslojne neuronske mreže s obukom pomoću metode backpropagacije. Ova funkcija sadrži nekoliko argumenata. Prvi argument funkcije je matrica minimalnih i maksimalnih vrijednosti skupa za obuku P_o, koja se određuje pomoću izraza minmax (P_o).

Drugi argumenti funkcije dati su u uglatim zagradama i određuju broj i veličinu slojeva. Izraz znači da neuronska mreža ima 2 sloja. U prvom sloju - npr = 10 neurona, au drugom - 2. Broj neurona u prvom sloju određen je dimenzijom matrice ulaznih značajki. Ovisno o broju obilježja u prvom sloju može biti: 5, 7, 12 neurona. Dimenzija drugog sloja (izlaznog sloja) određena je problemom koji se rješava. U zadacima otkrivanja korisnog signala na pozadini mikroseizma, klasifikacija prema prvoj i drugoj klasi, 2 neurona se postavljaju na izlaz neuronske mreže.

Treći argumenti funkcije definiraju vrstu aktivacijske funkcije u svakom sloju. Izraz ("logsig", "logsig") znači da se u svakom sloju koristi sigmoidno-logistička aktivacijska funkcija, čiji je raspon (0, 1).

Četvrti argument specificira tip funkcije treninga neuronske mreže. Primjer definira funkciju treninga koja koristi Levenberg-Marquardtov algoritam optimizacije - "trainlm".

Prva polovica vektora matrice T inicijalizirana je vrijednostima (1, 0), a sljedeća polovica - (0, 1).

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

net.trainParam.epochs = 1000;

net.trainParam.show = 5;

net.trainParam.min_grad = 0;

net.trainParam.max_fail = 5;

net.trainParam.searchFcn = "srchcha";

net.trainParam.goal = 0;

Program za inicijalizaciju željenih izlaza neuronske mreže T:

n1 = duljina (Mt (:, 1));

n2 = duljina (Mf (:, 1));

T1 = nule (2, n1);

T2 = nule (2, n2);

T = mačka (2, T1, T2);

Trening neuronske mreže:

net = vlak (net, P_o, T);

Slika 25 - Raspored treninga neuronske mreže.

Upravljajmo neuronskom mrežom:

Y_k = sim (neto, P_k);

Sim naredba prenosi podatke iz kontrolnog skupa P_k na ulaz neuronske mreže, dok se rezultati upisuju u matricu izlaza Y_k. Broj redaka u matricama P_k i Y_k je isti.

Pb = zbroj (okruglo (Y_k (1,1: 100))) / 100

Procjena vjerojatnosti ispravnog otkrivanja gusjeničnih vozila Pb = 1 alfa = zbroj (okruglo (Y_k (1,110: 157))) / 110

Procijenjena vjerojatnost lažnog alarma alfa = 0

Određujemo srednju kvadratnu pogrešku upravljanja pomoću željenih i stvarnih izlaza neuronske mreže Ek.

Vrijednost srednje kvadratne greške kontrole je:

sqe_k = 2,5919e-026

Testirajmo rad neuronske mreže. Da bismo to učinili, formirat ćemo matricu značajki testnog signala:

h3 = tr_t50-srednja vrijednost (tr_t50);

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

Mh1 = Mh1 (1:50, :);

Y_t = sim (neto, P_t);

Pb = zbroj (okruglo (Y_t (1,1: 100))) / 100

Procjena vjerojatnosti ispravnog otkrivanja gusjeničnih vozila Pb = 1

Pronalazimo razliku između željenih i stvarnih izlaza neuronske mreže E i određujemo srednju kvadratnu pogrešku testiranja.

Vrijednost testne greške srednjeg kvadrata je:

sqe_t = 3,185e-025

Zaključak: u ovom dijelu smo izgradili model detektora seizmičkog signala na neuronskoj mreži s obukom metodom povratnog širenja. Problem detekcije je riješen s malim pogreškama, stoga su značajke prikladne za detekciju.

Ova dvoslojna neuronska mreža može se koristiti za izgradnju sustava za detekciju objekata.


Zaključak

Svrha ovog kolegija bila je proučavanje metoda obrade informacija i njihove primjene u rješavanju problema detekcije objekata.

Tijekom obavljenog posla, koji se odvijao u četiri faze, dobiveni su sljedeći rezultati:

1) Konstruirani su histogrami gustoće vjerojatnosti uzorka amplituda signala kao slučajnih varijabli.

Procijenjeni su parametri distribucije: matematičko očekivanje, varijanca, standardna devijacija.

Napravili smo pretpostavku o zakonu raspodjele amplitude i testirali hipotezu prema kriterijima Kolmogorov-Smirnov i Pearson na razini značajnosti od 0,05. Prema kriteriju Kolmogorov-Smirnov, raspodjela je usklađena, zar ne. Prema Pearsonovom kriteriju, distribucija je ispravno postavljena samo za pozadinski signal. Za njega je prihvaćena hipoteza o normalnoj raspodjeli.

Uzeli smo signale za realizaciju slučajnih funkcija i za njih izgradili korelacijske funkcije. Prema korelacijskim funkcijama utvrđeno je da signali imaju nasumični oscilatorni karakter.

2) Generirani skupovi podataka za obuku i kontrolu (za obuku i kontrolu neuronske mreže).

3) Za matricu treninga procijenjeni su parametri distribucije obilježja: matematičko očekivanje, varijanca, standardna devijacija. Za svaku značajku matrice treninga zadanih razreda izračunata je udaljenost i odabrano obilježje s maksimalnom razlikom. Izračunat je prag odluke i krivulje gustoće vjerojatnosti ucrtane su na jedan grafikon. Formulirao pravilo odluke.

4) Osposobio dvoslojnu neuronsku mrežu za rješavanje problema klasifikacije. Procijenjene su vjerojatnosti ispravnog otkrivanja i lažne uzbune. Isti pokazatelji evaluirani su testnim signalima.

Bolesti kao posljedica respiratorne paralize. 4. Zapaljivo oružje Važno mjesto u sustavu konvencionalnog oružja pripada zapaljivom oružju, koje predstavlja skup sredstava za uništavanje temeljenih na uporabi zapaljivih tvari. Prema američkoj klasifikaciji, zapaljivo oružje je oružje za masovno uništenje. Također se uzima u obzir i sposobnost zapaljivača ...

5. Dobivene su dugotrajne kontinuirane serije opažanja intenziteta toka i azimutalnih raspodjela VLF atmosfera, što je omogućilo praćenje dinamike olujne aktivnosti u svjetskim grmljavinskim centrima. 5.1. Monitoring mora pokazao je da glavni doprinos svjetskoj olujnoj aktivnosti daju kontinentalna i otočna grmljavinska središta. Varijacije u intenzitetu pulsnog toka su dobre...


Signal koherencije eliminira slučajne, lažne rezultate mjerenja bez gubitka osjetljivosti frekvencijskog mjerača. Analizatori spektra Ova već prilično napredna, ali još uvijek obećavajuća vrsta radio nadzornog sredstva namijenjena je skeniranju frekvencijskih spektra moduliranih signala u različitim frekvencijskim rasponima i prikazivanju tih spektra na zaslonu displeja/osciloskopa. Kada, ...

Živčana mreža- pokušaj korištenja matematičkih modela za reprodukciju rada ljudskog mozga za stvaranje posjedujućih strojeva.

Umjetna neuronska mreža obično podučava s učiteljem. To znači prisutnost skupa za obuku (skupa podataka), koji sadrži primjere s pravim vrijednostima: oznake, klase, indikatore.

Neoznačeni skupovi se također koriste za treniranje neuronskih mreža, ali to ovdje nećemo pokrivati.

Na primjer, ako želite stvoriti neuronsku mrežu za procjenu osjećaja teksta, skup podataka bit će popis prijedloga s emocionalnim ocjenama koji odgovaraju svakom. Određuje se tonalitet teksta znakovi(riječi, fraze, struktura rečenice) koje daju negativnu ili pozitivnu konotaciju. Utezi značajke u konačnoj ocjeni sentimenta teksta (pozitivno, negativno, neutralno) ovise o matematičkoj funkciji koja se izračunava tijekom treninga neuronske mreže.

Ljudi su svoje osobine generirali ručno. Što je više značajki i točnije odabrane težine, to je točniji odgovor. Neuronska mreža je automatizirala ovaj proces.

Umjetna neuronska mreža sastoji se od tri komponente:

  • Ulazni sloj;
  • Skriveni (računalni) slojevi;
  • Izlazni sloj.

Odvija se u dvije faze:

  • pogreške.

Tijekom širenja pogreške naprijed, predviđa se odgovor. Proširivanje unatrag minimizira pogrešku između stvarnog i predviđenog odgovora.


Izravna distribucija

Postavimo početne težine na slučajan način:

Pomnožimo ulazne podatke s težinama da formiramo skriveni sloj:

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

Izlaz iz skrivenog sloja prolazi kroz nelinearnu funkciju () kako bi se dobio izlaz mreže:

  • y_ = fn (h1, h2, h3)

Razmnožavanje unatrag

  • Ukupna pogreška (total_error) izračunava se kao razlika između očekivane vrijednosti "y" (iz skupa za obuku) i rezultirajuće vrijednosti "y_" (izračunate tijekom širenja pogreške naprijed), prolazeći kroz funkciju troškova.
  • Djelomična derivacija pogreške izračunava se za svaku težinu (ove parcijalne razlike odražavaju doprinos svake težine ukupnom_gubitku).
  • Te se razlike zatim množe s brojem koji se naziva stopa učenja ili stopa učenja (η).

Rezultat se zatim oduzima od odgovarajućih težina.

To će rezultirati sljedećim ažuriranim težinama:

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

Ne zvuči kao dobra ideja nasumično pretpostaviti i inicijalizirati težine i oni će dati točne odgovore, ali dobro funkcionira.


Popularni meme o tome kako je Carlson postao programer Data Science

Ako ste upoznati s Taylorovim nizom, povratno širenje pogreške ima isti krajnji rezultat. Samo umjesto beskonačnog niza, pokušavamo optimizirati samo njegov prvi član.

Pomaci su težine dodane skrivenim slojevima. I oni se nasumično inicijaliziraju i ažuriraju baš kao skriveni sloj. Uloga skrivenog sloja je definirati oblik temeljne funkcije u podacima, dok je uloga pomaka pomaknuti pronađenu funkciju u stranu tako da se preklapa s izvornom funkcijom.

Djelomične izvedenice

Parcijalne derivacije se mogu izračunati pa se zna koliki je bio doprinos pogrešci za svaku težinu. Potreba za izvedenicama je očita. Zamislite neuronsku mrežu koja pokušava pronaći optimalnu brzinu za autonomno vozilo. Ako automobil otkrije da ide brže ili sporije od potrebne brzine, neuronska mreža će promijeniti brzinu, ubrzavajući ili usporavajući automobil. Što se u isto vrijeme ubrzava/usporava? Derivati ​​brzine.

Pogledajmo potrebu za parcijalnim izvedenicama na primjeru.

Pretpostavimo da se od djece traži da bace strelicu u metu dok ciljaju u centar. Evo rezultata:

Sada, ako pronađemo opću pogrešku i jednostavno je oduzmemo od svih pondera, sumirati ćemo pogreške svake od njih. Dakle, recimo da je dijete pogodilo prenisko, ali molimo svu djecu da nastoje pogoditi metu, to će dovesti do sljedeće slike:

Pogreška nekoliko djece može se smanjiti, ali ukupna pogreška i dalje raste.

Nakon što smo pronašli parcijalne derivacije, saznajemo greške koje odgovaraju svakoj težini zasebno. Ako selektivno ispravite težine, možete dobiti sljedeće:

Hiperparametri

Neuronska mreža se koristi za automatizaciju odabira značajki, ali neki parametri se ručno konfiguriraju.

Stopa učenja

Stopa učenja je vrlo važan hiperparametar. Ako je stopa učenja preniska, onda će čak i nakon dugog treninga neuronske mreže biti daleko od optimalnih rezultata. Rezultati će izgledati otprilike ovako:

S druge strane, ako je stopa učenja previsoka, tada će mreža reagirati vrlo brzo. Rezultat je sljedeći:

Funkcija aktivacije

Funkcija aktivacije jedan je od najmoćnijih alata koji utječe na snagu koja se pripisuje neuronskim mrežama. Djelomično određuje koji će neuroni biti aktivirani, drugim riječima, i koje će se informacije prenositi na sljedeće slojeve.

Bez aktivacijskih funkcija, duboke mreže gube velik dio svoje sposobnosti učenja. Nelinearnost ovih funkcija odgovorna je za povećanje stupnja slobode, što omogućuje generalizaciju problema visoke dimenzije u nižim dimenzijama. Sljedeći su primjeri uobičajenih funkcija aktivacije:

Funkcija gubitka

Funkcija gubitka je u središtu neuronske mreže. Koristi se za izračunavanje pogreške između stvarnog i primljenog odgovora. Naš je globalni cilj minimizirati ovu pogrešku. Dakle, funkcija gubitka učinkovito približava obuku neuronske mreže ovom cilju.

Funkcija gubitka mjeri "koliko je dobra" neuronska mreža za zadani skup treninga i očekivane odgovore. Također može ovisiti o varijablama kao što su težine i pristranosti.

Funkcija gubitka je jednodimenzionalna, a ne vektorska, jer procjenjuje koliko dobro funkcionira neuronska mreža kao cjelina.

Neke značajne funkcije gubitka:

  • Kvadrat (standardna devijacija);
  • Unakrsna entropija;
  • Eksponencijalni (AdaBoost);
  • Kullback - Leiblerova udaljenost ili dobivanje informacija.

Standardna devijacija je najjednostavnija funkcija gubitka i najčešće korištena. Postavlja se na sljedeći način:

Funkcija gubitka u neuronskoj mreži mora zadovoljiti dva uvjeta:

  • Funkciju gubitka treba napisati kao prosjek;
  • Funkcija gubitka ne bi trebala ovisiti ni o kakvim aktivacijskim vrijednostima neuronske mreže, osim o vrijednostima danim na izlazu.

Duboke neuronske mreže

(duboko učenje) je klasa algoritama koji uče dublje (apstraktnije) razumjeti podatke. Popularni algoritmi za neuronske mreže dubokog učenja prikazani su u dijagramu ispod.

Popularni algoritmi neuronske mreže (http://www.asimovinstitute.org/neural-network-zoo)

Formalnije u dubokom učenju:

  • Kaskada (cjevovod, kao sekvencijalno preneseni tok) se koristi iz skupa slojeva obrade (nelinearnih) za izdvajanje i transformaciju značajki;
  • Na temelju proučavanja značajki (prezentacija informacija) u podacima bez nadziranog učenja. Funkcije više razine (koje su u posljednjim slojevima) dobivaju se iz funkcija niže razine (koje su u slojevima početnih slojeva);
  • Istražuje slojevite poglede koji odgovaraju različitim razinama apstrakcije; razine čine hijerarhiju prezentacije.

Primjer

Razmotrimo jednoslojnu neuronsku mrežu:

Ovdje je prvi sloj (zeleni neuroni) treniran, jednostavno se prenosi na izlaz.

Dok u slučaju dvoslojne neuronske mreže, bez obzira na to kako se zeleni skriveni sloj trenira, on se zatim prenosi na plavi skriveni sloj gdje nastavlja trenirati:

Stoga, što je veći broj skrivenih slojeva, to su veće mogućnosti učenja za mrežu.

Ne treba ga miješati sa širokom neuronskom mrežom.

U ovom slučaju, veliki broj neurona u jednom sloju ne dovodi do dubokog razumijevanja podataka. Ali to dovodi do proučavanja više značajki.

Primjer:

Proučavanje engleske gramatike zahtijeva poznavanje ogromnog broja koncepata. U ovom slučaju, jednoslojna neuronska mreža radi puno bolje od duboke neuronske mreže, koja je mnogo manja.

U slučaju proučavanja Fourierove transformacije učenik (neuronska mreža) mora biti dubok, jer nema puno pojmova koje treba poznavati, ali je svaki od njih prilično složen i zahtijeva duboko razumijevanje.

Glavna stvar je ravnoteža

Vrlo je primamljivo koristiti duboke i široke neuronske mreže za svaki zadatak. Ali to bi mogla biti loša ideja jer:

  • I jedno i drugo zahtijeva znatno više podataka za obuku kako bi se postigla minimalna željena točnost;
  • Oba su eksponencijalne složenosti;
  • Preduboka neuronska mreža pokušat će razbiti temeljne koncepte, ali će napraviti pogrešne pretpostavke i pokušati pronaći pseudo-ovisnosti koje ne postoje;
  • Neuralna mreža koja je preširoka pokušat će pronaći više značajki nego što ih ima. Tako će, kao i prethodni, početi stvarati netočne pretpostavke o podacima.

Dimenzionalna kletva

Prokletstvo dimenzionalnosti odnosi se na različite pojave koje nastaju prilikom analize i organiziranja podataka u višedimenzionalnim prostorima (često sa stotinama ili tisućama dimenzija) i ne pojavljuju se u niskodimenzionalnim situacijama.

Engleska gramatika ima ogroman broj atributa koji na nju utječu. U strojnom učenju moramo ih predstaviti kao značajke u obliku niza/matrice konačne i znatno kraće duljine (od broja postojećih značajki). Da bi to učinile, mreže generaliziraju ove značajke. Ovo predstavlja dva problema:

  • Zbog netočnih pretpostavki dolazi do pristranosti. Velika pristranost može uzrokovati da algoritam propusti značajan odnos između značajki i ciljnih varijabli. Taj se fenomen naziva nedovoljno učenje.
  • Varijanca se povećava od malih odstupanja u skupu za obuku zbog nedovoljnog učenja značajki. Velika varijanca dovodi do prekomjernog prilagođavanja, greške se percipiraju kao pouzdane informacije.

Kompromis

U ranim fazama učenja pristranost je velika jer je izlaz iz mreže daleko od željenog. A varijanca je vrlo mala, budući da podaci do sada imaju mali utjecaj.

Na kraju obuke, pristranost je mala jer je mreža identificirala glavnu funkciju u podacima. Međutim, ako je obuka preduga, mreža će također naučiti buku svojstvenu ovom skupu podataka. To dovodi do velikih varijacija u rezultatima kada se testiraju na različitim skupovima, budući da se šum mijenja iz jednog skupa podataka u drugi.

Stvarno,

algoritmi s velikom pristranošću obično se temelje na jednostavnijim modelima koji nisu skloni prenamjenjivanju, ali mogu biti podložni i ne otkrivaju važne obrasce ili svojstva značajki. Modeli niske pristranosti i velike varijance obično su složeniji u smislu svoje strukture, što im omogućuje točnije predstavljanje skupa za obuku. Međutim, oni mogu prikazati puno buke iz skupa za vježbanje, čineći njihova predviđanja manje točnima unatoč njihovoj dodatnoj složenosti.

Stoga je općenito nemoguće istovremeno imati malu pristranost i malu varijaciju.

Sada postoji mnogo alata kojima možete jednostavno stvoriti složene modele strojnog učenja, a prekvalifikacija je središnja. Budući da se pristranost pojavljuje kada mreža ne prima dovoljno informacija. Ali što je više primjera, to se više varijanti ovisnosti i varijabilnosti pojavljuje u tim korelacijama.

Ovaj članak sadrži materijale - uglavnom na ruskom govornom području - za temeljno proučavanje umjetnih neuronskih mreža.

Umjetna neuronska mreža ili ANN je matematički model, kao i njegova softverska ili hardverska implementacija, izgrađena na principu organizacije i funkcioniranja bioloških neuronskih mreža - mreža živčanih stanica živog organizma. Znanost o neuronskim mrežama postoji već dugo, ali upravo u vezi s najnovijim dostignućima znanstvenog i tehnološkog napretka ovo područje počinje stjecati popularnost.

knjige

Započnimo našu zbirku klasičnim načinom učenja – uz pomoć knjiga. Odabrali smo knjige na ruskom jeziku s velikim brojem primjera:

  • F. Wasserman, Neuroračunalo inženjerstvo: teorija i praksa. 1992 godina
    Knjiga iznosi osnove izgradnje neuroračunala u javnom obliku. Opisana je struktura neuronskih mreža i različiti algoritmi za njihovo ugađanje. Zasebna poglavlja posvećena su implementaciji neuronskih mreža.
  • S. Khaikin, Neuralne mreže: potpuni tečaj. 2006 godina
    Ovdje se raspravlja o glavnim paradigmama umjetnih neuronskih mreža. Prikazani materijal sadrži rigoroznu matematičku potporu svih paradigmi neuronskih mreža, ilustriran primjerima, opisima računalnih eksperimenata, sadrži mnoge praktične probleme, kao i opsežnu bibliografiju.
  • D. Forsyth, Računalni vid. Moderan pristup. 2004. r.
    Računalni vid jedno je od najtraženijih područja u ovoj fazi razvoja globalnih digitalnih računalnih tehnologija. Potreban je u proizvodnji, pri upravljanju robotima, pri automatizaciji procesa, u medicinskim i vojnim aplikacijama, pri promatranju sa satelita i pri radu s osobnim računalima, posebice pri traženju digitalnih slika.

Video

Nema ništa pristupačnije i razumljivije od vizualnog treninga uz pomoć videa:

  • Da biste razumjeli što je strojno učenje, pogledajte ovdje. ova dva predavanja iz SHAD Yandex.
  • Uvod osnovnim principima dizajna neuronskih mreža - izvrsno za nastavak vašeg upoznavanja s neuronskim mrežama.
  • Tečaj predavanja na temu "Računalni vid" iz VMK MSU. Računalni vid je teorija i tehnologija za stvaranje umjetnih sustava koji otkrivaju i klasificiraju objekte na slikama i videosnimkama. Ova se predavanja mogu svrstati u uvod u ovu zanimljivu i složenu znanost.

Obrazovni resursi i korisne poveznice

  • Portal umjetne inteligencije.
  • Laboratorij "Ja sam intelekt".
  • Neuralne mreže u Matlabu.
  • Neuralne mreže u Pythonu:
    • Klasifikacija korištenja teksta;
    • Jednostavan .
  • Neuronska mreža uključena.

Naša serija publikacija na tu temu

Prethodno smo već objavili tečaj #[e-mail zaštićen] preko neuronskih mreža. Na ovom popisu publikacije su poredane po redoslijedu proučavanja radi vaše udobnosti.

Vrhunski povezani članci