Neuronske mreze
description
Transcript of 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.
ŠTA SU NEURONSKE MREŽE
• Matematički modeli po uzoru na mozak• Biološka i vještačka NM
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
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.
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.
Biološka neuronska mreža
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.
Biološka neuronska mreža
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.
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.
Vještačka neuronska mreža
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.
Biološki i vještački neuron
• Osnovni delovi: telo(soma), dendriti(ulazi), akson(izlaz), sinapse(spojevi)
Vještački neuron
output = f (w1in1+ …+wninn)
Model vještačkog neuronaGdje su:•u1...n – ulazni podaci,•w1...n – težinski koeficijenti,•f( ) – aktivaciona funkcija, i•i – izlazni podatak.
Vještački neuron
Osnovni elementi vještačkog neurona
• Ulazna funkcija sumiranja• Funkcija transfera• Ulazi sa težinskim koeficijentima• Izlaz
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.
FUNKCIJE TRANSFERA
Linearna
Odskočna
Sigmoidna
Vrste NM prema arhitekturi
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.
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.
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.
Neuronsku mrežu čine:
•Arhitektura mreže (šema vezivanja neurona).•Prenosna funkcija neurona.•Zakoni učenja.
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.
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.
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.
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.
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)
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.
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.
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.
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.
Vještački neuron
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.
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.
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.
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.
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.
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
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.
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.
UČENJE NM
• Neuronska mreža je obučena ako može tačno da rješava zadatke za koje je obučavana.
NAJVAŽNIJE KARAKTERISTIKE VNM
1. Imaju sposobnost učenja2. Imaju sposobnost generalizacije3. Otporne na pogrešan ulaz i šum
VRSTE PROBLEMA ZA KOJE SE KORISTE VNM
• Klasifikacija• Prepoznavanje (oblika, govora, vektora...)• Aproksimacija• Optimizacija• Obrada signala• Modeliranje sistema• Predviđanje• Kontrola i upravljanje
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).
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
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.
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)
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.
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.