[TOC]
Spectral Clustering
1.1. Given
- An undirected graph G=(V,E) (|V|=n)
- The edge (vi,vj) is weighted by similarity wi,j
1.2. Optimization problem
minimizeAi⊂Vk∑i=1cut(Ai,¯¯¯¯¯¯Ai)Vol(Ai)subject tok⨆i=1Ai=V
where ¯¯¯¯A is the complement of A, and "cut(A)" and "vol(A)" (A⊂V) are defined by
cut(A,¯¯¯¯A)=∑vi∈A,vj∈¯¯¯¯Awi,jvol(A)=∑vi∈Adi=∑vi∈A∑vj∈Vwi,j
We denote di by the degree of node vi.
2. Preparation
Def(unnormalized graph Laplacian matrix)
We denote D by the degree matrix defined by
D=diag(d1,…,dn)=⎛⎜
⎜
⎜
⎜
⎜⎝d1d2⋱dn⎞⎟
⎟
⎟
⎟
⎟⎠
We denote L≡D−W be the unnormalized graph Laplacian matrix
-
Theorem1
For every vector f∈Rn we have
f′Lf=12∑i,jwi,j(fi−fj)2
(proof)
f′Lf=f′(D−W)f=∑idif2i−∑i,jwi,jfifj=12(∑idif2i−∑i,jwi,jfifj+∑jdjf2j)=12∑i,jwi,j(fi−fj)2
-
Theorem2
For Al⊂V,hl≡(h1,l,…,hn,l)′∈Rn, where
hi,l≡1Al(vi)√vol(Al)
and
1Al(vi)≡{1(vi∈Al)0(otherwise)
Then, we have
h′lLhl=cut(Al,¯¯¯¯¯¯Al)vol(Al)
(proof)
h′lLhl=12∑i,jwi,j(hi,l−hj,l)2=12∑i,jwi,j(1Al(vi)√volAl−1Al(vj)√volAl)=∑vi∈Al,vj∈¯¯¯¯¯Alwi,j1Vol(Al)=cut(Al,¯¯¯¯¯¯Al)Vol(Al)
-
Theorem3
h′lDhm=δl,m
(proof)
h′lDhm=∑idihi,lhi,m=∑idi1Al(vi)√volAl1Al(vi)√volAm=δl,m
3. Relaxation
minimizeAi⊂Vk∑i=1cut(Ai,¯¯¯¯¯¯Ai)Vol(Ai)subject tok⨆i=1Ai=V⇔minimizeAi⊂VTr(H′LH)subject tok⨆i=1Ai=VH′DH=Ik≃minimizeH∈Rn×kTr(H′LH)subject toH′DH=Ik⇔minimizeT∈Rn×kTr(T′D−1/2LD−1/2T)subject toT′T=Ik(T=D1/2H)
We call those of equations (1), (2), (3), and (4) from above.
proof(1)⇔(2)
Tr(H′LH)=k∑l=1h′lLhl=k∑l=1cut(Al,¯¯¯¯¯¯Al)vol(Al)
(l,m) element of H′DH = h′lDhm=δl,m
proof(3)⇔(4)
(3)⇒(4)
If H is the optimal solution of (3), we set T=D1/2H. Then, we have T′T=H′D−1/2D−1/2H=H′D−1H=Ik, thus H is the feasible solution of (4). Moreover, we have
Tr(T′D−1/2LD−1/2T)=Tr(H′LH)
Therefore, the optimal value of (4) is less than or equal to the optimal value of (3). The other is proved in the same way.
For solving optimization of (4), we show below theorem.
Theorem4 (Extermal partial trace)
行列A∈Cn×nをエルミート行列とし,その固有値をλ1,⋯,λn. 対応する固有ベクトルをu1,⋯,un,⟨ui,uj⟩=δi,jとする. このとき, 固有値についてλ1≤λ2≤⋯≤λnが成立しているならば,任意のq∈{1,2,…,n}と正規直交系{x1,⋯,xq:xi∈Cn×n,⟨xi,xj⟩=δi,j}に対して,
q∑i=1λi≤q∑i=1x∗iAxi
が成立.さらに,xi=ui(i=1,2,⋯,q) ならば等号が成立.
Proof.
Aはエルミート行列なので,固有値は全て実数でありユニタリ行列によって対角化出来ることに注意する.(証明略)
Aはエルミート行列なので,
UAU∗=⎛⎜
⎜⎝λ1⋱λn⎞⎟
⎟⎠=diag(λ1,…,λn)
となるようなU=(u1,u2,…,un)∗をとることができる.
ここで,x1,x2,…,xq,xq+1,…xnがCnの正規直交基底になるようにxq+1,xq+1,⋯,xnをとる. また, X:=(x1,…,xn)と定義する.このとき,
X∗AX=⎛⎜
⎜⎝x∗1⋮x∗n⎞⎟
⎟⎠A(x1,…,xn)=⎛⎜
⎜⎝x∗1A⋮x∗nA⎞⎟
⎟⎠(x1,…,xn)
ゆえに,X∗AXの(i,j)成分は x∗iAxj と表される.
ここで任意の正方行列B∈Cnに対してs次主小行列(首座小行列) principal submatrix を Bsと表記することにする. つまり
B=⎛⎜
⎜
⎜
⎜
⎜⎝b11b12⋯b1nb21b22⋯b2n⋮⋮⋱bn1bn2⋯bnn⎞⎟
⎟
⎟
⎟
⎟⎠,Bs=⎛⎜
⎜
⎜
⎜
⎜⎝b11b12⋯b1sb21b22⋯b2s⋮⋮⋱bs1bs2⋯bss⎞⎟
⎟
⎟
⎟
⎟⎠
このとき,
q∑i=1x∗iAxi=Tr[(X∗AX)q]
が成立.一方で
(i,j) element of X∗AX=(i,j) element of X∗U∗diag(λ1,…,λn)=(i,j) element of Y∗diag(λ1,…,λn)Y(Y=UX∈Cn)=n∑k=1|yki|2λk
以上より,
q∑i=1x∗iAxi=Tr[(X∗AX)q]=q∑i=1n∑k=1|yki|2λk=n∑k=1(q∑i=1|yki|2)λk
ここで,U,Xはユニタリ行列であるので,Y=UX∈Cn×nもユニタリ行列.(例えば任意のa,b∈Cn×nに対して, ⟨UXa,UXb⟩ =⟨a,b⟩ を示せば良い.)
ゆえに,行ベクトルの長さは1であるので,
0≤q∑i=1|yki|2≤n∑i=1|yki|2=1(k∈{1,2,…,n})
また,列ベクトルの長さは1であるので,
n∑k=1q∑i=1|yki|2=q∑i=1n∑k=1|yki|2=q
よって, ∑qi=1x∗iAxi=∑nk=1(∑qi=1|yki|2)λkは
q∑i=1|yki|2={1(k∈{1,2,…,q})0(others)
のとき最小値λ1+⋯+λqをとる.
(気持ちとしては出来るだけ小さいλkに|yki|を割り当てることを考える.)
また, xi=ui(i=1,2,…,q)ならば,
X∗AX=UU∗diag(λ1,…,λn)UU∗=diag(λ1,…,λn)
であるので等号成立.
3.1. Solving below optimization problem
minimizeT∈Rn×kTr(T′D−1/2LD−1/2T)subject toT′T=Ik(T=D1/2H)
Let T be
T≡(x1,…,xk)
where xi∈Rn. Considering the constraint, we have
T′T=Ik⇔⟨xi,xj⟩=δi,j
, which implices xi,…,xk are orthogonal system. If we see D−1/2LD−1/2∈Rn×n as the A of theorem4,
Tr(T′D−1/2LD−1/2T)=Tr(T′AT)=k∑l=1x′iAxi
Therefore, if we list eigenvalues of A=D−1/2LD−1/2 in ascending order λ1,…,λn and the corresponding orthgonal system u1,…,uk, we get the optimal value of ∑kl=1λk when T=(u1,…,uk).
When clustering, we set H≡D−1/2T∈Rn×k and yi≡(hi,1,…,hi,k)∈Rk(i=1,…n), we apply the other clustering method to {yi∣vi∈V}
3.2. Reference
https://www.slideshare.net/pecorarista/ss-51761860
Last modified by akirat1993 2019-05-26 02:56:51
Created by akirat1993 2019-05-26 02:56:51