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.