La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

RETI NEURALI ARTIFICIALI. RN-1 Le reti neurali sono “learning machine” generali, adattative, non lineari, distribuite, costituite da molti processori.

Presentazioni simili


Presentazione sul tema: "RETI NEURALI ARTIFICIALI. RN-1 Le reti neurali sono “learning machine” generali, adattative, non lineari, distribuite, costituite da molti processori."— Transcript della presentazione:

1 RETI NEURALI ARTIFICIALI

2 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 (w ij ) Il singolo PE somma tutti questi contributi e produce un’uscita che è una funzione non lineare di tale somma PROCESSORE ELEMENTARE f(.)...  x1x1 x2x2 xDxD w1w1 w2w2 wDwD y Esempio di RNA: PE x1x1 x2x2 w6w6 w1w1 w3w3 w2w2 w4w4 w5w5

3 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 Il progettista deve stabilire la “topologia” per ottenere il numero e la forma voluti delle funzioni discriminanti  Rete Neurale (w ij ) - +

4 RN-3 Pocessore Elementare di McCULLOCH - PITTS ( PE di MP o MP-PE )  x1x1 xDxD b w1w1 wDwD net y = f(net) w i : 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: w 1 x 1 + w 2 x 2 + … + w D x D + b = 0 –la funzione soglia divide lo spazio in due semi-spazi a cui attribuisce i valori +1 e -1 rispettivamente

5 RN-4 Es: Spazio degli ingressi a 2 dimensioni (caso 2D) Superficie di decisione g x 1 x 2 g = g(x 1, x 2 ) funzione discriminante x 2 g<0 g>0  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 (x 1,x 2 ) è 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 net tanh 2.) Funzione logistica: +1 net 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 LEARNING RN-6 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 STEP4.Ripetere l’operazione finché tutti i pattern non siano correttamente classificati ALGORITMO DI LEARNING PER UN MP-PE (Rosemblatt 1958) PERCEPTRON ALGORITHM In sintesi:  :tasso di learning STEP 3.Se l’uscita non è corretta modificare i pesi e il bias finché l’uscita diventa corretta STEP 2.Se l’uscita è corretta non fare niente STEP 1.Presentare il campione x  C 1 In un problema di classificazione la funzione discriminante deve essere spostata in modo da minimizzare gli errori

8 Infatti: Caso a)d = 1 (classe 1) e y = -1 w(n+1) = w(n) + 2  x Caso b)d = -1 (classe 2) e y = 1 w(n+1) = w(n) - 2  x Hp: caso monodimensionale (un unico peso) caso a) caso b) w w w b (n) w a (n)  w a (n)  w b (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 RN-7

9 CONFRONTO CON LMS PER ADALINE RN-8 Nel LMS: w(n+1) = w(n) +  (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 RN-9 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 RN-10 CHAIN RULE (REGOLA CATENA) 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: J p :funzione costo del p-esimo campione y p :wx p Utilizzando la chain-rule: Dalla regola per l’aggiornamento dei pesi: w(k+1) = w(k) -  J(k)(steepest descent) si ha: w(k+1) = w(k) +  p x p che è lo stesso risultato ottenuto nel LMS

12 RN-11 Il gradiente dà una misura della “sensitivity” ESTENSIONE DEL LMS AL MP-PE  f(net) xDxD xixi x1x1 wiwi wDwD y Infatti:

13 RN-12 REGOLA DELTA p: indice di patterni: indice di peso 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 net tanh=f(net) net f’(net) da cui

14 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 RN-13

15 RN-14 IL PERCEPTRONE (Rosemblatt 1950) MP-PE 1 2 M x1x1 x2x2 xDxD y1y1 y2y2 yMyM b1b1 b2b2 bMbM w 11 w 12 w 1M w DM 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) +  (n) x(n)per riconoscere pattern linearmente separabili in un numero finito di passi

16 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 RN-16 REGOLA DELTA PER IL PERCEPTRON Usa solo quantità locali disponibili ai pesi: –il valore x jp che raggiunge w ij dall’ingresso –l’errore locale  ip 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 = b e il set degli esempi S = { ( x 1, d 1 ),..., ( x N, d N ) }, come: margine

18 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   RN-17

19 RN-18 LIMITI DEL PERCEPTRON Risolve solo problemi linearmente separabili Es: Problema X-OR (non è linearmente separabile) x2x2 x1x1 g(x) A prescindere da dove si piazzi la superficie di decisione si commette un errore di classificazione Soluzione MULTI LAYER PERCEPTRON (MLP) L’ MLP estende il perceptron aggiungendo strati nascosti (hidden layer) - Es: 1 hidden layer bias 1 2 K +1 x1x1 x2x2 xDxD 1 2 M y1y1 y2y2 yMyM input layerhidden layeroutput layer

20 x3x3 x4x4 w6w6 w5w5 b3b3 b1b1 b2b2 w1w1 w2w2 w3w3 w4w4 x1x1 x2x2 Es: Problema X-OR Hp: i PE hanno funzione di attivazione a soglia +1 x4x4 x3x3 Mappatura totale input/output x2x2 x1x yx4x4 x3x3 x2x2 x1x1 RN-19

21 Esistono differenti combinazioni di pesi che realizzano un particolare adattamento delle regioni di decisione Il primo strato di neuroni ha trasformato un problema non linearmente separabile in uno linearmente separabile nello spazio x 3,x 4 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 (2 k 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 RN-20

22 C APACITÀ DI M APPING DELLE MLP CON S INGOLO H IDDEN L AYER 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 T EOREMA DI C YBENKO 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 RN-21 Una MLP con 1 strato nascosto può costruire regioni di decisione complesse, non convesse, eventualmente disgiunte (es. X-OR) Una MLP con 1 strato nascosto può costruire un bump nello spazio degli ingressi

23 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 NOTA: non conosciamo la risposta desiderata dell’i-esimo neurone nascosto Per adattare i pesi w ij 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 i th PE yiyi w ki k th PE xixi ykyk RN-22

24 ykyk k i-th net i yiyi net k w ki w ij xjxj xdxd x1x1 ALGORITMO EBP Hp: uno strato nascosto, un neurone d’uscita Chain rule poiché ma RN-23

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

26 ESTENSIONE DELL’EBP AL CASO DI M NEURONI DI USCITA C iascun neurone K di uscita contribuisce in modo additivo al gradiente del costo rispetto all’uscita dell’iesimo neurone nascosto quindi: k ykyk i-th net i yiyi w ki w ij xjxj xdxd x1x1 M 1 yMyM y1y1 RN-25

27 ESTENSIONE DELL’EBP A RETI CON PIÙ DI UNO STRATO NASCOSTO La regola di aggiornamento è: Tornando indietro di strato in strato si può propagare all’indietro l’errore sino all’ingresso RN-26 k ykyk i-th yiyi w ki w ij M 1 yMyM y1y1 j-th yiyi w Mi w 1i l l-1

28 STEP 4: BACKWARD STEP: Calcolare l’errore locale partendo dallo strato di uscita sino all’ingresso - strato d’uscita: - negli altri strati IMPLEMENTAZIONE STEP 1:Presentare alla rete il pattern {x 1, d 1 } Con NOTA: n indice di iterazione e anche training set l: indice di strato l=1,…,L ; l=1 input layer ; l=L output layer 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) STEP 3:Calcolare l’errore nello strato d’uscita STEP 2: FORWARD STEP: Calcolare l’uscita di ciascun neurone dall’input (l = 1) all’output (l = L): RN-27

29 EBP L’errore locale di un neurone di uscita è: 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È w ij yiyi i j RN-28

30 CASO 3: NEURONE NASCOSTO E NON LINEARE  CASO 2: NEURONE D’USCITA E NON LINEARE.  L’aggiornamento dei pesi viene fatto con la regola delta perché conosciamo l’uscita desiderata CASO 1: NEURONE D’USCITA E LINEARE.  Infatti f’(net i (n)) ha un valore costante uguale ad 1 (ritroviamo la regola LMS) 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: Errore locale Attivazione locale VALE PER TUTTI I NEURONI DEI VARI STRATI La formula per l’aggiornamento dei pesi non cambia strutturalmente perché il learning è condotto usando ancora il gradiente discendente RN-29

31 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 RN-30

32 MLP CON DUE STRATI NASCOSTI Funzione discriminante: deriva da tre livelli di composizione 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à Non esistono teoremi costruttivi 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 è) 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 RN-31

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

34 ANCORA SULL’ EPB Rete neurale originale Rete duale Se k è di uscitaSe k è nascosto Metodo del gradiente discendente FORWARD STEP  f (net) wi1wi1 wi2wi2 w ij yiyi w1iw1i w2iw2i w ki yjyj i-esimo PE BACKWARD STEP  wi1wi1 wi2wi2 w ij ii w1iw1i w2iw2i w ki ekek i-esimo PE f ‘ (net) eiei x yjyj yiyi output w ij ii w ki kk FORWARD BACKWARD errore input i-esimo PE RN-33

35 CLASSIFICATORI OTTIMI 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 RN-34

36 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 C k Nel caso di due sole classi l’unico neurone d’uscita può avere funzioni logistic probabilità classe 1 = y probabilità classe 2 =1-y w * : pesi ottimi t: uscite desiderate Si ha un metodo per la stima della probabilità a posteriori direttamente dai dati senza dover usare la regola di Bayes In generale y k può fornire una stima della probabilità condizionale media: RN-35


Scaricare ppt "RETI NEURALI ARTIFICIALI. RN-1 Le reti neurali sono “learning machine” generali, adattative, non lineari, distribuite, costituite da molti processori."

Presentazioni simili


Annunci Google