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