Neuronske mreže


Šta su neuronske mreže?

11. decembar 2014. godine

Postoje dve kategorije neuronskih mreža: veštačke i biološke. Predstavnik bioloških neuronskih mreža je nervni sistem živih bića. Veštačke neuronske mreže su po strukturi, funkciji i obradi informacija slične biološkim neuronskim mrežama, ali se radi o veš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, kao što su govor i prepoznavanje oblika. Jedna od važnijih osobina neuronskih mreža je njihova sposobnost da uče na ograničenom skupu primera. Biološke neuronske mreže su daleko komplikovanije od svojih matematičkih modela koji se koriste za veštačke neuronske mreže.

Kada se govori o neuronskim mrežama, misli se na “veštačke neuronske mreže” (engleski termin Artificial Neural Networks), zbog toga što se uglavnom govori o modelima neuronskih mreža, realizovanim na računarima.
Veštačke neuronske mreže su kolekcija matematičkih modela koji simuliraju neke od posmatranih osobina bioloških nervnih sistema i povlače sličnosti sa prilagodljivim biološkim učenjem. Sačinjene su od velikog broja međusobno povezanih neurona (obrađujućih elemenata) koji su, slično biološkim neuronima, povezani svojim vezama koje sadrže propusne (težinske) koeficijente, koje su po ulozi slične sinapsama.
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 primera 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 rešavanje specifičnog problema.
Većina neuronskih mreža ima neku vrstu pravila za “obučavanje”, čime se koeficijenti veza između neurona podešavaju na osnovu ulaznih podataka. Drugim rečima, neuronske mreže “uče” preko primera (kao što deca uče da prepoznaju konkretan predmet, objekat, proces ili pojavu preko odgovarajućih primera) i poseduju sposobnost za generalizaciju posle trening podataka.
Danas se neuronske mreže primenjuju za rešavanje sve većeg broja svakodnevnih problema sa značajnom kompleksnošću. Pokazuju dobre rezultate prilikom predviđanja i modelovanja sistema gde fizički procesi nisu jasni ili su veoma kompleksni. Prednost neuronskih mreža leži u visokoj elastičnosti prema poremećajima u ulaznim podacima i u sposobnosti da uči. Neuronska mreža često uspešno rešava probleme koji su previše kompleksni za konvencionalne tehnologije (na primer, problem koji nema algoritamsko rešenje ili za koji je algoritam previše komplikovan da bi bio pronađen) i one su često dobra pratnja problemima koje ljudi rešavaju.


Primena neuronskih mreža

11. decembar 2014. godine

Pomoću neuronskih mreža se najčešće rešavaju sledeće četiri vrste problema:

  • klasifikacija,
  • predviđanje,
  • prepoznavanje oblika i
  • optimizacija.

Kada se govori o neuronskim mrežama, misli se na “veštačke neuronske mreže” (engleski termin Artificial Neural Networks), zbog toga što se uglavnom govori o modelima neuronskih mreža, realizovanim na računarima.
Teoretski se neuronske mreže mogu obučiti za izračunavanje svake izračunljive funkcije. One mogu uraditi sve što može normalan digitalan računar da uradi.
Međutim, u praksi, neuronske mreže najbolje rezultate pokazuju na području klasifikacije, funkcije aproksimacije, na problemima mapiranja čija je tolerancija neprecizna, na problemima koji imaju dosta dostupnih podataka za trening ili na problemima koji zahtevaju brzu primenu odgovarajućeg pravila u zavisnosti od ulaznih podataka. Isto tako mapiranje vektora između prostora može se aproksimirati precizno putem neuronskih mreža. Neuronske mreže ne mogu da stvore informaciju koju ne sadrže trening podaci.
Danas neuronske mreže predstavljaju veoma atraktivnu oblast istraživanja i postoje brojne oblasti u kojima se koriste.

Neuronske mreže se primenjuju za:

  • prepoznavanje oblika, rukopisa, govora,
  • finansijske i ekonomske modele, predviđanje kretanja cena na tržištu,
  • upravljanje sistemima,
  • upravljanje proizvodnim procesima,
  • analizu električnih kola,
  • kompresovanje podataka,
  • naftna istraživanja,
  • kriminološka istraživanja,
  • analizu medicinskih testova,
  • ispitivanje EEG i EKG signala,
  • pronalaženje optimalnog rešenja,
  • upravljanje robotima,
  • u bioračunarskim sistemima,
  • vremensku prognozu i
  • u drugima oblastima.

Prednost neuronskih mreža je njihova sposobnost da uče koja im daje prirodniji interfejs ka realnom svetu u odnosu na klasične sisteme koji moraju biti programirani.
Neuronske mreže imaju i mogućnost tolerancije nedostataka - mreža se sastoji od više elemanata procesiranja, pa može da funkcioniše i ako dođe do oštećenja dela mreže. Sposobne su da generalizuju, pa ako im se prezentuje nekompletan skup ulaznih podataka, mreža će ipak biti u stanju da da izlaz.
Neuronske mreže ne rade dobro ono što ni ljudi ne rade dobro. Nisu dobre za aritmetičke proračune i zadatke obrade podataka. Iako imaju odličnu moć predviđanja, imaju slabu sposobnost objašnjavanja. Neuronska mreža ne može korisniku da objasni kako je došla do određenog rešenja. Dugo vreme treninga takođe može da predstavlja problem, a ako je potreban čest trening, to može učiniti aplikacije neupotrebljivim.