Sei sulla pagina 1di 9

Gaussian Process Regression e Classification su Grafi

rev 04/04/2019

Filippo Maria Castelli

Abstract— La Gaussian Process Regression (GPR) e Gaussian scriviamo in forma abbreviata N (µ, Σ)
Process Classification (GPC) sono tecniche di regressione e Considerando un vettore random x ∈ Rn con x ∼
classificazione Bayesiana storicamente utilizzate in spazi eu- N (µ, Σ), ipotizziamo che le variabili in x siano divise in
clidei Rn . In letteratura si trovano esempi di kernels su grafi
definiti a partire dal Laplaciano, il cui utilizzo nel framework due set:
dei Gaussian Process rende possibile utilizzare le tecniche di xA = [x1 , . . . , xr ]T ∈ Rr
GPC e GPR, già diffuse per gli spazi euclidei, per ottenere (2)
risultati per processi definiti sui vertici di un grafo. xB = [xr+1 , . . . , xn ]T ∈ Rn−r

I. I NTRODUZIONE in modo tale da avere


   
Gli algoritmi di Gaussian Process Regression and XA µ
x= ,µ = A
Gaussian Process Classification, che qui qui presentiamo XB µB
  (3)
in un’applicazione su grafi, sono algoritmi di learning ΣAA ΣAB
Σ=
Bayesiano: a differenza degli algoritmi di learning ”classici”, ΣBA ΣBB
che  
per il fatto che Σ = E (x − µ)(x − µ)T abbiamo che
1) risolvono un problema di ottimizzazione convessa per
ΣAB = ΣTBA .
identificare un modello di ”best fit” per spiegare i dati
Valgono le seguenti proprietà:
e poi R
2) utilizzano tale modello per effettuare predizioni su 1) Normalizzazione : x p(x; µ, Σ)dx = 1
punti di input futuri 2) Marginalizzazione : Le densità di probabilità
marginali
gli algoritmi Bayesiani non cercano il modello di ”best Z
fit” ma calcolano una distribuzione a posteriori sui modelli
p(xA ) = p(xa , xb ; µ, Σ)dxB
condizionata alle misure effettuate. La differenza di approc-
cio permette agli algoritmi Bayesiani di utilizzare queste ZxB (4)
distribuzioni, oltre che per trovare un modello che spieghi p(xB ) = p(xa , xb ; µ, Σ)dxA
xA
i dati, anche di stimare l’incertezza legata alle previsioni del
modello stesso. sono Gaussiane.
Gli algoritmi di Gaussian Process Regression e Gaus- 3) Sono Gaussiane:
sian Process Classification sono algoritmi di regressione xA ∼ N (µA , ΣAA )
(l’obiettivo è imparare un mapping di un certo spazio di (5)
xB ∼ N (µB , ΣBB )
input A ∈ Rn ad uno spazio B ∈ R di target a valori reali )
e di classificazione ( concettualmente non troppo dissimile, 4) Distribuzioni Condizionali: le densità di probabilità
se non per il fatto che lo spazio di output rappresenta una condizionali
probabilità e i valori di training sono label binarie ). p(xa , xb ; µ, Σ)
p(xA |xB ) = R
II. P REMESSE xA
p(x a , xb ; µ, Σ)dxB dxA
(6)
Di seguito introduciamo alcuni concetti necessari a com- p(xa , xb ; µ, Σ)
p(xB |xA ) = R
prendere il problema della GPR e GPC. xB
p(xa , xb ; µ, Σ)dxB dxA
A. Gaussiane Multivariate sono anch’esse Gaussiane con medie e varianze date
Per cominciare partiamo dalla definizione di Gaussiana da:
Multivariata e di alcune sue importanti proprietà: xA |xB ∼ N (µA + ΣAB Σ−1 −1
BB (xB − µB ), ΣAB ΣBB ΣBA )
Una variabile vettoriale stocastica x ∈ Rn è detta avere xB |xA ∼ N (µB + ΣBA Σ−1 −1
AA (xA − µA ), ΣBA ΣAA ΣAB )
una distribuzione normale (Gaussiana) multivariata con me- (7)
dia µ ∈ Rn e matrice di covarianza Σ ∈ Sn++ 1 se
5) Somma di Distribuzioni: La somma di variabili in-
1 − 21 (x−µ)T Σ−1 (x−µ) dipendenti y ∼ N (µ, Σ) e z ∼ N (µ0 , Σ0 ) è anch’essa
p(x; µ, Σ) = e (1)
(2π)n/2 |Σ| Gaussiana:
1 Con Sn
++ indichiamo lo spazio delle matrici definite positive n × n y + z ∼ N (µ + µ0 , Σ + Σ0 ) (8)
B. Distribuzioni di Probabilità su Funzioni a Dominio Finito Per quanto riguarda m(·) questa può essere una qualsiasi
Sia X = {x1 . . . xm } un set finito di elementi, ora pren- funzione a valori reali, mentre per k(·, ·) è possibile di-
diamo il set H di possibili funzioni che mappino X → R, mostrare che le uniche funzioni di covarianza valide devono
dal momento che il dominio di una qualsiasi f (·) ∈ H è generare matrici di Gram
composto di m elementi, possiamo rappresentare f (·) come 
k(x1 , x1 ) . . . k(x1 , xm )

T
un vettore m-dimensionale f~ = [f (x1 ), f (x2 ), . . . , f (xm )] . .. .. ..
K= (12)
 
Possiamo ipotizzare una distribuzione di probabilità sulle . . . 
funzioni f (·) ∈ H usando la corrispondenza biunivoca k(xm , x1 ) . . . k(xm , xm )
tra le f (·) ∈ H e le loro rappresentazioni vetoriali f~, in simmetriche e semidefinite positive per un qualasisi set di
particolare possiamo specificare f~ ∼ N (~ µ, σ 2 I) avendo una punti x1 , . . . , xm . Sempre dalla teoria ci viene che, utiliz-
distribuzione di probabilità sulle f (·) data da zando il Teorema di Mercer, possiamo utilizzare come ma-
m trici di covarianza l’intero repertorio dei kernel semidefiniti
Y 1 1 2
positivi, di cui quelli definiti su Rn sono ben noti nel contesto
p(h) = √ e(− 2σ2 (f (xi )−µi )) (9)
i=1
2πσ delle SVM e di cui riportiamo alcuni esempi:
0 σ
• Costante: k(x, x ) = e
Possiamo ora descrivere una distribuzione di probabilità 0
PD σd
• Lineare: k(x, x ) = d=1 e x d , xd
su funzioni a dominio finito rappresentandola usando una
0 σf − 21 eσl (x−x0 )2
Gaussiana Multivariata a dimensione finita sulle funzioni • Gaussiano:k(x, x ) = e e
0 −2eσl sin2 σν π(x−x0 )
di output f (x1 ), . . . , f (xm ), per un numero finito di input • Periodico: k(x, x ) = e

x1 ...xm . Un minimo approfondimento sui kernel sarà fornito più


Come possiamo ottenere la stessa cosa quando il dominio avanti quando introdurremo i Graph Kernels.
della funzione ha cardinalità infinita? Per rispondere a questo
III. G AUSSIAN P ROCESS R EGRESSION
quesito introduciamo i Gaussian Process.
Vediamo come il concetto di distribuzione di probabilità
C. Distribuzioni di Probabilità su Funzioni a Domnino non- su funzioni possa essere usato nel contesto della Regressione
Finito e Gaussian Processes Bayesiana.
Per affrontare il problema ricorriamo ai processi stocas- Sia S = {(x(i) , y (i) )}m
i=1 un set di training composto da
tici, ed in particolare ai processi gaussiani. Un processo misure estratte da una distribuzione ignota, il modello di
stocastico è un insieme di variabili stocastiche {f (x) : x ∈ regressione sarà
X } dipendenti da elementi di X . Un Gaussian Process è
un processo stocastico tale che ogni sottoinsieme finito di y (i) = f (x(i) ) + (i) , i = 1, . . . , m (13)
variabili formi una distribuzione Gaussiana multivariata. In dove le (i) rappresentano rumore estratto da una dis-
particolare, una selezione di variabili random {f (x) : x ∈ tribuzione N (0, σ 2 ) indipendente. Assumiamo inoltre un GP
X } è detta estratta da un Gaussian Process con media m(·) e a priori su funzioni f (·) a media zero
varianza k(·) se, per ogni set finito di elementi x1 ...xm ∈ X ,
il set associato f (x1 )...f (xm ) ha distribuzione f (·) ∼ GP(0; k(·, ·)) (14)
     
f (x1 ) m(x1 ) k(x1 , x1 ) . . . k(x1 , xm ) ! (i) (i)
 ..   .   .. ..
Sia T = {(x∗ , y∗ }m ∗
i=1 un set di punti di test estratti dalla
 .  ∼ N  ..  ,  ..  (10)

. . . stessa distribuzione ignota, se per ogni funzione f (·) dis-
f (xm ) m(xm ) k(xm , x1 ) . . . k(xm , xm ) tribuita dal GP a priori con covarianza k(·, ·) la distribuzione
che possiamo indicare in modo più conciso con marginalizzata per ogni set di punti del set X deve avere
una distribuzione Gaussiana multivariata, questo dovrà essere
f (·) ∼ GP(m(·), k(·, ·)) (11) contemporaneamente vero sia per i punti di training, che per
i punti di test, ovvero:
Possiamo, a livello intuitivo, pensare ad una funzione f (·)
estratta da un GP come un vettore a dimensionalità estrema- 
(1) (m0 )

k(x(1) , x(1) ) k(x(1) , x(m) ) k(x(1) , x∗ ) k(x(1) , x∗
 
f (x(1) ) ... ... )
mente alta estratto da una Gaussiana multivariata a stessa  .
.
  ..
.
..
.
..
.
..
.
..
.

.
   
 !
dimensionalità: ogni dimensione della Gaussiana corrisponde (m0 ) 
 
f (x(m) ) 
k(x(m) , x(1) ) (1)
... k(x(m) , x(m) ) k(x(m) , x∗ ) ... k(x(m) , x∗ )
(1)  ∼ N ~
0, 
 
(m0 )

 k(x(1) , x(1) ) (1) (1) (1) (1)
ad un elemento x del set X ed il corrispondente elemento  f (x∗ )  k(x∗ , x(m) )

 ∗ ... k(x∗ , x∗ ) ... k(x∗ , x∗ )  

 .. 
  .. .. .. .. .. 
. .
del vettore random rappresenta il valore di f (x). Usando . . . .
   
 
(1) (m) (m) (m) (1) (m) 0
(m )
f (x∗ ) k(x∗ , x(1) ) ... k(x∗ , x(m) ) k(x∗ , x∗ ) . . . k(x∗ , x∗ )
la proprietà di marginalizzazione di Gaussiane multivariate
possiamo ottenere la densità di probabilità corrispondente ad più conciso:
ogni sottoinsieme finito di variabili del processo. " #
f~
  
~ K(X, X) K(X, X∗ )
Per i processi Gaussiani sono definite una funzione media ∼ N 0, (15)
ed una funzione covarianza in modo tale che f~∗ K(X∗ , X) K(X∗ , X∗ )

• m(x) = E[x] Per quanto riguarda l’assunzione che il rumore sia generato
0 0 0
• k(x, x ) = E[(x − m(x))(x − m(x )] da un processo Gaussiano abbiamo
Fig. 1. Estrazioni dalla distribuzione non condizionata: le funzioni sono Fig. 2. Distribuzione a Posteriori: si vedono chiaramente gli effetti del
realizzazioni di processi Gaussiani a media zero sommate ad un termine di condizionamento alle misure di training rispetto alle estrazioni di Figura 1.
rumore.

  2 ~0 
  
~ σ I
∼ N ~0, ~ T (16)
~∗ 0 σ2 I

che sommato al primo processo ci dà


  " #  
f~  K(X, X) + σ 2 I 
~y ~ K(X, X∗ )
= ~ + ∼ N ~0, 2 (17)
~y∗ f∗ ~∗ K(X∗ , X) K(X∗ , X∗ ) + σ I

La Figura 1 dà una visualizzazione di quanto detto finora:


una funzione estratta dal processo a priori risulterà avere me-
dia nulla ed i termini diagonali determineranno la presenza
di rumore gaussiano. Fig. 3. Regressione: sono rappresentati la funzione originale, i punti estratti
Utilizzando ora le proprietà delle distribuzioni Gaussiane per impostare il problema di regressione, la media del processo a posteriori
condizionali abbiamo immediatamente che come linea tratteggiata e la varianza del processo.

(~y∗ |~y , X, X∗ ) ∼ N (µ∗ Σ∗ ) (18) A. Gaussian Process Classification

dove Il problema di classificazione è quello di stimare, data una


serie di osservazioni (x, y), dove x sono punti dello spazio,
y sono label nel formato (+1, −1), quale possa essere la
µ∗ = K(X∗ , X)(K(X, X) + σ 2 I)−1 ~y probabilità p(y = +1|x∗ ) in un altro punto dello spazio.
∗ 2
?? Σ = K(X∗ , X∗ ) + σ I− (19) L’idea di base è quella di stimare un GP a priori su una
2 −1
K(X∗ , X)(K(X, X) + σ I) K(X, X∗ ) ”funzione latente” f (x) e successivamente effettuare una
trasformazione con una funzione logistica per ottenere una
2
Il calcolo delle matrici di cui sopra e la stima di µ∗ e Σ∗ distribuzione a priori su π(x) .
è essenzialmente tutto ciò che è necessario fare per ottenere
π(x) = p(y = +1|x) = σ(f (x))
una predizione con un modello di regressione a GP.
Prendendo un caso reale, impostiamo un problema di La funzione latente f gioca un ruolo indiretto: non osservi-
regressione misurando alcuni punti di un coseno e utilizzi- amo direttamente f (osserviamo invece (X, y)), e neanche
amo queste misure per costruire le matrici di covarianza siamo interessati a conoscerne i valori, ma piuttosto ci inter-
utilizzando il kernel Gaussiano di cui a II-C: calcolando essa π(x∗ ) nei casi di test x∗ : il senso di f è semplicemente
la distribuzione condizionale utilizzando le regole 6 ed quello di consentirci di dare una formulazione conveniente
estraendo alcune funzioni da questa otteniamo quello che al problema di classificazione, nel framework dei GP.
vediamo in figura 2 tale distribuzione punto per punto avrà Possiamo riassumere la soluzione al problema in due step
media e varianza date dalle ?? e rappresentate in figura 3: la principali:
varianza associata ad ogni punto della predizione darà una
stima dell’incertezza associata alla stessa, si vede infatti che 2 da notarsi che π è una funzione deterministica di f , e dal momento che
dove non sono presenti misure questa aumenta. f è stocastica, lo è anche π
• In primis viene calculata la distribuzione sulla variabile normalizzazione nel massimizzare rispetto ad f . Calcolando
latente nei casi di test: il logaritmo e ricordando la Gaussianità approssimata di
Z p(f |X) possiamo scrivere
p(f∗ |X, y, x∗ ) = p(f∗ |X, x∗ , f )p(f |X, y)df

dove, per la Regola di Bayes Ψ(f ) = log p(y|f ) + log p(f |X)
1 t −1 1 n (24)
p(y|f )p(f |X) = log p(y|f ) − f K f − log |K| − log 2π
p(f |X, y) = 2 2 2
p(y|X)
Differenziando rispetto ad f abbiamo
• In secundis, la distribuzione a posteriori sulla variabile
latente cosı̀ trovata viene utilizzata per calcolare una
predizione probabilstica: ∇Ψ(f ) = ∇ log p(y|f ) − K −1 f
(25)
Z ∇∇Ψ(f ) = ∇∇ log p(y|f ) − K−1 = −W − K −1
π̃∗ = p(y∗ = +1|X, y, y∗ ) = σ(f∗ )p(f∗ |X, y, x∗ )df
con W = −∇∇ log p(y|f ) che risulta diagonale. 4 Sono
La differenza rispetto al caso GPR è che, mentre gli possibili diverse forme della likelihood, quelle più usate sono
integrali equivalenti potevano essere valutati analiticamente la logistica e la Gaussiana cumulativa, l’esatta formulazione
in quanto tutte le distribuzioni avevano forma Gaussiana, della likelihood e delle sue derivate dipenderà dalla partico-
nel caso della GPC il primo tra gli integrali presentati è lare forma scelta.
decisamente non-Gaussiano e non trattabile analiticamente, In corrispondenza del massimo di Ψ(f ) abbiamo 5
cosı̀ come l’integrale successivo: per certe σ(·) potrebbe non
esistere nessuna soluzione analitica3 . ∇Ψ = 0 → fˆ = K(∇ log p(y|fˆ)) (26)
Le strade che si prospettano valide per risolvere questo
Per trovare il massimo di Ψ usiamo il metodo di Newton
problema sono di due categorie
iterando
• Risoluzione numerica con Metodi MonteCarlo
• Approssimazioni analitiche, tra cui sono note: fnext = f − (∇∇Ψ)−1 ∇Ψ
– Approssimazione di Laplace = f + (K −1 + W )−1 (∇ log p(y|f ) − K −1 F ) (27)
– Expectation Propagation −1 −1
= (K + W) (W f + ∇ log p(y|f ))
L’approccio scelto è quello dell’Approssimazione di
Laplace. fino a convergenza. Avendo trovato il massimo fˆ possiamo
specificare
B. Approssimazione di Laplace
q(f |X, y) = N (fˆ, (K −1 + W )−1 ) (28)
L’idea è quella di approssimare p(f |X, y) con una
ditribuzione Gaussiana q(f |X, y). Effettuando uno sviluppo C. Predizioni
di Taylor di log p(f |X, y) attorno al massimo della dis-
Possiamo esprimere la media a posteriori di f∗ in Ap-
tribuzione a posteriori otteniamo un’approssimazione Gaus-
prossimazione di Laplace in modo analogo al caso prece-
siana:
dente, utilizzando il fatto che
1
q(f |X, y) = N (f |fˆ, A−1 ) ∝ exp − (f − fˆ)T A(f − fˆ))
2 fˆ = K(∇ log p(y|fˆ)) (29)
(20)
dove quindi
fˆ = arg max p(f |X, y) (21)
f Eq [f |X, y, x∗ ] = k(x∗ )T K −1 fˆ = k(x∗ )T ∇ log p(y|fˆ)
e (30)
A = −∇∇ log p(f |X, y)|f =fˆ (22) Possiamo anche calcolare la varianza Vq [f∗ |X, y] in ap-
prossimazione Gaussiana, questa sarà composta di due ter-
è l’Hessiana della log-probabilità a posteriori negativa valu-
mini:
tata in fˆ.
Dalla regola di Bayes abbiamo che la distribuzione a Vq [f∗ |X, y] =
posteriori sulle variabili latenti è data da Ep(f∗ |X,x∗ ,f ) [(f∗ − E[f∗ − E[f∗ |X, x∗ , f ])2 ] (31)
2
p(y|f )p(f |X) +Eq(f |X,Y ) [E[f∗ |X, x∗ , f ] − E[f∗ |X, y, x∗ ]) ]
p(f |X, y) = (23)
p(y|X) il primo termine è dovuto alla varianza di f∗ ed è dato da
ma, essendo p(y|X) indipendente da f possiamo unicamente
considerare la probabilità a posteriori senza il fattore di k(x∗ , x∗ ) − k(x∗ )T K −1 k(x∗ ) (32)
4y fi e non da fi6=j .
3 tant’è che nell’implementazione presentata più avanti utilizziamo al i dipende unicamente da
suo posto un’approssimazione come combinazione di funzioni integrabili 5 notiamo che, dal momento che ∇ log p(y|fˆ) è una funzione non lineare
analiticamente di fˆ questa non può essere risolta direttamente.
in modo analogo al caso GPR, il secondo termine è dovuto
al fatto che

E[f∗ |X, x∗ , f ] = k(x∗ )T K −1 f (33)

dipende da f e quindi compare un termine aggiuntivo di

k(x∗ )T K −1 cov(f |X, y)K −1 k(x∗ ) (34)

Sotto approssimazione Gaussiana cov(f |X, y) = (K −1 +


W )−1 , quindi

Vq [f∗ |X, y] =
k(x∗ , x∗ ) − k∗T K −1 k∗ + k∗T K −1 (K −1 + W )−1 K −1 k∗ =
Fig. 5. Media e Varianza del Processo Latente
k(x∗ , x∗ ) − k∗T (K + W −1 )−1 k∗
(35)

Ottenute media e varianza di f∗ rimane solo da trovare le


probabilità finali calcolando
Z
π̃∗ ≈ Eq [π∗ |X, y, x∗ ] = σ(f∗ )q(f∗ |X, y, x∗ )df∗ (36)

Prendendo un esempio pratico: estraiamo una serie di


misure binarie con
(
−1 se cos(x) ≤ 12
l(x) = (37)
+1 altrimenti

Fig. 6. Probabilità di Appartenenza alla Prima Classe ottenuta con la


36

A. Kernels e Teorema di Mercer


Ripartiamo dal concetto di kernel: un kernel, a livello
intuitivo, è una funzione K che associa a coppie di elementi
di uno spazio χ una misura di similarità K : χ × χ → R,
costruendo implicitamente una mappatura Φ : χ → HK
verso uno spazio di Hilbert HK tale che K sia il suo prodotto
interno:
K(x, x0 ) =< φ(x), φ(x0 ) > (38)

Fig. 4. Misure Binarie: le label estratte con la condizione 37 sono in Vale per i kernel il seguente teorema:
formato [−1, +1], adatte per la GPC. Teorema 1 (Teorema di Mercer): Sia C un sottoinsieme
compatto di Rn , se K(x, x) : C × C → Rn è una funzione
La media del processo latente e la sua varianza possono continua, simmetrica, K ∈ L2 (C), condizione necessaria e
essere calcolate con le 30 31 e sono rappresentate in figura sufficiente perchè essa abbia espansione (può rappresentare
5 un prodotto scalare), ovvero:
Infine possiamo utilizzare la 36 per calcolare la probabilità ∞
X
di appartenenza alle classi, che plottiamo in figura 6 K(x, x0 ) = ak φk (x)φk (x0 )
k=1
IV. G RAPH K ERNELS è che K sia semidefinita positiva, ovvero soddisfi la con-
dizione
Quanto detto finora è perfettamente valido in spazi euclidei Z Z
Rn con l’utilizzo dei kernel di cui in II-C, spostandoci f (x)f (x0 )K(x, x0 )dxdx0 ≥ 0
in spazi definiti differentemente tali kernel non sono più C C
utilizzabili ed occorre definirne di nuovi. per qualsiasi f (x) ∈ L2 (C)
La funzione K per essere un buon kernel, utilizzabile nel B. Esponenziali del Laplaciano come Kernel
senso della 38, deve quindi soddisfare essenzialmente due
Sia G un grafo indiretto definito da un set V di vertici
requisiti:
ed un set E di edge che connettono coppie vi , vj di vertici,
• deve essere simmetrica: indichiamo il fatto che i vertici i e j siano connessi da un
edge con i ∼ j. Definendo la matrice di adiacenza W del
K(x, x0 ) = K(x0 , x) grafo come Wij = 1 se i ∼ j e 0 altrimenti, possiamo
definire la matrice dei P degree dei vari nodi come una matrice
• deve essere semidefinita positiva. diagonale Dii = j Wij , il Laplaciano di G è definito
Il teorema 1 ha analogo discreto, in cui la condizione di allora come L = D − W ed il Laplaciano Normalizzato
1 1 1 1
semidefinita positività diventa: come L̃ = D− 2 LD− 2 = I − D− 2 W D− 2 . Sono noti dalla
teoria spettrale dei grafi i due seguenti teoremi:
XX
fx fx0 K(x, x0 ) ≥ 0 (39) Teorema 2 (Spettro di L̃): L̃ è una matrice semidefinita
x∈χ x0 ∈χ positiva ed i suoi autovalori sono λ1 , λ2 , . . . λn con 0 ≤
λi ≤ 2 , inoltre il numero dei suoi autovalori nulli è uguale al
per tutti i set di coefficienti reali fx . numero di componenti disgiunte del grafo G che la genera.7
Le matrici di Gram associate ai kernel sono definite L e L̃ possono essere visti come operatori lineari su
come Kx,x0 = K(x, x0 ) ed ereditano, in termini matriciali, funzioni f : V → R o equivalentemente su vettori f =
le proprietà di simmetria e definita positività. (f1 , f2 , . . . , fn )| : in questi termini potremmo ridefinire L
I problemi di GPR e della GPC su Grafi sono essenzial- come
mente ridotti al problema di trovare una formulazione dei 1X
kernel semidefiniti positivi che descrivano la struttura locale < f , Lf >= f | Lf = − (fi − fj )2 ∀f ∈ Rn (45)
2 i∼j
degli spazi su cui si vuole operare, è un problema non banale
a cui Kondor/Lafferty hanno provato a dare una soluzione [3]
che generalizza rapidamente a grafi con una quantità numer-
Una forma conveniente per ottenere kernel simmetrici abile di vertici: guardando alla 45 possiamo affermare che
e semidefiniti positivi è suggerita guardando il risultato L introduce una semi-norma kf k =< f , Lf > su Rn e si
dell’operazione di esponenziazione di una matrice quadrata: può intuire come questa quantifichi la variazione locale della
βH n funzione f sul suo dominio: tanto più f sarà ”mossa”, tanto
eβH = lim (1 + ) (40) più kf k sarà grande, questo rende il Laplaciano un ottimo
n→∞ n
candidato per la costruzione di un kernel.
a cui esiste limite pari a
C. Operatori di Regolarizzazione e Laplaciano
βH β2 2 β3 3
e = I + βH + H + H + ... (41) Smola e Kondor [11] dimostra come molti dei kernel più
2! 3!
utilizzati, come la RBF gaussiana, siano in realtà scrivibili
vediamo infatti dalla 41 che, quando la matrice H sia come
simmetrica, la matrice eβH risulta simmetrica e semidefinita Z
positiva. Cambiando prospettiva è possibile dimostrare che < f, P f >= |f˜(ω)|2 r(kωk2 )dω =< f, r(∆)f > (46)
ogni kernel infinitamente divisibile 6 può essere espresso in
forma esponenziale: famiglie di questi kernel possono essere dove f ∈ L2 (Rn ), f˜(ω) indica la trasformata di Fourier di
costruite come f ed r(kωk2 ) è una funzione di penalizzazione delle com-
K(β) = K(1)β (42) ponenti in frequenza |f (ω)| di f ( generalmente crescente
in kωk2 ) e r(∆) è l’estensione di r agli operatori ottenuta
β
indicizzate dal parametro β. Scrivendo K(β) = [K(1) n ]n semplicemente applicando r allo spettro di ∆[2]
per n → ∞ X
< f, f (∆)f 0 >= < f, ψi > r(λi ) < ψi , f 0 > (47)
β dK i
K = lim (1 + )n (43)
n→∞ n dβ β=0 dove λi e ψi sono rispettivamente gli autovalori e gli
autovettori di ∆. I kernel sono ottenuti risolvendo la seguente
che diventa la 40 per H = dK dβ β=0 condizione di consistenza[10]
Si intuisce allora che una forma privilegiata in cui cercare
i kernel sia quella esponenziale di tipo < k(x, ·), P k(x0 , ·) >= k(x, x0 ) (48)

K = eβH (44) 7 Sarà chiaro più avanti, specialmente con l’introduzione degli operatori di
regolarizzazione del Laplaciano, che la costruzione di una norma del Lapla-
ciano richiederà che esista al più un autovalore nullo, ne consegue i grafi
6 Infinita divisibilità significa che per ogni n ∈ Z K può essere scritto
1 1 1
su cui si possono usare i kernel descritti dovranno essere completamente
come K = K n K n . . . K n connessi.
con questo metodo si riesce a ricavare una corrispondenza V. E SEMPI DI GPR E GPC SU G RAFI
tra gli operatori di regolarizzazione r(∆) ed i kernel nor-
malmente utilizzati: prendendo ad esempio il kernel RBF Introduciamo due esempi pratici: uno di Regressione ed
Gaussiano: uno di Classificazione su Grafi
σ2
kωk2
r(kωk2 ) = e 2
A. Regressione
1 0 2
k(x, x0 ) = e− 2σ2 kx−x k
(49) Per semplicità di visualizzazione dei risultati prendiamo

X σ 2i i come grafo un reticolo quadrato di lato 100 di cui selezioni-
r(∆) = ∆
i! amo 60 nodi come punti di training e facciamo predizione sui
i=0
restanti 40. La funzione più semplice che possiamo definire
Tornando al Laplaciano su grafi, la classe di funzionali di sui nodi è lo shortest path rispetto ad un nodo pivot.
regolarizzazione su grafi è definita da

< f , P f >=< f , r(L̃)f > (50)

con r(L̃) definita come


m
X
r(L̃) = r(λi )vi vi| (51)
i=1

e vi , λi sono rispettivamente gli autovettori e gli autovalori


ad essi corrispondenti di L̃. Le possibili funzioni di regolar-
izzazione r(λ) includono:
r(λ) = 1 + σ 2 λ
σ2
r(λ) = e 2λ Fig. 7. Reticolo: sono indicati in verde i nodi di test ed in rosso i nodi di
−1 training
r(λ) = (aI − λ) con a ≥ 2 (52)
−p
r(λ) = (aI − λ) con a ≥ 2 Possiamo impostare un problema di regressione, dove le
−1
r(λ) = (cos λπ/4) misure sui nodi di training sono semplicemente le distanze
rispetto ad un pivot, possiamo scegliere un kerne di tipo p-
D. Ricavare i Kernel
step walk definito come
Facendo riferimento a quanto scritto ad inizio sezione
vediamo che è possibile definire uno spazio di Hilbert H K = (aI − L̃)−p con a ≥ 2 (57)
su Rm in cui valga il prodotto scalare
dove a e p sono i parametri del kernel che in questo caso
< f, f >H =< f , P f > (53) fissiamo ai valori a = 2.3, p = 4. Plottando i valori delle
e si può dimostrare che8 predizioni e della varianza associata abbiamo Associando un

k(i, j) = [P −1 ]ij (54)

è un kernel valido per un RKHS cosı̀ definito. A partire dalle


52 i nuovi kernel possono essere semplicemente costruiti
come
Xm
K= r−1 (λi )vi vi| (55)
i=1

ottenendo
K = (I + σ 2 L̃)−1
σ2
K = e− 2L̃
(56)
K = (aI − L̃)−p con a ≥ 2 Fig. 8. Previsioni GPR: La linea blu indica il valore della distanza dal
K = (cos L̃π/4)−1 pivot 0 di ogni singolo nodo, le croci rosse indicano le misure di training,
mentre sempre in blu sono indicate le previsioni sui nodi di test con relativa
Il secondo dei kernel sopra è stato ricavato[10] in termini di varianza.
processi diffusivi, si veda l’appendice VII
colore al valore della funzione sul nodo possiamo visualiz-
8 P −1 indica la pseudoinversa quando P non sia invertibile. zare graficamente in due dimensioni le previsioni:
Fig. 11. Classificazione Binaria: Previsione di appartenenza binaria,
Fig. 9. Previsioni GPR: I nodi di training e di test sono rappresentati da ordinate per distanza pivotale.
simboli diversi, il colore di ogni nodo corrisponde al valore della funzione
su di esso.

B. Classificazione
Mantenendo lo stesso reticolo, assegnamo ad ognuno dei
nodi di training una label binaria definita dalla condizione
(
−1 se sin d2i ≤ 0
li = (58)
+1 altrimenti
dove di indica la distanza dal nodo 0 calcolata con algoritmo
di Dijkstra. Inizializzando un classificatore con stesso kernel
del caso precedente, parametri a = 2.1, p = 4 ed un termine
di rumore σ = 0.1, possiamo rappresentare il processo
latente in Figura 10. Fig. 12. Predizioni: I nodi triangolari sono i punti di training, i nodi
quadrati sono i punti di test, il colore di questi ultimi riflette la probabilità
di appartenenza alle due classi.

grafi e le funzioni siano definite sui nodi dei grafi stessi


risulta necessario trovare altre famiglie di kernel semidefiniti
positivi ed in particolare le forme esponenziali del laplaciano
del grafo risultano particolarmente adatte a questo scopo,
l’introduzione di funzioni di regolarizzazione degli autovalori
del laplaciano stesso permettono inoltre di creare kernel che
capaci di cogliere caratteristiche diverse dello spazio sul
quale agiscono.

VII. A PPENDICE : D IFFUSION K ERNELS


Fig. 10. Processo Latente: Le label di training sono indicate in rosso, E’ possibile arrivare alla seconda delle II-C con un mod-
mentre in blu sono indicate le previsioni sul processo latente con relativa
varianza, ordinati per distanza pivotale. ello di tipo diffusivo: si immagini di avere, per ognuno dei V
vertici del grafo G una variabile indipendente Zi (0) a media
Le previsioni di appartenenza alle due classi sono grafica- nulla e varianza σ 2 , e che ognuna di queste variabili diffonda
mente rappresentate in Figura 11. una frazione α  1 del proprio valore ai vertici adiacenti ad
ogni step temporale discreto t = 1, 2, . . . , in modo tale che
VI. C ONCLUSIONI X
I metodi di Gaussian Process Regression e Gaussian Pro- Zi (t + 1) = Zi (t) + α Zj (t) − Zi (t) (59)
j∈V ;j∼i
cess Classification sono facilmente implementabili quando le
funzioni da studiare sono definite su Rn (o equivalentemente Possiamo introdurre un operatore di evoluzione temporale
esiste una mappatura semplice dallo spazio di definizione ad
uno spazio euclideo) e per queste sono disponibili tutti i T (t) = (1 + αH)t (60)
kernel già noti dallo studio delle SVM, altresı̀ combinazioni che ci permetta di riscrivere la 59 come
lineari di questi come si può verificare usando il teorema
di Mercer, quando gli spazi iniziali siano rappresentati da Z(t) = T (t)Z(0) (61)
dove Z(t) = (Z1 (t), Z2 (t), . . . , ZV (t))| è il vettore che R EFERENCES
rappresenta lo stato delle variabili Z di tutti i vertici al tempo [1] Chuong B. Do. Gaussian processes. Technical report, Stanford
t e Z(0) è lo stato iniziale. Possiamo calcolare la covarianza University, 2007.
del set di variabili al tempo t come [2] Nelson. Dunford and Jacob T. Schwartz. Linear operators. Inter-
science Publishers, 1988.
covij (t) = E[(Zi (t) − EZi (t))(Zj (t) − EZj (t))] [3] R. I. Kondor and J. Lafferty. Diffusion kernels on graphs and other
discrete structures. In Proceedings of the ICML, 2002.
= E[Zi (t)Zj (t)] [4] Stephen. Marsland. Machine learning : an algorithmic perspective.
X X (62) CRC Press, 2009.
= E[( Tii0 (t)Zi0 (0))( Tjj 0 (t)Zj 0 (0))] [5] Kevin P. Murphy. Machine learning : a probabilistic perspective. MIT
i0 j0 Press, 2012.
[6] I Murray. Introduction to Gaussian Processes. homepages.inf.ed.ac.uk.
considerando che le variabili sono totalmente indipendenti al [7] Carl Edward Rasmussen. Gaussian Processes in Machine Learning.
pages 63–71. Springer, Berlin, Heidelberg, 2004.
tempo t = 0, E[Zi , Zj ]t=0 = σ 2 δ(i, j) possiamo scrivere [8] Carl Edward. Rasmussen and Christopher K. I. Williams. Gaussian
X processes for machine learning. MIT Press, 2006.
covij (t) = σ 2 Tik (t)Tkj (t) [9] Claude. Sammut and Achim Gu¨nther Hoffmann. Machine learning :
k (63) proceedings of the Nineteenth International Conference (ICML 2002)
: University of New South Wales, Sydney, Australia, July 8-12, 2002.
= σ 2 [T (t)2 ]ij = σ 2 Tij (2t) Morgan Kaufmann Publishers, 2002.
t [10] Alex J. Smola, Bernhard Schölkopf, and Klaus Robert Müller. The
Cambiando scala temporale t = 1, 2, . . . a ∆t: t → ∆t ,α → connection between regularization operators and support vector ker-
α∆t la definizione dell’operatore di evoluzione temporale nels. Neural networks : the official journal of the International Neural
diventa Network Society, 11(4):637–649, jun 1998.
αH t [11] Alexander J. Smola and Risi Kondor. Kernels and Regularization on
T (t) = (1 + 1 ) ∆t (64) Graphs. pages 144–158. Springer, Berlin, Heidelberg, 2003.
∆t [12] S. V. N. Vishwanathan, Karsten M. Borgwardt, Imre Risi Kondor, and
Nicol N. Schraudolph. Graph Kernels. jul 2008.
per la definizione di esponenziale di matrice 40 abbiamo
lim T (t) = eαtH (65)
∆t→0

e la 62 diventa
covij (t) = σ 2 e2αtH (66)
che ha la stessa forma della seconda delle II-C.

Potrebbero piacerti anche