Nella presente lezione vedremo:
Svantaggi dell’interpolazione esatta
Il modello delle reti neurali con funzioni a base radiale introduce le seguenti modifiche per superare i limiti dell’interpolazione esatta (1):
Il modello delle reti neurali con funzioni a base radiale introduce le seguenti modifiche per superare i limiti dell’interpolazione esatta (2):
Anche la determinazione dei parametri della funzioni a base radiali sarà parte
Applicate le modifiche prima descritte al Metodo dell’interpolazione esatta si perviene alla seguente espressione:
yk(x) =∑j=1…m wkjφj(x)+ wk0
dove l’interpretazione in termini di rete neurale è immediata (si veda figura).
Vediamolo nel dettaglio …
Elementi della rete RBF:
Elementi della rete RBF:
Elementi della rete RBF:
Nel caso in cui la φ è una Gaussiana l’output del k-simo nodo di output è pari a:
yk(x) =
∑j=1…m wkj exp(-||x – μj||/2σ2)+ wk0
Elementi della rete RBF:
Osservo che, evidentemente, la matrice W dcorrisponde alla matrice dei pesi tra lo strato dei nodi interni e lo strato dei nodi di output, cioè la k-sima riga di W corrisponde ai pesi delle connessioni che incidono sul k-simo nodo di output.
L’apprendimento di una rete neurale RBF avviene in due fasi:
Determinazione dei pesi del secondo strato.
A tale fine, possiamo considerare la nostra rete come una rete con un solo strato di pesi con input pari a φ1(x), φ2(x), …, φm(x).
In tal caso la determinazione di tali pesi può essere fatta con il metodo dei minimi quadrati.
Ricordo che la funzione di errore somma dei quadrati su tutti gli elementi del training set e su tutti gli output può essere scritta nel seguente modo:
E=(1/2) ∑n=1…N∑k=1…c(yk(xn)-tnk)2
Determinazione dei pesi del secondo strato.
Dato
E=(1/2) ∑n=1…N∑k=1…c(yk(xn)-tnk)2
dove yk(xn)=∑j=1…m wkjφj(xn)+ wk0 rappresenta l’output del nodo di output k in funzione del vettore input xn e della matrice dei pesi W.
Tale funzione di errore è una funzione quadratica dei pesi e dunque la sua derivata è una funzione lineare dei pesi.
E’, quindi, possibile trovare esattamente il minimo di tale funzione.
Determinazione dei pesi del secondo strato.
Prima di ricavare il minimo della funzione
E=(1/2) ∑n=1…N∑k=1…c(yk(xn)-tnk)2
nel caso generale, mostriamo una interpretazione geometrica del problema dei minimi quadrati in un caso semplice.
Come accennato precedentemente, fissati i parametri delle funzioni di base, la nostra rete può essere vista come una rete ad un solo strato di pesi in cui gli ingressi sono le risposte delle funzioni φj ai vettori x.
Di seguito supporremo che la rete abbia un solo nodo di uscita.
Per un particolare input φnj=(xn) l’output della rete sarà:
yn=∑j=0…m wjφj(xn)
Consideriamo, ora, gli n valori target del TS e raggruppiamo tali valori target per formare un vettore t di componenti t1, t2, . . . , tn.
Questo vettore apparterrà ad uno spazio Euclideo n-dimensionale, chiamiamolo D.
Per ogni funzione a base radiale possiamo ripetere lo stesso procedimento visto per t
ed ottenere m vettoriφj di componenti φ1j, φ2j, … , φnj.
Dove ciascun vettore φj , di dimensione n, giace nello stesso spazio n-dimensionale del vettore t.
Adesso supponiamo che il numero di funzioni di base (incluso il bias) sia minore
del numero di elementi del TS; ovvero sia m + 1 < n.
Gli m + 1 vettori φj , con j=0,1, …,m, corrispondenti alle m + 1 funzioni di base, giacciono in un sottospazio Euclideo S a m + 1 dimensioni (cioè i vettori φj definiscono un sottospazio S a m-dimensioni dello spazio a n-dimensioni D in cui giacciono i vettori stessi).
Anche gli output della rete possono essere raggruppati in un unico vettore y di dimensione n e componenti y1, y2 …, yn.
Osserviamo che:
y =∑j=0…m wj φj
cioè il vettore n-dimensionale y è una combinazione lineare degli m +1 vettori n-dimensionali φj.
Quindi y giace necessariamente nel sottospazio S.
Ricordiamo che noi vogliamo sempre che i seguenti vincoli siano soddisfatti:
yi = ti e, quindi, y = t
D’altra parte abbiamo visto che, in generale, t appartiene allo spazio n-dimensionale D e y allo spazio m dimensionale S.
Quindi affinché tali vincoli possano essere soddisfatta dovrebbe accadere che t giaccia nel sottospazio S, altrimenti non possono essere soddisfatti.
Nel caso in cui i vincoli precedenti non possono essere soddisfatti, cioè t non giace nel sottospazio S possiamo, però, sempre far si che i due vettori y e t siano il “più vicino possibile” cioè possiamo minimizzare la distanza tra i due vettori, cioè
∑k=1…n (yk-tk)2
Che altro non è che l’errore somma dei quadrati.
Vogliamo, quindi, trovare il vettore dei pesi w che minimizza la quantità:
∑k=1…n (yk-tk)2
Siccome il vettore y è obbligato a stare sul sottospazio S, la soluzione migliore, come detto, è quella che rende minima la distanza tra y e t che si ha nel caso in cui y coincide con la proiezione ortogonale di t su S.
Dunque in questa lezione abbiamo mostrato come calcolare i pesi del secondo strato di pesi di una rete RBF nel caso particolare in cui abbia un solo nodo di uscita.
Nel lezione successiva vedremo come calcolare tali pesi nel caso generale in cui la rete abbia c nodi di uscita.
1. Informazioni generali sul corso
3. Un modello computazionale del neurone biologico
4. Possibili problemi risolvibili con Reti Neurali
5. Problemi di Classificazione ed approccio probabilistico
7. Capacità rappresentativa delle reti neurali - parte prima
8. Capacità rappresentativa delle reti neurali - Parte seconda
9. Apprendimento e generalizzazione
10. Discesa del gradiente e backpropagation
11. Back-Propagation
13. Interpretazione output di una rete neural feed-forward
14. Complessità della rete, generalizzazione e termini di regolari...
15. Cross-entropy e variazioni sulla discesa del gradiente
16. Verso le reti neurali RBF: interpolazione esatta.
17. Reti neurali RBF
18. Addestramento di una rete RBF
19. Parametri delle funzioni a base radiale
20. Un primo modello di reti neurali ricorrenti: formalismo di Caia...