Capitolo 1 Analisi delle componenti principali
Transcript
Capitolo 1 Analisi delle componenti principali
Cap. 1 - Analisi delle componenti principali Draft Aprile 2000 2 Capitolo 1 Analisi delle componenti principali (PCA) 1.1 Introduzione Sintesi dei circuiti adattabili con approccio statistico e informativo Aurelio Uncini Uno dei problemi classici nel riconoscimento di configurazioni, Pattern Recognition, consiste nell’estrazione di informazione non ridondante dall’insieme delle osservazioni disponibili (Feature Extraction o Feature Selection). x∈RN y∈RM Feature extraction Classificatore Figura 1 - Sistema tipico per pattern recognition. Un approccio classico per l’estrazione lineare delle feature, strumento ben conosciuto in statistica, è noto con il nome di Principal Component Analysis (PCA). Dipartimento INFOCOM, Università di Roma “La Sapienza” Via Eudissiana,18 I-00184 ROMA La PCA ha origine in varie discipline scientifiche e ingegneristiche come la compressione e codifica dei dati, l’image processing, l’analisi in frequenza ad alta risoluzione, l’adaptive beamforming, nella modellazione e nei sistemi di controllo. Ha, inoltre, ricevuto nomi differenti in varie discipline come, ad esempio, Karuhunen-Loève Transform (KLT) o Hotteling Transform (HT) (nell’image processing). Lo sviluppo teorico per le PCA può essere formulato con approccio statistico o attraverso la Teoria dell’Informazione. Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Cap. 1 - Analisi delle componenti principali 3 1.2 Approccio statistico per PCA La PCA consiste nel determinare una trasformazione lineare ottima y=WTx, tale che determina le direzioni dei massimali della varianza dell’ingresso. x2 y1 y2 x1 Figura 2 – Direzioni della prima e della seconda Componente Principale, massimali della varianza nel caso in cui l’ingresso sia a media nulla. La PCA evidenzia le regolarità statistiche dei dati proiettando lo spazio degli ingressi originalmente di dimensione N su uno spazio di dimensione M, con M<N, denominato spazio di uscita, effettuando una riduzione della dimensionalità mantenendo, però quasi invariato il contenuto informativo utile. In altre parole, la PCA trasforma un elevato numero di dati correlati in ingresso in un insieme di componenti statisticamente incorrelate (features) e ordinate in accordo al loro contenuto informativo. Sia x∈RN, (x(t) = [x1(t), x2(t), …,xN(t)]T, l’indice temporale viene per semplicità omesso) un vettore di ingresso caratterizzato da una funzione di densità di probabilità pdf , p(x), stazionario e usualmente a media nulla, con matrice di autocorrelazione1 Rxx = E(xxT). Siano w1, w2, …, wM, gli autovettori di Rxx ortonormali (ovvero ortogonali e di lunghezza unitaria) tali che w1 = [w11, w12, …, w1M]T, corrisponde all’autovalore più grande λ1; Cap. 1 - Analisi delle componenti principali w2 = [w21, w22, …, w2M]T, corrisponde al secondo autovalore più grande λ2 , e così via; segue allora la seguente 1.2.1 Definizione di Principal Component Analysis La k-esima componente principale del vettore x d’ingresso è pari all’autovettore normalizzato wk (unitario) corrispondente all’autovalore λk della matrice di correlazione Rxx, quando gli autovalori sono in ordine decrescente. In altre parole l’equazione matriciale: Rxx wk = λk wk ; con k=1, 2, …, N; è soddisfatta per λ1≥λ2≥ ... ≥λΝ ≥ 0 e w k 2 =1 Teorema: direzioni principali La k-esima direzione principale del vettore x determinata dall’autovettore normalizzato wk, è tale che varianza ha un massimo verso quella direzione. Dimostrazione Per induzione dell’indice k. Caso k=1. Consideriamo un vettore unitario p con la direzione della prima componente principale; la varianza σ 12 è data da: σ 12 = E ((pT x)2 ) = E (pT xxT p ) = pT R xxp dove p = (pT p)1/ 2 = 1 N Esprimendo la matrice di correlazione come: R xx = ∑ λi w i w Ti , e i =1 sostituendo nell’espressione precedente; otteniamo: 1 Nel caso x non sia a media nulla, si utilizza la matrice di autocovarianza definita come: Qxx = E((x-E(x))(x-E(x))T). Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini 4 Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Cap. 1 - Analisi delle componenti principali 5 Cap. 1 - Analisi delle componenti principali W=[w1, w2, …, wM]T ∈RMxN N σ 12 = pT R xxp = pT (∑ λi w i w Ti )p = i =1 N = ∑ λi (pT w i ) 2 . W rappresenta la Trasformazione di Karhunen-Loève dello spazio d’ingresso x. In questo caso è facile provare che: i =1 Per definizione la direzione della PCA è quella che massimizza la varianza. Dalla precedente espressione il max(σ 12 (p,w1)) implica il parallelismo tra i vettori p e w , ovvero, p = ± w1 e quindi: σ 12 = w1T R xx w1 = λ1 . Per induzione e assumendo che le componenti principali da 1 a k-1 siano lungo le direzioni dei primi k-1 autovettori, la k-esima PCA normalizzata dovrà essere perpendicolare ai primi k-1 autovettori: pTk w i = 0 , per i=1, …, k-1. Massimizzando la varianza rispetto alla k-esima direzione, max(σ k2 (p,wk)), principale si ottiene: pTk w i = ±1 per i=k pTk w i = 0 per i≠k. Ne segue la prova che pk=wk e che σ k2 =λk c.v.d. Osservazione Le righe della matrice di trasformazione W sono gli autovettori della matrice di correlazione. Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini 6 WWT = WT W = I ; e che per M=N la matrice di correlazione delle componenti in uscita Ryy è data da: Ryy = W RxxWT = Λ; o in forma espansa: λ per k = j w Tj R xx w k = j 0 per k ≠ j dove λ1 0 0 0 λ 2 = λN 0 La matrice W è ortogonale nel senso che i suoi vettori riga (cioè gli autovalori di Rxx) soddisfano la condizione di ortonormalità: 1 per i = j w Ti w j = 0 per i ≠ j La matrice di covarianza (Ryy = Λ) dell’uscita è diagonale con le componenti in ordine decrescente. Questo implica che le PCA decorrelano linearmente le uscite. La varianza di ogni componente dell’uscita corrisponde all’autovalore della matrice di covarianza di ingresso. Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Cap. 1 - Analisi delle componenti principali 7 L’utilità delle PCA dipende dalla scalatura delle coordinate d’ingresso (scaling problem). Il problema è più evidente quando i dati di ingresso hanno ampiezze tra loro molto differenti. Una tecnica per ovviare a questo inconveniente, consiste nel normalizzare tutte le variabili a varianza unitaria. Questo metodo, però, non ha una giustificazione teorica. 1.2.3 Riduzione della dimensione: formule di analisi e di sintesi Definiamo la proiezione di x sul vettore unitario wj che identifica la j-esima direzione principale come: aj=xTwj=wjTx ; Le componenti aj sono definite come componenti principali; esse hanno le stesse dimensioni del vettore dei dati di ingresso. La precedente espressione può essere vista come formula di analisi. Per ricostruire il vettore originale x partendo dalle proiezioni aj si procede in questo modo: 1) si combinano le proiezioni aj in un unico vettore a = [a1, a2, …, aN] = [xTw1, xTw2, …, xTwN] = WTx ; 2) si premoltiplicano entrambi i membri della precedente espressione per la matrice W: Cap. 1 - Analisi delle componenti principali N = ∑ a jw j . j =1 Quest’ultima espressione può essere vista come formula di sintesi, nel senso che i vettori unitari wj, rappresentano una base dello spazio dei dati. Nel contesto del pattern recognition e della compressione dei dati, le PCA consentono una effettiva riduzione della dimensione dello spazio dei dati. In particolare si può ridurre il numero delle features necessarie per una effettiva rappresentazione del dato in ingresso scartando le combinazioni lineari a bassa varianza. Siano λ1, λ2, ..., λm. gli autovalori più grandi della matrice di covarianza Rxx è possibile approssimare il dato x troncando a m la l’espansione m x ' = ∑ a jw j , Ricordando che WW =I ne segue che x = Wa Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini con m<N j =1 L’errore di approssimazione e può essere definito come: e = x − x ' . E’, immediato verificare che e= N ∑aw j j = m +1 j . Una proprietà, derivante dalle condizioni di ortonormalità illustrate precedentemente, è che l’errore di approssimazione e è ortogonale al vettore approssimante x’. Ovvero il prodotto interno tra e e x’ è nullo: Wa = WWTx T 8 eT x ' = N ∑ i = m +1 m ai w i ∑ a j w j = j =1 N m ∑ ∑a a w w i = m +1 j =1 i j i j =0 Quest’ultima espressione è nota come principio di ortogonalità. Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Cap. 1 - Analisi delle componenti principali 9 La varianza totale delle N componenti del vettore x, è data da N N j =1 j =1 ∑σ 2j = ∑ λ j dove σ 2j è la varianza della j-esima componente principale aj. e x x’ Figura 3 – Relazione tra i vettori dei dati x, la sua ricostruzione x’, e il vettore errore e. Principio di ortogonalità. La riduzione della dimensione dei dati d’ingresso è denominata subspace decomposition, Oja2, (1983). 1.2.3 Calcolo della correlazione Nella pratica la distribuzione di x non è nota e l’autocorrelazione è stimata considerando le medie temporali 1 N 1 R xx ≅ R xx = ∑ x(k )x(k )T = XXT N k =1 N dove X è la matrice NxN dei dati d’ingresso Cap. 1 - Analisi delle componenti principali la stima della Rxx non è più necessaria. Tale metodo è, inoltre, adeguato quando il segnale di ingresso è (poco) tempo variante, in quanto la stima on-line riesce a seguire i cambiamenti della statistica dell’ingresso. 1.2.4 Relazione tra PCA e decomposizione in valori singolari3 (SVD) E’ importane osservare la relazione tra PCA e decomposizione in valori singolari della matrice X : X=USVT. Gli elementi della matrice diagonale S, definiti come valori singolari di X, sono proporzionali alla radice quadrata degli autovalori di Rxx, mentre gli autovettori principali di Rxx, corrispondono ai primi M vettori colonna della matrice U. 1.2.5 Definizione di PCA dovuta a Comon4 Sia x∈RN, (x(t) = [x1(t), x2(t), …,xN(t)]T) un vettore caratterizzato da una funzione di densità di probabilità pdf , p(x), e matrice di covarianza Qxx finita; si definisce PCA la coppia di matrici (F,D) tali che: i) Qxx =FD2F dove D ∈R+(MxM) è diagonale con elementi >0 e F ∈R(NxM), è a rango pieno M; ii) F∈R(NxM), è ortogonale, ovvero, FTF è diagonale; X = [ x(1), x(2), …, x(N)]. Se il vettore ha dimensione elevata, la matrice Rxx risulta essere molto grande così da determinare una certa difficoltà computazionale. Un approccio alternativo al calcolo delle PCA, che verrà discusso in seguito, usa una tecnica adattativa che consente una stima on-line degli autovettori di Rxx direttamente dai dati di ingresso x(k), per k=1, 2, …, N. Con questo approccio 10 iii) le colonne di F sono arrangiate in modo tale che gli elementi di D appaiono in ordine decrescente; iv) i vettori colonna di F sono normalizzati, ovvero, , FTF=I. 3 2 E. Oja: Subspace Methods of Pattern Recognition. John Wiley & Sons, New York, 1983. A. Cichocki, R.Unbehauen: Neural Networks for Optimization and Signal Processing. Wiley and sons, 1993. 4 P. Comon: Principal Component Analysis, a new concept?. Signal Procssing, Vol. 36, pp. 287-314, 1994. Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Cap. 1 - Analisi delle componenti principali 11 1.3 Algoritmi per Reti Neurali e PCA 1.3.1 Introduzione Precedentemente abbiamo visto che la PCA permette una riduzione ottima della dimensionalità (nel senso del’errore ai minimi quadrati) proiettando lo spazio dei dati di ingresso in un appropriato sottoinsieme delle componenti principali (proprietà di compressione). Alcuni algoritmi, basati su architetture neurali con apprendimento supervisionato o non supervisionato, realizzano direttamento quest’ultima proprietà. Cap. 1 - Analisi delle componenti principali Dimostreremo come alcuni algoritmi di apprendimento non supervisionato esistenti possono essere derivati da una classe più generale di algoritmi denominata stabilized Hebbian5 learning. La trasformazione lineare y = xTW = WTx, può essere interpretata come una rete neurale con un singolo strato. x1 x∈R w11 x2 x1 x2 12 y=∈RM x∈RN x∈RN wN1 wN2 N xN wNM Figura 5 – Architettura neurale a singolo strato lineare per PCA. I pesi della rete W descrivono la trasformazione. xN y∈RM 1.3.2 Figura 4 – La configurazione a “clessidra-lineare” può essere usata per l’estrazione delle PCA. In ingresso e in N uscita viene applicato lo stesso segnale x∈R . Le coppie di training set sono Cts = (x,x). L’uscita viene prelevata dallo strato nascosto di dimensione M<N. Approssimazione Stocastica Generale Plumbley6 (1991) Considerando la rete neurale di figura 5, in cui y = WT x , la costruzione del sottospazio principale, fatta in modo iterativo, consiste nell’aggiornamento della matrice N x M dei pesi W con l’algoritmo: 5 In questa sezione si introducono alcuni concetti fondamentali relativi all’apprendimento non supervisionato correlati alla decomposizione PCA. Nell’apprendimento Hebbiano la regola di apprendimento è del tipo: Wn+1 = Wn + ηf(x,y). 6 M. Plumbley: On Information Theory and Unsupervised Neural Networks. Technical Report CUED/F-INFENG/TR. 78, Cambridge University Engineering Department,UK, 1991. Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Cap. 1 - Analisi delle componenti principali Wn +1 = Wn + ηn ∆Wn + O (ηn2 ) ∆Wn = W xx − Wn, n T n T 13 (1) L’analisi della convergenza, della regola di apprendimento, risulta matematicamente piuttosto difficile in quanto la (1) rappresenta una equazione alle differenze finite non lineare stocastica. Definendo proiezione ortogonale la matrice: -1 Pn +1 = Pn + ηn ∆Pn + O (ηn2 ) 14 (2) dove ∆Pn = Pn A n (I − Pn ) + (I − Pn ) A n Pn ; e A n = xxT . dove , n è una matrice MxM che può essere funzione di Wn o di x. Il termine xxT Wn è il termine Hebbiano, mentre il prodotto −Wn, n , è un termine necessario per la stabilizzazione del processo di apprendimento forzando i pesi a decadere dopo un certo tempo se non sono usati (forgetting or weight decay term). Il termine O(ηn2 ) indica gli effetti di secondo ordine e superiori rispetto a η. Per η piccolo tale effetto può essere trascurato. T Cap. 1 - Analisi delle componenti principali T Pn = Wn (Wn Wn) Wn , Plumbley (1991), ha mostrato che ogni algoritmo di apprendimento della classe descritta dalla equazione (1), conduce a identiche condizioni di convergenza della proiezione ortogonale Pn nel range di Wn, indipendentemente dalla scelta di , n . Si osservi inoltre che per definizione, P2n = Pn e PTn = Pn . I seguenti due teoremi dimostrano come le proiezione Pn converge a PM cioè nello spazio principale M-dimensionale di Rxx. Dimostrazione Definiamo la matrice ausiliaria Qn come: Q n = WnT Wn per la (1) segue che: Q n +1 = Q n + ηn ∆Q n + O (ηn2 ) dove ∆Q n = WnT ∆Wn + (∆WnT ) Wn . Se ηn Q −n1 << 1 ∀n , allora: Q −n1+1Q n +1 = I = Q −n1+1 (Q n + ηn ∆Q n + O (ηn2 )) risolvendo quest’ultima rispetto a Q −n1+1 , si ottiene: Q −n1+1 = Q −n1 − ηnQ n−1 ( ∆Q n )Q −n1 + O(ηn2 ) . Risulta quindi possibile scrivere la l’equazione di aggiornamento della proiezione Pn nel seguente modo: Pn +1 = Wn +1 ( WnT+1Wn +1 ) −1 WnT+1 = ( Wn + ηn ∆Wn + O (ηn2 ))Q −n1+1 ( Wn + ηn ∆Wn + O (ηn2 )) = Pn + ηn ∆Pn + O (ηn2 ) Teorema: Algoritmo - Pn dove ∆Pn = Pn A n (I − Pn ) + (I − Pn ) A n Pn Se (WnT Wn) è invertibile e ||WnT Wn|| e ||(WnT Wn)-1|| sono entrambi limitati per ogni n, l’algoritmo descritto dalla (1) per Wn+1, implica la seguente espressione per l’aggiornamento della proiezione Pn+1 c.v.d. Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Cap. 1 - Analisi delle componenti principali 15 L’equazione iterativa (2) converge “quasi sicuramente” alla soluzione asintoticamente stabile della seguente equazione differenziale ordinaria: algoritmi e denominata “stochastic L’equazione (3) esegue la discesa del gradiente (steepest descente search) della funzione di errore ai minimi quadrati di ricostruzione (LSE), definito come: { LSE = E x - Px 2 } Dimostrazione L’errore di ricostruzione può essere scritto come: LSE = E {( x - Px)T ( x - Px)} = tr ((I - P) R xx (I - P)) poiché (I-P)2 = (I-P), segue: LSE = tr ((I - P )R xx ) Derivando entrambi i membri dell’uguaglianza P=P2 : La derivata temporale dell’LSE può adesso essere scritta come: dP d ( LSE ) = −tr R xx dt dt Teorema: Convergenza a PM dP = PR xx (I − P) + (I − P)R xx P , dt dP P = 0 , e perciò dt dP dP dP (I − P ) . P+P = (I − P ) dt dt dt se An e ηn, soddisfano certe “ragionevoli” condizioni. di 16 dP dP dP ; P+P = dt dt dt la precedente espressione implica che: P dP = PR xx (I − P) + (I − P)R xx P dt Questa classe approximation”. Cap. 1 - Analisi delle componenti principali dP dP = −tr (I - P ) P + P (I - P) R xx dt dt dP = −tr ( PR xx (I - P ) + (I - P )R xx P ) dt Usando l’equazione (3), quest’ultima può essere scritta come: 2 dP T dP d dP R = −∑∑ ( LSE ) = −tr ≤0 dt dt xx dt dt i j ij L’uguaglianza della precedente espressione può essere ottenuta per (dP/dt) = 0, ovvero la condizione di convergenza è data da: dP PR xx (I - P ) = P =0 dt che è equivalente a: PR xx = PR xx P ; dalla simmetria di P e Rxx, segue la relazione di commutazione: Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Cap. 1 - Analisi delle componenti principali 17 PR xx = PR xx ne segue, quindi, che a convergenza, P e Rxx, hanno gli stessi autovettori. Conseguentemente, P deve per forza essere una proiezione ortogonale nello spazio descritto dal più grande autovettore di Rxx, ovvero P converge a PM. Cap. 1 - Analisi delle componenti principali Si può osservare che l’algoritmo di Oja è un caso particolare dell’algoritmo di Plumbley per M=1 e , n = y 2 . La soluzione converge, quindi, all’autovettore unitario w1 con y = σ 12 . c.v.d 1.3.3 First Principal Componenent Analysis Regola di apprendimento di Oja7 (1982) 18 x1 Oja nel 1982 ha proposto un algoritmo di apprendimento non supervisionato per RN lineari con un solo strato che, come vedremo, può essere considerato come un caso particolare dell’approccio di Plumbley, per determinare la prima componente principale o First Principal Componenent Analysis (FPCA). L’algoritmo combina la regola di Hebb e una normalizzazione dei pesi della rete dopo ogni passo di apprendimento. x1 w1 x2 w2 xN wN η N y = ∑ wk xk k =1 a) z-1 w1,n N y = ∑ wk xk k =1 La regola di apprendimento Hebbiana è definita come: Wn′+1 = Wn + η xy xN mentre la normalizzazione come: Wn +1 = Wn′+1 Wn′+1 2 η z-1 wN,n . L’apprendimento è ottenute dalla approssimazione combinazione delle due equazioni precedenti Wn +1 = Wn + η[ xy − Wn y 2 ] + O(η 2 ) = Wn + η[ WNT xxT − Wn y 2 ] + O (η 2 ) b) della . Figura 6 – a) Signal Flow Graph (SFG) dell’architettura circuitale a singolo strato lineare, neurone di Oja, per la determinazione della prima PCA. b) SFG completo con il calcolo dell’uscita apprendimento. 7 E. Oja: A Simplified Neuron Model as a Principal Component Analyser. Journal of Mathematical Biology, 15 267-73, 1982. Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Cap. 1 - Analisi delle componenti principali 19 Osservazione Nell’algoritmo di Oja l’uscita y converge alla prima componente principale. Per M=1, la matrice W equivale a un vettore w che converge al primo autovettore di Rxx. La rete di Oja, infatti, ha un solo neurone e ricava solo la prima componente principale. Trascurando il termine O(η 2 ) , la regola di apprendimento originale di Oja è: wi , n +1 = wi , n + η[ xi , n yn − yn2 wi , n ] ∆wi ,n+1 = wi ,n+1 − wi ,n = η[ xi ,n yn − yn2 wi ,n ]; Cap. 1 - Analisi delle componenti principali 20 dove diag(.), diagonal, indica l’operatore che mette a zero tutti gli elementi non sulla diagonale e SUT(.), Strictly Upper Triangular, è l’operatore che mette a zero tutti gli elementi sulla diagonale principale e quelli al disotto di essa. Plumbley ha mostrato che con tale scelta per la , n e per qualunque altra scelta che soddisfa: , n + ,Tn = 2\\ T ; l’algoritmo converge a una matrice ortonormale di pesi, costituita con gli M autovettori della matrice di correlazione Rxx. Regola di apprendimento di Sanger9 (1989): the Generalized Hebbian algorithm come illustrato dell’SFG di figura 6. 1.3.5 1.3.4 Regola di apprendimento di Oja - Karhunen8 (1985) Sanger nel 1989, ha proposto una ulteriore regola di apprendimento, The Generalized Hebbian algorithm (GHA), in cui la matrice , n , assume la forma: L’algoritmo presenta una generalizzazione alla regola di Oja che consente il calcolo delle prime M componenti PCA corrispondenti agli autovettori della matrice di correlazione Rxx dello spazio d’ingresso. In questo caso la rete che effettua la trasformazione y=WTx è composta da M neuroni. Il metodo, basato sulla ortogonalizzazione di Gram-Schmidt, può essere ottenuto dalla regola di approssimazione generale stocastica: Wn +1 = Wn + ηn ∆Wn + O (ηn2 ) ∆Wn = WnT xxT − Wn, n ; ponendo: , n = diag(\\ T ) + 2SUT(\\ T ) ; , n = 2SU T(\\ T ) il training di ogni neurone usa informazione che non è locale. 1.3.6 Reti con connessioni inibitorie10 Una strutture di rete particolarmente interessante largamente utilizzata in varie applicazioni neurali, è quella che combina connessioni di tipo feedforward e connessioni di tipo feedback. Per questo tipo rete, è possibile pensare ad un apprendimento non supervisionato che combina una parte Hebbiana per i pesi tipo feedforward e una parte anti-Hebbiana per le connessioni di 9 E. Oja and J. Karhunen: On Stochastic Approximation of the Eigenvectors and Eigenvalues of the Expectation of a Random Matrix. Journal of Mathematical Analysis and Applications, 106,69-84, 1985. T. Sanger: Optimal Unsupervised Learning in a Single-Layer Feedforward NeuralNetwork. Neural Networks, 2,459-473, 1989. 10 P. Foldiák: Adaptive Network for Optimal Linear Feature Extraction. IJCNN Vol I, pp 401 – 404, 1989. Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini 8 Cap. 1 - Analisi delle componenti principali 21 retroazione che determinano un abbassamento della correlazione tra le uscite della rete stessa. Tale osservazione ha motivazioni dovute anche ad osservazioni sulla corteccia cerebrale biologica11. x1 Cap. 1 - Analisi delle componenti principali Calcolo dell’uscita Dalla figura 8, segue che l’uscita del generico neurone è: N M j =1 j =1 yi = ∑ w ji x j + ∑ u ji y j , w11 x2 22 i = 1, 2, ..., M ; y1 u1k wN2 yM uMk wNM In forma vettoriale, l’uscita della rete può essere calcolata con la seguente espressione: y = W T x + UT y ; u2k wN1 xN y2 dove W rappresenta la matrice dei pesi NxM della rete; mentre U è la matrice MxM delle connessioni laterali che, dipendentemente dalla topologia, della rete assume forme o simmetrie particolari. Apprendimento Figura 7 – Rete neurale generica usata per derivare algoritmi di tipo Hebbiano/anti-Hebbiano. x1 x2 w1i u(i-2)i u(i-1)i w2i Attività pre-sinaptiche yi xN wNi u(i+1)i Attività post-sinaptiche L’algoritmo di adattamento per rimuovere le correlazioni tra le uscite proposto da Foldiák, prevede una inizializzazione delle matrici dei pesi con numeri casuali piccoli mentre i pesi delle connessioni laterali vengono posti, invece, inizialmente tutti a zero (uii=0). L’aggiornamento per i pesi W è simile a quello proposta da Oja: ∆wji=β(xiyj - ujiyi2) mentre per le connessioni feedback si utilizza una regola antiHebbiana classica: ∆uji=-αyiyj, Figura 8 – Generico neurone della rete con connessioni laterali di figura 7. 11 per j ≠ i. Le connessioni uii non vengono aggiornate e quindi hanno sempre valore nullo ovvero, non sono previsti feedback locali sullo neurone stesso. In genere α=β e sono scelti “abbastanza” piccoli (<0.1). H. Barlow, P. Foldiák: Adaptation and decorrelation in the cortex. In The Computing Neuron, Addison-Wesley, 1989. Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Cap. 1 - Analisi delle componenti principali 23 Cap. 1 - Analisi delle componenti principali 24 La regola anti-Hebbiana, afferma che la “forza” del peso sinaptico viene diminuita se le corrispondenti pre e post attività sinaptiche hanno lo stesso segno. In altre parole, l’aggiornamento dei pesi sinaptici dovuto alle connessioni laterali, è proporzionale alla attività di due neuroni ma con segno opposto (inibizione). L’algorimo APEX (Adaptive Principal-component EXtractor), proposto da Kung e Diamantaras12 calcola, invece, in modo locale e ricorsivo, la m-esima componente principale più grande, note le altre m-1 componenti (già determinate precedentemente dagli altri neuroni). 1.3.7. Algoritmo di apprendimento APEX L’attivazione di ogni neurone e una funzione lineari degli ingressi: La regola di adattamento proposta da Foldiák prevede che sia i pesi della connessione in avanti W che quelli di feedback U, contribuiscono al calcolo dell’uscita. La rete non produce esattamente le PCA ma determina una insieme di vettori (effettuando una generica trasformazione lineare T) in una spazio simile, ma non uguale a quello delle PCA. x1 w11 x2 y1 u1m ym= wTx + uTy dove x=[x1, x2, …, xN]T e y=[y1, y2, …, ym-1]T; ovvero, in forma scalare: N m j =1 j =1 ym = ∑ w jm x j + ∑ u jm y j , m = 1, 2, ..., M ; L’algoritmo di apprendimento è locale (agisce su un neurone alla volta) ed è di tipo Hebbiano per quanto riguarda le connessioni feedforward: w jm , n +1 = w jm , n + β [ ym , n x j , n - w jm , n ym2 , n ], y2 m = 1, 2, ..., M ; j = 1, 2, ..., N ; u2m w2m wNm y3 u3m la regola, infatti, è la stessa proposta da Oja. Per i pesi sinaptici laterali ujm, la regola di apprendimento è di tipo anti-Hebbiano, ovvero di natura inibitoria: u jm, n +1 = u jm, n − γ ( ym, n y j , n + u jm, n ym2 , n ), ym wN1 Figura 9 – Modello multi-uscita per APEX. Le linee a tratto continuo denotano i pesi wjm e ujm usati per l’apprendimento dell’ m-esimo stadio. j = 1, 2,..., m − 1. La seconda equazione rappresenta l’orthogonal learning rule, l’opposto, cioè, della regola di Oja: i pesi ujm, sottraggono le prime m-1 componenti dall’uscita m-esima che tende a diventare ortogonale (piuttosto che correlata) a tutte le altre m-1 uscite (componenti). 12 S.Y. Kung, K.I. Diamantaras: A neural network learning algorithm algorithm for adaptive principal componente extraction (APEX). ICASSP, 1990, Vol. 2, 1990. Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Cap. 1 - Analisi delle componenti principali 25 Cap. 1 - Analisi delle componenti principali 26 In genere le costanti di apprendimento sono identiche: η=γ=β. ii) In forma vettoriale, l’uscita della rete può essere calcolata con la seguente espressione: Con tali ipotesi l’algoritmo APEX converge per n → ∞ a: y = W T x + UT y ; le matrici delle connessioni W e U vengono inizializzate con valori sufficientemente piccoli. lim U n = 0, n →∞ lim Wn = F, n →∞ lim E (y n y Tn ) = D; n →∞ dove W rappresenta la matrice dei pesi N x M della rete; mentre U è la matrice M x M delle connessioni laterali che, per la topologia della rete APEX (vedi figura 9), risulta essere di tipo SUT13 dove con la coppia (F,D) abbiamo indicato le PCA del vettore x, secondo la definizione di Comon. L’algoritmo in forma vettoriale assume la forma: Per aumentare le prestazioni della rete, velocità di convergenza e prestazioni, è possibile scegliere il passo di apprendimento come adattabile secondo la legge: Wn +1 = Wn + ηn ∆Wn + O (ηn2 ) ∆Wn = WnT xxT − Wn, n ; η k , n +1 = che è la stessa proposta da Oja – Karhunen8. Per le connessioni laterali la regola di apprendimento di tipo antiHebbiano in forma vettoriale diventa: U n +1 = U n − ηn ∆U n + O (ηn2 ) ∆U n = 2SUT( yxT Wn ) − U, n ; dove sia per i pesi che per le connessioni laterali si inserisce il termine , n = diag(\\ T ) che, come nei casi precedenti, assicura la stabilità dell’algoritmo. Kung e Diamantaras12, hanno dimostrato la convergenza dell’apprendimento quando: i) η è scelto sufficientemente piccolo (tipicamente η<0.1) in modo da assicurare che l’adattamento sia asintoticamente stabile; ηk , n . γ + yk2, nηk , n La regola anti-Hebbiana forza le uscite della rete ad essere meno correlate tra loro. Durante l’adattamento, infatti, le uscite tendono a essere sempre meno correlate mentre i pesi delle connessioni laterali ujm, tendeno gradualmente a zero. 1.4 Conclusioni L’importanza delle reti neurali deriva dal fatto di poter “imparare” dall’ambiente circostante attraverso una processo di apprendimento in grado di migliorare le prestazioni della rete stessa secondo un qualche criterio. In questo capitolo, abbiamo visto un primo esempio di apprendimento non supervisionato o auto organizzante in grado di evidenziare alcune proprietà relative ai dati in ingresso alla rete stessa. 13 In particolare si è posta l’attenzione su una problematica tipica del riconoscimento di configurazioni, che riguarda la selezione delle Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini Matrice con elementi sulla diagonale principale e al disotto di essa, tutti a zero. SUT è l’acronimo di Strictly Upper Triangular Cap. 1 - Analisi delle componenti principali 27 caratteristiche salienti dei dati in analisi: problema delle feature extraction. In generale questo obbiettivo coincide con il ricercare una rappresentazione compressa dei dati che preservi al massimo tutta l’informazione in essi contenuta. Abbiamo visto come tale compito possa essere svolto considerando una decomposizione in un sottospazio dei dati in ingresso e considerando le prime M componenti principali (PCA). La rappresentazione attraverso le PCA consiste in una trasformazione lineare seguita da una riduzione della dimensionalità. Il procedimento consente una compressionerappresentazione dei dati ottima nel senso dei minimi quadrati. In generale la rete per le PCA decorrela le uscite e, di conseguenza, facilita il compito della classificazione. Un applicazione tipica delle reti PCA è quella di pre-processamento al fine di facilitare l’apprendimento (che può essere anche di tipo supervisionato) della rete di calssificazione (per es. di tipo MLP). x∈RN y∈RM Rete PCA Classificatore Rete MLP super visionata Figura 11 – Modello misto: rete PCA e MLP. Se gli ingressi della rete di classificazione sono incorrelati, l’algoritmo di apprendimento della rete di classificazione converge meglio e prima (vedi problema dell’eigenspread degli autovalori nel caso del filtraggio adattativo). Le reti per PCA sono, inoltre, importanti per un insieme di argomenti correlati quali, ad esempio: la cluster analysis e la modellazione dei fenomeni percettivi. Materiale per il corso Teoria dei CircuitiII, Prof. A. Uncini