FaziNeuronskeMreze
Transcript of FaziNeuronskeMreze
8/7/2019 FaziNeuronskeMreze
http://slidepdf.com/reader/full/fazineuronskemreze 1/5
FNSim - OKRUŽENJE ZA SIMULACIJU I OBUČAVANJEFAZI NEURONSKIH MREŽA
FNSim – FUZZY NEURAL NETWORKSSIMULATION AND TRAINING ENVIRONMENT
Aleksandar Milosavljević1, Živko Tošić1, Leonid Stoimenov1
1 Elektronski fakultet u Nišu
Sadržaj - U ovom radu je dat prikaz FNSim-a, okruženjaza simulaciju i obučavanje fazi neuronskih mreža.Predstavljeni su različiti aspekti simulatora uključujući tu podržane arhitekture fazi neuronskih mreža, korišćenemetode za obučavanje, korisnički interfejs ivizuelizacione mogućnosti. Rad obuhvata i pregledosnovnih koncepata teorije fazi neuronskih mreža,
predlažući način za njihovo uniformno predstavljanje,kao i klasifikaciju ovako predstavljenih modela.
Abstract - This article provides an introduction to the
FNSim fuzzy neural network simulation and training
environment. It presents various aspects of the simulator,
including the supported network architectures, used
training methods, the user interface and the visualization
possibilities. The paper also covers some basic elements
of the fuzzy neural networks theory, suggests uniform
representation method, and classification of present
models.
1. UVOD
Fazi neuronske mreže se zasnivaju se na objedinjavanjukoncepata fazi logike i veštačkih neuronskih mreža – teorija koje su već našle svoje mesto na vrhuinteresovanja istraživača u polju veštačke inteligencije[1].
Fazi logika, zasnovana na Zadehovim rasplinutim (fazi)skupovima, obezbeđuje matematički potencijal zaopisivanje neodređenosti vezane za kognitivne procesekod čoveka, kao što su npr. razmišljanje i rezonovanje
[3]. Pomoću nje je moguće zaključivanje sa nepotpunom inedovoljno preciznom informacijom, koje se još naziva iaproksimativno zaključivanje. S druge strane, veštačkeneuronske mreže, sa svojim različitim arhitekturamaizgrađenim oko koncepta veštačkog neurona, razvijene sutako da oponašaju biološke nervne sisteme u obavljanjufunkcija kao što su učenje i prepoznavanje uzoraka [2].Dok fazi logika obezbeđuje mehanizam zaključivanja sanepotpunom i nedovoljno preciznom informacijom,veštačke neuronske mreže pružaju neke izuzetnemogućnosti kao što su mogućnost učenja, prilagođavanja(adaptacije) i generalizacije [1].
I neuronske mreže i fazi logika bave se važnim aspektima predstavljanja znanja, zaključivanja i učenja, ali koristerazličite prilaze i poseduju sopstvene prednosti i mane. Neuronske mreže mogu da uče iz primera – automatski,
ali je gotovo nemoguće opisati ovako stečeno znanje. Sdruge strane, fazi logika omogućava aproksimativnozaključivanje, ali nema osobinu samoprilagođavanja(adaptivnosti). Koristeći komplementarnost pomenutihteorija, fazi neuronske mreže za sada nalaze najveću primenu u rešavanju problema upravljanja, tj. uimplementaciji adaptivnih fazi kontrolera.
U nastavku ovog rada, u poglavlju Fazi neuronske mreže,dat je pregled teoretskih osnova, kao i klasifikacija nekihod postojećih rešenja za realizaciju fazi neuronskihmreža. Poglavlje Obuč avanje fazi neuronskih mreža
govori o nivoima primene mehanizma obučavanja i postojećim algoritmima koji se mogu naći u literaturi.Ovde je predstavljen još jedan, nešto specifičniji, tip fazineuronskih mreža podržan FNSim-om, nazvan fazineuronske mreže sa slobodno formulisanim pravilima.Četvrto poglavlje daje kraći opis razvijenog simulacionogokruženja i njegovih mogućnosti. Konačno, u poglavlju Rezultati testiranja i zaključ ci prezentovane su performanse implementiranih fazi neuronskih mrežaupošljenih u rešavanju problema aproksimacije funkcija,kao i zaključci koji se tom prilikom mogu izvesti.
2. FAZI NEURONSKE MREŽE
Da bi se implementirale fazi neuronske mreže, neophodno je uvesti određena proširenja u pogledu funkcija kojeobavlja neuron. Ova proširenja treba da obezbedeuopšteniji model veštačkog neurona koji je sposoban zarealizaciju operacija fazi logike [1]. Analizommatematičkog modela neurona koji je u literaturi često
imenovan kao perceptron [2] može se uočiti da je to procesni element koji obavlja tri sukcesivne operacije.Sinaptič ka operacija određuje interakciju ulaza saodgovarajućim težinama, agregaciona operacijaobjedinjuje ovako dobijene rezulatate i generiše ulaz zatreću i poslednju operaciju, operaciju aktivacije. Kod perceptrona prve dve operacije su proizvod i zbir dok jetreća definisana usvojenom aktivacionom funkcijomneurona. Generalizacijom operacija neurona dobijamo generalizovane neurone [1]. Pritom treba naglasiti da sena ovaj način dobijaju procesni elementi koji po funkcijunemaju nikakve veze sa prirodnim neuronima, kao što jeto bio slučaj sa perceptronom, ali zato celokupna teorija
veštačkih neuronskih mreža, pre svega u pogleduobučavanja, i dalje ostaje primenjiva. Za specificiranjetipa generalizovanog neurona koristi se troslovna oznaka,slova ukazuju na usvojene operacije (npr. operacije PSS
8/7/2019 FaziNeuronskeMreze
http://slidepdf.com/reader/full/fazineuronskemreze 2/5
neurona su proizvod, suma i sigmoidalna funkcija; ovakodefinisan generalizovani neuron odgovara klasičnom perceptronu).
Već je rečeno da se fazi neuronske mreže mogu posmatrati kao adaptivni fazi kontroleri. Fazi kontrolerisu opisani u [3] i u [4] i sastoje se iz bloka za fazifikaciju
koji ulazne signale iz spoljašnjeg (ne-fazi) sveta pretvarau unutrašnji fazi oblik, zatim bloka za odluč ivanje koji naosnovu stepena saglasnosti sa premisama primenjuje data pravila, i konačno bloka za defazifikaciju koji dobijenifazi zaključak vraća u spoljašnji ne-fazi oblik pogodan zaupravljanje. Korišćenjem mreža generalizovanih neuronasa pogodno odabranim operacijama moguće je realizovatisvaki od ovih blokova ponaosob. Rešenja nisu jednoznačana i neka od njih su predložena u [1] i [5].Međutim, ovakav pristup u realizaciji adaptivnih fazikontrolera korišćenjem neuronskih mreža često ne nudinajefikasnija rešenja sa stanovišta složenosti. Zato se u praksi najčešće koristi uprošćeni metod fazi zaključivanja
– fazi singlton zaključ ivanje. Definicija fazi singltona,detaljan opis fazi singlton zaključivanja kao i izvođenjeneophodnih izraza dato je u [4] i [1]. Različita rešenja zarealizaciju singlton defazifikatora predložena su u [1], [6]i [7].
Razlikuju se dve osnovne konfiguracije fazi neuronskihmreža koje realizuju adaptivne fazi kontrolere na bazi fazisinglton zaključivanja: (1) fazi neuronske mreže na bazi
okvira spoznaje; (2) fazi neuronske mreže sa nezavisnim
pravilima. Prva konfiguracija je u nešto drugačijemobliku data u [7], [8] i [9]; dok je druga opisana u [6] i[7]. Na slikama 1 i 2 prikazana je arhitektura ovih mreža
na primerima mreža generisanim u FNSim okruženju.Ujedno, ove slike ilustruju vizuelizacione sposobnosti FNSim-a u pogledu prikaza topologije mreže.
Slika 1. Fazi neuronska mreža na bazi okvira spoznaje
Fazi neuronska mreža na bazi okvira spoznaje se možerealizovati sa četiri sloja generalizovanih neurona.Oznake neurona po slojevima su: III, QIE, IPI i PCI.
Neuroni prvog sloja imaju ulogu da signal sa ulaza prenesu odgovarajućim neuronima u narednom sloju;slova “I” ukazuju na jediničnu funkciju ( f(x)=x). Sloj QIEneurona određuje stepen saglasnosti odgovarajućeg ulaza
sa pojedinim particijama u okviru spoznaje te veličine.Fazi skupovi particija koji čine okvire spoznaje ulaznihveličina definisani su dvokomponentnim težinama(w=(a,b)) ovih neurona. Prva komponenta određujecentar, a druga širinu fazi skupa. Slovo “Q” reprezentujesinaptičku operaciju kvadratno rastojanje koja se računakao f(x,w)=(x-a)
2 /b
2, dok slovo “E” reprezentuje
eksponencijalnu aktivacionu funkciju f(x)=exp(-x).Svaki neuron IPI sloja reprezentuje po jedno pravilo i kaoizlaz daje stepen saglasnosti ulaza sa datim pravilom.Slovo “P” u ovom slučaju kazuje da se za agregacijuulaza koristi proizvod. Konačno PCI neuron u poslednjemsloju vrši ulogu singlton defazifikatora po metodu centramase. Težine ovog neurona predstavljaju fazi singltonkonsekvence, slovo “P” govori da se one množe sadobijenim stepenima saglasnosti, a “C” da se agregacijavrši deljenjem zbira proizvoda ulaza i težina, sa zbiromulaza.
Fazi neuronska mreža sa nezavisnim pravilima (slika 2)
se realizuje mrežom od samo tri neuronska sloja. Kod njese pored III i PCI neurona koji su već razmatrani pojavljuje i sloj QSE neurona. Svaki od ovih neuronareprezentuje po jedno pravilo. Ovo pravilo je nazvanonezavisnim jer nije vezano za particije okvira spoznajeveć su svi parametri za njegovo određenje sadržani udvokomponentnim težinama neurona. Za razliku od QIEneurona koji su imali samo po jedan ulaz, QSE neuroniimaju onoliko ulaza koliko ima i ulaznih veličina. Slovo“S” u nazivu kazuje da se za agregaciju rezultatainterakcije na sinapsama koristi zbir.
Slika 2. Fazi neuronska mreža sa nezavisnim pravilima
3. OBUČAVANJE FAZI NEURONSKIH MREŽA
Adaptivnost fazi kontrolera realizovanog korišćenjemgeneralizovanih neurona se postiže upotrebommehanizma obučavanja veštačkih neuronskih mreža.Problem obučavanja fazi neuronskih mreža se može posmatrati na četiri različita nivoa [1] od čega je u ovomslučaju najznačajnije obuč avanje za prilagođ enje
(adaptaciju) i obuč avanje za generisanje pravila.
Kod obuč avanja za adaptaciju fazi pravila i fazi funkcije pripadnosti su unapred definisane, a mehanizam
8/7/2019 FaziNeuronskeMreze
http://slidepdf.com/reader/full/fazineuronskemreze 3/5
nadgledanog obučavanja neuronskih mreža se koristi za podešavanje parametara fazi funkcija pripadnosti. U tusvrhu se koriste poširenja backpropagation algoritma primenjiva na neurone sa različitim sinaptičkim,agregacionim i aktivacionim operacijama. Osnovnibackpropagation je opisan u [2], dok su odgovarajućemodifikacije primenjive na fazi neuronske mreže sa
nezavisnim pravilima predstavljene u [7], a za fazineuronski mreže na bazi okvira spoznaje u [9]. U FNSim-u je ovaj nivo obučavanja implementiran za sve podržanetipove fazi neuronskih mreža. Pritom je, u ciljuostvarivanja boljih performansi simulacionog okruženja,implementiran backpropagation sa momentom [2].
Obuč avanje za generisanje pravila je najsloženiji nivoobučavanja kod koga se ceo fazi sistem automatskigeneriše iz podataka koji ga opisuju. Ovakvo obučavanje je najčešće organizovano u dve faze. U prvoj fazi senumerički ulazi i izlazi grupišu u klastere koji se kasnije preslikavaju u fazi pravila. Druga faza polazi od tako
generisane mreže i praktično primenjuje obučavanje za prilagođenje u cilju poboljšanja performansi sistema.Algoritam za klasterizaciju po metodu najbližih suseda,opisan u [6], koji se koristi za generisanje fazi neuronskemreže sa nezavisnim pravilima implementiran je u FNSim
okruženju.
Pored mogućnosti implementacije i obučavanja fazineuronskih mreža na bazi okvira spoznaje i fazineuronskih mreža sa nezavisnim FNSim podržava još jedan, nešto specifičniji, tip fazi neuronskih mreža. Ovemreže su nazvane fazi neuronske mreže sa slobodno
formulisanim pravilima i opisane su u [10]. Specifičnostmreža se ogleda pre svega u formi pravila, ali i ualgoritmu za obučavanje kojim se jednovremeno vršigenerisanje pravila i prilagođenje njegovih funkcija
pripadnosti. Neuroni koji implementiraju pravila noseoznake WPC, gde “W” ukazuje na težinsku jediničnuoperaciju na sinapsama koja se računa kao f(x,w)=1-(1-
x)*w. U zavisnosti od težine w, određene sinapse, neuronili prenosi ulaz (w=1) ili ga ignoriše i prosleđuje 1 koja jeneutralna za agregacioni proizvod. Slovo “C” u nazivuukazuje da se izlaz određuje kao komplement rezultata
agregacije, odnosno da se koristi aktivaciona funkcija f(x)=1-x. Korišćenjem WPC neurona možemo formirati pravila za fleksibilnijom formom, tj. ne moraju kao kodranije opisanih tipova fazi neuronskih mreža zavisiti odsvih ulaza. Na slici 3 je dat primer prikaza mreže ovogatipa u FNSim-u pre i nakon treniranja. Prikaz ulaznihgrana WPC neurona zavisi od vrednosti odgovarajućetežine. Crnim linijama su prikazane grane gde su težine jednake 1, dok se grane gde su težine jednake 0 neiscrtavaju. Prvi, drugi i posednji sloj imaju iste funkcijekao adekvatni slojevi kod fazi neuronske mreže na baziokvira spoznaje. Treći sloj reprezentuje pravila fazisistema definisana u odnosu na particije (2. sloj) okvira
spoznaje ulaznih veličina. Četvrti sloj, s druge strane,definiše particije okvira spoznaje izlazne veličine.Jednom kada je mreža obučena moguće je dodeljivanjemlingvističkih vrednosti određenim particijama okviraspoznaja jednostavno pročitati pravila (P1: Ako je Xveliko i Y malo onda je Z srednje, P2: Ako je X maloonda je Z veliko, ...). Međutim, iako naizgled vrloatraktivnih mogućnosti ovaj tip fazi neuronskih mrežaima vrlo složen algoritam za obučavanje koji vrlo čestone daje zadovoljavajuće rezultate.
Revidirani i prilagođeni algoritmi i izrazi za obučavanjekoji su korišćeni pri programskoj implementaciji FNSim-a
detaljno su izloženi u [11].
Slika 3. Fazi neuronska mreža sa slobodno formulisanim pravilima pre i nakon obučavanja
8/7/2019 FaziNeuronskeMreze
http://slidepdf.com/reader/full/fazineuronskemreze 4/5
Slika 4. Vizuelizacione mogućnosti FNSim-a
4. FNSim – OPIS SIMULACIONOG OKRUŽENJA
Fazi-neuro simulator ( FNSim) je jednodokumentnaaplikacija razvijena za Windows familiju operativnihsistema korišćenjem razvojnog alata MS Visual C++.Okruženje obezbeđuje implementaciju i obučavanjeopisanih tipova fazi neuronskih mreža, uz dodatnemogućnosti prikaza topologije mreže (slike 1, 2 i 3),greške u toku procesa obučavanja, kao i fazi funkcija pripadnosti koje čine okvire spoznaje, odnosno particijeodređenih ulaznih veličina (slika 4). Dodatno jeobezbeđen i trodimenzionalni prikaz očekivanih idobijenih vrednosti izlaza za sve trening uzorke, kao iodgovarajućih greški (slika 4). U implementaciji mreža su podržana dva tipa fazi funkcija pripadnosti: zvonaste
(Gausove) i trougaone. Treniranje je moguće obavljati uetapama, prekidati ga i nastavljati uz eventualne promenetrening parametara.
Sve informacije o implementiranoj mreži moguće jesnimiti u fajl, ili generisati tekstualni izveštaj koji sadrživrednosti svih parametara mreže uključujući tu i“naučene” težine.
Posebnu funkcionalnost FNSim-a čini Generator mreže – “wizard” koji u niz sukcesivnih koraka prikupljainformacije neophodne za kreiranje i inicijalizaciju fazineuronske mreže. Prvi korak je specificiranje datoteke sa
trening podacima (slika 5). Trening podaci se pripremajuu tekstualnoj datoteci koja je organizovana po kolonama.Elementi prve vrste predstavljaju nazive odgovarajućih
veličina. Nakon odabira ulazne datoteke neophodno jespecificirati ulazne i izlazne veličine, model fazi
neuronske mreže i oblik fazi funkcija pripadnosti.Ukoliko se korisnik opredeli za model sa nezavisnim pravilima potrebno je uneti još i broj pravila, ili ihgenerisati klasterizaciom po metodu najbližih suseda. Zamreže na bazi okvira spoznaje i one sa slobodnoformulisanim pravilima potrebno je zadati broj faziskupova (particija) u svakom od okvira spoznaje. Naosnovu ovog broja vrši se inicijalizacija parametara fazifunkcija pripadnosti tako da se obezbedi uniformna pokrivenost okvira spoznaje.
8/7/2019 FaziNeuronskeMreze
http://slidepdf.com/reader/full/fazineuronskemreze 5/5