Neuronske mreze

51
NEURONSKE MREŽE • NEURONSKA MREŽA je jedan oblik implementacije sistema vještačke inteligencije koji predstavlja sistem koji se sastoji od određenog broja međusobno povezanih procesora (čvorova) ili procesnih elemenata.

description

PIM Univerzitet

Transcript of Neuronske mreze

Page 1: Neuronske mreze

NEURONSKE MREŽE

• NEURONSKA MREŽA je jedan oblik implementacije sistema vještačke inteligencije koji predstavlja sistem koji se sastoji od određenog broja međusobno povezanih procesora (čvorova) ili procesnih elemenata.

Page 2: Neuronske mreze

ŠTA SU NEURONSKE MREŽE

• Matematički modeli po uzoru na mozak• Biološka i vještačka NM

Page 3: Neuronske mreze

MOZAK I VNM

• Mozak: – 1010 neurona– 1013 veza između

neurona– Brzina rada na nivou

milisec– Potpuno paralelni

rad

• VNM:– Do 20 000 neurona– Brzina rada na nivou

nanosec– Simulacija paralelnog

rada

Page 4: Neuronske mreze

Kratka istorija razvoja NM

• 1943. Prvi matematički model neurona• 1957. Prva NM, perceptron - Početni

entuzijazam• 1969. Kritika perceptrona, napuštanje

istraživanja o NM• 1986 Višeslojni perceptron• Nastavak istraživanja i industrijska primjena

od 1990. godine.

Page 5: Neuronske mreze

DEFINICIJE• DARPA: Neuronska mreža je sistem koji se sastoji od velikog broja

međusobno povezanih, jednostavnih elemenata procesiranja koji rade paralelno. Funkcija NM je određena strukturom mreže, težinom veza, i obradom u elementima procesiranja.

• Haykin: Neuronska mreža je paralelni distribuirani procesor koji ima prirodnu sposobnost čuvanja i korišćenja iskustvenog znanja. Sličnost sa mozgom se ogleda kroz dvije osobine:– mreža stiče znanje kroz proces učenja– znanje se čuva u vezama između neurona (sinaptičkim

težinama)

• Zurada: Veštački neuro sistemi ili neuronske mreže, su ćelijski (računarski) sistemi koji mogu da stiču, čuvaju i koriste iskustveno znanje.

Page 6: Neuronske mreze

Biološka neuronska mreža

Page 7: Neuronske mreze

Biološka neuronska mreža

Osnovna jedinica nervog sistema je nervna ćelija ili neuron. Ima četiri osnovna dijela:

– ulazni dio ćelije - sadrži skup razgranatih niti nazvanih dendriti,

– tijelo ćelije - obrađuje signale koje dobija od dendrita,

- izlazni dio ćelije - dobijajeni izlazni impuls se

proslijeđuje na sve krajeve razgranate niti - aksone, i

– sinapse - mjesto gde se akson dodiruje sa dendritima neke druge ćelije.

Page 8: Neuronske mreze

Biološka neuronska mreža

Page 9: Neuronske mreze

Biološka neuronska mreža• Učenje se kod bioloških sistema obavlja putem

regulisanja sinaptičkih veza, koje povezuju aksone i dendrite neurona.

• Učenje tipičnih događaja putem primjera se ostvaruje preko treninga ili otkrića do tačnih setova podataka ulaza - izlaza, koji treniraju algoritam ponavljanjem podešavajući propusne (težinske) koeficijente veza (sinapse). Ove veze memorišu znanje neophodno za rješavanje specifičnog problema.

Page 10: Neuronske mreze

NM• Prirodni neuroni su znatno komplikovaniji od

vještačkih. • Vještački neuroni, izvedeni u VLSI tehnologiji, znatno

su brži od prirodnih. • Visok stepen međusobne povezanosti, njihov

ogroman broj i još veći broj veza između njih, čine biološke nervne sisteme nedostižnim za današnju tehnologiju.

• Mala je vjerovatnoća da će principijelna šema stotine milijardi veza biti u dogledno vrijeme analizirana.

Page 11: Neuronske mreze

Vještačka neuronska mreža

Page 12: Neuronske mreze

Vještačka neuronska mreža• Vještačke neuronske mreže čine računari koji

se razlikuju od tradicionalnih, klasičnih, računara sa Von Neumann-ovom arhitekturom.

• Kod klasičnog računara jedan centralni procesor sekvencijalno obavlja instrukcije zadate programom.

• Pri tome procesor može da obavlja stotinu i više osnovnih naredbi, kao što su sabiranje, oduzimanje, množenje, punjenje, pomjeranje i drugo.

Page 13: Neuronske mreze

Biološki i vještački neuron

• Osnovni delovi: telo(soma), dendriti(ulazi), akson(izlaz), sinapse(spojevi)

Page 14: Neuronske mreze

Vještački neuron

output = f (w1in1+ …+wninn)

Page 15: Neuronske mreze

Model vještačkog neuronaGdje su:•u1...n – ulazni podaci,•w1...n – težinski koeficijenti,•f( ) – aktivaciona funkcija, i•i – izlazni podatak.

Page 16: Neuronske mreze

Vještački neuron

Page 17: Neuronske mreze

Osnovni elementi vještačkog neurona

• Ulazna funkcija sumiranja• Funkcija transfera• Ulazi sa težinskim koeficijentima• Izlaz

Page 18: Neuronske mreze

NM

• Koeficijenti veza između neurona podešavaju na osnovu ulaznih podataka, tako da neuroni „uče“ preko primjera i posjeduju sposobnost za generalizaciju poslije unijetog primjera.

Page 19: Neuronske mreze

FUNKCIJE TRANSFERA

Linearna

Odskočna

Sigmoidna

Page 20: Neuronske mreze

Vrste NM prema arhitekturi

Page 21: Neuronske mreze

Vještačka neuronska mreža• U VNM procesorske jedinice su povezane

određenom topologijom – strukturom paralelnog distribuiranog procesiranja (PDP).

• Istovremeno radi više procesorskih jedinica, a rezultati njihove obrade PDP strukturom prelaze na druge jedinice, itd.

• Procesorske jedinice u jednoj VNM su jednostavne i mogu obavljati samo jednu ili eventualno nekoliko računskih operacija i međusobno su povezane tako da u jednoj NM postoji mnogo više veza nego procesorskih jedinica.

Page 22: Neuronske mreze

Vještačka neuronska mreža• NM se ne „programiraju“ već "obučavaju". • Prije nego što se počnu primenjivati, ulaže se

dosta vremena za obučavanje, učenje ili treniranje NM.

• Proces obučavanja se najčešće zasniva na ažuriranju težinskih koeficijenata veza.

• Težinski koeficijenti veza su koeficijenti koji su dodjeljeni u svakom trenutku vezama NM. Za vrijeme obučavanja ovi se koeficijenti ažuriraju.

Page 23: Neuronske mreze

Vještački neuron• Ulazni sloj se sastoji od ulaznih procesorskih

jedinica. Svakoj jedinici se dodjeljuje određena vrijednost u zavisnosti od vrijednosti pojedinih elemenata niza.

• Sa svojih izlaza, ove procesorske jedinice proslijeđuju signale do slijedećeg sloja prema topologiji date mreže.

Page 24: Neuronske mreze

Neuronsku mrežu čine:

•Arhitektura mreže (šema vezivanja neurona).•Prenosna funkcija neurona.•Zakoni učenja.

Page 25: Neuronske mreze

Neuronske mreže

• Arhitekturu vještačke neuronske mreže predstavlja specifično uređenje i povezivanje neurona u obliku mreže. Po arhitekturi, neuronske mreže se razlikuju prema broju neuronskih slojeva. Obično svaki sloj prima ulaze iz prethodnog sloja, a svoje izlaze šalje narednom sloju.

Page 26: Neuronske mreze

Neuronske mreže• Prvi sloj prenosi signale slijedećem sloju

(skrivenom sloju), koji obrađuje ove podatke i izdvaja osobine i šeme iz primljenih signala. Podaci koji se smatraju važnim se upućuju izlaznom sloju, posljednjem sloju mreže. Na izlazima neurona trećeg sloja se dobijaju konačni rezultati obrade.

• Složenije NM mogu imati više skrivenih slojeva.

Page 27: Neuronske mreze

Neuronske mreže• Učenje NM se svodi na učenje iz primjera, kojih treba

da bude što više. • Proces učenja dovodi do korigovanja sinaptičkih

težina. • Postoji tri tipa obučavanja:

– Nadgledano obučavanje: mreži se predstavljaju ulazni podaci i očekivani izlazni podaci;

– Obučavanje ocjenjivanjem: mreži se ne predstavljaju očekivani izlazni podaci, nego joj se poslije izvjesnog vremena predstavlja ocjena prethodnog rada.

– Samoorganizacija: mreži se predstavljaju isključivo ulazi.

Page 28: Neuronske mreze

NM

Neuronske mreže možemo klasifikovati prema:•Broju slojeva:

– Jednoslojne;– Višeslojne.

•Vrsti veza između neurona.•Vrsti obučavanja neuronskih mreža.•Smjeru prostiranja informacija:

– feedforward (nepovratne);– feedback (povratne).

•Vrsti podataka.

Page 29: Neuronske mreze

NM• Pokazuju dobre rezultate prilikom

predviđanja i modeliranja sistema, gdje fizički procesi nisu jasni ili su veoma kompleksni.

• Elastične su prema poremećajima u ulaznim podacima.

• Uspješno rješavaju probleme koji su previše kompleksni za konvencionalne tehnologije (na primjer, problemi koji nemaju algoritamsko rješenje)

Page 30: Neuronske mreze

NM• Neuronske mreže su sistemi sastavljeni od više

jednostavnih elemenata (neurona), a obrađuju podatke paralelno.

• Svaki elemenat NM operiše samo lokalnim informacijama, radi sinhronizovano, kao da nema sistemskog sata.

Page 31: Neuronske mreze

NM

• Vještačke NM su po strukturi, funkciji i obradi informacija slične biološkim NM, mada se radi o vještačkim tvorevinama.

• Biološke NM su daleko komplikovanije od svojih matematičkih modela, koji se koriste za vještačke NM.

• One predstavljaju sistem sastavljen od velikog broja jednostavnih elemenata za obradu podataka.

Page 32: Neuronske mreze

NM• NM su sposobne za prikupljanje, memorisanje i

korištenje eksperimentalnog znanja. • Sastavljene su od više jednostavnih procesora

(jedinica, neurona), gdje svaki od njih ima lokalnu memoriju u kojoj pamti podatke koje obrađuje. Te jedinice su povezane komunikacionim kanalima (vezama).

• Jedinice obrađuju samo svoje lokalne podatke i ulaze koje primaju preko konekcije.

Page 33: Neuronske mreze

Neuronske mreže

• Arhitektura neuronske mreže predstavlja specifično povezivanje neurona u jednu celinu.

• Struktura se razlikuje po broju slojeva. – Prvi sloj se naziva ulazni, a poslednji izlazni, dok se slojevi

između nazivaju skriveni slojevi. Najčešće ih ima tri. – Prvi sloj prima podatke iz spoljašnje sredine,

– Skriveni sloj prosleđuje relevantne podatke do trećeg (izlaznog) sloja.

– Na izlazu trećeg sloja dobijamo konačan rezultat.

Složenije neuronske mreže imaju više skrivenih slojeva.

Page 34: Neuronske mreze

Vještački neuron

Page 35: Neuronske mreze

Neuronske mrežeKARAKTERISTIKE:•Mogu paralelno da obrađuju podatke. •Komponente su nezavisne jedne od drugih. •Istovremeno radi više procesorskih jedinica, da bi rezultati njihove obrade prešli na sljedeće jedinice (neurone). •Procesorske jedinice u jednoj neuronskoj mreži su jednostavne i mogu obavljati samo jedno ili eventualno nekoliko računarskih operacija i međusobno su povezani tako da u jednoj neuronskoj mreži postoji mnogo više veza nego procesorskih jedinica. •Broj veza između neurona predstavlja njenu snagu.

Page 36: Neuronske mreze

Zаšto neuronske mreže?

• Omogućavaju inteligentno procesiranje bez prethodno definisanog modela ili algoritma već na osnovu podataka o ponašanju nekog sistema.

• Imaju sposobnost učenja.• Primenjive su na širok spektar problema.• Efikasno mogu da rješavaju veoma složene

probleme koji bi inače bili teško rješivi nekim algoritamskim postpupkom.

Page 37: Neuronske mreze

Neuronske mreže

• Neuronske mreže se ne programiraju, već se treniraju, tako da je potrebno dosta vremena za njihovo obučavanje, prije nego što počnu da se koriste.

Page 38: Neuronske mreze

UČENJE NM

• Obučavanje se vrši tako što se ažuriraju težinski koeficijenti da bi se sljedeći put dobio izlaz bliži zadatoj vrijednosti.

• Kada se obučavanje završi, težinski koeficijenti ostaju isti i mreža se može primjeniti za predviđeni zadatak.

Page 39: Neuronske mreze

UČENJE NM

• Trening se sastoji iz toga da korisnik zadaje ulazne i izlazne vrijednosti, a mreža pokušava da dobije odgovarajuću izlaznu vrijednost.

• U početku mreža pravi određene greške, a odgovarajućom promjenom težinskih koeficijenata, smanjuje se razlika dobijene i zadate izlazne vrijednosti.

Page 40: Neuronske mreze

UČENJE/TRENING NM

• Učenje: - procedura podešavanja težina veza tako da mreža dobije željeno ponašanje/funkcionalnost.

• Učenje sa učiteljem – supervised• Učenje bez učitelja – unsupervised

Page 41: Neuronske mreze

Trening mreže

• Određivanje optimalnih parametara mreže i algoritma za trening.

• Broj skrivenih slojeva i broj neurona u svakom sloju (više ne znači bolje, cilj je imati što manje).

• Dinamičko podešavanje parametara.• Validacija parametara (sa probnim skupom).• Trening i test set.• Pretreniravanje i generalizacija.

Page 42: Neuronske mreze

UČENJE NM

• Podaci iz trening skupa se periodično propuštaju kroz NM. Dobijene vrijednosti na izlazu mreže se upoređuju sa očekivanim. Ukoliko postoji razlika između dobijenih i očekivanih podataka, prave se modifikacije na vezama između neurona u cilju smanjivanja razlike trenutnog i željenog izlaza.

Page 43: Neuronske mreze

UČENJE NM

• Neuronska mreža je obučena ako može tačno da rješava zadatke za koje je obučavana.

Page 44: Neuronske mreze

NAJVAŽNIJE KARAKTERISTIKE VNM

1. Imaju sposobnost učenja2. Imaju sposobnost generalizacije3. Otporne na pogrešan ulaz i šum

Page 45: Neuronske mreze

VRSTE PROBLEMA ZA KOJE SE KORISTE VNM

• Klasifikacija• Prepoznavanje (oblika, govora, vektora...)• Aproksimacija• Optimizacija• Obrada signala• Modeliranje sistema• Predviđanje• Kontrola i upravljanje

Page 46: Neuronske mreze

KADA SE KORISTE NM

• Kada nema jasno definisanog matematičkog modela ili drugog rešenja.

• Kada je potrebna otpornost na nepotpun ili pogrešan ulaz.

• Kada je potrebna sposobnost učenja.• Kada se sa NM postižu bolji rezultati nego sa

alternativnim rešenjima (npr. odziv u realnom vremenu, tolerancija na greške).

Page 47: Neuronske mreze

PROBLEMI U PRIMJENI VNM

• Nedostatak semantike u strukturi• Da li je neki problem uopšte rešiv sa NM?• Problemi sa određivanjem arhitekture i

treningom za određenu primjenu• Plastičnost / stabilnost

Page 48: Neuronske mreze

PRIMJERI PRIMJENE• Predviđanje na berzi.• Klasifikacija i prepoznavanje objekata na

radaru.• Prepoznavanje slika, slova, lica, otisaka prstiju• Dijagnostika u medicini.• Filtriranje šuma u signalu.• Aerodinamična konfiguracija ploča kod

F-117.

Page 49: Neuronske mreze

Procedura rješavanje problema pomoću NM

• Prikupljanje i priprema podataka.• Trening mreže.• Testiranje mreže.• Određivanje optimalnih parametara mreže i

treninga eksperimentalnim putem (broj neurona, broj slojeva neurona, parametri algoritma za učenje, podaci za trening)

Page 50: Neuronske mreze

Priprema podataka

• Filtriranje. • Normalizacija.• Redukcija dimenzionalnosti.• Uspeh rješavanja u potpunosti zavisi od podataka

koji se koriste za trening mreže.• Voditi računa o teorijskoj opravdansti –

reprezentativnosti korišćenih podataka za određeni problem.

Page 51: Neuronske mreze

Budućnost NM

U budućnosti se očekuju brojne nove primjene:

•pouzdano prepoznavanje i verifikacija rukom pisanih tekstova, •prevođenje telefonskih razgovora sa jezika na jezik,•rutinsko komuniciranje sa računarima posredstvom ljudskog glasa.