FaziNeuronskeMreze

6
FNSim - OKRUŽENJE ZA SIMULACIJU I OBUČAVANJE FAZI NEURONSKIH MREŽA FNSim – FUZZY NEURAL NETWORKS SIMULATION AND TRAINING ENVIRONMENT Aleksandar Milosavljevi ć 1 , Živko Tošić 1 , Leonid Stoimenov 1 1  Elektronski fakultet u Nišu Sadržaj - U ovom radu je dat prikaz FNSim-a, okruženja za 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š ćene metode za obučavanje, korisni čki interfejs i vizuelizacione mogu ćnosti. Rad obuhvata i pregled osnovnih 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 objedinjavanju koncepata fazi logike i veštačkih neuronskih mreža – teorija koje su već našle svoje mesto na vrhu interesovanja istraživa ča u polju veštačke inteligencije [1]. Fazi logika, zasnovana na Zadehovim rasplinutim (fazi) skupovima, obezbe đuje matemati čki potencijal za opisivanje neodre đenosti vezane za kognitivne procese kod čoveka, kao što su npr. razmišljanje i rezonovanje [3]. Pomoću nje je moguće zaključivanje sa nepotpunom i nedovoljno preciznom informacijom, koje se još naziva i aproksimativno zaklju čivanje. S druge strane, veštačke neuronske mreže, sa svojim razli čitim arhitekturama izgrađenim oko koncepta vešta čkog neurona, razvijene su tako da oponašaju biološke nervne sisteme u obavljanju funkcija kao što su učenje i prepoznavanje uzoraka [2]. Dok fazi logika obezbe đuje mehanizam zaklju čivanja sa nepotpunom i nedovoljno preciznom informacijom, veštačke neuronske mreže pružaju neke izuzetne moguć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 koriste različ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. S druge strane, fazi logika omogućava aproksimativno zaključivanje, ali nema osobinu samoprilago đavanja (adaptivnosti). Koriste ći komplementarnost pomenutih teorija, fazi neuronske mreže za sada nalaze najveću  primenu u rešavanju problema upravljanja, tj. u implementaciji adaptivnih fazi kontrolera. U nastavku ovog rada, u poglavlju  Fazi neuronske mreže, dat je pregled teoretskih osnova, kao i klasifikacija nekih od postojećih rešenja za realizaciju fazi neuronskih mrež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 fazi neuronskih mreža podržan  FNSim-om, nazvan fazi neuronske mreže sa slobodno formulisanim pravilima. Četvrto poglavlje daje kra ći opis razvijenog simulacionog okruženja i njegovih mogu ćnosti. Kona čno, u poglavlju  Rezultati testiranja i zaklju č ci prezentovane su  performanse implementiranih fazi neuronskih mreža upoš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 koje obavlja neuron. Ova proširenja treba da obezbede uopšteniji model vešta čkog neurona koji je sposoban za realizaciju operacija fazi logike [1]. Analizom matematič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 sa odgovarajućim težinama, agregaciona operacija objedinjuje ovako dobijene rezulatate i generiše ulaz za treću i poslednju operaciju, operaciju aktivacije. Kod  perceptrona prve dve operacije su proizvod i zbir dok je treća definisana usvojenom aktivacionom funkcijom neurona. Generalizacijom operacija neurona dobijamo  generalizovane neurone [1]. Pritom treba naglasiti da se na ovaj način dobijaju procesni elementi koji po funkciju nemaju nikakve veze sa prirodnim neuronima, kao što je to bio slučaj sa perceptronom, ali zato celokupna teorija veštačkih neuronskih mreža, pre svega u pogledu obučavanja, i dalje ostaje primenjiva. Za specificiranje tipa generalizovanog neurona koristi se troslovna oznaka, slova ukazuju na usvojene operacije (npr. operacije PSS

Transcript of FaziNeuronskeMreze

Page 1: 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

Page 2: FaziNeuronskeMreze

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

Page 3: FaziNeuronskeMreze

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

Page 4: FaziNeuronskeMreze

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.

Page 5: FaziNeuronskeMreze

8/7/2019 FaziNeuronskeMreze

http://slidepdf.com/reader/full/fazineuronskemreze 5/5