Metodi di ottimizzazione
per le reti neurali
L. Grippo
DIS, Università di Roma “La Sapienza”
M. Sciandrone
IASI, Consiglio Nazionale delle Ricerche, Roma
• Generalità sulle reti neurali
• Addestramento di reti multistrato
• Addestramento di reti“Radial Basis”
• Metodi incrementali
1
Generalità sulle reti neurali
• Cos’è una rete neurale?
• Il neurone formale
• Classificazione delle architetture
• Apprendimento e generalizzazione
• Metodi di ottimizzazione per l’addestramento
• Applicazioni delle reti neurali
• Reti neurali e Ricerca Operativa
2
Cos’è una rete neurale?
Da un punto di vista “ fisico ”:
una rete neurale è un processore distribuito
costituito dalla interconnessione di unità computazionali elementari ( neuroni ) con due caratteristiche fondamentali:∗
• la “conoscenza” è acquisita dall’ambiente
esterno attraverso un processo di
“ apprendimento ” o di “ adattamento ”
• la conoscenza è immagazzinata nei parametri
della rete e, in particolare, nei “ pesi ”
associati alle connessioni.
Il “ connessionismo ” si contrappone alla concezione “ logico-simbolica ” tipica della
Intelligenza Artificiale.†
∗ cfr. S. Haykin, Neural Networks, Prentice Hall,1999
† cfr. D. Parisi, Intervista sulle reti neurali, Il Mulino, 1989
3
Da un punto di vista “ matematico ” ∗ :
data una funzione G : X → Y, nota attraverso
un insieme di coppie
{(xp, G(xp)) : xp ∈ X, p = 1, . . . , P }
una rete neurale è un particolare modello di
approssimazione di G:
F (·, w) : X → Y
dipendente da un vettore di parametri w
(tipicamente nonlineare rispetto ai parametri).
Da un punto di vista “ statistico ”†, una rete
neurale è un particolare modello di classificazione o di regressione ( non lineare ).
∗ sulla
matematica dell’approssimazione “neurale”
cfr.:
A.Pinkus, Approximation Theory of the MLP model in
Neural Networks,
Acta Numerica, 1999, pp. 143-195
† per
un inquadramento delle reti neurali nell’ambito
dei metodi di inferenza statistica cfr.
T.Hastie, R.Tibshirani and J.Friedman, The Elements
of Statistical Learning. Data mining, Inference and Prediction, Springer 2001
4
Il neurone formale
Modello semplificato del neurone biologico
proposto da McCulloch e Pitts (1947).
Dispositivo a soglia che ha
• uscita 1 se la somma algebrica pesata degli
ingressi supera un valore di soglia θ,
• uscita -1 altrimenti.
Ossia

y = h
M

wi x i − θ 
i=1
dove:
• y ∈ {−1, 1} uscita
• xi ∈ R
ingressi (anche xi ∈ {0, 1})
• wi ∈ R
pesi
• θ∈R
soglia
• h : R → R funzione di attivazione:
1 t≥0
h(t) =
.
−1 t < 0
Il neurone formale può realizzare le operazioni
logiche NOT, AND, OR.
5
Schema di neurone formale
6
Si può porre
y(x) = sign(wT x − θ).
Fissati w, θ, il neurone può essere interpretato
come un classificatore lineare , che assegna il
vettore x alla classe A oppure alla classe B in
base al valore di y(x), ossia, ad es.:
x ∈ A se y(x) = 1,
x ∈ B se y(x) = −1.
I parametri w, θ possono essere determinati a
partire da un insieme di campioni xp di cui è
nota la classificazione dp ∈ {−1, 1}, risolvendo
(se possibile) rispetto a (w, θ) il sistema
(xp)T w − θ ≥ 0,
se
xp ∈ A,
(xp)T w − θ < 0,
se
xp ∈ B.
p = 1, . . . , P.
Ci si può ricondurre alla soluzione di un
sistema di disequazioni lineari in w, θ che
ammette soluzione se e solo se
Conv({xp : dp = 1})∩Conv({xp : dp = −1}) = ∅.
7
Insiemi di campioni linearmente separabili.
Il neurone (addestrato sui campioni) definisce
un iperpiano di separazione.
8
Una rete costituita da un singolo strato di neuroni formali è stata denominata Perceptron
(Rosenblatt) (1962) ed è stato proposto un
algoritmo per il calcolo dei pesi, noto come
( “Perceptron learning rule” ) che fornisce in
un numero finito di iterazioni i parametri w, θ
se i campioni sono linearmente separabili,
aggiustando i pesi in corrispondenza a ciascun
esempio.
L’algoritmo è riconducibile a un metodo di
rilassamento per la soluzione iterativa di
sistemi di disequazioni lineari (Agmon(1954),
Motzkin - Schoenberg(1954)).
La complessità è esponenziale e si può avere
non convergenza se i campioni appartengono
a insiemi non separabili linearmente.
Il problema può essere risolto in tempo polinomiale utilizzando un metodo interno di programmazione lineare per risolvere un problema
di ammissibilità oppure per minimizzare il massimo errore o la somma dei valori assoluti degli
errori.
9
Un’impostazione alternativa è quella di sostituire la funzione di attivazione sign con una
funzione continuamente differenziabile g di tipo
sigmoidale, ossia una funzione monotona
crescente tale che:
lim g(t) = −1,
t→−∞
lim g(t) = 1,
t→∞
come, ad esempio
et − e−t
,
tanh(t) = t
e + e−t
e minimizzare l’errore quadratico.
Gli algoritmi utilizzabili sono casi particolari di
quelli che verranno considerati in seguito.
10
Le limitazioni del Perceptron sono state messe
in luce da Minsky e Papert (1969), che hanno
mostrato l’esistenza di semplici problemi di classificazione che non possono essere risolti dal
Perceptron. Un esempio noto è il problema
dell’OR esclusivo (XOR).
L’effetto del libro di Minsky e Papert è stato
quello di far decadere l’interesse iniziale verso
le reti neurali.
Era noto che le limitazioni del perceptron potevano essere superate, in linea di principio, collegando fra loro in modo opportuno dei neuroni formali o effettuando delle trasformazioni
non lineari degli ingressi. Non erano tuttavia
disponibili algoritmi di addestramento per il calcolo dei parametri.
11
Una rinascita dell’interesse verso le reti neurali
è stata in gran parte determinata dal lavoro di
Rumelhart, Hinton e Williams (1986) che
hanno proposto un algoritmo di addestramento
per reti di neuroni formali, noto come metodo
della backpropagation, essenzialmente basato
sul metodo del gradiente.
Gli sviluppi successivi hanno portato allo sviluppo
di un’area di ricerca interdisciplinare, in cui
sono stati integrati contributi di vari settori.∗
In particolare sono stati riscoperti e sviluppati
risultati significativi sulla statistica dell’apprendimento (Vapnik-Chervonenkis) (1971).
∗ Tra
i (numerosi) libri a carattere introduttivo si
segnalano:
C.Bishop, Neural Networks for Pattern Recognition,
Oxford, 1995
S.Haykin, Neural Networks, Prentice Hall, 1999
12
Classificazione delle architetture
Due classi principali:
Reti feedforward
Reti acicliche strutturate in diversi strati.
Si distinguono:
• Reti feedforward a un solo strato:
Perceptron;
• Reti feedforward multistrato
Multilayer Perceptron (MLP);
Reti “Radial Basis Functions” (RBF)
(1 solo strato nascosto);
(“Reti di Kolmogorov”)(?).
Reti ricorsive
È presente almeno un ciclo di controreazione
(feedback). Molte strutture diverse.
Tipicamente dinamiche .
13
Nel seguito si farà riferimento solo a reti
feedforward
14
Apprendimento e generalizzazione
L’apprendimento è il processo mediante il quale
vengono determinati i parametri liberi di una
rete. Due paradigmi fondamentali:
• apprendimento supervisionato:
i parametri della rete vengono determinati,
attraverso un processo di addestramento,
sulla base di un insieme ( training set ) di
esempi, consistenti in coppie {(xp, dp)}
(ingresso, uscita desiderata)
• apprendimento non supervisionato
la rete è dotata di capacità di auto-organizzazione ed è in grado di classificare gli ingressi attraverso tecniche di clustering
Nel seguito si farà riferimento solo a
problemi di apprendimento supervisionato
15
La capacità di generalizzazione di una rete
addestrata è la capacità di fornire una risposta
corretta a nuovi ingressi (non presentati nella
fase 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.
Per una data struttura, la complessità del modello (numero di parametri liberi) deve essere
posta in relazione con il numero di campioni
disponibili.
Per uno studio teorico della generalizzazione nei
processi di apprendimento supervisionato cfr.:
H.White, Artificial Neural Networks, Blackwell 1992
N. Vapnik, The Nature of Statistical Learning Theory,
Springer 1995
N. Vapnik, Statistical Learning Theory, Wiley 1998
16
Metodi di ottimizzazione per l’addestramento
I problemi di addestramento supervisionato per reti
feedforward possono essere ricondotti a problemi di
ottimizzazione . Sono di interesse:
• metodi di ottimizzazione non vincolata (MLP,RBF)
metodi di tipo batch:
(i parametri vengono aggiornati dopo una presentazione
di tutto il training set)
– metodi per problemi fortemente nonlineari e
malcondizionati (metodi non monotoni)
– metodi per problemi a grande dimensione
– metodi di decomposizione
– metodi iterativi per problemi di minimi quadrati
metodi incrementali (on-line)
(i parametri vengono aggiornati in corrispondenza a ogni
singolo pattern del training set)
–approssimazione stocastica
–filtro di Kalman
–metodi ibridi batch-online
–metodi di decomposizione dell’errore
•
–
–
–
metodi programmazione quadratica (SVM)
metodi interni
metodi di proiezione
metodi di decomposizione
• metodi di ottimizzazione globale
17
Applicazioni delle reti neurali
Applicazioni tipiche delle reti neurali:
• classificazione
– riconoscimento di configurazioni
– elaborazione di immagini
– sistemi di allarme
– diagnostica medica
– problemi di data mining
• approssimazione di funzioni
– modellistica di processi industriali complessi
– progettazione ottima
– analisi di serie temporali
– previsioni finanziarie
• controllo di processi
• Robotica
• controllo ottimo (Zoppoli)
• filtraggio
• calcolo
–euristiche per problemi combinatori
• modellistica del sistema nervoso
18
Reti neurali e Ricerca Operativa
Numeri speciali sulle Reti Neurali su:
Computers and Operations Research,
The Journal of Intelligent Manufacturing,
Decision Support Systems,
International Journal of Forecasting,
European Journal of Operations Research.
Principali settori di interesse:
Modellistica di problemi di Management
Firm Failure Prediction
Bank Failure Prediction
Investment Analysis
Human Resource Management
Stock Price Prediction
Property Pricing
Student Success
Marketing
Project Management
Decision Making
Exchange Rate Prediction
Portfolio Management...
19
Euristiche neurali per problemi di ottimizzazione
Combinatorial Optimization
Traveling Salesman Problem
Shortest Path Problem
Linear Programming
Mixed Integer Programming
Nonlinear Programming
Vehicle Routing
Multi-Criteria Decision Making
Markov Analysis
Scheduling
Manufacturing
Facility Location
Distance Estimation
Matching
Model Analysis
Process Control
Selection of an OR Technique
Neuro-dynamic Programming (Bertsekas-Tsitslikis)
Metodi di ottimizzazione per l’addestramento
20
21
“Neural network researchers constantly
reinvent the wheel known to statisticians
for decades”
“Neural networks do what every good
“new” theory does: they encompass and
generalise the previous statistical techniques”
22