Vai alla Home Page About me Courseware Federica Living Library Federica Federica Podstudio Virtual Campus 3D La Corte in Rete
 
Il Corso Le lezioni del Corso La Cattedra
 
Materiali di approfondimento Risorse Web Il Podcast di questa lezione

Roberto Prevete » 16.Verso le reti neurali RBF: interpolazione esatta.


Introduzione

Nella presente lezione, allo scopo di introdurre le reti neurali RBF, descriveremo

  • Il metodo dell’interpolazione esatta per mapping funzionali da uno spazio d-dimensionale ad uno spazio target uno-dimensionale.
  • Il metodo dell’interpolazione esatta per mapping funzionali da uno spazio d-dimensionale ad uno spazio target c-dimensionale.
  • Quick Propagation.

Interpolazione esatta

Abbiamo visto come una rete neurale feed-forward, sotto opportune ipotesi, sia capace di approssimare bene quanto si vuole qualunque funzione continua definita su un compatto.

Introdurremmo, ora, un tipo diverso di reti neurali feed-forward dette RBF
(Radial Basis Functions, Funzioni a base radiale).

A tale scopo consideriamo, allora, sempre il medesimo problema di approssimare una funzione, a partire da un insieme di coppie input-target conosciute, utilizzando il metodo della interpolazione esatta.

Interpolazione esatta (segue)

Si consideri, quindi, un mapping da uno spazio input d-dimensionale X ⊆ Rd ad uno spazio target uno-dimensionale Y ⊆R:

f : x ∈ X → y=f(x) ∈ Y

In generale di tale mapping, come già ampiamente detto, non si conosce l’andamento della funzione f(x) ma solo alcune coppie input-output.

Si supponga, allora, di conoscere n valori di input x1, x2, . . . , xn ∈ X a cui corrispondono n scalari t1, t2, . . . , tn ∈ Y (il Training Set, TS).

Interpolazione esatta (segue)

Il problema dell’interpolazione esatta consiste nel trovare una funzione h(x) che soddisfi i seguenti n vincoli di interpolazione:

h(xi) = ti,

Con i = 1, . . . ,n.

Interpolazione esatta (segue)

L’approccio con funzioni a base radiale consiste nel ricercare la funzione h(x) come combinazione lineare di n funzioni, φj(x), che dipendono dalla distanza (in genere euclidea) di x dall’origine o da un centro μj.

La forma di tali funzioni è la seguente:

φj(x) = φ(|| x – μj ||)
con j = 1, . . . ,n

Interpolazione esatta (segue)

E’ importante sottolineare che:

φ è una funzione, in genere, non lineare.
Una scelta tipica di tali funzioni è la gaussiana φ(x)=exp(-x2/2σ2)

|| x – μj || è, in genere, la distanza euclidea di x da un centro μj.

Interpolazione esatta (segue)

Dunque h(x) avrà la forma:

h(x) =∑j=1…n wj φj(x)

Il centro della funzione j-esima, nel caso di interpolazione esatta viene scelto uguale
al vettore di input j-esimo, cioè

μj = xj .

Interpolazione esatta (segue)

Ponendo:
φij = φj (xi)

la condizione di interpolazione prima imposta, cioè

h(xi) = ti

può essere espressa, come:

j=1…n wjφij = ti con i=1,2, …,n

Interpolazione esatta (segue)


Interpolazione esatta (segue)

Dove:

  • t e w sono vettori di dimensione n e;
  • φ è matrice quadrata n × n con φij corrispondente al valore di φj(x);

calcolato nel punto i-simo del Training Set.

Quindi sulla colonna j di φ ci sono i valori di φj(x) calcolati per tutti i punti del TS.

Interpolazione esatta (segue)

Importante

Una volta scelto il tipo di funzione di base φ da utilizzare,
il problema dell’interpolazione esatta si riduce alla stima
dei valori del vettore w.

Interpolazione esatta (segue)

Allora dalla formula

φ wT=t

Se φ è invertibile, si deduce che:

wT-1t

Quindi per la i-esima componente di w risulta che:

wi = ∑j=1..n-1)ij tj con i = 1, . . . ,n

Ovviamente è necessario verificare che per il tipo di funzione di base scelta l’inverso della matrice φ esista!

Interpolazione esatta (segue)

Il caso di un mapping da un insieme multi-dimensione ad uno monodimensionale può essere facilmente esteso al caso di un mapping fra due insiemi multi-dimensionali.

Si consideri, allora, un mapping da uno spazio input d-dimensionale X ⊆ Rd ad uno spazio target c-dimensionale Y ⊆Rc:

f : x ∈ X → y=f(x) ∈ Y

Interpolazione esatta (segue)

In tal caso ogni vettore di input xi dovrà essere mappato esattamente in un vettore di output ti di componenti ti1, ti2, . . . , tic.

Per cui l’equazione abbiamo:

hk(xi) = tik con i = 1, . . . ,n e k=1,2, …,c

dove hk(xi) è ottenuta sempre come combinazione lineare di funzioni a base radiale:

hk(x) =∑j=1…n wkjφj(x)

Interpolazione esatta (segue)

La condizione

hk(xi) = tik

diventa

j=1…n wkjφj(xi)= tik

con i = 1, . . . ,n e k=1,2, …,c

Che in forma matriciale compatta possiamo scrivere come

φWT=T

Interpolazione esatta (segue)


Interpolazione esatta (segue)

Quindi:

  • φ è una matrice nXn di valori conosciuti (una volta fissato il training set e le funzioni a base radiale).
  • W è una matrice cXn di coefficienti da determinare.
  • T è una matrice nXc dove la la j-sima riga di T corrisponde a tj.

Anche in questo caso, allora, se φ è invertibile, abbiamo

WT= φ-1T

Prossima lezione

Sulla base di quanto detto nella prossima lezione introdurremo:

  • Le reti neurali RBF
  • Contenuti protetti da Creative Commons
  • Feed RSS
  • Condividi su FriendFeed
  • Condividi su Facebook
  • Segnala su Twitter
  • Condividi su LinkedIn
Progetto "Campus Virtuale" dell'Università degli Studi di Napoli Federico II, realizzato con il cofinanziamento dell'Unione europea. Asse V - Società dell'informazione - Obiettivo Operativo 5.1 e-Government ed e-Inclusion

Fatal error: Call to undefined function federicaDebug() in /usr/local/apache/htdocs/html/footer.php on line 93