Radial Basis Functions e regola di apprendimento

Transcript

Radial Basis Functions e regola di apprendimento
Capitolo 1
Radial Basis Functions
1.1
Introduzione
Il disegno di una rete neurale supervisionata può essere fatta in svariati modi. Nel capitolo
precedente l’algoritmo di backpropagation per una rete multi-layer (con supervisione) può essere visto come l’applicazione di una tecnica ricorsiva che in statistica si denota col termine di
approssimazione stocastica.
In questo capitolo, tratteremo un approccio differente nel disegno di una rete neurale come un
problema di “curve fitting”, ovvero la risoluzione di un problema di approssimazione, in uno spazio
a dimensione molto grande. Quindi l’apprendimento si riduce a trovare una superficie in uno spazio
multi-dimensionale che fornisce il miglior “fit” per i dati di training, in cui il miglior fit si intende
misurarlo in modo statistico. In maniera analoga, la fase di generalizzazione è equivalente ad usare
questa superficie multi-dimensionale ricercata con i dati di training per interpolare i dati di test
mai visti prima dalla rete. La rete è strutturata su tre livelli, input, hidden e output. Lo strato
di input è direttamente connesso con l’ambiente, ovvero sono direttamente collegati con le unità
sensoriali (dati grezzi) oppure con l’output di un sottosistema di feature extraction. Lo strato
hidden (unico nella rete) è composto da neuroni in cui vengono definite funzioni a base radiale, da
qui il nome di radial basis functions, e che effettua una trasformazione non-lineare dei dati di input
forniti alla rete. Questi neuroni costituiscono delle basi per i dati di input (vettori). Lo strato di
output è lineare, che fornisce la risposta della rete per l’input pattern presentato. La ragione per
cui si adopera una trasformazione non-lineare nello strato hidden seguita da una lineare in quello
di output è descritta in un articolo di Cover (1965) secondo il quale un problema di classificazione
di pattern riportato in uno spazio a dimensione molto più grande (ossia nella trasformazione non
lineare dallo strato di input in quello hidden) è più probabile di essere linearmente separabile che in
uno spazio a dimensione ridotta. Da questa osservazione deriva la ragione per cui lo strato hidden
è generalmente più grande di quello di input (ovvero il numero di neuroni hidden molto maggiori
della cardinalità del segnale di input).
1.2
Teorema di Cover sulla separabilità dei pattern
Un problema complesso di riconoscimento automatico di pattern mediante l’uso di una rete neurale
radial basis function è risolto trasformando lo spazio del problema in uno a dimensione più grande
in maniera non-lineare. Il teorema di Cover sulla separabilità di pattern è definito come segue:
Teorema: un problema complesso di pattern recognition trasformato in uno spazio a dimensione
più grande in maniera non-lineare ha più probabilità di essere linearmente separabile che in
uno spazio a dimensionalità più basso.
1
2
CAPITOLO 1. RADIAL BASIS FUNCTIONS
(a)
(b)
(c)
Figura 1.1: Esempi di partizione binaria nello spazio per differenti insiemi di cinque punti in uno
spazio 2D: (a) linearmente separabile, (b) sfericamente separabile, (c) quadricamente separabile.
Sia C un insieme di N patterns (vettori) x 1 ,x 2 ,. . . ,x N , a ciascuno dei quali è assegnata una
delle due classi di appartenenza C 1 oppure C 2 . Questa partizione binaria è separabile se esiste
una superficie tale per cui separa i punti della classe C 1 da quelli della classe C 2 .
Si supponga che un generico vettore x ∈ C sia m0 -dimensionale, e che definiamo un insieme di
funzioni reali {ϕi (x) |i = 1, ..., m1 } per cui si trasforma lo spazio di input a dimensione m0 in un
nuovo spazio a dimensione m1 come segue:
T
ϕ(x) = [ϕ1 (x), ϕ2 (x), . . . , ϕm1 (x)]
(1.1)
La funzione ϕ quindi permette la trasformazione spaziale non-lineare da uno spazio ad uno più
grande (m1 > m0 ). Tale funzione è riferita ai neuroni dello strato hidden della rete RBF. Una
partizione binaria (dicotomia) [C1 , C2 ] di C è detta di essere ϕ − separabile se esiste un vettore w
m 1 -dimensionale tale per cui possiamo scrivere:
wT ϕ(x) > 0
wT ϕ(x) < 0
dove l’equazione
se x ∈ C1
se x ∈ C2
wT ϕ(x) = 0
(1.2)
(1.3)
(1.4)
indica l’iperpiano di separazione, ovvero descrive la superficie di separazione tra le due classi nello
spazio ϕ (o spazio hidden).
Le superfici di separazione tra popolazioni di oggetti possono essere: iperpiani (primo ordine),
quadriche (secondo ordine) o ipersfere (quadriche con alcuni vincoli lineari sui coefficienti). In
figura 1.1 sono raffigurate le tre tipologie di separabilità.
In generale, la separabilità lineare implica separabilità sferica che a sua volta implica separabilità
quadrica. Il viceversa non è necessariamente vero.
Due punti cardine del teorema di Cover possono essere riassunti come segue:
1. Formulazione non-lineare delle funzioni dello strato hidden definite da ϕi (x) con x il vettore
di input ed i = 1, . . . , m1 la cardinalità dello strato.
2. Una dimensionalità maggiore dello spazio hidden confrontata con quella dello spazio di input
determinata come abbiamo visto dal valore di m 1 (ovvero il numero dei neuroni nello strato
hidden).
Vi è da osservare che in alcuni casi, può essere sufficiente solo soddisfare il punto 1, ovvero la trasformazione non-lineare senza aumentare lo spazio di input aumentando i neuroni dello strato hidden
(punto 2), al fine di ottenere separabilità lineare. L’esempio dello XOR dimostra quest’ultima
osservazione.
1.3. IL PROBLEMA DELL’INTERPOLAZIONE
3
Tabella 1.1: Trasformazione non lineare dei pattern bidimensionali di input x
Input Pattern Prima funzione hidden Seconda funzione hidden
x
ϕ1
ϕ2
(1,1)
1
0,1353
(0,1)
0,3678
0,3678
(0,0)
0,1353
1
(1,0)
0,3678
0,3678
1
(1,1)
0.8
j2
Retta di separazione
o intorno decisionale
0.6
0.4
(0,1)
(1,0)
0.2
(0,0)
0
0
0.2
0.4
0.6
0.8
1
1.2
j1
Figura 1.2: Raffigurazione della trasformazione non-lineare dei quattro punti per il problema dello
XOR che divengono linearmente separabili nello spazio ϕ.
Siano 4 punti in uno spazio 2D: (0, 0), (1, 0), (0, 1) e (1, 1) in cui costruiamo una rete neurale
RBF che risolve la funzione XOR. Si è osservato in precedenza che il singolo percettrone non è in
grado di rappresentare questo tipo di funzione a causa del problema non linearmente separabile.
Vediamo come mediante l’uso del teorema di Cover sia possibile ottenere una separabilità lineare
a seguito di una trasformazione non-lineare dei quattro punti.
Definiamo una funzione di trasformazione Gaussiana come segue:
2
ϕ1 (x) =
e−kx−t1 k ,
ϕ2 (x) =
e−kx−t2 k ,
2
T
t1 = [1, 1] (1.5)
T
t2 = [0, 0] (1.6)
In tabella 1.1 sono riportati i valori della trasformazione non-lineare dei quattro punti considerati ed in figura 1.2 la loro rappresentazione nello spazio ϕ. Si può osservare come essi divengono linearmente separabili dopo la trasformazione non-lineare con l’ausilio delle funzioni Gaussiane
sopra definite.
1.3
Il Problema dell’Interpolazione
Dal teorema di Cover si evince che vi é un certo beneficio nell’operare una trasformazione non
lineare dallo spazio di input in uno nuovo a maggiore dimensione al fine di ottenere pattern separabili per un problema di pattern recognition. Principalmente un mapping non lineare é utilizzato
per trasformare un problema di classificazione non-linearmente separabile in uno linearmente separabile. In modo analogo si puó usare un mapping non-lineare per trasformare un problema di
filtraggio non-lineare in uno che implica un filtraggio lineare. Per semplicitá si consideri una rete
feedforward con uno strato di input, uno hidden ed uno di output, con quest’ultimo che consiste
4
CAPITOLO 1. RADIAL BASIS FUNCTIONS
di un solo neurone. La rete in tal caso opera una trasformazione non-lineare dallo strato di input
in quello hidden seguita da una lineare dallo strato hidden in quello di output. Se con m0 si indica
sempre la dimensionalitá dello strato di input (quindi m0 neuroni nello strato di input), la rete
opera una trasformazione da uno spazio m0 -dimensionale in uno spazio ad una dimensione poiché
in output abbiamo solo un neurone, quindi la funzione di mapping é espressa come:
s : <m0 → <1
(1.7)
Si puó pensare alla funzione di mapping s come una ipersuperficie Ω ⊂ <m0 +1 , in modo analogo ad
una funzione di mapping elementare s : <1 → <1 con s(x) = x2 , una parabola nello spazio <2 . La
superficie Ω é pertanto un plot multidimensionale dell’output della rete come funzione dell’input.
Generalmente, la superficie Ω é sconosciuta, con i dati di training contaminati da rumore. Le due
importanti fasi di un classificatore, training e test (o generalizzazione) possono essere viste come
segue:
• la fase di training costituisce una ottimizzazione di una procedura di fitting per la superficie
Ω, partendo da esempi noti (ovvero, dati di training) che vengono presentati alla rete come
coppie input − output (patterns).
• La fase di generalizzazione é sinonimo di interpolazione tra i dati, con l’interpolazione eseguita
lungo una superficie ottenuta dalla procedura di training mediante tecniche di ottimizzazione
che permettono di avere una superficie Ω vicina a quella vera.
Con queste premesse siamo in presenza di un problema di interpolazione multivariata in spazi a
grandi dimensioni. Formalizzando il problema di interpolazione:
Dato un insieme di N punti differenti {xi ∈ <m0 |i = 1, . . . , N } ed un corrispondente insieme di
N numeri reali {di ∈ <1 |i = 1, . . . , N } trovare una funzione F : <m0 → <1 che soddisfi la
seguente condizione di interpolazione:
F (xi ) = di
i = 1, 2, . . . , N
(1.8)
Per una migliore interpolazione, la superficie interpolante (quindi la funzione F ) attraversa tutti i
punti dei dati di training. La tecnica RBF consiste nello scegliere una funzione F con la seguente
forma:
N
X
F (x) =
wi ϕ(kx − xi k)
(1.9)
i=1
con {ϕ(kx − xi k)|i = 1, 2, . . . , N } l’insieme di N funzioni generalmente non-lineari, denominate
radial-basis-functions, e k · k denota la norma Euclidea. I punti noti del dataset xi ∈ <m0 , i =
1, 2, . . . , N sono i centri delle funzioni radiali.
Inserendo la condizione di interpolazione (1.8) nella (1.9), si ottiene l’insieme di equazioni lineari
per i coefficienti (o pesi) di espansione {wi }:


 

ϕ11 ϕ12 · · · ϕ1N
w1
d1
 ϕ21 ϕ22 · · · ϕ2N   w2   d2 


 

(1.10)
 ..
..
..
..   ..  =  .. 
 .




.
.
.
.
. 
ϕN 1 ϕN 2 · · · ϕN N
wN
dN
con
ϕji = ϕ(kxj − xi k) (j, i) = 1, 2, . . . , N
Siano
T
d = [d1 , d2 , . . . , dN ]
w = [w1 , w2 , . . . , wN ]
T
(1.11)
1.4. TEOREMA DI MICCHELLI
5
I vettori d e w di dimensione N × 1 che rappresentano rispettivamente le risposte desiderate ed i
pesi, con N la grandezza del campione di training. Sia Φ la matrice N × N di elementi ϕji :
Φ = {ϕji |(j, i) = 1, 2, . . . , N }
(1.12)
che si denoterá matrice di interpolazione. Riscrivendo l’equazione (1.8) in forma compatta si
ottiene:
Φw = d
(1.13)
Assumendo che Φ sia una matrice non singolare, esiste la sua inversa Φ−1 e pertanto la soluzione
dell’equazione (1.13) per i pesi w é data da:
w = Φ−1 d
(1.14)
Ora come facciamo ad assicurarci che la matrice Φ é non singolare? Il teorema seguente ci fornisce
una risposta a riguardo.
1.4
Teorema di Micchelli
m0
. Allora la matrice interpolante Φ di
Teorema: Sia {xi }N
i=1 un insieme di punti distinti di <
dimensione N × N i cui elementi ϕji = ϕ(kxj − xi k) sono non singolari.
Vi é una vasta classe di funzioni a base radiale che soddisfano il teorema di Micchelli, in particolare
sono:
Gaussiana
r2
2σ 2
(1.15)
ϕ(r) =
r2 + σ2
σ2
(1.16)
ϕ(r) = √
σ2
r2 + σ2
(1.17)
ϕ(r) = exp −
dove σ > 0 e r ∈ <.
Multiquadrica
√
Multiquadrica inversa
Cauchy
ϕ(r) =
σ2
r2 + σ2
(1.18)
In figura 1.3 sono raffigurate le quattro funzioni sopra definite. Le funzioni radiali definite
nelle equazioni (1.15)-(1.18) affinché siano non singolari, tutti i punti del dataset {xi }N
i=1 devono
essere necessariamente distinti tra loro, indipendentemente dalla dimensione del campione N e
dalla cardinalitá m0 dei vettori di input xi .
La multiquadrica inversa (1.17), la Cauchy (1.18) e le funzioni Gaussiane (1.15) condividono la
stessa propritá, ovvero, sono funzioni localizzate nel senso che ϕ(r) → 0 per r → ∞. In entrambi
questi casi, la matrice Φ é definita positiva. Al contrario, la famiglia di funzioni multiquadriche
definite in (1.16) sono non-locali poiché ϕ(r) diviene indefinita per r → ∞, e la corrispondente
matrice di interpolazione Φ ha N − 1 autovalori negativi e solo uno positivo, con la conseguenza di
non essere definita positiva. Si puó quindi stabilire che una matrice di interpolazione Φ basata su
funzioni multiquadriche (introdotte da Hardy 1971) é non singolare, e perció adatta per il disegno
di una rete RBF. Inoltre, si puó rimarcare che funzioni a base radiale che crescono all’infinito,
come le multiquadriche, possono essere usate per approssimare funzioni di mapping input-output
smussate con grande accuratezza rispetto a quelle che rendono la matrice di interpolazione Φ
definita positiva (tale risultato lo si puó trovare in Powell 1988).
6
CAPITOLO 1. RADIAL BASIS FUNCTIONS
4.5
Gaussiana
Multiquadratica
Multiquadratica inversa
Cauchy
4
3.5
3
2.5
2
1.5
1
0.5
0
−3
−2
−1
0
1
2
3
Figura 1.3: Funzioni a base radiale che soddisfano il teorema di Micchelli.
1.5
Learning e problemi mal-posti
La procedura di interpolazione descritta finora puó non avere buoni risultati quando la rete deve
generalizzare (osservare esempi mai visti prima). Questo problema si ha quando il numero dei
campioni di training é di gran lunga maggiore dei gradi di libertá del processo fisico che si vuole
modellare, in tal caso siamo vincolati ad avere tante funzioni radiali quanti sono i dati di training,
risultando in un problema sovradimensionato. In questo caso la rete tenta di approssimare al meglio
la funzione di mapping, rispondendo in maniera precisa quando si presenta un dato visto in fase
di training ma fallisce quando se ne presenta uno mai visto. Il risultato é che la rete generalizza
poco dando origine al problema dell’overfitting. In generale apprendere significa trovare quella
ipersuperficie (per problemi multidimensionali) che permette alla rete di rispondere (generare un
output) all’input fornito. Tale mapping é definito dall’equazione dell’ipersuperficie trovata in fase
di apprendimento. Quindi l’apprendimento puó essere visto come un problema di ricostruzione di
ipersuperficie, dato un insieme di esempi che possono essere sparsi.
Vi sono due tipi di problemi che generalmente si incontrano: problemi mal-posti e problemi
ben-posti. Vediamo in cosa consistono. Supponiamo di avere un dominio X ed un insieme Y di
qualche spazio metrico, che sono correlati tra loro da un funzionale sconosciuto f che é l’obbiettivo
dell’apprendimento. Il problema di ricostruzione della funzione di mapping f é detto di essere
ben-posto se soddisfa le tre condizioni seguenti:
1. Esistenza. ∀x ∈ X ∃y = f (x) tale che y ∈ Y
2. Unicitá. ∀x, t ∈ X : f (x) = f (t) se e solo se x = t
3. Continuitá. La funzione di mapping f é continua, ovvero,
∀² > 0 ∃δ = δ(²) tale che ρX (x, t) < δ ⇒ ρY (f (x), f (t)) < ²
dove ρ(·, ·) rappresenta il simbolo di distanza tra i due argomenti nei loro rispettivi spazi. La
proprietá di continuitá é anche riferita essere prorpietá di stabilitá.
1.6. TEORIA DELLA REGOLARIZZAZIONE
7
Se nessuna di queste condizioni é verificata, il problema si dirá mal-posto. Nei problemi malposti, dataset di esempi molto grandi possono contenere poca informazione del problema da risolvere. I fenomeni fisici responsabili per la generazione del dataset per l’addestramento (ad esempio,
per il parlato, segnali radar, segnali sonar, immagini ecc.) sono problemi ben-posti. Tuttavia, l’apprendimento da queste forme di segnali fisici, visto come una ricostruzione di ipersuperfici, é un
problema mal-posto per le seguenti ragioni. Il criterio di esistenza puó essere violato nel caso in cui
output distinti non esistono per ogni input. Non vi é sufficiente informazione nel dataset di training
per ricostruire la funzione di mapping input-output in maniera univoca, pertanto il problema di
unicitá potrebbe essere violato. Il rumore o le imprecisioni presenti nei dati di training aggiunge
incertezza alla superficie di mapping input-output. Quest’ultimo problema viola il principio di
continuitá, poiché se nei dati vi é molto rumore, é probabile che l’output desiderato y ricada al di
fuori del range Y per uno specificato vettore di input x ∈ X. Parafrasando Lanczos (1964) si puó
dire che ¨Non esiste alcun artifizio matematico per rimediare all’informazione mancante nei dati
di training.̈ Un importante risultato su come rendere un problema mal-posto in uno ben-posto é
derivato dalla teoria della Regolarizzazione.
1.6
Teoria della Regolarizzazione
Introdotta da Tikhonov nel 1963 per la soluzione di problemi mal-posti. L’idea di base é quella di
stabilizzare la soluzione di ricostruzione di ipersuperfici tramite l’introduzione di qualche funzionale
non-negativo che integra informazione a priori della soluzione. La forma piú comune di informazione
a priori implica l’assunzione che la funzione di mapping input-output (cioé soluzione del problema
di ricostruzione) sia di tipo smooth, ovvero ad input simili corrispondono output simili. Siano gli
insiemi di dati di input ed output (che rappresentano l’insieme di training) descritti come segue:
xi ∈ < m0 ,
Segnale di input :
i = 1, 2, , . . . , N
(1.19)
Risposta desiderata : di ∈ <1 ,
i = 1, 2, , . . . , N
Il fatto che l’output sia monodimensionale non lede alcuna generalitá all’estensione a casi di output
multidimensionali. Sia F (x) la funzione di mapping da ricercare (per convenienza é stata rimossa
la variabile dei pesi w dagli argomenti di F ), la teoria di regolarizzazione di Tikhonov include due
termini:
1. Termine Errore Standard. Denotato con ξs (F ) misura l’errore (distanza) tra la risposta desiderata (target) di e la risposta attuale della rete yi dei campioni di training i =
1, 2, , . . . , N :
N
ξs (F ) =
1X
(di − yi )2
2 i=1
(1.20)
N
=
dove
1
2
1X
(di − F (xi ))2
2 i=1
(1.21)
rappresenta un fattore di scala.
2. Termine di Regolarizzazione. Il secondo termine denotato con ξc (F ) dipende dalle proprietá
geometriche della funzione approssimante F (x). Definito da:
1
kDF k2
(1.22)
2
dove D é un operatore differenziale lineare. L’informazione a priori della funzione di mapping
input-output é racchiusa in D che effettua la selezione di D problemi dipendenti. L’operatore D é anche uno stabilizzatore, poiché rende la soluzione di tipo smooth soddisfando la
condizione di continuitá.
ξc (F ) =
8
CAPITOLO 1. RADIAL BASIS FUNCTIONS
Quindi la quantitá che deve essere minimizzata nella teoria della regolarizzazione é la seguente
ξ(F )
= ξs (F ) + λξc (F )
1
2
=
(1.23)
N
X
1
[di − F (xi )]2 + λkDF k2
2
i=1
(1.24)
dove λ é un numero reale positivo chiamato parametro di regolarizzazione, ξ(F ) é chiamato funzionale di Tikhonov. Indicando con Fλ (x) la superficie che minimizza il funzionale ξ(F ), possiamo
vedere il parametro di regolarizzazione λ come un indicatore di sufficienza dell’insieme di training
che specifica la soluzione Fλ (x). In particolare, in un caso limite quando λ → 0 implica che il problema é non vincolato, la soluzione Fλ (x) é completamente determinata dagli esempi di training.
L’altro caso, in cui λ → ∞ implica che il vincolo di continuitá introdotta dall’operatore smooth D
é sufficiente per specificare la soluzione Fλ (x), ovvero un altro modo di dire che gli esempi sono
inaffidabili. Nelle applicazioni pratiche, al parametro λ é assegnato un valore tra le due condizioni
limite, in modo tale che sia gli esempi di training che l’informazione a priori contribuiscono assieme
per la soluzione Fλ (x). Dopo una serie di passi si perviene alla seguente formulazione del funzionale
per il problema di regolarizzazione:
N
Fλ (x) =
1X
[di − F (xi )]G(x, xi )
λ i=1
(1.25)
dove G(x, xi ) é denominata funzione di Green che vedremo in avanti essere una delle funzioni a base
radiale. L’equazione (1.25) stabilisce che la soluzione minima Fλ (x) al problema di regolarizzazione
é la sovrapposizione di N funzioni di Green. I vettori del campione xi rappresentano i centri di
espansione, ed i pesi [di − F (xi )]/λ rappresentano i coefficienti di espansione. In altri termini, la
soluzione al problema della regolarizzazione giace in un sottospazio N -dimensionale dello spazio di
funzioni di tipo smooth, e l’insieme delle funzioni di Green {G(x, xi )} centrate in xi , i = 1, 2, . . . , N
costituiscono una base di questo sottospazio. Si noti che i coefficienti di espansione in (1.25) sono:
lineari nella stima dell’errore definito come la differenza tra la risposta desiderata di e l’output
corrispondente della rete F (xi ); inversamente proporzionali al parametro di regolarizzazione λ.
Calcoliamo ora i coefficienti di espansione che non sono noti. Siano
wi =
1
[di − F (xi )],
λ
i = 1, 2, . . . , N
(1.26)
Riscriviamo la (1.25) come segue
Fλ (x) =
N
X
wi G(x, xi )
(1.27)
i=1
e valutando la (1.27) in xj per j = 1, 2, . . . , N otteniamo
Fλ (xj ) =
N
X
wi G(xj , xi ) j = 1, 2, . . . , N
(1.28)
i=1
Introduciamo ora le seguenti definizioni:
Fλ = [Fλ (x1 ), Fλ (x2 ), . . . , Fλ (xN )]T

d = [d1 , d2 , . . . , dN ]T
G(x1 , x1 )
 G(x2 , x1 )

G=
..

.
G(xN , x1 )
G(x1 , x2 )
G(x2 , x2 )
..
.
···
···
..
.
G(x1 , xN )
G(x2 , xN )
..
.
G(xN , x2 )
···
G(xN , xN )
(1.29)





(1.30)
(1.31)
1.6. TEORIA DELLA REGOLARIZZAZIONE
9
w = [w1 , w2 , . . . , wN ]T
(1.32)
possiamo riscrivere la (1.26) e la (1.29) in forma matriciale come segue:
w=
1
(d − Fλ )
λ
(1.33)
e
Fλ = Gw
(1.34)
eliminando Fλ dalla (1.33) e (1.34) otteniamo
(G + λI)w = d
(1.35)
dove I é la matrice identitá N × N . La matrice G é denominata matrice di Green.
Le funzioni di Green sono simmetriche (per alcune classi di funzioni viste in precedenza)
G(xi , xj ) = G(xj , xi ) ∀ i, j
(1.36)
e pertanto la matrice di Green é anch’essa simmetrica e definita positiva se tutti i punti del
campione sono distinti tra loro si ha
GT = G
(1.37)
Si puó pensare di avere un parametro di regolarizzazione λ sufficientemente grande per assicurare
che (G + λI) é definito positivo e quindi invertibile. Questo implica che il sistema di equazioni
lineari definito in (1.35) ha una ed una sola soluzione data da:
w = (G + λI)−1 d
(1.38)
questa equazione ci permette di ottenere il vettore dei pesi w avendo identificato la funzione
di Green G(xj , xi ) per i = 1, 2, . . . , N ; la risposta desiderata d; ed un appropriato valore del
parametro di regolarizzazione λ. In conclusione si puó stabilire che soluzione al problema di
regolarizzazione é fornita dall’espansione
Fλ (x) =
N
X
wi G(x, xi )
(1.39)
i=1
dove questa equazione stabilisce le seguenti considerazioni:
• l’approccio basato sulla teoria della regolarizzazione é equivalente all’espansione della soluzione
in termini di funzioni di Green, caratterizzate solo dalla forma dello stabilizzare D e dalle
associate condizioni al contorno;
• il numero delle funzioni di Green usate nell’espansione é uguale al numero degli esempi
utilizzati nel processo di training.
La caratterizzazione delle funzioni di Green G(x, xi ) per un centro specifico xi dipendono solo dallo
stabilizzatore D, informazione nota a priori in base al mapping input-output. Se tale stabilizzatore
é invariante dalla traslazione, allora la funzione di Green centrata in xi dipende solo dalla differenza
dei due argomenti
G(x, xi ) = G(x − xi )
(1.40)
altrimenti se lo stabilizzatore deve essere invariante sia per traslazione che per rotazione, allora la
funzione di Green dipenderá dalla distanza Euclidea dei due suoi argomenti, vale a dire:
G(x, xi ) = G(kx − xi k).
(1.41)
10
CAPITOLO 1. RADIAL BASIS FUNCTIONS
j=1
w0=b
x1
j
x2
j
w1
w2
wm
xm
1
j
0
Strato
di Input
Strato Hidden
con m1 funzioni
Strato
di Output
Figura 1.4: Architettura di rete RBF
Quindi sotto queste condizioni le funzioni di Green devono essere funzioni a base radiale. Quindi
la soluzione (1.39) si puó riscrivere
Fλ (x) =
N
X
wi G(kx − xi k)
(1.42)
i=1
Quindi la soluzione é interamente determinata dagli N vettori di training che contribuiscono a
costruire la superficie interpolante F (x).
1.7
Architettura della rete RBF
Come gia detto in precedenza la rete si compone di tre strati come raffigurato in figura 1.4: input,
hidden o nascosto e output. Il primo strato (input) é costituito da m0 nodi, rappresentante la
dimensione del vettore di input x. Il secondo strato, quello hidden, é costituito da m1 funzioni
non-lineari a base radiale ϕ, connesse allo strato di input. In alcuni casi la dimensione m1 = N ,
in altri (specialmente quando l’insieme di training é molto grande) si differisce (m1 << N ) come
vedremo in seguito. Lo strato di output consiste di un singolo neurone lineare (ma puó anche
essere costituito di piú neuroni di output) connesso interamente allo strato hidden. Per lineare
si intende che il neurone di output calcola il suo valore di uscita come somma pesata delle uscite
dei neuroni dello strato hidden. I pesi wi dello strato di output rappresentano le variabili non
note, e che dipendono anche dalle funzioni di Green G(x − xi ) e dal parametro di regolarizzazione
λ. Le funzioni di Green G(x, xi ) per ogni i sono definite positive, e pertanto una delle forme che
soddisfano questa proprietá é quella Gaussiana
G(x, xi ) = exp (−
1
kx − xi k2 )
2σi2
(1.43)
ricordando che xi rappresenta il centro della funzione e σi la sua larghezza. Con la condizione che
le funzioni di Green sono definite positive, la soluzione prodotta dalla rete sará un interpolante
ottimale nel senso che minimizza la funzione costo vista in precedenza ξ(F ). Ricordiamo che questa
funzione costo indica quanto la soluzione prodotta dalla rete devia dai dati veri rappresentati dai
dati di training. L’ottimalitá pertanto é strettamente correlata con la ricerca del minimo di questa
funzione di costo ξ(F ). In figura 1.4 é anche mostrato il bias (variabile indipendente dai dati)
applicato allo strato di output. Questo viene rappresentato ponendo uno dei pesi lineari uguale al
1.8. SOLUZIONE DELLA RETE RBF
11
bias w0 = b e trattando l’associata funzione radiale come una costante uguale a +1. Concludendo
quindi, per risolvere una rete RBF, conoscendo a priori i dati di input e la forma delle funzioni
radiali, le variabili da ricercare sono i pesi lineari wi ed i centri delle funzioni radiali.
1.8
Soluzione della rete RBF
Siano {ϕi (x)|i = 1, 2, . . . , m1 } la famiglia di funzioni radiali dello strato hidden, che assumiamo
essere linearmente indipendenti. Definiamo quindi
ϕi (x) = G(kx − ti k) i = 1, 2, . . . , m1
(1.44)
con ti i centri delle funzioni radiali che devono essere determinati. Nel caso in cui i dati di
training sono pochi o computazionalmente trattabili in numero, questi centri coincidono con i dati
di training, ovvero ti = xi per i = 1, 2, . . . , N . Pertanto la nuova soluzione interpolante F ∗ é data
dalla seguente equazione:
F ∗ (x)
=
=
m1
X
i=1
m1
X
wi G(x, ti )
(1.45)
wi G(kx − ti k)
(1.46)
i=1
che definisce la nuova funzione interpolante con i nuovi pesi {wi |i = 1, 2, . . . , m1 } da determinare
al fine di minimizzare il nuovo funzionale di costo:

2
m1
N
X
X
∗
di −
ξ(F ) =
wi G(kx − ti k) + λkDF ∗ k2
(1.47)
i=1
j=1
dove il primo termine della parte destra dell’eguaglianza puó essere espresso come la norma Euclidea
di kd − Gwk2 , dove:
d = [d1 , d2 , . . . , dN ]T
(1.48)


G(x1 , t1 ) G(x1 , t2 ) · · · G(x1 , tm1 )
 G(x2 , t1 ) G(x2 , t2 ) · · · G(x2 , tm1 ) 


G=
(1.49)

..
..
..
..


.
.
.
.
G(xN , t1 )
G(xN , t2 ) · · ·
G(xN , tm1 )
w = [w1 , w2 , . . . , wm1 ]T
(1.50)
Ora la matrice G delle funzioni di Green non é piú simmetrica ma di dimensione N × m1 , il
vettore delle risposte desiderate d é come prima di dimensione N , ed il vettore dei pesi w di
dimensione m1 × 1. Dall’equazione (1.39) si nota che la funzione approssimante é combinazione
lineare delle funzioni di Green per un certo stabilizzatore D. Espandendo il secondo termine della
(1.47), omettendo i passaggi intermedi, si perviene al seguente risultato
kDF ∗ k2 = wT G0 w
dove G0 é una matrice simmetrica di dimensione m1 × m1 definita

G(t1 , t1 )
G(t1 , t2 ) · · ·
G(t1 , tm1 )
 G(t2 , t1 )
G(t
,
t
)
·
·
·
G(t
2 2
2 , tm1 )

G0 = 
..
..
..
..

.
.
.
.
G(tm1 , t1 ) G(tm1 , t2 ) · · · G(tm1 , tm1 )
(1.51)





(1.52)
12
CAPITOLO 1. RADIAL BASIS FUNCTIONS
e minimizzando la (1.47) rispetto al vettore dei pesi w, si perviene a
(GT G + λG0 )w = GT d
(1.53)
che per λ → 0 il vettore dei pesi w converge alla soluzione della pseudo-inversa (norma minima)
per un problema di fitting ai minimi quadrati per m1 < N ,
w = G+ d, λ = 0
(1.54)
dove G+ rappresenta la pseudoinversa della matrice G, ovvero
G+ = (GT G)−1 GT
(1.55)
La (1.54) rappresenta la soluzione del problema dell’apprendimento dei pesi per una rete RBF.
Vediamo ora quali sono le strategie di apprendimento della RBF che a partire da una training set
descrivono diverse strade per ottenere (oltre al calcolo del vettore dei pesi w) anche i centri delle
funzioni radiali dello strato hidden e la loro deviazione standard.
1.9
Strategie di Learning
Finora é stata trovata la soluzione della RBF in termini dei pesi tra lo strato hidden e quello di
output, che sono strettamente correlati a come le funzioni di attivazione dello strato hidden sono
configurate ed eventualmente evolvono nel tempo. Vi sono differenti approcci per l’inizializzazione
delle funzioni radiali dello strato hidden. Nel seguito ne mostreremo alcune.
1.9.1
Centri fissati selezionati casualmente
L’approccio piú semplice é quello di fissare i centri delle Gaussiane (funzioni radiali dello strato
hidden) scelti in maniera casuale dal dataset di training di cui si dispone. Si puó usare una
configurazione di funzione Gaussiana isotropica la cui deviazione standard σ é fissata in accordo
alla dispersione dei centri. Ovvero, una versione normalizzata della funzione radiale centrata in ti :
µ
¶
m1
(G(kx − ti k2 ) = exp − 2 kx − ti k2 , i = 1, 2, . . . , m1
(1.56)
dmax
dove m1 il numero dei centri (ovvero dei neuroni dello strato hidden), dmax la distanza massima tra
i centri che sono stati scelti. La deviazione standard (larghezza) delle funzioni radiali Gaussiane é
fissata a
dmax
σ=√
.
(1.57)
2m1
Quest’ultima assicura che le funzioni radiali individuate non raggiungono i due estremi possibili
ovvero: troppo assottigliate o troppo appiattite. Alternativamente all’equazione (1.57) si puó
pensare di prendere versioni differenti di funzioni radiali. Vale a dire usare deviazioni standard
molto ampie per zone in cui i dati sono molto dispersi e viceversa. Questo peró presuppone una
fase di ricerca condotta prima circa lo studio della distribuzione dei dati del training set di cui si
dispone.
Rimane quindi da ricercare i parametri della rete, ovvero i pesi delle connessioni che vanno dallo
strato hidden a quello di output con il metodo della pseudoinversa di G descritto precedentemente
in (1.54) e (1.55). La matrice G é definita come
G = {gji }
con
´
³ m
1
gji = exp − 2 kxj − ti k2 ,
d
i = 1, 2, . . . , m1 j = 1, 2, . . . , N
(1.58)
(1.59)
1.9. STRATEGIE DI LEARNING
13
con xj il j − esimo vettore del training set. Si noti che se i campioni sono ragionevolmente1 pochi
da non inficiare notevolmente sulla complessitá computazionale, si possono anche fissare i centri
delle funzioni radiali con le osservazioni dei dati di training, quindi ti = xi .
Il calcolo della matrice pseudoinversa é fatto mediante la Singular Value Decomposition (SVD)
come segue. Sia G una matrice N × M di valori reali, esistono due matrici ortogonali
U = [u1 , u2 , . . . , uN ]
(1.60)
V = [v1 , v2 , . . . , vM ]
(1.61)
UT GV = diag(σ1 , σ2 , . . . , σK ) K = min(M, N )
(1.62)
σ1 ≥ σ2 ≥ · · · ≥ σK > 0
(1.63)
e
tale che
dove
I vettori colonna della matrice U sono chiamati vettori singolari di sinistra di G mentre quelli di V
vettori singolari di destra di G. Le deviazioni standard σ1 , σ2 , . . . , σK sono chiamate semplicemente
valori singolari della matrice G. Quindi in accordo al teorema della SVD, la matrice pseudoinversa
di dimensioni M × N di una matrice G é definita come segue
G+ = VΣ+ UT
dove Σ+ é la matrice N × N definita in termini di valori singolari di G come segue
µ
¶
1 1
1
Σ+ = diag
, ,...,
, 0, . . . , 0
σ1 σ2
σK
(1.64)
(1.65)
La selezione casuale dei centri mostra che questo metodo é insensibile all’uso della regolarizzazione.
1.9.2
Selezione dei centri mediante tecniche di clustering
Uno dei problemi che si riscontra quando si hanno dataset molto numerosi é l’impossibilitá di
impostare i centri in base alla dimensione del dataset di training, sia che essi vengono selezionati
casualmente e sia che essi coincidano con gli stessi dati di training. Dataset di training con milioni
di esempi implicherebbe milioni di neuroni dello strato hidden, con la conseguenza di elevare la
complessitá computazionale del classificatore. Per ovviare a questo si puó pensare di trovare un
numero di centri inferiore alla cardinalitá del dataset di training ma che comunque sia descrittivo
in termini di distribuzione di probabilitá degli esempi di cui si dispone. Per fare questo si possono
usare tecniche di clustering come fuzzy K-means, K-means oppure Self-Organizing maps.
Quindi in una prima fase si imposta il numero dei prototipi da apprendere con la tecnica dei
clustering, e successivamente si trovano i pesi della rete RBF con le funzioni radiali centrate nei
prototipi appresi nella fase precedente.
1 Sempre soddisfando il teorema di Cover descritto precedentemente, con ragionevolmente si vuole indicare una
misura correlata con la complessitá computazione dell’intera architettura.