Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 15

UNIVERZITET U TRAVNIKU

Tehnički Fakultet

ODSJEK/SMJER:

Inžinjerska informatika

ELEMENTARNA KOMPARACIJA VJEŠTAČKIH I PRIRODNIH


NEURONSKIH MREŽA

Seminarski rad iz Neuronskih mreža

Profesor: Zijad Havić


Asistent: Adis Bajrami
Student: Kalem Amar 571/14

Januar, 2018
SADRŽAJ

1. UVOD ............................................................................................................. 2
2. Karakteristike, podjela i primjena neuronskih mreža .................................... 3
3. Komparacija Prirodnih i Vještačkih neuronski mreža ................................... 5
3.1 Težinski koeficijenti..................................................................................... 7
4. Obučavanje neuronskih mreža ....................................................................... 9
5. Razlike između neuronskih mreža i klasičnih računara ............................... 10
6. Primjena neuronskih mreža .......................................................................... 11
6. Zaključak ...................................................................................................... 13
7. Literatura ...................................................................................................... 14

1
1. UVOD

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 ili čvorova, ili
procesnih elemenata koje nazivamo vještačkim neuronima.

Tijelo neurona naziva se čvor ili jedinica. Svaki od neurona ima lokalnu memoriju u kojoj pamti
podatke koje obrađuje. Podaci koji se obrađuju su lokalni podaci kao i oni koji se primaju preko
veze. Podaci koji se ovim kanalima razmjenjuju su obično numerički.

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


Struktura neuronske mreže 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, tj. ulazni
je jedini sloj koji prima podatke iz spoljašnje sredine, sljedeći (skriveni) 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. Slojevi su međusobno potpuno povezani.

Slojevi komuniciraju tako što se izlaz svakog neurona iz prethodnog sloja povezuje sa ulazima
svih neurona narednog sloja. Znači, svaki čvor ima nekoliko ulaza i jedan izlaz. Jačina veza
kojom su neuroni povezani naziva se težinski faktor (weight).

2
2. Karakteristike, podjela i primjena neuronskih mreža

Značaj neuronskih mreža je u tome da mogu paralelno da obrađuju podatke, čije 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 ovih veza između neurona predstavlja snagu neuronske mreže.
Težinski koeficijenti veza (težine veza) su koeficijenti koji su dodeljeni u svakom trenutku
vezama neuronske mreže.

Neuronske mreže se koriste u situacijama kada nisu poznata pravila prema kojima bi bilo
moguće dovesti u vezu ulazne i izlazne podatke iz željenog sistema.

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.

Slika 1. Model neuronske mreže

3
Koeficijenti veza između neurona podešavaju na osnovu ulaznih podataka, tako da neuroni
„uče“ preko primjera i poseduju sposobnost za generalizaciju poslje unjetog primjera.
Obučavanje se vrši tako što se ažuriraju težinski koeficijenti da bi se sledeći put dobio izlaz
bliži zadatoj vrednosti. Kada se obučavanje završi, težinski koeficijenti ostaju isti i mreža se
može primjeniti za predviđeni zadatak.

Trening se sastoji iz toga da korisnik zadaje ulazne i izlazne vrijednosti, a program pokušava
da dobije odgovarajuću izlaznu vrijednost. Pri tome program, u početku, pravi određene greške,
a odgovarajućom promjenom težinskih koeficijenata, smanjuje se razlika dobijene i zadate
izlazne vrednosti.

Zaključujemo da neuronsku mrežu čine:

1. arhitektura mreže (šema vezivanja neurona)


2. prenosna funkcija neurona
3. zakoni učenja

Neuronske mreže možemo klasifikovati prema:

1. broju slojeva
1. jednoslojne
2. višeslojne;
2. vrsti veza između neurona
3. vrsti obučavanja neuronskih mreža
4. smjeru prostiranja informacija
1. feedforward (nepovratne)
2. feedback (povratne)
5. vrsti podataka

Neuronska mreža se može realizovati na dva načina:

1. Hardverska realizacija: fizičko povezivanje čvorova.


2. Softverska realizacija: logičko (virtuelno) povezivanje čvorova

Od otkrića neuronskih mreža, postalo je moguće rješavanje niza problema koji prije toga nisu
bili rješivi klasičnim sredstvima računarske tehnike.

4
3. Komparacija Prirodnih i Vještačkih neuronski mreža

Postoje dvije kategorije neuronskih mreža: vještačke i biološke neuronske mreže. Predstavnik
bioloških neuronskih mreža je nervni sistem živih bića. Vještačke neuronske mreže su po
strukturi, funkciji i obradi informacija slične biološkim neuronskim mrežama, ali se radi o
vještačkim tvorevinama. Neuronska mreža u računarskim naukama predstavlja veoma
povezanu mrežu elemenata koji obrađuju podatke. One su sposobne da izađu na kraj sa
problemima koji se tradicionalnim pristupom teško rešavaju. Vještačke neuronske mreže
karakteriše paralelna i brza obrada informacija i veliki broj procesnih elemenata mreže. Dobre
performance omogućene su gustim međuvezama jednostavnih procesnih elemenata. Procesni
elementi (neuroni ili čvorovi) korišteni u neuronskoj mreži su nelinearni. Najjednostavniji
neuron sabira N ulaza koji su modifikovani pripadnim težinskim faktorima i šalje rezultat kroz
nelinearnost.
Jedna od važnijih osobina neuronskih mreža je njihova sposobnost da uče na ograničenom
skupu primjera. Kao i njen biološki uzor, veštačka neuronska mreža nije sposobna da reaguje
na njoj nepoznati problem samo na osnovu prethodno definisane strukture mreže. Neuronska
mreža mora da se obuči.

Tabela 1. Poređenje biološke i vještačke neuronske mreže

5
Učenje kod bioloških sistema obavlja se putem regulisanja sinaptičkih veza koje povezuju
aksone i dendrite. Učenje događaja putem primjera ostvaruje obučavanjem ili treningom, pri
čemu se podešavaju težinski koeficijenti veza (sinapsa). Za neuronsku mrežu se kaže da je
potpuno obučena, tj.trenirana kada je odgovor mreže na ulazni podatak pri obučavanju u odnosu
na očekivani izlaz u željenim granicama odgovarajuće tolerancije greške.
U našem primjeru veštačka neuronska mreža biće obučavana konkretnim primjerima iz
prakse na osnovu kojih dispečeri u jedinicama saobraćajne podrške vrše izbor vozila za
izvršenje transpornog zadatka.
Neuronske mreže dobile su ovo ime zato što njihova konfiguracija podsjeća na mrežu
nervnih ćelija koje formiraju ljudski mozak. Princip prosljeđivanja impulsa od jedne do druge
nervne ćelije u ljudskom nervnom sistemu iskorišten je kao model prosljeđivanja informacija
kroz vještačku neuronsku mrežu. U stvari, neuronska mreža je koncipirana na modelu ljudskog
mozga i nervnog sistema. Mada je sadašnje naučno saznanje o ljudskom mozgu ograničeno,
poznato je dovoljno detalja u anatomskom i fiziološkom smislu da bi se razumjelo osnovno
funkcionisanje nervnog sistema.
Osnovna jedinica nervog sistema je nervna ćelija ili neuron. Ona ima četiri osnovna dijela:
ulazni dio ćelije, tijelo ćelije, izlazni dio ćelije i sinapse.
Ulazni dio ćelije sadrži skup razgranatih niti nazvanih dendriti. Tijelo ćelije obrađuje
signale koje dobija od dendrita, na taj način dobijajući izlazni impuls koji se prosljeđuje na sve
krajeve razgranate niti nazvane aksonom,koji predstavlja izlazni dio ćelije. Mjesto gdje se akson
dodiruje sa dendritima neke druge ćelije naziva se sinapsa. To je mjesto gdje se impulsi prenose
od jedne do druge nervne ćelije. (Biološki neuron prikazan je na slici 1.)

Slika 1. Biološki neuron

6
Vještački neuroni, kao i biološki, imaju jednostavnu strukturu i imaju slične funkcije kao i
biološki neuroni. Tijelo neurona naziva se čvor ili jedinica (slika 2).

Slika 2. Vještački neuron

3.1 Težinski koeficijenti

Sinapse kojima biološki neuroni regulišu prohodnost određene putanje između aksona i
dendrita, kod veštačkih neurona se ostvaruju preko prilagodljivih težinskih koeficijenata
(engleski weight) ili težina veza. Kada se na ulaz neurona dovedu neke vrijednosti i pomnože
težinskim koeficijentima, dobijaju se ulazni podaci. Zbir ulaznih vrijednosti neurona
pomnoženih sa odgovarajućim težinskim koeficijentima se propušta kroz aktivacionu funkciju
i ta vrijednost predstavlja izlaz iz neurona. Iako neuroni imaju prilično jednostavne (linearne)
funkcije, kada se povežu u višeslojnu mrežu, u stanju su da obrade veoma složene (nelinearne)
funkcije.

7
Slika 3. Težinski koeficijenti

Neuroni na skrivenim i izlaznim slojevima pored težinskih koeficijenata koriste i koeficijent


“threshold” (“bias”) u računanju mrežnih ulaznih vrijednosti. Koeficijent threshold se može
tretirati kao dodatni težinski koeficijent na ulazu koji ima konstantnu težinu jedan. Rukovanje
ovim koeficijentom je slično kao i za svaki drugi težinski koeficijent.

Prirodni neuroni su znatno komplikovaniji od veštačkih. Iako su veštački neuroni, izvedeni u


VLSI1 tehnologiji, znatno 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 i nepotpuno razumljivim za današnju nauku. Uz to, mala je vjerovatnoća
da će principijelna šema stotine milijardi veza biti za dogledno vrijeme analizirana. Šta više, mi
još uvijek ne znamo kako da protumačimo težinske koeficijente čak i u mrežama od samo
nekoliko neurona.

___________________________________________________________________________

1
VLSI je skraćenica od engleskog stručnog pojma: Very-Large-Scale Integration i ovaj pojam se odnosi
na integrisane krugove visoke gustoće. Prva VLSI kola su se pojavila u 80-tim godinama dvadesetog
vijeka i VLSI je četvrta generacija u razvoju integrisanih krugova.

8
4. Obučavanje neuronskih mreža

U svim biološkim neuronskim mrežama veze između pojedinačnog dendrita i aksona mogu biti
pojačane ili oslabljene. Na primjer, veze mogu postati pojačane ako se više signala šalje kroz
njih, ili mogu biti oslabljene ako se signali rjeđe šalju kroz njih. Pojačavanje određenog
neuralnog prolaza, ili veze između dendrita i aksona, rezultuje u povećanoj vjerovatnoći da će
signal biti prenesen kroz tu putanju, daljim pojačavanjem tog puta. Putevi između neurona koji
su rjetko korišteni polako atrofiraju, ili se umanjuju, praveći manju vjerovatnoću da će signal
biti prenesen kroz njih.

Slična situacija se pojavljuje i kod veštačkih neurona. 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. Ulazno-izlazni skup se
ponovo predstavlja mreži zbog daljih podešavanja težina, pošto u prvih nekoliko koraka mreža
obično daje pogrešan rezultat. Poslje podešavanja težina puta za sve ulazno izlazne šeme u
trening skupu, mreža nauči da reaguje na željeni način.

NM je obučena ako može tačno da rješava zadatke za koje je obučavana. NM je sposobna da


izdvoji važne osobine i šeme u klasi trening primjera. Nakon obučavanja sa određenom
vjerovatnoćom, NM može da generalizuje nove ulazne podatke za koje nije obučavana. Na
primjer, generalizaciju možemo vidjeti na primjeru mreže obučavane da prepoznaje serije slika:
ako na ulaz takve mreže dovedemo slike za koje mreža nije obučavana, ona do izvjesne mjere
može uspešno da klasifikuje takve slike.

Najčešće korišten algoritam za obučavanje NM je backpropagation, razvijen nezavisno od


strane naučnika: Paul Werbos (1974), David Parker (1984/1985), i David Rumelhart, Ronald
Williams, i drugih (1985). Backpropagation uči šeme poredeći izlaz neuronske mreže sa
željenim izlazom i računa greške za svaki čvor u mreži. Neuronska mreža podešava težine veza
prema vrijednostima greške dodeljenim za svaki čvor. Izračunavanje počinje od izlaznog sloja,
preko skrivenih slojeva, prema ulaznom sloju. Nakon modifikacije parametara, na mrežu se
dovode novi ulazi. Obučavanje se prekida tek kada mreža bude u stanju da daje izlaze sa
zadovoljavajućom tačnošću.

9
5. Razlike između neuronskih mreža i klasičnih računara

Neuronska mreža se razlikuje od tradicionalnih računara (PC računara, radnih stanica, i


mainframe računara) u formi i funkcionisanju. Dok neuronska mreža koristi veliki broj
jednostavnih procesora da bi obavila njene kalkulacije, tradicionalni računari koriste jedan ili,
u rjeđim slučajevima, svega nekoliko veoma kompleksnih procesorskih jedinica. Neuronska
mreža ne poseduje centralno lokalizovanu memoriju, niti se programira sekvencama
instrukcija, kao svi tradicionalni računari.

Klasični računari koji rade na binarnoj logičkoj osnovi, koriste algoritamski način obrade
podataka (sekvencijalni) sa veoma niskim stepenom paralelizacije. U algoritamskom načinu
obrade podataka računar obrađuje jednu po jednu informaciju ili u boljem slučaju obrađuje
manji broj informacija u isto vrijeme. Za razliku od ovog pristupa obrade podataka, NM
procesira istovremeno više informacija, tj. najbolja varijanta za NM je da je svaki neuron po
jedan procesor. Razvoj NM je doveo do novih arhitektura računara koji se u mnogome razlikuju
od računara kakvi su danas rasprostranjeni. Ako bismo posmatrali primjer prepoznavanja slova,
algoritamsko rešenje bi zahtevalo da se zadato slovo uporedi sa svim slovima u bazi, slovo po
slovo, dok NM može da uporedi zadato slovo istovremeno sa svim slovima, a rešenje je slovo
sa najvećom vjerovatnoćom. Ovo je moguće jer se memoriji pristupa uz pomoć sadržaja, a ne
adrese.

Kod klasičnih računara su elementi obrade informacija i elementi memorisanja informacija


potpuno odvojene komponente. Kod neuronske mreže memorisanje i obrada predstavljaju
jednu kompaktnu celinu. Podaci koji su vezani za rad neuronske mreže nemaju nikakav smisao
bez jedinica obrade.

Neuronska mreža se razlikuje od tradicionalnih računara po načinu na koji se “programira”.


Umjesto programa napisanih kao serije instrukcija, kao što to rade klasični računari, može se
upotrebiti obučena NM, gdje arhitektura i težinski koeficijenti određuju njenu funkciju.
Koeficijenti se podešavaju tokom obučavanja na ograničenom skupu karakterističnih primjera.
Kada se mreža obuči do zadovoljavajuće granice, vrijednosti veza se mogu memorisati i
koristiti u kasnijem radu.

Kod klasičnih računara softver mora biti gotovo savršen da bi radio. Razvoj softvera zahtjeva
iscrpan dizajn, testiranje i postepeno usavršavanje čine ga dugim i skupim procesom.

10
NM omogućavaju evolutivni razvoj softvera, tj. NM mreža se može naknadno adaptirati
realnim i novo nastalim uslovima. Neuronske mreže imaju sposobnost da mjenjaju svoju
strukturu i funkciju, za razliku od klasičnih algoritama koji nemaju toliku fleksibilnost.

Decentralizovana obrada i memorisanje omogućavaju mreži da nastavi funkcionisanje i u


uslovima kada se dio mreže ošteti (jedan dio neurona prestane da funkcioniše ili se neke veze
prekinu). Oštećena mreža će i dalje biti u stanju da funkcioniše ali sa smanjenom tačnošću.
Mreža je takođe tolerantna i na prisustvo šuma u ulaznom signalu. Svaki memorisani uzorak je
delokalizovan, tj. smješten je u cijelu mrežu. Ova osobina je još jedna veoma važna osobina
NM.

6. Primjena neuronskih mreža

U početku su NM koristili naučnici računarskih i kognitivnih nauka koji su pokušavali da


modeliraju čulni sistem živih organizama. Danas neuronske mreže predstavljaju veoma
atraktivnu oblast istraživanja i postoje brojne oblasti u kojima se koriste. Primjenjuju se za:

 prepoznavanje oblika,
 prepoznavanje rukopisa,
 prepoznavanje govora,
 finansijske i ekonomske modele,
 predviđanje kretanja cijena na tržištu,
 upravljanje sistemima,
 upravljanje proizvodnim procesima,
 analizu električnih kola,
 psihijatrijske procjene,
 kompresovanje podataka,
 naftna istraživanja,
 kriminološka istraživanja,
 analizu medicinskih testova,
 ispitivanje EEG i EKG signala,
 pronalaženje optimalnog rešenja,

11
 upravljanje robotima,
 analiziranje podataka pri pirolizi i spektroskopiji,
 u bioračunarskim sistemima,
 vremensku prognozu i
 u drugima oblastima.

Primjenu neuronskih mreža je moguće podeliti na tri karakteristične oblasti:

 procesiranje senzorskih informacija


 analiza podataka
 kontrola upravljanja

Konkretana primjena neuronskih mreža se može vidjeti preko dva realizovana programa
(program za prepoznavanje ćiriličnih slova OCR, program za obučavanje neuronskih
mreža ANN).

12
6. Zaključak

Umjetna inteligencija, tj. neuronske mreže u užem smislu, mogu pridonijeti kvalitetnijoj analizi
podataka. S obzirom da ne postoji standardiziran pristup kojim bi se problem mogao riješiti
pomoću neuronskih mreža, prilikom ispitivanja svakog problema potrebno je isprobati veći broj
neuronskih mreža, u svrhu dobivanja najkvalitetnije mreže, tj. mreže s najvećom pouzdanošću.
Neuronske će mreže postati u potpunosti prihvatljiv alat kada se pristup rješavanja problema
standardizira na način da se za svaku situaciju točno definira arhitektura mreže, pravila učenja,
broj skrivenih slojeva te broj neurona u istima, kao i prijenosne funkcije koje je potrebno
koristiti pri rješavanju. Primjena neuronskih mreža pokazuje se vrlo uspješnom u društvenim
naukama, dok se u prirodnim naukama i dalje češće koriste regresijski modeli. Razlog
navedenom je najvećim dijelom sama struktura podataka koji se obrađuju. Uprkos tome,
neuronske mreže su alat prilagođen za primjenu u analizi nepotpunih podataka. Njihova
prednost je sposobnost generalizacije, odnosno mogućnost dobivanja zadovoljavajućih
rezultata čak i kada neke ulazne vrijednosti nisu poznate ili potpune.

13
7. Literatura

 Bolf, N.; Jerbić, I. (2006). Primjena umjetnih neuronskih mreža pri identificiranju i
vođenju procesa.
 Dalbelo Bašić, B. et al. Umjetna inteligencija
 Kliček, B. Neuronske mreže, http://eris.foi.hr/11neuronske/nn-predavanje58.html
 inteligencija“, M. Jocković, Z. Ognjanović
 „Neuronske mreže u računarskoj tehnici“, IRCN
 https://sh.wikipedia.org/wiki/Neuronske_mre%C5%BEe

14

You might also like