La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

RETI NEURALI ARTIFICIALI

Presentazioni simili


Presentazione sul tema: "RETI NEURALI ARTIFICIALI"— Transcript della presentazione:

1 RETI NEURALI ARTIFICIALI

2 PROCESSORE ELEMENTARE
RN-1 Le reti neurali sono “learning machine” generali, adattative, non lineari, distribuite, costituite da molti processori elementari (PE) I segnali che fluiscono attraverso le connessioni sono scalati con opportuni parametri modificabili detti pesi (wij) Il singolo PE somma tutti questi contributi e produce un’uscita che è una funzione non lineare di tale somma PROCESSORE ELEMENTARE f(.) . . . S x1 x2 xD w1 w2 wD y Esempio di RNA: PE x1 x2 w6 w1 w3 w2 w4 w5

3 La forma della funzione discriminante cambia con la topologia
RN-2 La forma della funzione discriminante cambia con la topologia Funzioni discriminanti arbitrarie Classificatori ottimi La posizione delle funzioni discriminanti è regolata dai valori dei pesi I pesi vengono adattati automaticamente durante il training Sui dati disponibili per il training non deve essere fatta alcuna ipotesi sulla pdf S Rete Neurale (wij) - + Il progettista deve stabilire la “topologia” per ottenere il numero e la forma voluti delle funzioni discriminanti

4 Pocessore Elementare di McCULLOCH - PITTS
( PE di MP o MP-PE ) RN-3 S . . . +1 x1 xD b w1 wD net y = f(net) wi : pesi b: bias funzione segno NOTA: il MP-PE è costituito da un ADALINE seguito da una non-linearità Proprietà per il pattern recognition: può separare due sole classi la funzione discriminante è un iperpiano nello spazio a D dimensioni di equazione: w1x1 + w2x2 + … + wDxD + b = 0 la funzione soglia divide lo spazio in due semi-spazi a cui attribuisce i valori +1 e -1 rispettivamente

5 Superficie di decisione funzione discriminante
Es: Spazio degli ingressi a 2 dimensioni (caso 2D) RN-4 Superficie di decisione g x 1 x 2 g = g(x1 , x2 ) funzione discriminante x 2 g<0 g>0 a g = 0 x 1 La distanza dell’iperpiano dall’origine è: Nel 2-D la funzione discriminante è un piano e la sua intercetta con il piano (x1,x2) è una linea (superficie di decisione) Nel caso a D dimensioni la superficie di decisione è un iperpiano a D-1 dimensioni

6 FUNZIONI DI ATTIVAZIONE
RN-5 Nel MP-PE la funzione di attivazione è la funzione a soglia detta “segno” Possono essere utilizzate altre funzioni non lineari FUNZIONI SIGMOIDALI 1.) Tangente iperbolica: +1 -1 net tanh 2.) Funzione logistica: logistica RNA con funzioni a soglia creano superfici di decisione lineari a tratti RNA con funzioni sigmoidali creano superfici di decisione molto complesse e non-lineari Le funzioni sigmoidali sono smooth ed esiste la derivata della mappa da loro creata (V.I. per il training)

7 ALGORITMO DI LEARNING PER UN MP-PE
In un problema di classificazione la funzione discriminante deve essere spostata in modo da minimizzare gli errori Si deve dotare il sistema di una retroazione governata dall’errore tra l’uscita desiderata e quella di rete Usualmente per RNA si adotta l’MSE Funzione costo: p indice di pattern ALGORITMO DI LEARNING PER UN MP-PE (Rosemblatt 1958) PERCEPTRON ALGORITHM STEP 1. Presentare il campione x  C1 STEP 2. Se l’uscita è corretta non fare niente STEP 3. Se l’uscita non è corretta modificare i pesi e il bias finché l’uscita diventa corretta STEP4. Ripetere l’operazione finché tutti i pattern non siano correttamente classificati In sintesi: h :tasso di learning

8 Caso a) d = 1 (classe 1) e y = -1 w(n+1) = w(n) + 2 h x
Infatti: RN-7 Caso a) d = 1 (classe 1) e y = -1 w(n+1) = w(n) + 2 h x Caso b) d = -1 (classe 2) e y = 1 w(n+1) = w(n) - 2 h x Hp: caso monodimensionale (un unico peso) caso a) caso b) w wb(n) wa(n) Dwa(n) Dwb(n) classificazione corretta classe 2 y = -1 classe 1 y = 1 In entrambi i casi il peso si aggiusta nella giusta direzione Se i pattern sono linearmente separabili si può dimostrare che l’algoritmo converge in un numero finito di passi

9 CONFRONTO CON LMS PER ADALINE
RN-8 CONFRONTO CON LMS PER ADALINE Nel LMS: w(n+1) = w(n) + h e(n) x(n) stessa formulazione Vi sono, però, delle sostanziali differenze di significato non si ha la corrispondenza con la discesa del gradiente  il sistema ha una discontinuità il perceptron algorithm minimizza la differenza tra la risposta del MP-PE e l’uscita desiderata anziché tra l’uscita dell’ADALINE e l’uscita desiderata implicazioni Il MP-PE impara solo quando la sua uscita è errata I risultati finali dei pesi coincidono con quelli trovati per una regressione lineare. Infatti le non linearità sono portate dentro la regola di aggiustamento dei pesi

10 Hp: - pattern linearmente separabili - bias nullo (per semplicità)
Esiste una funzione discriminante lineare che produce zero errori di classificazione w* vettore dei pesi ottimi prodotto dal perceptron algorithm n indice del training-set La soluzione è un iperpiano di equazione : Vantaggi: l’algoritmo converge in un numero finito di passi Svantaggi: la funzione discriminante trovata all’ultimo campione può non andare bene in fase di test l’algoritmo converge solo per classi linearmente separabili, altrimenti la soluzione oscillerà

11 CHAIN RULE (REGOLA CATENA)
RN-10 Consente di calcolare la derivata parziale di una variabile rispetto ad un’altra quando esiste un legame funzionale tra le due Sia y = f(x) con f differenziabile Si può dimostrare che l’LMS è equivalente alla chain rule nel calcolo della “sensitivity” della funzione costo rispetto alle incognite: con: Jp : funzione costo del p-esimo campione yp : wxp Utilizzando la chain-rule: Dalla regola per l’aggiornamento dei pesi: w(k+1) = w(k) - h J(k) (steepest descent) si ha: w(k+1) = w(k) + h ep xp che è lo stesso risultato ottenuto nel LMS

12 ESTENSIONE DEL LMS AL MP-PE
RN-11 Il gradiente dà una misura della “sensitivity” ESTENSIONE DEL LMS AL MP-PE S f(net) . xD xi x1 wi wD y Infatti:

13 Regola Delta REGOLA DELTA p: indice di pattern i: indice di peso
da cui Regola Delta con n: indice di iterazione Estende l’LMS a sistemi non-lineari con non-linearità smooth E’ locale rispetto al pattern ed al peso Fa uso della f ’(.): +1 -1 net tanh=f(net) net f’(net)

14 cioè uguale alla sensitività di un PE lineare
RN-13 Quando net è nella regione di linearità di f(.), la f ’(.) è vicina all’unità e la sensitività: cioè uguale alla sensitività di un PE lineare Quando il punto di funzionamento è vicino alla saturazione, la sensitività del PE non lineare è attenuata rispetto al PE lineare  questo implica effetti benefici sulla stabilità del processo di learning Con PE non lineari la funzione costo non è più quadratica  presenza di minimi locali I metodi basati sul gradiente possono intrappolarsi nei minimi locali o convergere in punti di stazionarietà Con PE non lineari: miglior filtraggio dei dati rispetto alla regressione lineare più efficienti in problemi di classificazione non linearmente separabili

15 IL PERCEPTRONE (Rosemblatt 1950)
RN-14 MP-PE 1 2 M . +1 x1 x2 xD y1 y2 yM b1 b2 bM w11 w12 w1M wDM Lo strato di uscita è costituito da MP-PE Il numero di PE in uscita ( M ) è legato alla codifica adottata per le classi Ciascun neurone risolve il problema di decidere se un pattern appartiene alla classe i-esima oppure no Il perceptrone può essere allenato utilizzando la ben nota regola di aggiustamento dei pesi: w(n+1) = w(n) + h e (n) x(n) per riconoscere pattern linearmente separabili in un numero finito di passi

16 REGOLA DELTA APPLICATA AL PERCEPTRON errore locale per il PE i-esimo
RN-15 Le regioni di decisione di un perceptron sono sempre regioni convesse REGOLA DELTA APPLICATA AL PERCEPTRON Se M = 1 p : indice del pattern Se abbiamo un numero M di PE nello strato di uscita: da cui definendo: errore locale per il PE i-esimo

17 REGOLA DELTA PER IL PERCEPTRON
RN-16 REGOLA DELTA PER IL PERCEPTRON Usa solo quantità locali disponibili ai pesi: il valore xjp che raggiunge wij dall’ingresso l’errore locale dip propagato dalla funzione costo La località fa sì che l’algoritmo prescinda dalla complessità della rete SVANTAGGI: la superficie di decisione è molto vicina all’ultimo pattern classificato correttamente  risultati scadenti in fase di generalizzazione La superficie di decisione dovrebbe essere posta fra le due classi a distanza uguale dai “bordi” delle due classi Si può modificare l’algoritmo introducendo il “margine” tra l’iperpiano < x , w > = b e il set degli esempi S = { ( x 1 , d 1) , , ( x N , d N) }, come: margine

18 Vapnik ha mostrato che :
RN-17 Vapnik ha mostrato che : Si definisce IPERPIANO OTTIMO l’iperpiano che massimizza il margine tra le due classi Per trovare l’iperpiano ottimo occorre trovare i VETTORI DI SUPPORTO vettori di supporto Iperpiano ottimo g

19 MULTI LAYER PERCEPTRON (MLP)
RN-18 LIMITI DEL PERCEPTRON Risolve solo problemi linearmente separabili Es: Problema X-OR (non è linearmente separabile) x2 x1 g(x) A prescindere da dove si piazzi la superficie di decisione si commette un errore di classificazione Soluzione MULTI LAYER PERCEPTRON (MLP) bias 1 2 K +1 x1 x2 xD M y1 y2 yM input layer hidden layer output layer . L’ MLP estende il perceptron aggiungendo strati nascosti (hidden layer) - Es: 1 hidden layer

20 Hp: i PE hanno funzione di attivazione a soglia
+1 3 2 1 x3 x4 w6 w5 b3 b1 b2 w1 w2 w3 w4 x1 x2 RN-19 Es: Problema X-OR +1 Hp: i PE hanno funzione di attivazione a soglia x2 x1 1 y x4 x3 x4 x3 Mappatura totale input/output

21 Ciascun neurone nascosto crea una funzione discriminante lineare
RN-20 Il primo strato di neuroni ha trasformato un problema non linearmente separabile in uno linearmente separabile nello spazio x3,x4 Lo strato d’uscita esegue la desiderata separazione di due insiemi linearmente separabili L’aggiunta dello strato nascosto ha reso possibile la realizzazione di regioni di decisione non più necessariamente convesse In max numero di regioni distinte nello spazio degli ingressi è controllato dal numero di neuroni nascosti (2k per k>>D) Ciascun neurone nascosto crea una funzione discriminante lineare I neuroni d’uscita combinano alcune delle regioni create dai neuroni nascosti creando regioni non necessariamente convesse Esistono differenti combinazioni di pesi che realizzano un particolare adattamento delle regioni di decisione

22 CAPACITÀ DI MAPPING DELLE MLP CON SINGOLO HIDDEN LAYER
RN-21 CAPACITÀ DI MAPPING DELLE MLP CON SINGOLO HIDDEN LAYER BUMP: regione singola, di estensione limitata, di valori “alti” (1), circondata da valori bassi (0) - la funzione discriminante dei valori bassi non può essere convessa e quindi un semplice perceptron non può realizzare un bump - il bump più semplice è triangolare ed è ottenuto con 3 neuroni nascosti Una MLP con 1 strato nascosto può costruire un bump nello spazio degli ingressi Una MLP con 1 strato nascosto può costruire regioni di decisione complesse, non convesse, eventualmente disgiunte (es. X-OR) TEOREMA DI CYBENKO Una MLP con 1 strato nascosto di neuroni con funzioni di attivazione sigmoidale è un mappatore universale, cioè può approssimare arbitrariamente bene qualunque regione di decisione continua, purché il numero di neuroni nascosti sia sufficientemente grande

23 ALGORITMO ERROR BACK PROPAGATION (EBP)
RN-22 ALGORITMO ERROR BACK PROPAGATION (EBP) Si basa sull’uso della CHAIN RULE che consente di propagare sistematicamente la sensitivity attraverso un numero indeterminato di nodi interni (hidden) di una topologia ith PE yi wki kth PE xi yk NOTA: non conosciamo la risposta desiderata dell’i-esimo neurone nascosto Per adattare i pesi wij del neurone nascosto: 1. Si utilizza un errore derivato propagando l’errore nello strato d’uscita (noto) 2. Si calcola la sensitivity usando la chain-rule con Errore locale del nodo i-esimo

24 ALGORITMO EBP RN-23 Hp: uno strato nascosto, un neurone d’uscita x1
yk k i-th neti yi netk wki wij xj xd x1 Chain rule poiché ma

25 RN-24 Da cui, utilizzando la regola del gradiente discendente: Regola di aggiornamento dei pesi

26 RN-25 ESTENSIONE DELL’EBP AL CASO DI M NEURONI DI USCITA k yk i-th neti yi wki wij xj xd x1 M 1 yM y1 Ciascun neurone K di uscita contribuisce in modo additivo al gradiente del costo rispetto all’uscita dell’iesimo neurone nascosto quindi:

27 RN-26 ESTENSIONE DELL’EBP A RETI CON PIÙ DI UNO STRATO NASCOSTO k yk
i-th yi wki wij M 1 yM y1 j-th wMi w1i l l-1 La regola di aggiornamento è: Tornando indietro di strato in strato si può propagare all’indietro l’errore sino all’ingresso

28 RN-27 IMPLEMENTAZIONE STEP 1: Presentare alla rete il pattern {x1 , d1} STEP 2: FORWARD STEP: Calcolare l’uscita di ciascun neurone dall’input (l = 1) all’output (l = L): Con STEP 3: Calcolare l’errore nello strato d’uscita STEP 4: BACKWARD STEP: Calcolare l’errore locale partendo dallo strato di uscita sino all’ingresso - strato d’uscita: - negli altri strati STEP 5: Ripetere questa procedura per tutti i pattern del training e per il numero di epoche richiesto per la convergenza (randomizzare i pattern tra un’epoca e l’altra) NOTA: n indice di iterazione e anche training set l: indice di strato l=1,…,L ; l=1 input layer ; l=L output layer

29 EBP RN-28 L’errore locale di un neurone di uscita è: allora
wij yi i j allora è l’errore totale propagato all’i-esimo neurone dall’uscita o anche è il contributo che il neurone i-esimo dà all’errore in uscita Se questo passa attraverso la non-linearità dello stesso i-esimo nodo si ottiene: l’errore locale del neurone i-esimo dello strato nascosto Da cui: REGOLA CIASCUN PESO PUÒ ESSERE AGGIORNATO MOLTIPLICANDO L’ERRORE LOCALE PER L’ATTIVAZIONE LOCALE CIOÈ

30 VALE PER TUTTI I NEURONI DEI VARI STRATI
RN-29 Errore locale Attivazione locale VALE PER TUTTI I NEURONI DEI VARI STRATI Da strato a strato quello che si modifica è il modo di calcolare l’errore locale a seconda che il neurone appartenga ad uno strato nascosto o di uscita o se ha una funzione di attivazione lineare o non lineare: CASO 1: NEURONE D’USCITA E LINEARE. Infatti f’(neti(n)) ha un valore costante uguale ad 1 (ritroviamo la regola LMS) CASO 2: NEURONE D’USCITA E NON LINEARE. L’aggiornamento dei pesi viene fatto con la regola delta perché conosciamo l’uscita desiderata CASO 3: NEURONE NASCOSTO E NON LINEARE La formula per l’aggiornamento dei pesi non cambia strutturalmente perché il learning è condotto usando ancora il gradiente discendente

31 Scelta del numero di neuroni nello strato nascosto
RN-30 PROBLEMI APERTI Scelta del numero di neuroni nello strato nascosto Non si è ancora affermata alcuna tecnica per la scelta del numero ottimo di neuroni nascosti In letteratura sono stati proposti algoritmi che trovano soluzioni sub-ottime Spesso la scelta del numero di neuroni nascosti è condotta con tecniche del tipo trial and error

32 MLP CON DUE STRATI NASCOSTI
RN-31 MLP CON DUE STRATI NASCOSTI Funzione discriminante: deriva da tre livelli di composizione Uno strato nascosto crea bump locali nello spazio degli ingressi. Un ulteriore strato può essere pensato come un combinatore di bump in regioni disgiunte dello spazio Teorema: una combinazione lineare di bump localizzati può approssimare qualunque funzione  UNA MLP CON DUE STRATI NASCOSTI È UN APPROSSIMATORE UNIVERSALE (Anche una MLP con 1 strato nascosto lo è) Non esistono teoremi costruttivi Di norma si dovrebbe iniziare a sperimentare con reti con 1 solo strato nascosto perché le MLP con 2 strati hanno una convergenza più lenta a causa dell’attenuazione che subiscono gli errori attraverso le non-linearità

33 EPB PER MLP CON DUE o PIÙ STRATI
RN-32 EPB PER MLP CON DUE o PIÙ STRATI L’algoritmo non subisce alcuna modifica Criterio di Costo ANN 1 Activation forward 3 Error Backward Calcolo dell’errore Risposta Desiderata Input Output 2 1. FOWARD STEP: 2. 3. BACKWARD STEP Regola d’aggiornamento

34 ANCORA SULL’EPB RN-33 Rete neurale originale Rete duale S wi1 wi2 wij
FORWARD STEP S f (net) wi1 wi2 wij yi w1i w2i wki yj i-esimo PE Rete duale BACKWARD STEP S wi1 wi2 wij di w1i w2i wki ek i-esimo PE f ‘(net) ei x Se k è di uscita Se k è nascosto yj yi output wij di wki dk FORWARD BACKWARD errore input i-esimo PE Metodo del gradiente discendente

35 CLASSIFICATORI OTTIMI
RN-34 Un classificatore ottimo è quello che crea funzioni discriminanti arbitrarie che separano cluster di dati secondo le probabilità a posteriori Un classificatore ottimo bayesiano produce uscite che sono le probabilità a posteriori di classi di dati Se il training di una MLP è condotto sotto certe condizioni le uscite possono essere interpretate come stima delle probabilità a posteriori (Bishop) CONDIZIONI MLP allenata per minimizzare l’MSE Numero di neuroni nascosti sufficiente a realizzare il mappaggio richiesto (mappatore universale Funzione di attivazione SOFTMAX che assicura la somma delle uscite pari a 1 e ciascuna uscita compresa tra 0 e 1 SOFTMAX La sommatoria è estesa a tutti i nodi di output La softmax è simile a tanh e logistic eccetto che le uscite sono scalate secondo la totale attivazione dello strato d’uscita così d’assicurare la somma delle uscite pari a 1

36 probabilità classe 1 = y probabilità classe 2 =1-y
Nel caso di due sole classi l’unico neurone d’uscita può avere funzioni logistic RN-35 probabilità classe 1 = y probabilità classe 2 =1-y In generale yk può fornire una stima della probabilità condizionale media: w*: pesi ottimi t: uscite desiderate Per un classificatore dove le uscite desiderate sono 0 e 1 e con tanti nodi d’uscita quante sono le classi: cioè l’uscita k-esima della MLP fornisce la probabilità a posteriori che il pattern x appartenga alla classe Ck Si ha un metodo per la stima della probabilità a posteriori direttamente dai dati senza dover usare la regola di Bayes


Scaricare ppt "RETI NEURALI ARTIFICIALI"

Presentazioni simili


Annunci Google