Sie sind auf Seite 1von 51

RNSF - curs 1 1

Retele neuronale si
sisteme fuzzy

curs : prof. dr. ing. Ovidiu Grigore
laborator: drd. ing. Valentin Velican
drd. ing. Ionut Bornoiu
contact: ovgrig@yahoo.com
tel: 021 402 4897
sala: B319a / B134

Curs: cf. orar; sala B312
Laborator: cf. orar; sala B322
Punctaj laborator (detalii lab.) 45p
Verificare finala (lucrare scrisa) 20p
Verificare cunostinte 2/3 semestru 35p

Tema de casa (optional) 20p

Laboratorul incepe in saptamana 3
Se fac 3 laboratoare, fiecare cu test de 15p
Mod de notare. Evaluation
Bibliografie:
Ov. Grigore, Note de curs.
R. Dogaru, Ov. Grigore, Sisteme Neurale si cu logica Fuzzy , Ed.
Printech 1999 , ISBN 973-9475-51-5.
R. Rojas, Neural Networks", Ed. Springer 1996.
P. Pardalos, M. Resende, Applied Optimization, Oxford
University Press, 2002.
D. B. Fogel, "Evolutionary computation: toward a new philosophy
of machine intelligence", IEEE Press 1995.
C. Bishop, " Neural Networks for Pattern Recognition", Clarendon
Press, Oxford,1995.
Kevin Gurney, An Introduction to Neural Networks, UCL Press,
1997.
Laurene Fausett, Fundamentals of Neural Networks, Prentice
Hall, 1994.
Bibliografie.
Cuvinte cheie:
(Artificial) Neural Networks
Fuzzy Sets; Fuzzy Systems
Soft computing
Genetic algorithms
Artificial Intelligence

http://www.cs.stir.ac.uk/~lss/NNIntro/InvSlides.html
http://www.doc.ic.ac.uk/~nd/surprise_96/journal/vol4/cs11/rep
ort.html
http://www.learnartificialneuralnetworks.com/
http://himulera.rbcmail.ru/page296.html

Surse internet.
RNSF - curs 1 5
Introducere. Terminologie

RN si SF fac parte din domeniul INTELIGENTEI ARTIFICIALE

Sistem inteligent = sistem capabil sa preia informatie, sa o
prelucreze, sa o analizeze si sa ia decizii
Terminologie:
Retele neuronale artificiale (Artificial Neural Networks)
Calcul neuronal (Neural Computing)

Multimi fuzzy = Multimi vagi (Fuzzy sets)
Calcul fuzzy (Fuzzy Computing)

Calcul evolutiv (Evolutionary Computing)
Calcul inteligent (Computational Intelligence)


RNSF - curs 1 6
Introducere. Provenienta RN,SF

De unde provine necesitatea /dorinta de a dezvolta RN si SF ?

Imitarea /emularea biologicului / gandirii naturale din dorinta
de a:
Modela sistemele naturale; explicarea functionarii lor
Obtine performantele similare

Existenta unor probleme (paradigme) cu probleme
greu de definit,
chiar definite, care sunt greu de formalizat,
fara solutii algoritmice (greu de implementat / fara implementare)
Chiar daca exista modele teoretice: uneori sunt sunt greu de aplicat;
problema reala se indeparteaza de modelul teoretic (ex.: distributia
normala; calculul campului electromagnetic al tel. mobile din sala)
RNSF - curs 1 7
D.p.v. al rezolvarii automate, problemelor pot fi
Probleme bine-puse: (well posed)
- Exista un model formal asociat
problemei
- Exista un algoritm de rezolvare
- Nu exista ambiguitate


Exemplu: clasificarea angajatilor unei
companii in doua clase in functie de
venitul acestora (venit mai mic respectiv
mai mare decat un prag dat)
Probleme rau-puse: (ill-posed)
- Dificil / imposibil de formalizat
- Se cunosc doar exemple nu
si un model general
- Metodele clasice/algoritmice
nu pot fi aplicate
- Rezultatele nu sunt mereu
predictibile

Exemplu: clasificarea angajatilor
unei companii in doua clase in
functie de credibilitatea privind
acordarea unui imprumut bancar
Introducere. Necesitate aplicativa
RNSF - curs 1 8
Introducere. Necesitate aplicativa
Probleme bine-puse (well-posed problems)
Algoritm =
descriere a metodei
Date de
intrare
Rezultat
If venit>1000 then Clasa 1
else Clasa 2
Venit
Clasa 1 sau
Clasa 2
RNSF - curs 1 9
Probleme rau-puse (ill-posed problems)
Sistem adaptiv
incorporeaza un
modul de
invatare / evolutie
Date de
intrare
Rezultate
Modelul este extras de catre sistemul adaptiv
pe baza situatiilor (exemple) cunoscute
Venit+ alte criterii:
obiective (nr membri fam.)
subiective (credite deja
acordate, bonitate)
Valorice / lingvistice


Clasa 1 sau
Clasa 2
Situatii cunoscute: (900,3,7,Bun, Clasa1),
(500,1,1,Fbun,Clasa 1),(5000,2,5,Rau,Clasa 2),
(1100,4,3,Bun,Clasa2)
Introducere . Necesitate aplicativa
RNSF - curs 1 10
Metodele de rezolvare a problemelor rau-puse se
caracterizeaza prin:

Abilitatea de a extrage modele din exemple (generalizare)
Adaptabilitate la probleme cu caracter dinamic
Robustete la erori (zgomot) in datele de intrare
Capacitatea de a furniza rezultate intr-un interval rezonabil
de timp (chiar daca rezultatele sunt aproximative, dar
acceptabile dpdv practic). = Compromis (optimizare) eroare
de rezolvare vs. timp de rezolvare (cand este cazul
Metode inteligente vs. Metode teoretice,formalizate)


Introducere . Necesitate aplicativa
RNSF - curs 1 11
Computational Intelligence

is a branch of artificial
intelligence; it aims to use
learning, adaptive, or
evolutionary algorithms to
create programs that are, in
some sense, intelligent.
[Computational Intelligence Techniques
Sundaram, Palaniswami, Shilton, Begg, 2006]

Soft Computing

is a collection of new techniques in
computer science, especially in
artificial intelligence; unlike hard
computing, it is tolerant of
imprecision, uncertainty and
partial truth. In effect, the role
model for soft computing is the
human mind. The guiding
principle of soft computing is:
exploit the tolerance for
imprecision, uncertainty and
partial truth to achieve tractability,
robustness and low solution
cost. [Neural Networks and Fuzzy Systems
Gupta, 2000]

Introducere . Necesitate aplicativa
RNSF - curs 1 12
Directii de abordare;
rezolvare a problemelor

Calcul neuronal


Calcul evolutiv


Calcul fuzzy
Instrumente

Retele neuronale
artificiale


Algoritmi evolutivi


Sisteme fuzzy
Sursa de inspiratie

Creierul uman



Evolutia naturala


Rationament uman
si limbaj natural
Introducere . Necesitate aplicativa
RNSF - curs 1 13
Modelul biologic
Creier uman
cca 10
11
neuroni si 10
15
interconexiuni (sinapse/ synapses )
Introducere
RNSF - curs 1 14
Cum lucreaza un neuron ?

Primeste semnale de intrare prin dendrite

Semnalele de intrare genereaza diferente
de potential pe membrana celulara

Diferenta de potential se propaga pana la
conul axonal

De-a lungul axonului este transmis un tren
de impulsuri electrice

Impulsurile electrice ajunse la terminatiile
axonului provoaca eliberarea unor
neurotransmitatori in spatiul sinaptic
transfer de informatie catre dendritele altui
neuron

Sinapsa = legatura intre terminatiile axon si
denditre, are diferite tarii de conectare
(transmitere) a informatiei; poate fi
excitatorie (+) sau inhibitorie (-)
Introducere RN Modelul biologic
RNSF - curs 1 15
Calculator (vonNeumann)

Unul sau cateva procesoare de
viteza mare (timp raspuns: ns) si
cu putere mare de calcul

Una sau cateva magistrale de
comunicare de viteza mare

Memorie accesata prin adresa

Componenta ce incorporeaza
cunoasterea este separata de cea
destinata efectuarii calculelor
(cunostintele sunt inmagazinate
in program / algoritm)

Adaptabilitate redusa
Creier uman / RNA
Un numar mare (10
11
) de unitati
functionale de viteza relativ mica
(ms) cu putere de calcul limitata

Numar foarte mare (10
15
) de
conexiuni de viteza limitata

Memorie cu caracter asociativ
(adresare prin continut)

Cunostintele sunt stocate in
sinapse (distribuite in toata
structura)

Adaptarea se realizeaza prin
modificarea conexiunilor
Introducere RN Modelul biologic
RNSF - curs 1 16
Introducere RN Modelul biologic
Structura
creierului
RNSF - curs 1 17
RN - Principii de baza
Dpdv functional: retea neuronala artificiala = sistem adaptiv
capabil sa furnizeze raspunsuri pentru o problema dupa ce a
fost antrenata pentru situatii similare
Data de
intrare Raspuns
Exemple
Retea neuronala =
Sistem adaptiv
(antrenabil)
Introducere
RNSF - curs 1 18
Dpdv structural:

Retea neuronala = ansamblu de unitati functionale
(neuroni) interconectate

Unitate functionala = model foarte simplificat al
neuronului biologic care efectueaza prelucrari simple
asupra unor date de intrare

Retea neuronala artificiala = model foarte simplificat la
creierului


Introducere RN Principii de baza
RNSF - curs 1 19
Observatii generale

Comportarea complexa a unei RN emerge din
interactiunea si aplicarea in paralel a multor reguli
simple

Abilitatea de invatare deriva din adaptabilitatea unor
parametri asociati unitatilor functionale (acesti
parametri sunt ajustati in procesul de invatare)

In cazul clasic de RN, prelucrarile sunt preponderent
numerice. Exsita abordarile fuzzy la care (cel putin)
intrarile - iesirile reprezinta entitati calitative Exista
abordari noi RN sintactice care invata sa asocieze
structuri sintactice / simbolice
Introducere RN Principii de baza
RNSF - curs 1 20
Retele neuronale artificiale
RNA = unitati functionale interconectate cu parametri ajustabili

Unitate functionala: mai multe intrari, o singura iesire
intrari
iesire
Ponderi numerice
atasate conexiunilor
= sinapse ) exp( 1
1
) ( ) ( ) (
) tanh( ) ( ) sgn( ) (
) (
0
1
u
u f u H u f
u u f u u f
w x w f y
j
n
j
j
+
= =
= =
=

=
Operatii specifice unei unitati
functionale (ex.)
Introducere RN Principii de baza
+
f
x
1
x
2
x
n
w
1
w
2
w
n
.
.
.
RNSF - curs 1 21
Functii de activare


) ( ) (
) sgn( ) (
u H u f
u u f
=
=
Introducere Retele neuronale artificiale
0 2 4 6 8 10 12 14 16 18 20
0
2
4
6
8
10
12
14
16
18
20
-10 -8 -6 -4 -2 0 2 4 6 8 10
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
-10 -8 -6 -4 -2 0 2 4 6 8 10
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
Linear
Logistic (sigmoida)
Tangenta hiperbolica
u u f = ) (
) exp( 1
1
) (
u
u f
+
=
) exp( ) exp(
) exp( ) exp(
) (
u u
u u
u f
+

=
RNSF - curs 1 22
Structura RNA

- Arhitectura (graf orientat
etichetat)

- Functionare (functii vectoriale,
relatii de recurenta, ecuatii
diferentiale)

- Invatare/antrenare (algoritm de
ajustare a parametrilor
ajustabili)
2 , 1 ,
1
0
0
0
1 2
N i x w f w f y
N
k
N
j
j kj ik i
=
|
|
.
|

\
|
|
|
.
|

\
|
=

= =
Exemplu: arhitectura pe nivele
(feedforward)

Relatie de functionare:
Introducere - Retele neuronale artificiale
RNSF - curs 1 23
Exemple de arhitecturi:
Arhitectura pe nivele (feed-forward) Arhitectura recurenta (feed-back)
Arhitectura celulara
Introducere - Retele neuronale artificiale
RNSF - curs 1 24
Invatare = extragerea modelului corespunzator problemei pornind
de la exemple

= determinarea parametrilor retelei

Strategii de invatare:

Supervizata (i.e. invatare cu instructor, set de antrenare ce
contine date de intrare si raspunsuri corecte)

Nesupervizata (i.e. bazata doar pe datele de intrare)

Intarire (i.e. de tip recompensa/penalizare)
Introducere - Retele neuronale artificiale
RNSF - curs 1 25
Aplicatii
Clasificare si recunoasterea formelor

Date de intrare: ansamblu de trasaturi ale unui obiect
Ex: informatii despre angajat

Iesire: Clasa caruia ii apartine obiectul
Ex: eligibil sau neeligibil pt. un credit bancar

Alte exemple: recunoasterea caracterelor, clasificarea imaginilor,
clasificarea texturilor, recunoasterea vorbirii, clasificarea
semnalelor (EEG, EKG)
Particularitate: antrenare supervizata (bazata pe exemple de
clasificare corecta)
Introducere - Retele neuronale artificiale
RNSF - curs 1 26
Exemplu: recunoasterea caracterelor
Problema: recunoasterea caracterelor reprezentate prin bitmap-uri

0
0
0 1 0
1 1 0 0
0 1 0 0
0 1 0 0
1 1 1 0
1
1
1 1 1
1
0
0
0
0
0
0 1 0
1 1 0 0
0 1 0 0
0 1 0 0
1 1 1 0
1
1
1 1 1
0
0
0
0
0
0
0 1 0
1 1 0 0
0 1 0 0
0 1 0 0
0 1 0 0
1
1
1
1
0
0
0
Exemple de reprezentari ale cifrei 1
0
0
0 1 0
1 1 0 0
0 1 0 0
0 1 0 0
0 1 0 1
1
1
1 1
0
0
0
0
Reteaua invata aceste exemple
Dupa antrenare va
recunoaste si
reprezentarea:
Introducere - RNA Aplicatii
RNSF - curs 1 27
Gruparea datelor = Clustering
= varianta nesupervizata a clasificarii ; datele
se grupeaza in functie de similaritatile intre ele

Date de intrare: ansamblu de trasaturi ale unui obiect / entitate de
clasificat

Iesire (Rezultat): clasa caruia ii apartine obiectul

Exemple: segmentarea imaginilor
determinarea adaptiva a paletei de culoare
Introducere - RNA Aplicatii
RNSF - curs 1 28
Exemplu: segmentarea imaginilor satelitare =
identificarea regiunilor omogene din
imagine (faciliteaza analiza continutului
imaginii)

Introducere - RNA Aplicatii: Segmentarea imaginilor
RNSF - curs 1 29
Segmentarea imaginilor medicale; detectia/evaluarea cancerului de san

Introducere - RNA Aplicatii: Segmentarea imaginilor
Segmentarea imag. folosind
RN LVQ
Imagini de la microscop
Segmentarea folosing op.
prelucrari de imagini
(level slicing)
RNSF - curs 1 30
Segmentarea imaginilor medicale; detectia/evaluarea cancerului de san

Introducere - RNA Aplicatii: Segmentarea imaginilor
Senior Expert Counting
A
u
t
o
m
a
t
i
c

S
y
s
t
e
m

C
o
u
n
t
i
n
g

Rezultat final

Coef. Corel=0.84
RNSF - curs 1 31
Aproximare / estimarea =
determinarea unei relatii intre doua
variabile

Date de intrare: valori ale variabilelor
independente
Ex: valori obtinute prin masuratori

Iesire: valoare corespunzatoare
variabilei dependente

Ex: valoarea estimata pentru marimea
care depinde de variabilele
independente
Introducere - RNA Aplicatii
RNSF - curs 1 32
Predictie = estimarea valorii(valorilor) viitoare dintr-o serie
temporala

Date intrare: succesiune de valori
Ex: rata de schimb valutar din ultima luna

Iesire: estimarea valorii urmatoare
Ex: estimarea ratei pentru maine

Alte exemple: Aplicatii financiare
predictia stocurilor,
predictia in meteorologie
Aplicatii in estimarea miscarii (roboti, aplic militare)
Introducere - RNA Aplicatii

Predictia traiectoriei unei tinte aeriene pentru
comanda unei rachete de urmarire



Missile

Target
Introducere - RNA Aplicatii
RNSF - curs 1 34
Optimizare = rezolvare in timp rezonabil a unor probleme de
optimizare combinatoriala pentru care nu exista algoritmi clasici
de complexitate polinomiala

Memorii asociative = memorii in care regasirea informatiei se
bazeaza pe versiuni partiale ale informatiei stocate si nu pe
adresa

Control adaptiv = determinarea unui semnal de control ce
asigura un anumit semnal de iesire al sistemului

Introducere - RNA Aplicatii
RNSF - curs 1 35
Scurt istoric
Pitts & McCulloch (1943)

Primul model matematic al neuronului biologic



Hebb (1949)

Regula de ajustare a ponderilor sinaptice: permeabilitatea
sinaptica dintre doi neuroni creste daca acestia devin activi
simultan

Introducere - RNA
RNSF - curs 1 36
Prima lansare a retelelor neuronale (1950 1965)
Rosenblatt (1957)
Perceptron: retea simpla pentru recunoasterea caracterelor
Perceptron learning rule: primul algoritm de invatare (bazat pe
principiul penalizarii erorilor)

Algoritm de antrenare si teorema de convergenta: perceptronul
poate fi antrenat sa raspunda corect pentru orice problema de
clasificare liniar separabila

Widrow and Hoff (1960, 1962)
ADALINE (Adaptive Linear Neuron / Adaptive Linear Element)

Algoritm de antrenare bazat pe minimizarea unei functii de
eroare folosind o metoda de optimizare
Introducere - RNA Scurt istoric
RNSF - curs 1 37
Perioada de stagnare (1965 1980)

Minski si Papert au facut cunoscute limitarile perceptronului:

Nu poate reprezenta (invata) unele functii
booleene simple (XOR)

- Tot ei au intuit solutia (utilizarea mai multor nivele) dar nu au
putut dezvolta la ora respectiva un algoritm de antrenare
adecvat
Introducere - RNA Scurt istoric
RNSF - curs 1 38
Renasterea interesului pt. domeniu (1980 - prezent)
Tehnici noi:
Algoritmul BackPropagation (Werbos-1974, Rumelhart-
1985)
Modele inspirate de fizica (reteaua Hopfield, masina
Boltzmann, etc.)
Invatare nesupervizata (Kohonen, Grossberg)
Extinderea domeniului de aplicabilitate

Observatie:
Retelele neuronale au limitari si dezavantaje
Trebuie utilizata doar cand tehnicile clasice esueaza
(solutii de compromis)
Introducere - RNA Scurt istoric
RNSF - curs 1 39
Legatura cu alte domenii
Retele neuronale
Biologie
Neurofiziologie
Psihologie cognitiva
Algebra liniara (calcul vectorial si matricial)
Analiza numerica (metode de minimizare)
Statistica
(estimare, regresie)
Ecuatii diferentiale
Informatica
Matematica
Inteligenta artificiala
Data mining
Inginerie
Prelucrarea semnalelor
Control adaptiv
Economie
Predictie stocuri
Analiza riscului
Introducere - RNA
Medicina
Diagnoza automata
Interpretare imagini
RNSF - curs 1 40
STOP Introducere
Introducere - RNA
STOP
Invatare supervizata
nesupervizata
RNSF - curs 1 41
Calcul evolutiv

Principiile calculului evolutiv

Structura unui algoritm evolutiv

Clase de algoritmi evolutivi

Aplicatii ale calculului evolutiv


RNSF - curs 1 42
Principii de baza
Este inspirat de procesele de evolutie din natura bazate pe
principiile ereditatii si a supravietuirii celui mai bun individ


Se bazeaza pe determinarea solutiei unei probleme prin
explorarea spatiului solutiilor potentiale folosind o populatie de
cautatori (agenti)


Elementele populatiei sunt codificate in functie de specificul
problemei (siruri de biti, vectori de valori reale, arbori etc.)

RNSF - curs 1 43
Principiile calculului evolutiv
Evolutia in natura
Mediu
Individ
Grad de adaptare la
mediu

Rezolvarea
problemelor
Problema
Solutie candidat
Calitate solutie
Analogia dintre procesele de evolutie din natura si
rezolvarea problemelor
RNSF - curs 1 44
Structura unui algoritm evolutiv


Initializare
populatie
Evaluare
Recombinare,
mutatie
Selectie
Conditie
de oprire
solutie
Algoritm evolutiv =
proces iterativ constand
in aplicarea succesiva a
unor operatori
- recombinare
- mutatie
- selectie
asupra unei populatii
initializata aleator
RNSF - curs 1 45
Variante de algoritmi evolutivi
Algoritmi genetici:
Codificarea binara a informatiei
Incrucisarea (recombinarea) este operatorul principal
Mutatia este operator secundar
Adecvate pentru probleme de optimizare combinatoriala

Strategii evolutive:
Codificare reala a informatiei
Mutatia este operatorul principal
Incrucisarea este operator secundar
Adecvate pentru rezolvarea de probleme de optimizare
continua

RNSF - curs 1 46
Variante de algoritmi evolutivi
Programare genetica:
Elementele populatiei sunt structuri (arbori, expresii,
programe etc)
Permit generarea unor structuri de calcul prin procese de
evolutie

Programare evolutiva:
Codificare reala a informatiei
Mutatia este singurul operator
Utilizata in rezolvarea problemelor de optimizare continua

Tendinta curenta: hibridizarea diferitelor variante



RNSF - curs 1 47
Aplicatii ale algoritmilor
evolutivi
Probleme de planificare a activitatilor (generarea automata a orarelor
sau planificarea sarcinilor).

Probleme de predictie (evolutia unui activ financiar sau a cursului
valutar).

Programare automata (generarea unor programe care sau structuri
computationale cum sunt automatele celulare si retelele de sortare).

Prelucrarea imaginilor (proiectarea filtrelor pentru imagini si analiza
imaginilor).

Proiectarea retelelor neuronale (stabilirea arhitecturii si/sau a
ponderilor).

Probleme de identificare a unor structuri (bioinformatica)

Simularea unor activitati creative (generare de imagini, muzica etc.)

RNSF - curs 1 48
Calcul fuzzy
Se bazeaza pe calculul nuantat ce foloseste valori fuzzy in
locul unor valori exacte
Multime fuzzy: fiecare element are asociata o functie de
apartenenta
Regula fuzzy: regula implicand variabile lingvistice
Rece Cald
Fierbinte
Aplicatii: dispozitive de control (masini de spalat, frigidere, lifturi etc)
RNSF - curs 1 49
Structura cursului
Proiectarea retelelor neuronale

Retele cu un singur nivel. Perceptron. Probleme liniar separabile.
Algoritmii Widrow-Hoff si Delta.

Retele multinivel. Algoritmul BackPropagation si variante. Probleme
neliniar separabile si aproximare

Retele cu functii radiale

Invatare bazata pe competitie. Retele Kohonen. Teoria rezonantei
adaptive

Invatare de tip corelativ. Analiza in componente principale

Retele recurente (Hopfield, Elman, retele celulare)

Proiectarea evolutiva a retelelor neuronale
RNSF - curs 1 50
Structura laboratorului
Scop: simularea tipurilor fundamentale de retele
neuronale

Instrumente: MatLab (Scilab, Weka, JavaSNNS)

Teme laborator
1. Implementare perceptron simplu
2. Implementare algoritm Backpropagation
3. Implementare retea cu functii radiale
4. Implementare retea Kohonen
RNSF - curs 1 51
Materiale de curs
http://web.info.uvt.ro/~dzaharie/

C. Bishop Neural Networks for Pattern Recognition, Clarendon
Press, 1995

L. Chua, T. Roska Cellular neural networks and visual computing ,
Cambridge.University Press, 2004.

A. Engelbrecht Computational Intelligence. An Introduction, 2007

M.Hagan, H. Demuth, M.Beale Neural Networks Design, PWS
Publishing 1996

Hertz,J.;Krogh,A.;Palmer,R. - Introduction to the Theory of Neural
Computation, Addison-Wesley P.C., 1991.

Ripley, B.D. - Pattern Recognition and Neural Networks, Cambridge
University Press, 1996.

Das könnte Ihnen auch gefallen