Osnova neuronskih mreža: Dešifrovanje

Preuzeto sa: www.iso.org

Međunarodna organizacija za standardizaciju (ISO) je objavila vijest pod nazivom „The basis of neural networks: Cracking the code“. Objavljujemo prijevod ISO vijesti.

Potkategorija vještačke inteligencije, neuronske mreže su modeli vještačke inteligencije koji imaju veliki inovativni potencijal. Od omogućavanja rada internet pretraživača do prepoznavanja glasa na našim pametnim telefonima, pa do predviđanja bolesti na osnovu medicinskog snimanja, neuronske mreže su se već pokazale kao nevjerovatno svestrane i moćne alatke, ali daleko od toga da su pokazale sav svoj potencijal.

S obzirom na to da modeli neuronskih mreža predstavljaju osnovu svih razgovora koji se vode o vještačkoj inteligenciji, ova tema zaslužuje da se podrobnije zadržimo na njoj da bismo razumjeli sve detalje. Dakle, šta su zapravo neuronske mreže i kako funkcioniraju? Pojednostavljeno rečeno, to su algoritmi sposobni da uoče, razgraniče i otkriju obrasce koji su prisutni u podacima i koji prate proces koji imitira funkcioniranje ljudskog mozga. Da li je ovo činjenica ili samo fikcija? Ova inovativna tehnologija definitivno pomjera granice onoga što smo mislili da je moguće.

U ovom članku pokušat ćemo da podignemo veo s osnovnih principa neuronskih mreža i fokusirat ćemo se na to kako one na revolucionaran način mijenjaju naš odnos s tehnologijom.

Sadržaj

·         Šta je neuronska mreža?

·         Za šta se koriste neuronske mreže?

·         Kako funkcioniraju neuronske mreže?

·         Razumijevanje različitih tipova neuronskih mreža

·         Kako se obučavaju neuronske mreže?

·         Prednosti i nedostaci neuronskih mreža

·         Ka snažnim AI mrežama

·         Da li su neuronske mreže budućnost vještačke inteligencije?

Šta je neuronska mreža?

Neuronske mreže, koje se nazivaju i vještačke neuronske mreže ili simulirane neuronske mreže, jesu vrsta algoritma za mašinsko učenje inspirisana strukturom i funkcijom ljudskog mozga. Sastoje se od međusobno povezanih čvorova, koji se nazivaju neuroni. Ali šta je neuron? Jednostavno rečeno, neuroni koji čine AI neuronsku mrežu su matematičke funkcije koje obrađuju primljene informacije (na rubu mreže, kao što su sinapse) i kao rezultat proizvode numeričku vrijednost (u zavisnosti od toga da li je neuron aktiviran ili ne).

U AI neuroni su dijelovi softvera koji rade zajedno na procesuiranju i analizi složenih podataka. Svaki neuron prima informacije iz prethodnog sloja, primjenjuje matematičku funkciju na ove informacije i zatim prenosi rezultat sljedećem sloju. Izbor i podešavanje ovih matematičkih funkcija predstavlja glavnu poteškoću u projektovanju neuronske mreže, s obzirom na to da njen cjelokupni učinak zavisi od adekvatnosti podešavanja, odnosno postavki za dobijanje očekivanog rezultata. Ovo podešavanje je omogućeno automatskim procesom koji se zove obuka.

Za šta se koriste neuronske mreže?

Iako su nekada bile samo koncept, neuronske mreže su danas tehnologija koja na revolucionaran način mijenja čitav niz industrija. Svestranost i moć koja ih karakterizira omogućavaju višestruke konkretne primjene koje već transformiraju način na koji koristimo tehnologiju i način na koji s njom komuniciramo. Naprimjer, mogu analizirati velike količine finansijskih podataka i predvidjeti trendove na berzi, solventnost ili čak otkrivanje prevare. Ova sposobnost ima potencijal da značajno unaprijedi investicione strategije i upravljanje rizikom.

U zdravstvu se neuronske mreže koriste za dijagnozu bolesti, razvoj lijekova i personaliziranu medicinu. Zdravstveni radnici mogu koristiti vještačke neuronske mreže za analizu medicinskih snimaka, kartona pacijenata i genomskih podataka kako bi identificirali obrasce i dali daljnja predviđanja. Tako medicinske dijagnoze postaju preciznije, a protokoli liječenja personaliziraniji. Neuronske mreže također mogu pomoći da se ubrza razvoj lijekova omogućavanjem analize veoma velikih skupova podataka.

Autonomna vozila predstavljaju još jednu oblast primjene neuronskih mreža, posebno za detekciju objekata, navigaciju i donošenje odluka u realnom vremenu, ali i u području korisničkog iskustva.

U sektoru usluga, chatbotovi s vještačkom inteligencijom imaju velike koristi od neuronskih mreža koje omogućavaju prepoznavanje entiteta, obradu prirodnog jezika i analizu osjećanja. Sistemi preporuka, poput onih koje predlažu emisije koje bi nam se mogle svidjeti koje moramo pogledati, oslanjaju se na prepoznavanje obrazaca i mogućnosti predviđanja.

Kako funkcioniraju neuronske mreže?

Fascinantna stvar u vezi s neuronskim mrežama je da su inspirisane funkcioniranjem ljudskog mozga. Njihova struktura se zasniva na nekoliko ključnih elemenata.

·         Prvo, neuroni, koji su osnovne jedinice simuliranih neuronskih mreža. Oni primaju ulazne signale, obrađuju ih koristeći funkcije aktivacije prije nego što proizvedu izlazne signale. Ovi vještački neuroni su međusobno povezani u slojevima da formiraju mrežu. Prvi sloj, nazvan ulazni sloj, prima početne podatke, dok posljednji sloj, nazvan izlazni sloj, daje konačni rezultat. Obradom ulaza iz prethodnog sloja i njihovim prijenosom na sljedeći sloj, svaki neuron omogućava protok informacija kroz mrežu. Mreža također može uključivati jedan ili više skrivenih slojeva koji se koriste u procesu proračuna.

·         Težine čine vezu između neurona. One određuju jačinu signala koji se prenosi s jednog neurona na drugi. Težine se koriguju tokom faze obuke neuronske mreže, tako da model može naučiti i poboljšati svoje performanse.

·         Aktivacijske funkcije, koje omogućavaju nelinearnost u neuronskoj mreži, pomažu mreži da modelira složenije odnose u podacima. Na osnovu ulaznih podataka one određuju da li se neuron treba aktivirati ili ne. Ove funkcije igraju ključnu ulogu u određivanju ponašanja i sposobnosti učenja neuronskih mreža.

Interakcije između ovih ključnih elemenata su u samoj suštini onoga što definira vještačku neuronsku mrežu.

Širenje naprijed, ili propagacija unaprijed, u suštini je osnov na kojem neuronske mreže funkcioniraju, omogućavajući im da predviđaju i generišu izlazne podatke. U suštini, širenje naprijed je jednostavan, ali veoma moćan proces. Sastoji se od prolaska ulaznih podataka kroz slojeve međusobno povezanih neurona, gdje svaki neuron kroz aktivacijsku funkciju primjenjuje ponderirani zbir ulaznih podataka.

Širenje unazad je često jednako važno. Ovo je proces kojim neuronska mreža koriguje svoje težine kao odgovor na povratne informacije primljene tokom faze obuke. Radi tako što širi, odnosno propagira grešku iz izlaznog sloja nazad kroz mrežu, tako da svaki neuron može da ispravi, odnosno koriguje svoju težinu u skladu s tim. Iterativna adaptacija težina zasnovana na povratnim informacijama omogućava mreži da postepeno poboljšava tačnost svojih predviđanja i očekivanih rezultata.

Razumijevanje različitih tipova neuronskih mreža

Postoje različite vrste neuronskih mreža, od kojih je svaka dizajnirana da postigne izvanredan uspjeh u obavljanju unaprijed definiranih zadataka, kao što su prepoznavanje slike, obrada prirodnog jezika ili analiza vremenskih serija. Glavne vrste vještačkih neuronskih mreža su:

·         Aciklična neuronska mreža (ili FNN – Feedforward neural network) je vrsta vještačke neuronske mreže u kojoj informacije teku u samo jednom smjeru, od ulaznog do izlaznog sloja. Ova vrsta mreže se obično koristi za obavljanje zadataka kao što su prepoznavanje obrazaca, klasifikacija i regresija.

·         Konvolucijska neuronska mreža (ili CNN – Convolutional neural network) je, u većini slučajeva, neuronska mreža širenja naprijed dizajnirana za obradu mrežastih podataka, kao što su slike ili videosnimci. Upotreba konvolucijske neuronske mreže u dubokom učenju oslanja se na primjenu filtera na lokalizirane regione ulaznih podataka, omogućavajući joj da sistematski uči hijerarhijske strukture reprezentacije vizuelnih karakteristika. CNN-ovi su postali neophodan alat u klasifikaciji slika, detekciji objekata i zadacima računarskog vida.

·         Povratna neuronska mreža (ili RNN – Recurrent neural network), odnosno rekurentna neuronska mreža je dizajnirana da obrađuje sekvencijalne podatke kroz povratne petlje. Ovaj mehanizam omogućava mreži da zadrži informacije iz prethodnih ulaza za predviđanja ili odluke. RNN se uveliko koristi za obavljanje zadataka kao što su modeliranje jezika, prepoznavanje govora i mašinsko prevođenje.

·         Rezidualna neuronska mreža (ili ResNet - Residual neural network) je posebna vrsta mreže širenja naprijed koja omogućava mreži da preskoči određene slojeve, posebno kada oni ne doprinose dobijanju boljeg rezultata. Ova vrsta mreže se uveliko koristi u izvršavanju zadataka semantičke segmentacije, naprimjer. ResNets su zapravo jednostavna, ali efikasna tehnika za obuku dubokih neuronskih mreža.

Pored ovih nekoliko primjera, postoji mnogo drugih modela neuronskih mreža koji imaju mnoštvo primjena, kao što su generisanje sintetičkih podataka, vizuelizacija podataka i ekstrakcija i simulacija karakteristika. Radijalne neuronske mreže, naprimjer, često se koriste za obavljanje zadataka aproksimacije funkcija i klasifikacije, posebno kada su odnosi između ulaza i izlaza složeni ili nelinearni. Postoje i grafske neuronske mreže koje se mogu koristiti za analizu podataka sadržanih u grafovima.

Kako se treniraju neuronske mreže?

Obuka, odnosno trening neuronske mreže širenja naprijed sastoji se od korekcije težina povezanih sa svakom vezom između neurona. Ovaj proces zahtijeva skupove podataka koji će služiti kao primjeri iz kojih mreža uči obrasce, korelacije i daje tačna predviđanja. Kvalitet i raznovrsnost podataka za obuku igra vitalnu ulogu u sposobnosti mreže da generalizira i daje dobre rezultate iz novih podataka.

Međutim, treba napomenuti da trening modela neuronske mreže uključuje određena unutrašnja ograničenja:

·         Zahtjevi podataka: Obuka neuronske mreže zahtijeva velike količine označenih podataka, koji nisu uvijek lako dostupni.

·         Interpretabilnost: Neuronske mreže se često nazivaju „crnim kutijama“ zbog visoke dimenzionalnosti (složenosti podataka) na koje se primjenjuju proračuni, što otežava tumačenje razloga koji stoje iza donesenih odluka.

·         Računarski resursi: Treniranje AI neuronskih mreža može biti veoma kompjuterski intenzivno i stoga zahtijeva značajne računarske resurse i mnogo vremena. Drugi resursi tokom faze uvođenja su također neophodni.

·         Pretreniranost i podtreniranost, odnosno prenaučenost i podnaučenost: Neuronske mreže mogu biti sklone pretreniranosti, kada postanu previše specifične za podatke o obuci i ne uspiju da dobro generaliziraju nove i nevidljive podatke. Suprotno tome, kada model ne uspije da uhvati značajne razlike i obrasce u podacima i stoga daje loše rezultate čak i na podacima o obuci, to se naziva „podtreniranost“.

Prednosti i nedostaci neuronskih mreža

Bez obzira na arhitekturu neuronskih mreža, ova tehnologija je već od presudne važnosti zbog svoje sposobnosti da uči obrasce, prilagođava se promjenama, izvršava više radnji istovremeno i obrađuje velike količine neorganiziranih podataka. Glavne prednosti neuronskih mreža su:

·         Veća preciznost: Neuronske mreže mogu otkriti složene obrasce koji bi mogli da promaknu ljudskom oku ili sistemu zasnovanom na pravilima

·         Prilagodljivost: Neuronske mreže mogu da se prilagode promjenljivim obrascima tako što će kontinuirano učiti iz novih podataka.

·         Skalabilnost: Neuronske mreže mogu efikasno da obrađuju velike količine podataka, što ih čini idealnim za obradu u realnom vremenu.

Međutim, dok se neuronske mreže pokazuju kao neosporno moćni alati koji su transformirali mnoge industrijske sektore, kao i kod svake tehnologije, i ona dolazi uz određene poteškoće i ograničenja. Stoga je imperativ da se u potpunosti razumiju ove poteškoće kako bi se maksimalno iskoristio njihov puni potencijal.

Prvo, neuronske mreže zahtijevaju skupove podataka da bi naučile i dale tačna predviđanja. Kvalitet i reprezentativnost ovih podataka su od suštinskog značaja za dobre performanse mreže. Međutim, sticanje i priprema ovih skupova podataka može biti dugotrajan proces za koji su potrebni vrijeme i znatni resursi.

Drugo, dizajn i optimizacija neuronskih mreža zahtijevaju određenu stručnost i veliku računarsku snagu. Izbor odgovarajuće arhitekture, prilagođavanje hiperparametara i obuka modela može biti složen i iterativni proces. Zbog ove složenosti, čak i stručnjacima može biti teško da efikasno implementiraju i primjenjuju neuronske mreže.

Primjena neuronskih mreža također može naići na određena ograničenja, kao što je interpretabilnost. Zbog njihove složenosti, proces donošenja odluka u neuronskoj mreži može biti teško razumjeti i objasniti. Nedostatak interpretabilnosti može biti problem u kritičnim aplikacijama, kao što su zdravstvo i finansije, gdje su transparentnost i odgovornost od suštinskog značaja.

Ka snažnim AI mrežama

Važno je procijeniti snagu neuronske mreže kako bi se osiguralo da sistemi vještačke inteligencije održavaju isti visoki nivo performansi u svim okolnostima. Sistemi neuronskih mreža predstavljaju posebne izazove zato što ih je teško objasniti i zato što su skloni neočekivanom ponašanju zbog svoje nelinearne prirode. Za prevazilaženje ovih ograničenja i poteškoća potrebno je primijeniti alternativne pristupe poput upotrebe međunarodnih standarda.

Serija standarda ISO/IEC 24029 primjenjuje holistički pristup tako što rješava i etička pitanja i ograničenja u vezi s novim tehnologijama kako bi se omogućilo odgovorno usvajanje neuronskih mreža. Za sada se u tekstovima standarda daje opći pregled i metodologija za upotrebu formalnih metoda kako bi se ocijenila svojstva robusnosti neuronskih mreža. Ova serija važnih standarda, koja je još u razvoju, može poslužiti kao osnova za jačanje povjerenja u sisteme vještačke inteligencije širom svijeta.

Tehnički izvještaj ISO/IEC TR 24029-1[1] Ocjenjivanje robusnosti neuronskih mreža – Dio 1: Pregled;

Standard ISO/IEC 24029-2 Ocjenjivanje robusnosti neuronskih mreža – Dio 2: Metodologija za korištenje formalnih metoda.

Da li su neuronske mreže budućnost vještačke inteligencije?

Napredak u oblasti neuronskih mreža nudi beskrajne mogućnosti za kreativno rješavanje problema, ali razvoj ove tehnologije mora biti odgovoran, promišljen i obezbijediti zaštitne mjere. Kao i svaka tehnologija vještačke inteligencije, neuronske mreže se moraju razvijati u skladu s principima etike i odgovornosti kako bi podržale ljudski napredak s  minimalnim rizikom.

Međunarodni standardi mogu pomoći istraživačima, regulatornim tijelima, korisnicima i drugim zainteresiranim stranama da se dogovore o potrebama, načinu praćenja napretka i najboljim praksama. Iako su prednosti koje već vidimo jasne za, naprimjer,  bolnice ili našu udobnost kod kuće, i dalje je od suštinskog značaja da se osigura da su pitanja sigurnosti, privatnosti i transparentnosti u potpunosti integrirana u razvoj ove tehnologije. Dakle,  kroz zajednički jezik, zajednička mjerila i jedinstvenu viziju moći ćemo maksimalno iskoristiti potencijal neuronskih mreža u interesu svih nas.

 


[1] Institut za standardizaciju BiH je objavio tehnički izvještaj BAS ISO/IEC TR 24029-1:2022, Umjetna inteligencija (AI) - Procjena robusnosti neuronskih mreža - Dio 1: Pregled