curs 6 – rețele neuronale artificiale

29
SISTEME INTELIGENTE DE SUPORT DECIZIONAL Ș.l.dr.ing. Laura-Nicoleta IVANCIU Curs 6 – Rețele Neuronale Artificiale

Upload: doanthu

Post on 31-Dec-2016

249 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Curs 6 – Rețele Neuronale Artificiale

SISTEME INTELIGENTEDE SUPORT DECIZIONAL

Ș.l.dr.ing. Laura-Nicoleta IVANCIU

Curs 6 – Rețele Neuronale Artificiale

Page 2: Curs 6 – Rețele Neuronale Artificiale

2

Cuprins

Principii Bazele biologice Arhitectura RNA Instruire Tipuri de probleme rezolvabile cu RNA

Curs 6 – Rețele Neuronale Artificiale

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 3: Curs 6 – Rețele Neuronale Artificiale

3

Principiile RNA Ce înseamnă Calcul Natural și Calcul Neural? Ce înseamnă RNA? Care sunt componentele care determină o rețea neuronală?

Curs 6 – Rețele Neuronale Artificiale

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 4: Curs 6 – Rețele Neuronale Artificiale

4

Principiile RNACurs 6 – Rețele Neuronale Artificiale

Calcul neural (neuronal)

RN = suport hard pentru calcul neural

- rezolvarea problemelor de asociere

- se bazează pe extragereaunui model pe bază de exemple

- învățare pe bază de suficient de multe exemple

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 5: Curs 6 – Rețele Neuronale Artificiale

5

Alte definiții

RNA = calculator distribuit, masiv paralel, care achiziționeazănoi cunoștințe pe baza experienței anterioare și le facedisponibile pentru utilizarea ulterioară (S.Haykin, 1994)

Asemănarea cu creierul uman cunoștințele sunt achiziționate de rețeaua neurală printr-un proces de învățare

cunoștințele sunt depozitate în conexiunile inter-neuronale (ponderisinaptice)

Curs 6 – Rețele Neuronale Artificiale Principiile RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 6: Curs 6 – Rețele Neuronale Artificiale

6

RNA este complet determinată prin:

tipul unităților funcționale (elemente de procesare numite neuroni)

arhitectură (amplasare unități funcționale)

algoritm de funcționare (transformare semnal intrare în semnal ieșire)

algoritm de învățare (cum achiziționează rețeaua noicunoștințe pe bază de exemple)

Curs 6 – Rețele Neuronale Artificiale Principiile RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 7: Curs 6 – Rețele Neuronale Artificiale

7

Denumiri alternative pentru RNA

neurocalcul

conexionism

procesare paralelă distribuită

sisteme adaptive

rețele cu auto-organizare

Curs 6 – Rețele Neuronale Artificiale Principiile RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 8: Curs 6 – Rețele Neuronale Artificiale

8

Bazele biologice ale RNA Cum arată un neuron natural? Cum arată un neuron artificial? Ce sunt funcțiile de activare?

Curs 6 – Rețele Neuronale Artificiale

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 9: Curs 6 – Rețele Neuronale Artificiale

9

Neuronul natural

unitate morfo-funcțională a sistemului nervos

~100 mld. neuroni în creier și măduva spinării1000-10.000 sinapse/neuronNU se regenerează (sau?...)

Curs 6 – Rețele Neuronale Artificiale Bazele biologice ale RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 10: Curs 6 – Rețele Neuronale Artificiale

10

Tipuri de neuroni naturali

senzoriali (bipolari) (0.9%)

receptori -> SNC

moto-neuron (multipolari) (9%)

SNC -> mușchi, glandeΦ = 4...100μm

inter-neuroni (pseudopolari)

-> măduva spinării-> piele, mușchi

Curs 6 – Rețele Neuronale Artificiale Bazele biologice ale RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 11: Curs 6 – Rețele Neuronale Artificiale

11

Neuronul artificial

Modelul de bază McCulloch-Pitts (1943) Modelul derivat

w – ponderi sinapticef – funcție de integrare/agregare/activare

Θ – bias (polarizare)

Curs 6 – Rețele Neuronale Artificiale Bazele biologice ale RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 12: Curs 6 – Rețele Neuronale Artificiale

12

Funcții de activare

Curs 6 – Rețele Neuronale Artificiale Bazele biologice ale RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 13: Curs 6 – Rețele Neuronale Artificiale

13

Arhitectura RNA Care sunt unitățile funcționale ale RNA? Ce tipuri de RNA există? Ce caracteristici împrumută RNA de la creier?

Curs 6 – Rețele Neuronale Artificiale

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 14: Curs 6 – Rețele Neuronale Artificiale

14

Unități funcționale ale RNA

Curs 6 – Rețele Neuronale Artificiale Arhitectura RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 15: Curs 6 – Rețele Neuronale Artificiale

15

Arhitectura RNA

rețele feed-forward (unidirecționale)

unistrat

Curs 6 – Rețele Neuronale Artificiale Arhitectura RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 16: Curs 6 – Rețele Neuronale Artificiale

16

Arhitectura RNA

rețele feed-forward (unidirecționale)

multistrat

- mai lente decât cele unistrat- pot implementa funcții mai complexe

Curs 6 – Rețele Neuronale Artificiale Arhitectura RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 17: Curs 6 – Rețele Neuronale Artificiale

17

Arhitectura RNA

rețele feed-back (bidirecționale/recurente)cele mai complexedinamicepentru fiecare stare de intrare, se caută starea de echilibru

rețele laticeale – se folosesc la Self Organizing Maps (SOM)

Curs 6 – Rețele Neuronale Artificiale Arhitectura RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 18: Curs 6 – Rețele Neuronale Artificiale

18

Caracteristici ale RNA ”împrumutate” de la creier

capacitatea de a învățaînvățare din exempleajustarea ponderilor pe baza unor modeleantrenare cu seturi mari de date

capacitatea de a generalizapot da răspunsuri corecte pentru intrări ușor diferite de cele cu care au fost antrenate

capacitatea de a sintetizapot da răspunsuri corecte pentru intrări afectate de zgomot/imprecise/parțiale

Curs 6 – Rețele Neuronale Artificiale Arhitectura RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 19: Curs 6 – Rețele Neuronale Artificiale

19

Instruirea RNA Ce înseamnă instruirea RNA? Care sunt tehnicile de instruire ale RNA? Ce înseamnă și care sunt regulile și algoritmii de instruire? Prin ce se caracterizează fiecare regulă/algoritm de instruire?

Curs 6 – Rețele Neuronale Artificiale

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 20: Curs 6 – Rețele Neuronale Artificiale

20

Instruirea RNA = procesul adaptării ponderilor, printr-o stimulare din partea unui expert sau a mediului, sau nesupervizat, prin analiza statistică a vectorilor de intrare

Algoritm de instruire = modul în care se modifică ponderile

wkj(n+1) = wkj(n) + Δwkj(n)

unde: k – neuron de la care “pleacă” ponderea,j – neuron spre care “vine” ponderea,n – momentul de timp

Δwkj(n) - algoritm de instruire

Curs 6 – Rețele Neuronale Artificiale Instruirea RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 21: Curs 6 – Rețele Neuronale Artificiale

21

Tehnici de instruire

După modul în care se face instruirea

supervizatăSet de instruire = perechi (intrare, ieșire dorită)Epocă de instruire = prezentarea întregului set de instruire

cu întărireonlinesemnal de întărire extern (poate fi binar)

nesupervizată online/offlinecea mai rapidăclasificarea statistică a intrărilor (distanță euclidiană)

Curs 6 – Rețele Neuronale Artificiale Instruirea RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 22: Curs 6 – Rețele Neuronale Artificiale

22

Reguli și algoritmi de instruire

Regulă de instruire = formulă matematică care specifică cum se modifică parametrii RNA, pentru a atinge obiectivul dorit

regula de corecție a eroriiregula hebbianăregula de instruire competitivăregula de tip Boltzmann

Algoritm de instruire = proces iterativ bazat pe o regulă de instruire

Etape:1. inițializare ponderi2. calcul ieșire neuroni3. calcul cantitate Δw cu care se modifică fiecare pondere4. modificare ponderi 5. salt la etapa 2 – recalcularea ieșirilor neuronilor

Curs 6 – Rețele Neuronale Artificiale Instruirea RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 23: Curs 6 – Rețele Neuronale Artificiale

23

Instruire prin minimizarea erorii

Curs 6 – Rețele Neuronale Artificiale Instruirea RNA

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 24: Curs 6 – Rețele Neuronale Artificiale

24

Instruire bazată pe gradientRegula de instruire

η – pas de instruire, subunitar

Regula Widrow-Hoff (regula Delta)

Algoritmul de gradient1. inițializare ponderi wkj și bias cu valori mici, subunitare2. calcul ieșire neuroni3. calcul eroare ek4. calcul cantitate Δwkj cu care se modifică fiecare pondere5. modificare ponderi wkj(n+1) = wkj(n) + Δwkj(n)6. salt la etapa 2 – recalcularea ieșirilor neuronilor n:= n + 1

Curs 6 – Rețele Neuronale Artificiale Instruirea RNA

)()()()(

nwnEnEnw

kk ∂

∂−=∇−=∆ ηη

kkk exnw **)( η−=∆

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 25: Curs 6 – Rețele Neuronale Artificiale

25

Tipuri de probleme rezolvabile cu RNA Ce tipuri de probleme se pot rezolva cu RNA? Care sunt avantajele RNA? Care sunt dezavantajele RNA?

Curs 6 – Rețele Neuronale Artificiale

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 26: Curs 6 – Rețele Neuronale Artificiale

26

Tipuri de probleme rezolvabile cu RNA

clasificaregruparea vectorilor de intrare în clasedomeniu de ieșire discret

Ex: recunoașterea formelor, operații de telecom (decodare, demodulare, regenerare semnale), decizie

aproximare de funcțiiinterpolare perechi intrare-ieșiredomeniu de ieșire continuu

Ex: modelarea directă/inversă a unui sistem necunoscut, predicție

optimizaregăsirea punctului de minim/maxim al unei funcțiiset de ponderi pentru care diferența dintre ieșirea dorită și ieșirea rețelei este minimă, în sens statistic

Ex: problema comis-voiajorului

Curs 6 – Rețele Neuronale Artificiale Tipuri de probleme

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 27: Curs 6 – Rețele Neuronale Artificiale

27

Avantaje ale RNA

instrumente robuste de calcul

capabile de generalizare

pot modela funcții liniare/neliniare

realizează mapare intrări/ieșiri fără a beneficia de un model cunoscut apriori (free estimation, blind processing)

adaptabile online/offline

toleranță la erori/date imprecise

pot rezolva sarcini complexe

Curs 6 – Rețele Neuronale Artificiale Tipuri de probleme

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 28: Curs 6 – Rețele Neuronale Artificiale

28

Dezavantaje ale RNA

problema scalabilitățiinumărul mare de conexiuni reduce viteza de procesare; se preferă implementare hardware

abordare de tip black-boxnu pot explica rezultatul furnizat

instrumente sub-optimale

pentru rețelele recurente nu s-a demonstrat stabilitatea

Curs 6 – Rețele Neuronale Artificiale Tipuri de probleme

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.

Page 29: Curs 6 – Rețele Neuronale Artificiale

29

Sumar

Principii Bazele biologice ale RNA Arhitectura RNA Instruire Tipuri de probleme rezolvabile cu RNA

Curs 6 – Rețele Neuronale Artificiale

În episodul următor: SISD bazate pe RNA.

. dr.ing. Laura-Nicoleta IVANCIU, Sisteme inteligente de suport decizionalȘ l.