& _" b' R1 Z. j: t- v5 mi; J- g, Y4 O: y) q" @! {; A8 e
9 \2 S# R* s& Q' O% i6 d2 Z7 r# g4 w
)在划分子图时并没有考虑每个子图中节点的个数。所以在某些情况下,最小化c u t ( A 1 , A 2 , . . . , A k ) cut(A_{1},A_{2},...,A_{k})cut(A ! e$ C; |9 f2 w1 ' {( D9 _2 v) \: K3 `; d3 I0 N' B6 F" n9 h3 Z2 { O
,A $ T) _: j) s5 |$ S& u2 $ B% Q2 O$ g$ r& }) t. b% g+ T9 Y4 N$ }5 @" j' I
,...,A " j) f5 Y* O1 v, P3 l; \# {5 s4 C" e
k: w0 Z: q8 Y0 D# n" ~
5 M5 {( D) B9 { e7 u )可能会把一个数据点或是很少数据点看做一个子图,导致子图划分结果不平衡9 t( F& E9 u1 n3 V
5 s ^6 k% @3 \例如下图,选择一个权重最小的边缘的点,比如C CC和H HH之间进行c u t cutcut,这样可以最小化c u t ( A 1 , A 2 , . . . , A k ) cut(A_{1},A_{2},...,A_{k})cut(A 2 @+ q- _, t/ r
1 ( `2 L5 {! b! B1 B3 g# r5 D0 z2 x3 S2 d4 W$ d* T
,A ' C5 _# ` P2 P$ ~2 c) |/ [
2 8 Z5 A( o. X) ~$ c: ~, f" I: \) W) w% f1 c
,...,A 6 q: l* X! p+ Q4 _5 L* a
k : F7 w: K- k' k9 C F8 t : s9 a7 v* u* v0 z+ k9 i )但是却不是最优的切图, |3 }( e% \ P
& Z/ W6 L/ Y* \' ~/ T1 z9 E为了解决这个问题,会引入一些正则化方法。最常用的两种方法为比例割和规范割 ) h& p, P! A" O9 `1 ?' C& @0 ` + T! l g2 t- h; K3 v比例割:R a t i o c u t ( A 1 , A 2 , . . . , A k ) = 1 2 ∑ i = 1 k W ( A i , A ˉ i ) ∣ A i ∣ Ratiocut(A_{1},A_{2},...,A_{k})=\frac{1}{2}\sum\limits_{i=1}^{k}\frac{W(A_{i},\bar A_{i})}{|A_{i}|}Ratiocut(A 1 r& B/ s& P- v. E1 : P+ }/ {% ? O$ }4 l3 K( z* L3 Y) \0 i: `
,A ) p/ ?4 T2 s) Q; C4 M
2 " c! P6 _# @" m3 ^- B! C+ W$ |' Y' [6 b0 z1 u) ?1 F
,...,A * N' \3 a4 m; v7 Fk W9 T% k' o+ |+ Z- W $ B, k4 X+ m0 m" C3 r; @9 y )= ) m, B5 u, D+ [) Y! c
2 ! i/ b J, Q3 p- k10 ~/ @* j( C- W% ?( M8 q! k9 ]
: v3 `/ q0 `$ u5 e
; q5 W3 \! `) C, f* ~- ]5 M
i=15 Y3 Z* n# v) t% B4 u" h
∑ ; \# q4 P1 f7 c& {k 9 R; s" Y" f9 X x $ e1 I, D% a, N4 V/ v; a6 g9 Z1 X3 d- a4 b
∣A % O7 H+ Y" G0 d8 \( c# v
i1 E! k9 r* i2 m6 E9 x$ [9 @% f. ]
5 @# ?3 R p/ n ∣ 6 t. x8 ?7 L5 _9 BW(A : D# G0 D8 P8 Q+ l) J7 Y
i 6 \ f5 C X* y, c* @) [5 u/ P# f% e1 l1 j- o( p* q8 b+ ]1 I
, ! `9 o- \0 N$ J- t* @
A & w$ f7 X- _1 ^6 z. xˉ 8 b* r8 X" M( ]+ {+ ~$ @# w3 B + W& `- Y' \: B; U' Ei $ b' Z6 ?& G. @3 [* w . a! g8 r6 v# _# A8 D )" r8 t% o0 S |' s, }
) B6 `2 _* H- d f1 p3 B9 ?
: j, x5 n; }- H6 Y1 k$ {
规范割:N C u t ( A 1 , A 2 , . . . , A k ) = 1 2 ∑ i = 1 k W ( A i , A ˉ i ) v o l ( A i ) NCut(A_{1},A_{2},...,A_{k})=\frac{1}{2}\sum\limits_{i=1}^{k}\frac{W(A_{i},\bar A_{i})}{vol(A _{i})}NCut(A & v6 O( s4 r1 [7 O
1: _& X4 T2 C$ X- o7 w, M" @
7 P! d0 B) @ U. `. L# R" r ,A 3 }$ C! D* ^/ x/ K, ?26 v' e, c, \" F1 V' {
* y+ P M5 [+ m0 X$ f& h+ B
,...,A $ v5 t F% f4 O) A6 a m
k( z. K* E, t) f( }% z
+ R, ^' q* C4 g' i )= * y" c) f; ~9 z9 J
26 r! m: U* F; Y& q! ?
1& Y1 u' A% z+ b+ T. Q* u
" F1 j1 i6 S+ e9 U+ Z0 p [' R% @" w9 }9 Ki=1 $ a% @5 ?. m' c- F∑ ' z7 [1 y1 Z- L( ~k5 i0 g0 T. q+ @! L, z
- a4 K1 O* `9 J+ b& f - f7 g! b$ v; Z+ J, [, @4 ?vol(A 2 h" t+ W; a5 {4 F: ~
i ( S/ A/ y, C9 Z4 F% K! h - k5 W4 W8 n3 Z% r )/ c7 {7 r3 Y$ z9 w$ q# u! N
W(A " s! V8 ^3 b3 U5 M3 P
i 5 d' y5 K( h$ |6 F9 W/ F) w! S8 X" C
, l1 D( ~1 P' v e7 R
A s3 V+ b6 a1 M7 U, \ b
ˉ; L) o& C7 d( ~/ \" p
9 Z* v1 @9 O9 X* S+ si8 h: H2 }+ O# Y! A. @' W( j
& |. ]+ A2 H- i1 O
) [# R% \2 A, L: k1 c* e7 q2 l& A0 g T/ U [" K5 \0 u' M1 K
: i; B0 ^: r, a. _) L: u
(1)比例割 $ C7 D: I9 D# r6 A7 q( t$ Q引入指示向量(点击可查看指示向量定义)h j ∈ { h 1 , h 2 , . . . , h k } h_{j}\in\{h_{1},h_{2},...,h_{k}\}h # U$ |" Z( N- t, i3 Q3 w! M
j + a) v- A6 y3 ~- B2 k , W4 x7 s, p& x+ h ∈{h # n/ X; _; Z; h$ ?( d h! v1 c1- W* w% `( v& x# @% Y
( C$ q% {3 Z1 F4 C ,h ; v0 U* w0 G( Q1 M
2 $ k* x* ^5 x& v& ~2 Y. U0 B% H* e) H. C6 E1 d$ T1 ?- b5 q
,...,h / t; [3 ?3 N1 L
k5 m" }$ l6 r' R# `0 c
z) u% _6 B9 |) j* V },j = 1 , 2 , . . . , k j=1,2,...,kj=1,2,...,k。对于任意一个向量h j h_{j}h * B' l* `( z6 R8 E& ^) C
j, x- c; Z; y0 R; U" Y
) n+ d" K" ?7 s8 p! v- i& V
,它是一个n nn维向量(n nn表示样本数),定义h i j h_{ij}h % C# S! h' z* Zij ( u9 Q7 \, p3 [: v! \: Y* L6 l' b( _) ?: E+ j( e+ a
如下 3 s5 p, D7 L; n) D 2 E; E+ o3 M) B0 Qh i j = { 0 , v i ∉ A j ∣ A j ∣ , v i ∈ A j h_{ij}= ' K( v( S3 q1 e2 O8 e& r. M: @{0,vi∉Aj|Aj|−−−√,vi∈Aj' q4 M7 @ \- |9 F
{0,vi∉Aj|Aj|,vi∈Aj# e; O) D4 l( M$ Y! S/ f/ q: ]
h ' _9 R% ~+ e! i6 q( @0 x
ij& \% e+ {; r( t+ \9 f
2 P5 ^# }' E) s" H h, k+ Q ={ : i1 n$ Z7 f2 ^4 l; E0,v 2 ]4 Q9 l( C! y$ Q! f
i- p0 b1 q1 ~: R( }$ Q6 J* i
" W$ L8 B1 T" r ∈. D# U# m/ J# T9 W) D0 q
/ 6 W# V9 a" e% G* y" bA : a$ K" P- H5 Z% g' ^& [
j 5 L( d- q; F! s" Q, ] ) x7 ~4 t& ~ ^& `! C6 c * G% f% m, O; \( `* X) j+ T4 N∣A : x2 j9 i% H1 Uj* C' X7 A9 `: S. e# X9 V
6 I2 w! f" a3 w7 Q0 @1 I ∣ - F, _' [) z9 I* n9 j$ y$ o3 P / g7 e. B% d1 J6 ~( W- U1 J ,v 5 X: @ X v* B- L Gi/ Q/ x% P$ `- \
5 u7 b! Z) O: [$ Z
∈A : a/ j: ^+ y, x4 o( Q1 Rj$ Q5 M: {8 M5 Q1 r; z
% t# n) O7 y" _1 o( l* r4 W$ u
& i" i8 E( N! A
+ S6 h6 O5 Q7 {/ T3 e. K; m1 _5 P
2 D* s* H% k y6 Q' e7 [! ^" C3 d" _3 `: _6 y" T
于是,对于h i T L h i h_{i}^{T}Lh_{i}h : j; ~( m2 z; a* G. yi ( W- F3 |- D1 J2 |4 IT% x Y4 b3 }- F! \3 H
. Q" f$ b7 U1 C* {- } Lh 6 J) T9 h, a- r! a4 v6 N
i; U0 E6 a) z# i8 `' X! X
6 s. C" r) l1 ?9 c ,根据拉普拉斯矩阵性质可知 6 f. t3 |% w; B2 Q0 t$ [ 4 m# V: `) K( n$ E对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f $ {5 r" [; X# J" h' L: O4 H' l5 D1: O1 L- S- _1 `% W" L$ A. @
1 w9 y& t7 z4 B% h
,...,f " c1 c% Z4 Y/ d; y, }
n5 \5 c) i/ ^- e2 P: u7 G+ e
9 _& A8 b' b% R) c0 ?8 q ) # U+ h: i7 E' p( {4 j {
T 6 ^$ l7 b9 c9 q: X7 J! S3 | ∈R . V; m, f5 M& ?$ S" x2 X5 ]
n8 d0 { l( n3 _$ o; A
,有f T L f = 1 2 ∑ i , j = 1 n w i j ( f i − f j ) 2 f^{T}Lf=\frac{1}{2}\sum\limits_{i,j=1}^{n}w_{ij}(f_{i}-f_{j})^{2}f $ d" ~8 ~8 S' I: X! V% Q
T. L# M7 N2 L. n+ c }6 c
Lf= 6 {$ K* Q3 R( ?' j2 `
2 : `% V# e4 a& M2 l1 1 w" I# i/ X# r; G& `( X- g% Q' \8 _; m
, u; m0 G2 p9 _! Z& X0 x: M. P Mi,j=17 C r* |. x5 d3 T
∑9 C2 M' @4 I9 [+ o: k
n 6 x0 R! R! M0 z1 K( W & c. S4 N# s( w- r. W @ w . r. t" R8 b! w; D% jij4 b# i3 A# ]1 w; m" t" X
5 S7 r6 P+ ^5 A7 ]! F, R
(f ( A$ D1 n4 H" |# h! n* v. v
i& \$ y% B: \5 u4 F3 o
5 s" \& k" A0 L& n7 M −f ) ^/ q+ J4 H, u# C8 G; i
j* u5 R, J( V5 @' r# i! T, y
4 J* r. w Z$ G- P3 B
) 2 H* S+ |& ?1 ~$ z. x* N2 y9 k' n9 p, m J6 U0 D/ X& H
& o1 {; O2 R& p0 v2 Q5 |
h i T L h i = 1 2 ∑ m = 1 ∑ n = 1 w m n ( h i m − h i n ) 2 = c u t ( A i , A ˉ i ) ∣ A i ∣ h_{i}^{T}Lh_{i}=\frac{1}{2}\sum\limits_{m=1}\sum\limits_{n=1}w_{mn}(h_{im}-h_{in})^{2}=\frac{cut(A_{i},\bar A_{i})}{|A_{i}|} 8 Z) a9 q8 o( Mh + Z2 E; f3 y6 k& \/ V4 zi Z2 r1 W' H5 d( H% e4 b3 |T# _9 { H! B- y( y. E( V) w
' \ g) e1 |. x$ a- v, s
Lh ! e, ~) l) n3 h/ ~* M; @* L/ P
i) J- E/ m- X9 v0 j
6 p6 B3 h0 g- X1 |6 y+ E
= 3 ]3 e; d7 e% |4 J. O, g2 4 \+ V {1 v, V" m, @- _& i1+ @6 T$ ?* X- G2 X F
% c1 o1 b& q( |4 Z% }; |
/ x, a( D8 Y6 B: U. `6 v' G+ L) i
m=13 D0 L$ J- d; {: I# u# A0 C) L3 F
∑ 0 ?! y0 X n5 N1 s% ] / h& Y$ l7 g- h: s4 x8 n& `1 `$ i. w 7 R. u' K+ j6 R. l# un=17 M2 j# l* ^( b( J5 N" k
∑ $ ^4 M4 l( Q4 {2 E: T; t: C. W0 ^0 C+ ?2 a9 S7 Z, w
w 3 G" i( c" F$ T ^0 Cmn ! ^1 m2 c5 D( @1 Z# X/ }0 I/ _% F: P' t3 ~$ I" b# U V( n/ l# u
(h & a- ~4 v( T3 _! J" iim " g2 v }4 P$ h& y6 I* T1 P. ~ : l4 ~( q) D n' q) `* v −h ' M/ m. k5 ^; |, Z
in! g& f, h% R7 M" t0 } f2 f
' o& L5 T9 L9 O5 a. x' h. X ) 5 W1 ^/ M0 I) ]# h, e p6 a26 a3 D/ I- l4 ~ k7 }7 J
= ' T0 R, k; z1 M5 c2 ? }( b8 E
∣A 4 w1 Z. ]; ~# }2 d3 W! Mi ) T$ i6 }8 l1 Y% w | , V5 m* [, P, |4 I" i, Z/ E ∣& s* {: j$ o/ R; y2 o
cut(A / j: v1 _* f* ti # s ?7 J; c: y! G# G2 S( ? 1 M7 D9 a6 w1 j7 [$ t , $ a; ?# U3 |, g Q' X8 u
A 2 M0 b; [& ~1 n9 g, ` v) iˉ# g9 s( T( a0 o/ o& n* K
: j7 D+ K+ U) h+ Q' ~
i$ l, Z& Z& B. }: u3 q5 E$ ?
3 J* I" j# `, h+ h& b. ~; M6 C2 g
)0 L1 [# ?/ _- R2 ~8 Y1 |9 m
7 `9 K' t& f7 w, ~+ E9 j
7 B9 p) J% t5 t ^8 U# {: B# z9 n! E1 e
严格证明过程请看刘建平博客:链接, h9 I$ E2 z7 P; g4 Z3 d
可以看到,对于某一个子图i ii,R a t i o n C u t RationCutRationCut就对应于h i T L h i h_{i}^{T}Lh_{i}h 6 l* C/ c4 H* x U* Ii4 k" S4 u s. i5 a c9 _" _2 T8 I
T9 C" Q3 L6 F7 S' ^- B
; L' [8 Y3 y; s% F5 d4 U' t
Lh & M5 i( P4 `1 x+ A( hi) l5 [3 v0 p/ ^. w: n0 P: ~, a: u4 i& x
6 i. O. Q. p% M; K) p* w ,那么对于k kk个子图" b' g4 q) Z+ H2 m" a" A
6 d- p8 c2 w) Y$ R2 w9 `1 u6 g
R a t i o C u t ( A 1 , A 2 , . . . , A k ) = ∑ i = 1 k h i T L h i = ∑ i = 1 k ( H T L H ) i i = t r ( H T L H ) RatioCut(A_{1},A_{2},...,A_{k})=\sum\limits_{i=1}^{k}h_{i}^{T}Lh_{i}=\sum\limits_{i=1}^{k}(H^{T}LH)_{ii}=tr(H^{T}LH)2 J5 W1 r$ e3 e+ k4 o) v0 Q
RatioCut(A / E' l j. ]3 P7 h
1 - d/ H6 x' a& O% Q T* q( ?' P! L $ [# {9 ^0 w( N8 l' r ,A k; |. \) ^$ ?# I b0 _4 B7 m2 3 U/ |1 v! k6 D0 W: H! W+ d2 X. v
,...,A . ?- [% P7 y- D) q# Bk 8 O/ [2 |: L- X0 G % @# X. _/ U, e' p! r8 M- Y )= ( Q$ @0 E; @# P7 bi=11 {& S2 U! W; V2 Y6 b5 b2 _6 U7 g
∑ 8 [* e9 u8 z) G& J0 ak 0 |. ?+ g& I# T# B. i( b F( z* V& Y' t' a9 O6 @
h 0 Q" ?( v( W! _! H2 d& Ti % h M$ P) Y3 @% f8 s7 lT 3 ]8 ~4 c, D; t0 `) o) ` 2 n' v2 d- G l* Y0 U: N, } Lh & N4 N1 l8 X+ G8 [5 Gi" `6 M( F7 e1 Z1 V2 r G
1 C" `: P9 d+ I4 J- Q8 P
= ; |5 l- m, G% N: \2 @, f) N, Di=1 ( w- ^ P2 @% M7 Q+ Q+ {∑ * y* r9 e! X+ F9 ik' w$ e5 O" g7 s+ R( _0 B
! v) n8 V% e/ d; N! j2 o (H & w4 i" Y4 E$ K" c
T" t6 C1 V; f N+ n
LH) 7 B2 E" {- o# W7 Y- T# |* W" C
ii7 q+ |* g" `9 x: I2 u; U
$ h% S3 C% `, V( o
=tr(H [' [5 L. \- f" ]+ S
T: T* q* M2 Z3 E! s0 K m' e( I7 H
LH)0 U: o& v' m/ e n E6 v$ I
, G! |7 ?9 A" _1 s6 C3 H1 N因此,R a t i o n C u t RationCutRationCut切图本质就是最小化t r ( H T L H ) tr(H^{T}LH)tr(H ( ~- j9 U1 G% R
T" l$ Z# b: D5 _( c& H( Q& b
LH)。又因为H T H = I H^{T}H=IH . k: b% j2 z; j( ZT * I7 f, ?' T8 ?4 p& v f H=I(单位矩阵),则切图优化目标为- Z1 ] u4 c7 t5 S [+ Q
6 x$ o! w" d5 v7 Ja r g m i n ⏟ H t r ( H T L H ) s . t . H T H = I \underbrace{argmin}_{H} tr(H^{T}LH) s.t.H^{T}H=I3 M7 _3 ]! V0 V1 m2 ^5 Q* W$ F
H ( i2 p) f- p* E% M& B ? Zargmin" S, y& k. c9 X; w+ h0 R5 }7 i
* Z9 Z" i" X" R( j- k# m 9 R' H2 l- ?, j K9 z6 r2 Z1 s$ J" T% Z3 |( }& i* K8 g; o
tr(H , }0 L! [" I9 r l) a) v0 ST* p2 k1 H' G+ W0 U N
LH)s.t.H + W* Z6 O- I( p/ ?. w( ~
T ! I k/ f8 j5 E' i8 N4 y H=I" K/ e) A% m% C$ E& s, b
- k+ h. z( x0 m: X* E% h0 V |0 y对于优化目标t r ( H t L H ) tr(H^{t}LH)tr(H : d) Q$ Q; p7 g' n+ r# lt9 u$ F* a! Q0 s1 K" M7 g
LH)中的每一个优化子目标h i T L h i h_{i}^{T}Lh_{i}h 9 S& ^2 S5 z' ~+ \5 Ai! ]7 F9 R4 z( u) P) _% N
T& K# b- V, D2 A
) K( [& x: ]& g/ s4 Z! {9 D% k u
Lh * F* f/ k) Q8 P4 D8 }8 ?i 5 v* ]$ |/ ~+ a4 e! `5 s9 {6 o # K# X% \. `: [& ]% i ,其中的h hh是单位正交基,L LL为对称矩阵,所以此时h i T L h i h_{i}^{T}Lh_{i}h * `: k: T1 C% b- d/ B4 P! a- Fi ! X4 I8 d0 s1 d/ @7 z) WT4 Z; j0 X6 e9 w- B# o
& n5 t/ S/ L- q& n Lh / X0 T1 K+ S1 K k+ \
i - f* ^( i- p5 D3 A& T% k+ \: y' L$ \% T: G& R' N1 q3 I
的最大值即为L LL的最大特征值、最小值即为L LL的最小特征值。而在谱聚类中,我们的目标就是要找到目标的最小特征值,得到对应特征值向量,此时切图效果最佳。所以对于h i T L h i h_{i}^{T}Lh_{i}h % \2 f/ t c5 H; H- Qi7 H: T! n3 l& O' h; @- t4 z% L
T" H2 j0 X( e+ f8 J
7 g, Y2 s% W$ F9 d- H, C Lh " a3 F) ~7 F. o9 Ri + k6 X9 b: x4 w" B3 a9 U9 B7 P# \4 v9 ~: j
,目标就是找到L LL的最小特征值,而对于t r ( H t L H ) = ∑ i = 1 k h i T L h i tr(H^{t}LH)=\sum\limits_{i=1}^{k}h_{i}^{T}Lh_{i}tr(H 3 t }4 Y0 h/ f5 p `. i( P
t& Y6 Q1 `! z# ?0 r L4 M U( S
LH)= ; X1 O6 v1 {- Y2 m
i=1; E" [0 d0 h! U( x
∑8 j# X% N( _ m9 B+ N i
k Q8 g$ q- U# |/ K
' P+ P0 w, m5 g# N
h 2 g; c; S9 s- C2 i8 ]
i & l0 u8 P9 o2 Z: zT' P7 c: n1 w9 z
- _1 \9 r& d2 P Lh 7 I7 V" r/ @' C0 }, S8 Q) ei2 L5 o {: f( D: w& s- Z
, }% I. y' I# a) K
,则目标就是要找到k kk个最小的特征值6 c$ x5 \1 ]0 Y- b n
0 ]' Q0 Y. d* T
因此,通过找到L LL的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特特征向量组成一个n nn×k kk维矩阵,也即H HH。一般需要对矩阵H HH按行做标准化,如下# A& U( }, u% L5 F# `$ l
7 k$ M( M4 {" k7 f( F5 T# f
一般来说,k kk远小于n nn,也就说进行了降维8 f. N @6 R. e/ m
h i j ∗ = h i j ( ∑ t = 1 k h i t 2 ) 1 2 h_{ij}^{*}=\frac{h_{ij}}{(\sum\limits_{t=1}^{k}h_{it}^2)^{\frac{1}{2}}} , j* J% _8 b- ] G9 p' Bh ( I: f/ o' Q( p6 a, ]ij 1 Z6 @5 R' C4 L∗ , @0 h. W! R( [4 e9 c+ U( o 9 U) Y8 o: R8 ~2 W = 5 z$ b+ Y5 Q) n9 R9 }( $ _; q! o# q' c6 S) Bt=19 g/ I- t' I% d' W. q, e! s6 X
∑" {* Y7 v, d+ C4 t# c
k6 V! q& }* ^& M( P' D5 t0 \
5 o2 Z# h7 ^( r% Q }" d* S
h ' |( C! w& s, L& R
it " Z; O6 |3 e, a5 k$ o2# m7 F) W" c9 t
2 I; z( ], [* G/ O3 ?. V/ Z ) 4 U' U) O1 H! ^6 \8 T/ l2$ ^# b2 a) ^0 {6 E& z9 X
1 0 f2 K3 o- b9 |$ R4 B4 e$ W' E; s# u" X3 X1 \. I2 o. S# n
% b& P% }; w- V+ p% C9 ~& u
5 `0 O! a _; M- \' J% e6 c& hh 4 k' w% i0 U# \
ij . g/ I" E6 v# H% T! f2 s: t 5 u! i4 X" B5 c+ W4 C5 W; ?# o$ v; R, j! V4 Z1 k
5 \' _7 F$ u. `. l( H / R/ w) N8 h0 r2 j9 K; n1 k" G% i2 Q, W5 A
这里需要注意,降维后导致得到的指示向量h hh对应的H HH现在并不能完全指示各样本的归属,因此一般在得到n × k n×kn×k维的矩阵H HH后还需要对每一行进行一次传统的聚类,比如使用K-Means聚类 2 T3 y8 G W, J# [1 o + J. g& H2 j* B q(2)规范割(常用) 7 P7 n4 ^ K& Q规范割和比例割类似,只是把比例割的分母∣ A i ∣ |A_{i}|∣A $ y! }" d: \; f9 I% z! e
i 6 @3 {* |& @! [9 W; l/ F: } 9 f- \) Q/ u6 _- h9 } ∣换成了v o l ( A i ) vol(A_{i})vol(A / b; J# n5 i: Y. `$ L7 J
i ( V: L5 ]5 a4 n% ^6 f ' v5 D0 q' g5 F; A ),定义指示向量h i j h_{ij}h ; K0 c+ b' Q3 P
ij/ s7 K+ n/ N. E" J. J
! h7 |9 X* G6 D
如下 + i5 A+ J* o% e5 _: r % v; j, ~; k! ^4 Dh i j = { 0 , v i ∉ A j v o l ( A i ) , v i ∈ A j h_{ij}=3 w# H8 K% [# L# u
{0,vi∉Ajvol(Ai)−−−−−−√,vi∈Aj ) v& \& V3 N: `; r{0,vi∉Ajvol(Ai),vi∈Aj 0 Y7 E6 @2 t& C) Q9 C# r7 i5 `9 {# }4 hh ! n8 a7 Z/ I( C3 Z% j0 g) F
ij $ U$ Y0 {3 \# T$ A+ M* n/ _ 7 J, p6 s4 T+ i& q7 Z+ B( i7 K ={ ! m; L0 j$ H5 {. E1 i
0,v # b+ F; Z2 a. p7 _9 W( {i4 w3 s/ ]1 x* H1 y/ J1 K5 t+ H" c
A7 S; [% F( P" E ∈ j- B* N7 ^' i! Y: H8 U/ / n: x2 N. S4 V# d; o# M: jA 0 v: x t8 @- ?$ x \1 f, y. L
j2 e# W) w: H& a4 _0 ]$ w7 A
4 g' Q9 J/ D& W# u! X- T7 @! R8 T5 }0 @ x, O# d9 `) l
vol(A , J; U, i0 |7 vi8 ^' ]5 g% U2 ^9 q4 N- Z6 K
5 p% O( ~6 [/ i% C" \5 w ) 4 r* l0 ?5 U% }( R. f, u: _: g% s% T* w5 {5 ~. _
,v 1 ^7 Z$ \2 _& W" @i ; u3 C# \4 n0 ~- u$ z8 Q9 z ( n2 Z$ @5 z6 l3 b" t; S ∈A 7 M k' r' x/ vj3 Y2 V/ ~. |- W7 |. f
8 S. D; f$ ]4 D' c
2 q. l2 G* z+ g. S0 k+ j, n
; H. J- }8 H- x+ ?; d; M 0 f- n. `. [, v. M 9 }8 E* L6 _1 K0 h, G! ]' `于是,对于h i T L h i h_{i}^{T}Lh_{i}h 0 g U( }5 k6 [* y
i( k" Z( w8 a( g% w4 u
T. H- M% Y( w* O. u
1 v9 p% n$ j- P, } Lh ) Y8 g4 w+ z* c) g( K( O! m+ D/ L9 V
i& c# U8 A: A& z4 q0 G
% z* x: k- r% E
,根据拉普拉斯矩阵性质可知 3 r Y& ^3 @0 r F, [$ o: B- x! t5 `( X) A
对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f ! `/ A, f+ X7 l/ ~$ B5 }' w
16 e4 O: g9 ]9 B8 d' p( N" l& f4 G0 P
: \. [' M% v. @: n
,...,f 5 S1 Y+ p, g9 A# x) H7 K7 m
n ) ?5 g w, R7 E7 q2 r; K( f: j; a5 _& N7 l
) # n! } y+ w; U% v' {T / H, @- _& t1 g7 Q* Y6 W ∈R 8 ?( j6 S& D) G6 b9 }n : T( O/ ?, |! ?( t+ r6 s ,有f T L f = 1 2 ∑ i , j = 1 n w i j ( f i − f j ) 2 f^{T}Lf=\frac{1}{2}\sum\limits_{i,j=1}^{n}w_{ij}(f_{i}-f_{j})^{2}f 7 }- z( U: J7 ?, c
T, ~ B, K( z! g6 C$ T
Lf= 2 A' O6 s, r. y2 ( n9 }( `6 ^& }% A1; l; A; D. i( t9 X! y$ X* r; ]
( d/ x: W5 r* b; t5 Z- M8 j6 B
- k( ^ s: |2 @3 u. q5 A
i,j=19 g; S; T3 N$ q, U% {
∑ 1 |5 e! J8 S+ nn7 O- P6 p0 w( R1 {2 O( f J' G5 ]
2 m# ~# g1 c3 C$ M( _ c
w 8 t8 i# L7 n/ Y7 T3 C$ K
ij6 p4 j/ Z+ a# [, `- A
2 t- z3 ^; Y3 P, \ (f 1 y& G7 N3 q! g+ X6 U8 D& L' Gi 7 B+ e, f% c. q6 J" n3 S* q7 x / B* m5 M' v! ]" x9 W. p −f ( X7 U) `5 I3 N9 c4 ~8 z5 Rj" k- ?/ W. p& I) s2 ]$ O4 U
6 O: U7 i8 t1 j4 }" g$ H ) 1 q" K, C7 ]5 w! f1 u: P9 n
2 ) }/ o. ] {5 o$ o1 x# y2 O) R/ R/ k# P% I) ^
h i T L h i = 1 2 ∑ m = 1 ∑ n = 1 w m n ( h i m − h i n ) 2 = c u t ( A i , A ˉ i ) v o l ( A i ) h_{i}^{T}Lh_{i}=\frac{1}{2}\sum\limits_{m=1}\sum\limits_{n=1}w_{mn}(h_{im}-h_{in})^{2}=\frac{cut(A_{i},\bar A_{i})}{vol(A_{i})}0 @# k7 U: @8 J# U' T
h + ~6 ~/ a- y: Z# ]9 }6 bi 6 `6 ?* z, d9 j, a8 r" V2 \T6 \* q9 s2 ~1 K; \9 c; \/ e
- q; e6 R8 f. v! h Lh 6 e% }1 [) o: y8 r2 X$ F
i $ o( r6 `7 A# N- t/ o& e+ s* Z8 n4 a5 c7 P
= ' N `' O" T) k: n/ k& y2 + S* }$ ]3 H! k- w7 H% V1# f& E0 X* G/ Z! O7 P" _
- _4 K8 m; m, C0 U8 k( J" G 4 J: {# M6 S" N6 ~m=1 {7 K2 D4 U2 E, }∑ 8 ]& R. [" Q8 a1 ` 9 c* j k9 ]- T) Q8 H M( M3 V2 a& k- g! {& An=1 & f5 w! Z" Q) H2 @$ w: ^∑9 i, T, J, n2 a* p: Y
- x' o6 O! n. B, \; E w 3 p8 @/ L9 K! V. A# n$ ]4 P' jmn 7 _ D# t! o& ?7 R 0 g: T0 T# s, M" f; U( E (h 3 u9 y/ t4 b7 | s+ N
im/ b7 [# x+ t _6 m; S$ A
7 j, t% t% Y& Z+ b- ]3 d2 `& S −h 5 W. u, u9 Q* e0 |in ; t a& t* \/ d% ?! [2 \& C% m" m. }& a% ~% J0 }
) ! I, g5 }( D) h2 O7 b2 : x7 b, Y5 v: A3 j = 7 O' I) Q3 M9 l6 i% A3 t! @
vol(A / [, s! V- |, W8 N* pi9 X7 c! T8 I2 ?! G" j) E$ l0 d* j
2 Z0 N n1 T; J+ x. y2 d ) 2 ~# F$ d9 w1 P9 B5 Hcut(A + v9 A8 [% _3 \
i1 A2 b; y% e+ Y& J
3 T# X5 \4 M$ m' p( E , 4 a B7 e/ T$ L" O Q
A 3 P4 g0 |% w! v P% O: m, P' w7 wˉ1 l" r' L( ?8 A' b
& Z, A1 ?' X3 R$ ]
i# g" ~6 M! u* f0 I( B% Z
6 K* y2 A+ q; F ~- H
) 4 f k1 L( B6 Y2 Q; k6 K7 w6 x: k/ D: K% C) n2 ^: q
# v. A4 A/ v4 ]+ U2 ]+ m* q
: K/ P p% K% v3 z* `; a! E8 T严格证明过程请看刘建平博客:链接$ q# p9 o( ^0 L9 Z: y( d
可以看到,对于某一个子图i ii,R a t i o n C u t RationCutRationCut就对应于h i T L h i h_{i}^{T}Lh_{i}h 7 X$ {" J3 s8 t
i3 D8 S& s* ^0 t" I4 V
T ( c/ C8 y: S& F. b( R * N5 P) N1 @% f- a+ a+ [ Lh $ @. _" h( L# [/ E
i$ v, X! A3 z/ o. Z+ X' h
y& C8 B. S- D
,那么对于k kk个子图 - G" X" i f) U: D% U4 }- E2 t( I# G- s# W0 Q$ ]
N C u t ( A 1 , A 2 , . . . , A k ) = ∑ i = 1 k h i T L h i = ∑ i = 1 k ( H T L H ) i i = t r ( H T L H ) NCut(A_{1},A_{2},...,A_{k})=\sum\limits_{i=1}^{k}h_{i}^{T}Lh_{i}=\sum\limits_{i=1}^{k}(H^{T}LH)_{ii}=tr(H^{T}LH)) K0 A- y/ K, `2 p# G& I2 ~
NCut(A ! ?. g8 d6 e5 `
1$ a0 s! [. U" _7 D& \2 ^
9 W4 T' b6 r! O5 F- S6 Q ,A % {8 x% ?) C1 K' c$ j& h. K
2- r9 W* w% \: w# F" U
; D+ r3 w1 {2 w
,...,A [0 Q; H/ Q- T
k 3 h0 E& t% t9 n" f( a 0 ^/ F- ^5 }* u# l7 x3 T$ z$ z )= 6 `7 D8 H$ g- T2 H
i=1 @2 o6 C! v" v' X# m: r$ n
∑ 2 N. B& C/ C/ i5 Y: y/ }0 Ak 8 K; I% j2 x! B7 w5 i ' O8 }. P! b& f: ]; Z h ) t% X9 Y$ x( e
i ; Z( [7 Q7 {* K6 u( s, WT ) r; n6 N: i$ L) B1 i$ F$ h1 e& ?4 c+ @( t i% U. H
Lh 0 Q% J* N1 F3 X p' K* G$ s. j
i8 {. V$ g) T7 B$ u
# m6 x- M. d7 {& w3 S = 0 z. L( U% ] ]1 X, J: r! si=1 4 }! U% o' T m. O& Z∑ 1 x! P; G5 ?2 fk, `$ E# ?7 H. @# u
: V. E& O! P) ^! b( o) c* ~! ^. \9 p (H : ]8 Z+ `) v E% d& d: E
T 3 P. m1 }' w; Z. z8 s0 O LH) 4 Q, F) D" X; o. O1 X6 e' k
ii% s* ]- `: T/ F+ w) c, c
1 i- D# j- ^ }7 ^ =tr(H 9 X. F2 M- ]$ ]" C) n5 c" h- \ Y; Q" MT 0 k( Q$ k0 o% o' r8 b LH) & [ Q/ _) l7 d+ b * x& B: H; Q; O8 ]" j( s, \但此时H T H ≠ I H^{T}H \not=IH . W% h9 s7 ^9 }T- c- I. J9 k6 Z7 _3 g3 d2 i, t; t
H 8 p9 k1 m7 ~% S" N5 |/ w 4 o |& z0 }& F" `+ i: Y! a2 K=I,而是H T D H = I H^{T}DH =IH 5 q" a+ \" l5 Z+ d
T: J$ q+ X, W% R/ ]3 Z& I
DH=I ; i8 c9 I' j+ ?( E5 a1 A S X6 w3 m, d0 k/ J
这是因为h i T D h i = ∑ j = 1 n h i j 2 d j = 1 v o l ( A i ) ∑ j ∈ A i d j = 1 v o l ( A i ) v o l ( A i ) = 1 h_{i}^{T}Dh_{i}=\sum\limits_{j=1}^{n}h_{ij}^{2}d_{j}=\frac{1}{vol(A_{i})}\sum\limits_{j\in A_{i}}d_{j}=\frac{1}{vol(A_{i})}vol(A_{i})=1h " b4 L- C' d+ c2 j. S8 W
i * ?% U7 Y9 l9 E: s2 yT+ P- h2 u( F* [. ?; E3 [6 ^
" X1 k4 S- X/ s! c7 H0 t
Dh * O$ r- Z5 o1 F0 z0 l5 ~i / M, A9 A8 b) U2 f' Z$ C" X3 S) M9 l4 {! v; |+ v Y
= # B7 Z7 P! X% L* i5 R9 a
j=1 * z0 b7 r+ q+ J r; E+ j5 V1 a∑ 4 @. b* I0 D0 ?* Ln 8 m4 a% }5 F. i9 N & v1 C+ J d' k+ h5 D7 t; Q+ ? h " d1 ]) u9 x8 Z6 @6 }! s6 ^
ij 6 U6 g3 w# w% E0 J' m2, o2 I. H: m4 x
- ^8 ]+ p5 x; L8 v7 i
d # g V9 |+ V; X
j , V) {9 ?, B& L5 h, L$ a% J' {3 `
= ! l. ^ I6 b: K) c/ q; l, U8 {vol(A $ g! Y, A: _! C: R) }( g; fi ! @, z' n. s6 ^2 H* k+ v/ v9 A* f3 G! f0 Y! d! ~ W
) q/ N D/ T$ s1 " K* [$ w+ g+ u 0 [: l& e# P: V' O7 E1 \4 {5 D) w. T' f4 i$ @2 j
j∈A % L! }3 d5 S3 ?. v# ui 0 o: d: z& y% w. B7 ?$ d8 S: R9 h" p7 v2 q- h' ~$ `
! g5 {% p3 a1 I9 K1 i
∑' E0 i) B- f3 F: x5 n- G: {; k
3 K, k" m6 }( o9 R7 [" N d # |/ @8 P* a; W- W1 U9 ?j ( F0 R1 O0 J' a, ]2 X# I% X ! R- J6 n6 u) X/ s = ' D+ |$ `2 H* z- X5 Cvol(A - H3 ^, Q9 W2 k: M( e% r
i % r) `. R8 H# b( j; c6 z+ @2 p, ]) H1 L. U
)$ b" z6 x4 f& x5 L! X: w8 }/ X1 t
1 8 m2 N# u1 X7 @" i; C : Y i% }& `6 u3 X! l vol(A - k. g5 b! H7 _" i4 V0 Y5 Z) [* d
i - f' ]; X; X% m$ z5 D5 k4 K. J6 l R" ~
)=1 ; A5 a/ i* f# Z/ @因此,此时切图优化目标为! A7 e- h. g8 D5 e+ t
6 X9 d+ n+ v7 ^" Q7 J: ba r g m i n ⏟ H t r ( H T L H ) s . t . H T D H = I \underbrace{argmin}_{H} tr(H^{T}LH) s.t.H^{T}DH=I # d: a* W g* b4 ?" m7 wH / i5 B1 @/ K5 w/ Y, dargmin' o5 S+ Q0 {) O8 W
0 g0 S# E& D: g: I
$ Y" Q, n/ P* z( q; }% t, B+ @/ r
8 S5 D( n" H* G2 Z6 {9 C. r tr(H 3 Z" `' C: a) N2 W! _T2 x$ s8 O6 u- m/ D7 J1 m1 A, J
LH)s.t.H ' N _0 E: [& s$ r9 x
T : U" ~& O; {8 x6 [* H DH=I- j" W4 l; y. \: H# B
( |1 P' N+ g# [ U
但是现在矩阵H HH中的指示向量h hh并不是标准正交基,所以需要对H HH做一定转换。令H = D − 1 2 F H=D^{-\frac{1}{2}}FH=D + W; A. ]. y# o
− & e/ ^/ c8 J/ c2 S7 v2! j; Q; P% N7 V P
19 {0 n8 n) q# Q* e' V4 i/ Q
5 j& A, |: E! \; q
/ Y- W4 p0 c; l F,则H T L H = F T D − 1 2 L D − 1 2 F H^{T}LH=F^{T}D^{-\frac{1}{2}}LD^{-\frac{1}{2}}FH ' U$ `4 u) S! o% w* Q2 |
T0 k8 p$ C. R' W
LH=F : f( l4 p3 |4 y! x# M0 T
T $ |$ l; I0 ]! c* H) o D ! [+ c3 s7 F+ Y, d9 u% S; i3 n
− 6 K; M0 o& ]0 s
22 V. U% w- h& G, F( O
1 3 E: ~( p- A" T( r) Z3 n 0 \9 _# W& r& [# i" e5 o7 E' p) E) }: Y" K! @( J$ R- F! W
LD 7 @/ `$ ~+ `9 ]- D* `− ) `% o! [& E6 H3 M/ ?, }
2 ' T4 I% S% j6 s1 - N; u/ h4 W! r. W+ C( E3 o+ v- _& @
% Y3 `: a. K& ] J- I. q
F、H T D H = F T F = I H^{T}DH=F^{T}F=IH 5 U v+ D+ j4 ^. [: ?2 @9 Y1 y6 QT' U2 t8 C* @3 m- L6 {
DH=F ( d- D0 m5 Y+ y. i- iT- B3 u" v) K% N1 i% j! a* e
F=I,于是优化目标变更为 / Y% O" p5 c8 Y: g' l3 q5 ta r g m i n ⏟ F t r ( F T D − 1 2 L D − 1 2 F ) s . t . F T F = I \underbrace{argmin}_{F} tr(F^{T}D^{-\frac{1}{2}}LD^{-\frac{1}{2}}F) s.t.F^{T}F=I! g, b, ^ S2 Q4 R' w4 t9 V+ V
F" K; j, a" w7 }) N- `1 w$ J
argmin1 B1 z, c9 b% x+ `' @ c9 d6 u
% y& U5 X" n1 t$ ~+ G5 a2 l9 D: A' x) H7 ^% _
3 k$ i, U# y3 Y
tr(F " G) V. x j5 B/ I9 Y! k1 \! ]T 8 r- Q2 ^0 K, X D . r8 ^, g6 E) U− / G( _ p1 x" U2 ; o) w2 O0 i6 @. I) b6 S) |/ d7 Y$ t1, u/ ^' Q# f" @3 `: [
$ [% s; b. H5 [) V; G% h7 Q, x0 W" f# h
LD - k1 I- t' n1 M Q( S) D! _" k− - G4 z. ^+ V/ I
2+ e' V- S* x5 U- J) s: P
11 h* z+ E2 k$ |! @8 t
% u' N0 p+ T" G* c . V p! Z" X% [0 X6 N* } F)s.t.F $ M. j Z0 z0 l3 r( LT( j: c2 }. a# }9 |
F=I U# ^1 t) r. @2 N" J) s 9 K, ?5 B+ S' [8 `8 M现在,和比例割一样,通过找到D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D / s9 T d4 s) c& A
− - [# E. p' B' ~ ?# a; T
2 0 {; h6 M( Q; T- M3 i0 A2 I# |10 {- k. C0 ]1 }1 }* h7 `
' e( P# R4 V7 f9 E( ?1 O- e 4 D7 z1 D! Q1 B ` LD 9 ^3 {' C3 F. Z# V5 N3 u: _− ! H c" o0 F9 [; p4 u29 j j+ o( H3 B0 W) {" F" E; i9 s
1 " [ a* K( D, _+ `8 u, T; B! {" {- u+ u- T, A
& p# C# @2 z6 A
(就是之前的L LL)的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特征向量组成一个n nn×k kk维矩阵,也即F FF,最后对F FF进行传统聚类 8 k z; q7 t, k, C' I7 h6 T3 q5 b& o& G8 h) u
一般来说,D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D 7 Y1 I5 @/ p" k2 s− % I4 v+ R& j6 \0 a8 G! A22 z+ ^: S5 S8 L7 Y
16 H# Y( r& m; O' g J6 z' H' j8 v7 a
+ s9 N, e* C/ |7 w 6 ^" h6 C( J* h0 m2 X6 s& q LD ; o% f- i" x9 W* D* V# Y− % H& ]" Q4 ^* h! ~" y* G
2 6 M, S$ l. f# @" X; b1 L" y# ^% X( D; Z/ [. [& t
[% V' y& A8 c; j9 E0 ]3 O/ X
9 o! D! w) T1 ]1 _( k% C: ]: y, [% W 相当于对L LL做了一次标准化,也即L i j d i ∗ d j \frac{L_{ij}}{\sqrt{d_{i}*d_{j}}} 8 g" L" O t4 Q( \; G1 F% B
d 8 u2 ]8 D) v( @. X- {7 w% i. _' h! m; Xi; p* {$ ~! X3 A1 {4 @
" X# P4 V( K% ~0 O0 l" j ∗d 2 Z7 M! ^7 F G# z0 @5 y+ S& ^
j9 Y+ q; h! v4 F$ u& [- n1 l) y( x8 _$ b
1 S& k: T& c+ L$ @, k4 g& ?7 H- v4 G. N# `5 P9 B3 C0 K
9 ]! ^1 W9 G. R& B
0 t. Z, u" w f+ t! V
L ) S/ s ~* x5 L6 A# Tij & g; c5 _, }1 M; J! w v9 V% ]. {# l4 `/ ?: w0 o4 |1 R+ b3 H7 h% I( I, i
- o4 e8 v! u0 h& B
' x4 C2 n% @; q5 W. E( w( E* _二:谱聚类算法流程 , \( R, Y& R( e+ ^给定数据集D = { x 1 , x 2 , . . . , x n } D=\{x_{1}, x_{2}, ... , x_{n}\}D={x % t$ C. U( `$ x' }- c2 {0 ~
1 - }6 k( I+ n. F! p, k/ X1 u$ F6 ?) c0 n. F9 }! Q1 G- X
,x $ Z2 D1 m; c& |' ]/ K1 c, m2 : x' O) h K* G+ U V / v' J% b- z4 d* Y/ b ,...,x 1 U3 c& K, Y6 _7 l9 d
n ( W' x0 z. H; I0 [2 L+ H, S6 J) \ " j' f4 \# G8 E$ S% f3 R' O! s- O; [ } ]; U0 b' J% Z% E3 u L" [ `, H