Author
weylin
View
153
Download
7
Embed Size (px)
DESCRIPTION
Retele neuronale. Calcul neuronal (Neural Computing) Calcul evolutiv (Evolutionary Computing) Calcul fuzzy (Fuzzy Computing). Tipuri de probleme. Rezolvarea problemelor dificile. Probleme rau-puse: Dificil de formalizat Se cunosc doar exemple nu si un model general - PowerPoint PPT Presentation
Retele neuronale - curs 1 1
Retele neuronale
Calcul neuronal (Neural Computing)
Calcul evolutiv (Evolutionary Computing)
Calcul fuzzy (Fuzzy Computing)
Retele neuronale - curs 1 2
Tipuri de probleme Rezolvarea problemelor dificile
Probleme “bine-puse”:- Exista un model formal
asociat problemei- Exista un algoritm de
rezolvare
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:- Dificil de formalizat- Se cunosc doar exemple nu
si un model general - Metodele clasice nu pot fi
aplicate
Exemplu: clasificarea angajatilor unei companii in doua clase in functie de credibilitatea privind acordarea unui imprumut bancar
Retele neuronale - curs 1 3
Tipuri de probleme Probleme bine puse
Algoritm = descriere a metodei
Date de intrare
Rezultat
If venit>1000 then Clasa 1 else Clasa 2
VenitClasa 1 sau Clasa 2
Retele neuronale - curs 1 4
Tipuri de probleme Probleme rau puse
Sistem adaptiv (incorporeaza un modul de invatare/evolutie)
Date de intrare
Rezultate
Modelul este extras de catre sistemul adaptiv pe baza exemplelor
Venit Clasa 1 sau Clasa 2
Exemple: (900, Clasa1), (500, Clasa 1),(5000,Clasa 2), (1100, Clasa2)
Retele neuronale - curs 1 5
Tipuri de problemeMetodele de rezolvare a problemelor rau-puse se caracterizeaza
prin:
Abilitatea de a extrage modele din exemple 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 practiv)
Domeniul care se ocupa cu dezvoltarea unor astfel de tehnici este denumit “computational intelligence” sau “soft computing”
Retele neuronale - curs 1 6
Tipuri de problemeComputational Intelligence
“is a branch of the study of artificial intelligence; it aims to use learning, adaptive, or evolutionary algorithms to create programs that are, in some sense, intelligent. “ [Wikipedia]
Terminologie:
Calcul inteligent (?)
Inteligenta computationala (?)
Calcul tolerant (?)
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.” [Wikipedia]
Retele neuronale - curs 1 7
Scopul cursuluiDirectii
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
Retele neuronale - curs 1 8
Scopul cursuluiCalcul natural = metode de rezolvare a problemelor inspirate de
natura
Calcul neuronal
Calcul evolutiv
Calcul fuzzy
Calcul ADN
Calcul cuantic
Calcul membranar
Retele neuronale - curs 1 9
Calcul neuronal
Principii de baza
Modelul biologic
Retele neuronale artificiale
Aplicabilitate
Scurt istoric
Retele neuronale - curs 1 10
Principii de bazaDpdv functional: retea neuronala artificiala = sistem adaptiv
capabil sa furnizeze raspunsuri pentru o problema dupa ce a fost antrenata pentru probleme similare
Data de intrare Raspuns
Exemple
Retea neuronala =Sistem adaptiv (antrenabil)
Retele neuronale - curs 1 11
Principii de bazaDpdv 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
Retele neuronale - curs 1 12
Principii de baza Comportarea complexa a unei RN emerge din interactiunea si
aplicarea in paralel a multor reguli simple
Abordarea bottom-up este complementara abordarii top down specifica inteligentei artificiale clasice
Abilitatea de invatare deriva din adaptabilitatea unor parametri asociati unitatilor functionale (acesti parametri sunt ajustati in procesul de invatare)
Prelucrarile sunt preponderent numerice spre deosebire de abordarile din inteligenta artificiala clasica care acopera si sfera simbolica
Retele neuronale - curs 1 13
Calcul neuronal
Principii de baza
Modelul biologic
Retele neuronale artificiale
Aplicabilitate
Scurt istoric
Retele neuronale - curs 1 14
Modelul biologicCreier uman
cca 1011 neuroni si 1015 interconexiuni (sinapse)
Retele neuronale - curs 1 15
Modelul biologicCum “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
Retele neuronale - curs 1 16
Modelul biologicCalculator (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
Adaptabilitate redusa
Creier uman Un numar mare (1011) de unitati
functionale de viteza relativ mica (ms) cu putere de calcul limitata
Numar foarte mare (1015) de conexiuni de viteza limitata
Memorie cu caracter asociativ
Cunostintele sunt stocate in sinapse
Adaptarea se realizeaza prin modificarea conexiunilor
Retele neuronale - curs 1 17
Calcul neuronal
Principii de baza
Modelul biologic
Retele neuronale artificiale
Aplicabilitate
Scurt istoric
Reţele neurale - Introducere(Artificial Neural Networks)
• RN (ANN) - multime de elemente de prelucrare neliniara care opereaza in paralel si care sunt legate intre ele in structuri ce seamana cu retelele neuronale biologice.
• Model inspirat din retelele neuronale din creierul uman.
• retele neurale, modele conexioniste (nume dat mai ales structurilor aparute recent), sisteme neuromorfice, modele de calcul distribuit.
18
Caracteristici Sunt formate dintr-un numar mare de elemente de
prelucrare simple, identice; din punct de vedere functional aceste elemente sunt asemanatoare neuronilor din creierul uman
Elementele de prelucrare sunt conectate prin legaturi; fiecare legatura are asociata o pondere ce codifica cunostintele retelei neuronale
Controlul functionarii este paralel si distribuit
Sunt capabile sa invete prin modificarea automata a ponderilor; pot realiza deci achizitia automata a cunostintelor.
19
De ce ANN? Capacitate de invatare si adaptare din exemple
Auto-organizare: o RN poate sa-si creeze propria organizare sau reprezentare a informatiei primita pe parcursul invatarii
Operare in timp real: odata invatata functioneaza repede + prelucrari in paralel
Grad mare de robustete si toleranta la defecte: defectarea unui anumit numar de noduri sau legaturi nu afecteaza, in general, comportarea si performanta retelei.
20
Scurt istoric• 1943 - McCulloch, Pitts - model simplu (binary devices
with fixed thresholds)• 1960 - Rosenblatt
- perceptron - (feed-forward ANN)- enunta si demonstreaza teorema de convergenta a
perceptronului• 1960 - Widrow, Hoff - ADALINE (ADAptive LInear
Element)- dispozitiv electronic analogic- folosea ca regula de invatare Least-Mean-Squares (LMS)
• 1969 - Minsky, Papert - au demonstrat limitarile perceptronului
• 1970 - Retele neurale ca memorii adresabile prin continut
21
Scurt istoric (cont.)• 1970 - RN s-au cam abandonat• 1980 - Cercetari reluate• 1982 - Hopfield - functia de energie - a pus in
evidenta notiunea de memorie ca o multime de atractori dinamici stabili
• 1986 - Rumelhart - perceptroni multinivel, retele backpropagation (recurrent networks)
• 1988 - Grossberg si Carpenter in 1988 - algoritmi de rezonanta - retele ART (Adaptive Resonance Theory)
• 1988 - Anderson si Kohonen (independent) - tehnici asociative
22
Modelul neuronului artificial
• McCulloch, Pitts (1943) au propus un model simplu al neuronului, cu intrari binare
23
Modelul neuronului artificial (cont.)
• y = f (i=1,nwixi - ) y = f (i=0,nwixi)
• wi reprezinta intensitatea legaturii (conexiunii) de la neuronul cu
iesirea xi
• Daca fi > 0 excitare
• Daca fi < 0 inhibare
• Daca fi = 0 nu exista sinapsa intre neuroni
• - valoarea de prag peste care neuronul se activeaza
, y
x1
x2
xn
w1
w2
wn
X0= -1
f(x) = 1 - daca x 0 0 - in caz contrar
24
Reţele neurale artificiale
Modelul unei ANN este caracterizat de:• Topologia retelei• Caracteristicile elementelor de prelucrare
(noduri / neuroni)• Regulile de actualizare / modificare
(invatare) a ponderilor• Sensul de propagare a semnalelor de
activare prin retea
25
Caracteristici ANN Tipul de invatare: supervizat, nesupervizat, fara invatare Sensul de propagare a semnalelor
– Feed-forward networks - un singur sens– Feedback networks - in ambele sensuri (dinamice, numite
si recurente) Regulile de actualizare a ponderilor (invatare)
– Mapare asociativa: reteaua invata sa produca anumite valori ale intrarilor pentru sabloane particulare aplicate la intrare (regasire sabloane distorsionate, memorie adresabila prin continut)
– Detectarea regularitatilor: reteaua invata sa raspunda anumitor propietati particulare ale sabloanelor de intrare; fiecare iesire are o anumita semnificatie
26
Caracteristici ANN (cont.) Numarul de straturi sau niveluri Tipul intrarilor si al iesirilor: intreg, real Tipul functiei de transfer (activare)
limitator logica nivel sigmoid
27
t = i=1,nwixi -
f(t) = 1 / (1 + e-t) f(t) = (et - e-t) / (et + e-t)
f ff
t tt
1
11
Caracteristici ANN (cont.) Functia activare - sigmoid
• T – temperatură absolută (grade Kelvin).• KB = 1,38 * 10-16 erg/K, constanta lui Boltzmann.
28
hehg 21
1)(
TKB
1
2.2 Exemple
29
x
x
x
1
2
N
N Intrari M Iesiri
...y
M
...
y2
y1
Exemple (cont.)
30
Exemple (cont.) - Recunoasterea sabloanelor
31
Retea antrenata sa recunoasca literele T si H
Exemple (cont.) - Recunoasterea sabloanelor
32
Antrenare
Functionare
Exemple (cont.)
33
O retea poate arata si asa!
RN de clasificare cu sabloane fixe - taxonomie
34
Retele neuronale de clasificare
Intrari binare Intrari reale
Invatare Invataresupervizata nesupervizata
cu sabloane fixe
Invataresupervizata
Invatarenesupervizata
Retea ReteaHopfield Hamming
ClasificatorCarpenter/Grossberg
Perceptron Perceptronmulti-nivel
Harti cu auto-organizareKohonen
Retele neuronale - curs 1 35
Retele neuronale artificiale RNA = unitati functionale interconectate cu parametri ajustabili
Unitate functionala: mai multe intrari, o singura iesire
intrari
iesire
Ponderi numerice atasate conexiunilor
)exp(1
1)( )()(
)tanh()( )sgn()(
)( 01
uufuHuf
uufuuf
wxwfy j
n
jj
Operatii specifice unei unitati functionale (ex.)
Retele neuronale - curs 1 36
Retele neuronale artificiale
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
12 NixwfwfyN
k
N
jjkjiki
Exemplu: arhitectura pe nivele (feedforward)
Relatie de functionare:
Retele neuronale - curs 1 37
Retele neuronale artificialeExemple de arhitecturi:
Arhitectura pe nivele Arhitectura recurenta
Arhitectura celulara
Retele neuronale - curs 1 38
Retele neuronale artificialeInvatare = 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)
Retele neuronale - curs 1 39
Calcul neuronal
Principii de baza
Modelul biologic
Retele neuronale artificiale
Aplicabilitate
Scurt istoric
Retele neuronale - curs 1 40
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)
Retele neuronale - curs 1 41
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:
Retele neuronale - curs 1 42
Aplicatii Gruparea datelor (varianta nesupervizata a clasificarii – datele
se grupeaza in functie de similaritatile intre ele)
Date de intrare: ansamblu de trasaturi ale unui obiectEx: informatii privind traseul urmat de catre utilizator intr-un
sistem de comert electronic
Iesire: clasa caruia ii apartine obiectulEx: grupuri de utilizatori cu comportare similare
Alte exemple: segmentarea imaginilor
Retele neuronale - curs 1 43
AplicatiiExemplu: segmentarea imaginilor =
identificarea regiunilor omogene din
imagine (faciliteaza analiza continutului imaginii)
Retele neuronale - curs 1 44
Aplicatii 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
Retele neuronale - curs 1 45
Aplicatii Predictie = estimarea valorii(valorilor) viitoare dintr-o serie
temporala
Date intrare: succesiune de valoriEx: rata de schimb valutar din ultima luna
Iesire: estimarea valorii urmatoareEx: estimarea ratei pentru maine
Alte exemple: predictia stocurilor, predictia in meteorologie
Retele neuronale - curs 1 46
Aplicatii 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
Retele neuronale - curs 1 47
Calcul neuronal
Principii de baza
Modelul biologic
Retele neuronale artificiale
Aplicabilitate
Scurt istoric
Retele neuronale - curs 1 48
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 artificialaData mining
IngineriePrelucrarea semnalelorControl adaptiv
EconomiePredictie stocuriAnaliza riscului
Retele neuronale - curs 1 49
Calcul evolutiv
Principiile calculului evolutiv
Structura unui algoritm evolutiv
Clase de algoritmi evolutivi
Aplicatii ale calculului evolutiv
Retele neuronale - curs 1 50
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.)
Retele neuronale - curs 1 51
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
Retele neuronale - curs 1 52
Structura unui algoritm evolutiv
Initializare populatie
Evaluare
Recombinare,mutatie
Selectie
Conditie de oprire
solutieAlgoritm evolutiv = proces iterativ constand in aplicarea succesiva aunor operatori - recombinare - mutatie - selectieasupra unei populatiiinitializata aleator
Retele neuronale - curs 1 53
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
Retele neuronale - curs 1 54
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
Retele neuronale - curs 1 55
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.)
Retele neuronale - curs 1 56
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)
Retele neuronale - curs 1 57
Materiale de curs
• 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.