![Page 1: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/1.jpg)
ALGORITMI DI OTTIMIZZAZIONE PER
L'ADDESTRAMENTO DI RETI NEURALI
Marco Sciandrone
Istituto di Analisi dei Sistemi ed Informatica “A. Ruberti”
Consiglio Nazionale delle Ricerche, Roma
![Page 2: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/2.jpg)
Reti Neurali
Ottimizzazione
StatisticaFisica
MatematicaBiologia
InformaticaPsicologia
![Page 3: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/3.jpg)
OPTIMIZATION LABORATORY FOR DATA MINING
Ingegneria dei Sistemi
Informatica
Biomatematica
Ottimizzazione
ISTITUTO DI ANALISI DEI SISTEMI ED INFORMATICA
![Page 4: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/4.jpg)
Data mining:apprendimento automatico di informazioni, correlazioni e caratteristiche significative da basi di dati di grandi dimensioni relative a processi di varia natura
Motivazione: esigenza di analizzare e comprendere fenomeni complessi descritti in modo esplicito solo parzialmente e informalmente da insiemi di dati
![Page 5: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/5.jpg)
Classificazione (pattern recognition)
Supervisionata Non Supervisionata
Approssimazione (regressione)
Problemi di Data Mining
![Page 6: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/6.jpg)
Classificazione supervisionata:sono noti a priori dei pattern rappresentativi di diverse classi,si vuole determinare un modello matematico che, dato un genericopattern appartenente allo spazio delle caratteristiche, definisca la corrispondente classe di appartenenza
Pattern: oggetto descritto da un insieme finito di attributi numerici (caratteristiche/features)
![Page 7: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/7.jpg)
ESEMPIO DI CLASSIFICAZIONE SUPERVISIONATA
Pattern: cifra manoscritta rappresentata da una matrice di pixel
10 Classi: 0,1,2,3,4,5,6,7,8,9
0123456789
classificazione
![Page 8: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/8.jpg)
Classificazione non supervisionata:non sono noti a priori pattern rappresentativi delle classi;si vuole determinare il numero di classi di “similitudine” eun modello matematico che, dato un generico pattern appartenente allo spazio delle caratteristiche, definisca la corrispondente classe di appartenenza
Pattern: oggetto descritto da un insieme finito di attributi numerici (caratteristiche/features)
![Page 9: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/9.jpg)
ESEMPIO DI CLASSIFICAZIONE NON SUPERVISIONATA
Pattern: paziente afflitto da una determinata patologia e descritto da M fattori clinici (caratteristiche)
Dati disponibili: insieme di N pazienti
Obiettivo: raggruppare i pazienti in K gruppi i cui elementi presentino caratteristiche “simili”
![Page 10: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/10.jpg)
Approssimazione:sono note a priori delle coppie pattern/target rappresentativedi un funzione incognita a valori reali; si vuole determinare una funzione analitica che approssimi la funzione incognita
Pattern: oggetto descritto da un insieme finito di attributi numerici (caratteristiche/features)
![Page 11: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/11.jpg)
ESEMPIO DI APPROSSIMAZIONE
Pattern: vettore di N correnti che circolano in un dispositivo
Target: valore del campo magnetico in un determinato punto interno al dispositivo
Obiettivo: determinare una funzione analitica che approssimi il legame funzionale tra il campo magnetico e il valore delle correnti
![Page 12: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/12.jpg)
Problemi di Data Mining
Classificazione (pattern recognition) Supervisionata Non Supervisionata
Approssimazione (regressione)
problemi “difficili” e/o di grandi dimensioni
Metodi• Clustering• Reti Neurali• Support Vector Machines• Programmazione Logica• Alberi di Decisione
Necessità di metodi di Ottimizzazione efficienti
![Page 13: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/13.jpg)
Cos’è l’Ottimizzazione
Cos’è una rete neurale
Cos’è il processo di addestramento di una rete neurale
Quale è la connessione tra l’Ottimizzazione e le reti neurali
Algoritmi di Ottimizzazione per l’addestramento di reti neurali
![Page 14: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/14.jpg)
Formulazione di un problema di Ottimizzazione
X (spazio delle variabili)
XS (insieme ammissibile)
RSf : (funzione obiettivo)
minimizza f sull’insieme ammissibile S
![Page 15: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/15.jpg)
Spazio delle variabili
Spazio X
Infinito dimensionale Finito dimensionale
Calcolo variazionale
Controllo Ottimo
Ottimizzazione discreta
Programmazione mista
Programmazione a variabiliintere
Ottimizzazione combinatoriaa variabili 0/1
Ottimizzazione continuaa variabili reali
![Page 16: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/16.jpg)
Cos’è una rete neurale da un punto di vista “fisico”
Una rete neurale è un processore distribuito costituito dalla interconnessione di unità computazionali elementari (i neuroni) con due caratteristiche fondamentali:
la “conoscenza” è acquisita dall’ambiente attraverso un processo di “apprendimento” o di “addestramento”
la “conoscenza” è immagazzinata nei parametri della rete e, in particolare, nei “pesi” associati alle connessioni
![Page 17: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/17.jpg)
Data una funzione G:X Y, nota attraverso un insieme di coppie
Una rete neurale è un particolare modello di approssimazione di G:
dipendente (in generale in modo non lineare) da un vettore di parametri w
Da un punto di vista “statistico”, una rete neurale è un particolaremodello di classificazione o di regressione (non lineare)
PpXxxGx ppp ,...,1, :)(,
YXwF :)(.,
Cos’è una rete neurale da un punto di vista “matematico”
![Page 18: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/18.jpg)
IL NEURONE FORMALE
+
CLASSIFICATORE LINEARE
xwT
0 10 1)(
ttth
)( xwhy T
1x
2x
1nx
nx
1w
2w
1nw
nw
funzione di attivazione
pesi
soglia
![Page 19: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/19.jpg)
Una rete costituita da un singolo strato di neuroni formali è stata denominata PERCEPTRON (Rosenblatt, 1962) ed è stato propostoun algoritmo per il calcolo dei parametri (pesi e soglie) che fornisceuna soluzione in un numero finito di iterazioni nell’ipotesi in cuii pattern di ingresso siano LINEARMENTE SEPARABILI
Problema XOR
0,1 1,1
0,0 1,0
Non esiste un iperpiano di separazione
Limitazioni del Perceptron
![Page 20: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/20.jpg)
Le limitazioni del Perceptron sono state messe in luce daMinsky e Papert (1969)
L’effetto del libro di Minsky e Papert è stato quello di fardecadere l’interesse inziale verso le reti neurali
Era noto che le limitazioni del Perceptron potevano esseresuperate, in linea di principio, collegando fra loro in modoopportuno dei neuroni formali o effettuando delle trasformazioninon lineari degli ingressi
Non erano tuttavia disponibili algoritmi di addestramento per ilcalcolo dei parametri
![Page 21: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/21.jpg)
Una rinascita dell’interesse verso le reti neurali è stata in gran partedeterminata dal lavoro di Rumelhart, Hinton e Williams (1986),che hanno proposto un algoritmo di addestramento per reti dineuroni formali, noto come metodo della backpropagation,essenzialmente basato sul metodo di ottimizzazione del gradiente
Gli sviluppi futuri hanno portato allo sviluppo di un’area di ricercainterdisciplinare, in cui sono stati integrati contributi di vari settori
![Page 22: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/22.jpg)
Classificazione delle architetture
Reti feedforward:reti acicliche strutturate in diversi strati
Perceptron
Multilayer Perceptron (MLP)
Reti di funzioni di base radiali (RBF)
Reti ricorsive:sono presenti cicli di controreazione; possono essere vistecome sistemi dinamici
![Page 23: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/23.jpg)
Rete feedforward a 1 strato
Rete feedforward a 2 strati
![Page 24: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/24.jpg)
ADDESTRAMENTO E GENERALIZZAZIONE
L’addestramento (apprendimento) è il processo mediante il qualevengono determinati i parametri liberi di una rete neurale.Due paradigmi fondamentali:
addestramento supervisionato: i parametri della rete vengono determinati, sulla base di un insieme di addestramento (training set) di esempi, consistenti in coppie pattern/target, minimizzando una funzione d’errore
addestramento non supervisionato: la rete è dotata di capacità di auto-organizzazione
![Page 25: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/25.jpg)
ADDESTRAMENTO E GENERALIZZAZIONE
La capacità di generalizzazione di una rete addestrata è la capacitàdi fornire una risposta corretta a nuovi ingressi (non presentati nellafase di addestramento)
LO SCOPO ULTIMO DELL’ADDESTRAMENTO È QUELLO DI COSTRUIRE UN MODELLO DEL PROCESSO CHE GENERA I DATI E NON DI INTERPOLARE I DATI DI TRAINING
Addestramento supervisionato di reti feedforward
![Page 26: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/26.jpg)
Reti neurali feedforward
MLP RBF
vettore di ingresso
strato nascosto
uscita
Differiscono essenzialmente nella funzione di attivazione deineuroni dello strato nascosto
![Page 27: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/27.jpg)
Rete neurale feedforward 1 strato nascosto con M neuroni
Rete MLP )tanh(),,;(1
iTi
M
ii xwwxy
x);( wxy
Rete RBF ||)(||),;(1
iM
ii cxCxy
![Page 28: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/28.jpg)
Proprietà di approssimazione:sono approssimatori universali per le funzioni continue su insiemi compatti
Reti neurali feedforward
MLP RBF
x sistema statico I/O );( wxy
funzione “smooth”
![Page 29: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/29.jpg)
FORMULAZIONE DEL PROBLEMA DI ADDESTRAMENTO
Architettura rete neurale fissata: numero di strati e numero di neuroni
vettore dei parametri incogniti
Training set
Problema di Ottimizzazione
in cui è una misura dell’errore relativo al p-mo pattern.Usualmente
nRw
PpRdRxdxTS pmppp ,...,1 , , ),,(
P
pp
wwE
PwE
1
)(2
1)(min
pE
2));(( ppp dwxyE
uscita rete uscita desiderata
![Page 30: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/30.jpg)
Le difficoltà computazionali dei problemi di addestramento sonotipicamente dovute a
Forti “nonlinearità” della funzione di errore E(w)
Presenza di zone “piatte” nella superficie della funzione di errore
Possibile mal condizionamento della matrice Hessiana
Elevata dimensionalità del vettore dei parametri w
Elevato numero P di campioni di addestramento
Presenza di minimi locali
![Page 31: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/31.jpg)
Nella soluzione del problema di Ottimizzazione relativoall’addestramento di una rete neurale non è richiesta unagrande precisione nella soluzione. Può invece esserepreferibile interrompere il processo di minimizzazioneprematuramente in base alla valutazione dell’errore ottenutosu un VALIDATION SET (EARLY STOPPING) perché:
LO SCOPO ULTIMO DELL’ADDESTRAMENTO È QUELLO DI COSTRUIRE UN MODELLO DEL PROCESSO CHE GENERA I DATI E NON DI INTERPOLARE I DATI DI TRAINING
![Page 32: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/32.jpg)
METODI DI OTTIMIZZAZIONE PER L’ADDESTRAMENTO
METODI BATCH i parametri vengono aggiornati dopo una presentazione di tutto il training set
METODI INCREMENTALI (ONLINE) i parametri vengono aggiornati in corrispondenza a ogni singolo pattern del training set
![Page 33: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/33.jpg)
Uno dei primi algoritmi di addestramento è il metodo notocome metodo di backpropagation e si può identificare conil metodo del gradiente
La versione batch è definita dall’iterazione
dove è il gradiente di E in , e è il learning rate
Il termine backpropagation è legato alla tecnica utilizzata per ilcalcolo del gradiente che si può ricondurre attualmente a una tecnicadi differenziazione automatica
)(1 kkkk wEww )( kwE kw Rk
P
pp
wwE
PwE
1
)(2
1)(min
![Page 34: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/34.jpg)
Il metodo di backpropagation presenta proprietà di convergenzaglobale sotto opportune ipotesi connesse alla scelta dellearning rate (passo). Tale scelta può essere effettuata, ad esempio, mediante l’impiego di tecniche di ricerca unidimensionale
Il metodo è di facile implementazione ma risulta poco efficiente intermini di rapidità di convergenza
Per l’addestramento sono utilizzabili i metodi di Ottimizzazionenon vincolata per problemi a grande dimensione
![Page 35: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/35.jpg)
P
pp
wwE
PwE
1
)(2
1)(min
kkkk dww 1
Nk Rd DIREZIONE DI RICERCA
)( kk wEd
)()(2 kkk wEdwE
metodo del gradiente
metodo di Newton
Rk PASSO
...kd
![Page 36: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/36.jpg)
Metodi di Ottimizzazione per l’addestramento(alcuni dei quali sono presenti in vari pacchetti software per reti neurali)
Metodo del gradiente di Barzilai-Borwein
Metodi delle direzioni coniugate
Metodi Quasi-Newton a memoria limitata
Metodi tipo Gauss-Newton (troncati)
Metodi di Newton (troncati)
![Page 37: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/37.jpg)
OTTIMIZZAZIONE RETI NEURALI
“riscoperta” di vari metodi di Ottimizzazionenell’ambito delle reti neurali
motivazioni per la definizione di nuovi metodidi Ottimizzazione (algoritmi incrementali,algoritmi di decomposizione)
![Page 38: ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI Marco Sciandrone](https://reader035.vdocuments.net/reader035/viewer/2022062309/568143eb550346895db070ca/html5/thumbnails/38.jpg)
APPLICAZIONI DI RETI NEURALI SVILUPPATE PRESSOL’ISTITUTO DI ANALISI DEI SISTEMI ED INFORMATICA
Approssimazione del campo magnetico per la progettazione di apparati di risonanza magnetica
Classificazione di segnali di elettrocardiogramma per l’individuazione di eventi ischemici
Classificazione di immagini per il riconoscimento di lettere postali
Approssimazione del flusso stradale per la previsione del traffico
Classificazione di connessioni telematiche per l’individuazione di attacchi al sistema informatico del nostro istituto