【数据聚类】第八章第二节:谱聚类算法之切图聚类、算法流程及其实现 : F; ~! a8 l2 n' E+ t, t" N7 a m! ~
本文部分内容源自刘建平博客,在此基础上进行总结拓展 2 d0 q4 C! g7 U, `/ m6 Q0 _ * L0 Q+ _8 |/ j: g6 m; Z6 d原文链接% j/ N* G$ u6 |: I9 S- \& b
文章目录 : s7 I/ P; j. s一:谱聚类与图划分 . `( m0 Y9 W5 H% v9 [(1)比例割7 Q, ^! _0 s. L' ]! a/ d
(2)规范割(常用). l3 H! a; \8 H/ K C
二:谱聚类算法流程 - f9 u$ Y& ?6 m' V: R+ W: R4 J+ n1 R三:Python实现 ! J3 a" @. g! _8 A: ]* [' e四:谱聚类算法优缺点 2 V2 ]" k9 Y# k* P$ a$ M9 e5 |7 s( V(1)优点 ; `/ I a5 o8 R4 v( T(2)缺点" e6 D) D/ j$ E8 C7 R0 M
一:谱聚类与图划分 & R2 O: v7 T4 u6 g9 e无向图切图:谱聚类算法根据数据点之间的相似度将数据点划分到不同簇中,因此将数据点映射到无向图之后,可以转化为图划分的问题。对于无向图G GG,切图的目标是将图G ( V , E ) G(V,E)G(V,E)切分成互相无连接k kk个子图,其中+ h" ^5 y1 }, { `& x, U/ N9 j
+ q. W( G( e/ X+ v2 q每个子图点的集合为{ A 1 , A 2 , . . . , A k } \{A_{1},A_{2},...,A_{k}\}{A 5 ?2 y- ^( |# w; G4 R$ s& ~
1 " P! q2 I5 S4 U+ P7 q$ G1 q ; Z! h; C9 C- ]5 }# _ t; S; e ,A 6 n& G+ e: F# R% I$ u) D2) {! R1 q, G- K2 C+ c1 H6 u
. `1 Y. Y' E- k8 u0 }/ _ ,...,A u( W) D- J4 }k6 c% B; p9 s; g+ p; o! y ]
f, L* k* ]2 U6 ~( x u7 g/ m; k5 ?% t
},且满足A i ∩ A j = ∅ A_{i}\cap A_{j}=\emptyA , T& f+ \$ K# L* Q- U! C6 t; E, V
i) ^5 B( E! u6 i; |
7 E @( @- ?+ {. j* Q u2 c ∩A : e! L5 n' J, b# l9 r) Q# g
j & m% h3 I! j W9 m# p% i4 B. P. j6 I: s+ Y/ K7 k, _9 o# D
=∅、A 1 ∪ A 2 ∪ . . . ∪ A k = V A_{1}\cup A_{2}\cup ... \cup A_{k}=VA 0 J& K8 S+ q; ?- j4 {8 l& c8 j. F% Q
1 ! X/ x) R* z2 V3 T. G) `8 D4 i7 L7 U$ O8 v" v4 G
∪A ' d/ B# u+ m* p
2 / j# r. H) C+ v4 U# k . P& n/ ^; S; C" s ∪...∪A 8 e0 a" b& r( L* T+ rk $ S) e6 O4 G1 N; E+ f' x 5 |9 ~* e& Y! B7 w& p) u =V $ c0 z5 J8 X' l! h$ N对于任意两个子图点的集合A AA、B BB,我们定义A AA和B BB之间的切图权重为W ( A , B ) = ∑ i ∈ A , j ∈ B w i j W(A,B)=\sum\limits_{i\in A,j \in B} w_{ij}W(A,B)= 6 y. p9 _& _, A
i∈A,j∈B% {; C, J Q# \9 c b0 ^ J! G
∑/ F# b$ e" @1 k. I2 V
( {. X3 Q9 D% [! Z# R. Y7 Y w % n) j* M# D# x3 \( {' {ij/ b$ ~# E6 ^& J# y
3 h$ _1 [' z# v ( ~4 g7 Q4 t. u* K2 k4 P9 ^对于k kk个子图点的集合{ A 1 , A 2 , . . . , A k } \{A_{1},A_{2},...,A_{k}\}{A ; \! ?4 Q5 Z& Y8 b/ Q- F; h1( l+ W2 r2 G, [) w h( p# {1 K
8 V2 a4 u" l1 w* Q ,A 2 m! |/ K H! K% K% G2 s2 9 w! P8 W; b$ ~, i& ~9 M 5 m8 w. Q8 { i2 N- F( ]5 L( ^, r) } ,...,A # a5 G6 U1 @7 p' C9 t* Nk; x! \! \" c, t. g8 D! X3 h0 L
7 T2 H; m8 u6 U; P
},定义切图c u t ( A 1 , A 2 , . . . , A k ) = 1 2 ∑ i = 1 k W ( A i , A ˉ i ) cut(A_{1},A_{2},...,A_{k})=\frac{1}{2}\sum\limits_{i=1}^{k}W(A_{i},\bar A_{i})cut(A # i% p8 v# N3 k1 K6 X4 a- g$ S$ p13 H# k: V6 s4 }+ A6 l9 o4 e
) s9 q7 ^" F) @2 h* i8 q: T
,A 2 u; [6 _* p2 O; M) G2 , X2 M# p) O- F0 k * M- K) b! m4 P: D& o ,...,A & H% E3 E$ p& qk " t( z' i# ~* B$ A# k" \ - C# ?8 h6 W: r: o! x, \ z )= & U# K. A6 p6 d- j' @
2 ` J# f# j6 `2 J% l3 A
11 H& R1 F" n) @; h
# }' k9 D3 @3 u - _0 |9 G0 M; W3 _6 n. u7 Hi=1 4 H2 ^1 D8 u/ m( }" d* J∑3 t4 e2 o3 r" ~% O; e2 B
k- l7 h1 }$ [& ^
9 \$ \$ Q8 C8 i5 K8 h7 J
W(A % z6 k0 V, r* j7 C; e6 qi ' M( N0 q. f# L* R% r) G7 R6 D t' y; S: u* B! O, b
, ; I. g% w. J) d% H7 h' I
A ! [( ^* w- @5 _+ Nˉ+ [3 q9 o8 t" d# @! s5 R9 u
7 d% M, L4 q, t# x9 _
i 4 C( H& H% ^0 D2 Z6 i% H. N, M4 D- i7 C* B2 S$ G: j. b
) (其中A ˉ i \bar A_{i} 0 p5 L5 X9 `1 V, y+ K8 r2 OA $ B8 I7 R& l" s: [( t1 J5 aˉ : G# `; P4 u: h& u1 M% u" _5 C5 P) n3 k7 Q
i 0 H3 {- Q3 z& N) b/ f8 O; p" x, U0 z& f( c& Z- d9 g
为A i A_{i}A $ u9 z x' [- [2 u5 c4 k
i ; B* n% D5 J# K' i- g; ^" L& t& g. t* U
的补集) 4 H# s7 E; w0 T" O# x* x可以看出,c u t cutcut描述了子图之间的相似性,c u t cutcut越小那么子图的差异性就越大。但是c u t ( A 1 , A 2 , . . . , A k ) = 1 2 ∑ i = 1 k W ( A i , A ˉ i ) cut(A_{1},A_{2},...,A_{k})=\frac{1}{2}\sum\limits_{i=1}^{k}W(A_{i},\bar A_{i})cut(A ! Q1 ?. J$ E- A! T" W$ s7 u
1 ! D6 p3 u: [" I6 {, @: Y/ j 7 y# Z; A3 d i0 |- V$ R1 @ ,A % I+ l. u3 u3 N6 Y$ b
2 3 x! f5 T' S, F* I" Z3 ]0 g" a' H$ L4 n7 W' h, f, ?; w
,...,A # m, P% z8 B, b! S. V
k b! \# y* Z2 W$ d" Z* s
+ I F w; m$ H" r7 G
)= % [# C% o9 M7 |( i# t( S2 4 f% F3 z3 i; h& Z- b: n) X& F12 `9 C* b. v6 @) u
2 g: E/ n5 C: y$ |% ?. T5 c# o$ K/ n$ n- n
i=1* v# [; J! l8 z" l
∑; _7 z" Y* ]4 j0 b9 Y
k: @# q! _( _6 h; k2 ~4 I0 T3 S% O
9 d- Z3 v' l E+ r6 `; ` W(A & Q3 {! p4 r* V0 b# r. H7 R5 S1 Ei ) J; {! L4 J3 s- D* G5 S- u" V* ^! m. H/ f# y1 h m# _& R8 g) y
, ! G8 q1 e$ E8 n( P; E* X) i1 }A( S- q; U3 v6 K
ˉ* E# ?2 s" l: \
) q1 @' `1 r6 W6 Y" v' _
i7 u. K2 p' k9 D# n
' G: Q* [/ Z# h& u3 ^/ F
)在划分子图时并没有考虑每个子图中节点的个数。所以在某些情况下,最小化c u t ( A 1 , A 2 , . . . , A k ) cut(A_{1},A_{2},...,A_{k})cut(A 2 I& B- Z3 W* f3 X
1! q4 e& G0 e# y2 O% y" l
$ }2 `6 L& V0 R/ I3 V$ H- ]8 f( z
,A , O7 y/ X, O1 X5 L7 N2 . p, H- `# t9 J t* t& Q9 o& Z$ G/ E% K0 j! t; e1 Z6 A
,...,A * p/ u Q; Q6 B8 m1 _: H" c( Ck9 l" v7 O: a" O, c) S
( @, H, G, p3 D' l8 r2 J
)可能会把一个数据点或是很少数据点看做一个子图,导致子图划分结果不平衡- W: V% ?1 u7 X! e% P8 j
; a1 X7 n8 \% v( g) v例如下图,选择一个权重最小的边缘的点,比如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 5 c i, x! u+ K- p4 M6 W6 P1 + a) T8 y& F5 b) a" l! N& \: a, l+ X) |/ C6 l" h1 p3 c+ e
,A % x, \' ?5 Z; u: }2 ( z3 r2 `: t5 I' x. W$ m9 r2 o! w0 J: G
,...,A ' a6 T/ | q: w3 _3 I( [* f0 _' b
k . P- i- H( W; }% X3 F8 O3 W- ]4 Z# o( ^1 r, Z. X
)但是却不是最优的切图9 z8 b- @- f- `: l# [: O# p
2 x5 j r Z: c( v为了解决这个问题,会引入一些正则化方法。最常用的两种方法为比例割和规范割 8 F0 L9 H1 o2 n: o. J- | 0 e5 `$ c- L. ^8 ~9 z# B' p& [) n& w比例割: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 U N, t! E. c) S16 H" D: w- m0 O' d9 C) {: {; z
/ C# `' t7 E' M. h7 G7 @ ,A 9 z5 A% R R# V0 H7 \+ h' z2 , b, V& c) {5 X* M3 |$ d 9 W; ?$ o, I$ Y8 l% @ ,...,A . x( v1 s4 s: o0 Z% l! }' x
k( d& Q) P7 c3 w# b4 b( g
; u3 U. _7 R# J k) v1 n' ] )= " w# `9 n1 K, c1 p( {$ X3 g" `2 4 n4 E% r6 T d2 }7 Y/ l+ r1( [) W3 a6 Q8 T& s
3 l3 I8 S- P# v 9 M' Y/ f p$ f! k0 `" ai=1 * A6 d: G/ B# t& `, X& j∑ 2 Q# e$ f- V) a1 ] P6 `k 6 L( N7 h5 _/ q* h& O ; h: `; L' j% M8 w& O W" e7 Q7 e2 X. a
∣A 1 s) c3 Y. j& q" S
i; R) Y6 ^# r( \1 x, `) C, G; e% g
5 r( y0 C B4 y' ~+ j M Y5 z
∣* t* F" u3 B% L3 |6 k) w8 l
W(A # D" W6 f- N) W% x
i + L$ N2 X! }+ i I6 O! |' u$ d0 Z8 _, l9 A* j) u) M7 a" Y
, 4 p3 w/ c$ N4 z2 i! W
A 6 G9 g3 B1 o9 d) ]% Q* a3 r. cˉ2 Q! k- X; u5 z/ F( q: l
6 v% p* _4 i$ c* ~0 v+ Q* vi: h; H; g" }$ j4 E b# c
0 R N0 Y- c4 h ) 6 @! [* M' x1 `: s5 M2 L% |, V# }8 l4 g# W& Z+ e. b, L' E3 i
$ J: |* z; k$ `9 {# R规范割: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 # ?: q# p$ a6 |$ f; S& `
1/ L3 l* J3 X6 d' w; w; ^3 f
$ {1 W4 N3 D4 p
,A - o4 J' w( D! k. I/ Y4 r5 s9 B
2 ( O9 _: j% \5 z; z/ d: I5 K' a3 x1 g6 Y
,...,A 6 i* r5 i: T2 I/ f* v" hk % }4 Z' @+ ]; g4 W% E/ |" E" Z; d/ {% u2 ~/ J/ S
)= 0 v; r) h) a) \% U) \- _5 l E2! {- C, x6 ~1 M: [
1 6 o6 ~3 b i; ?( K$ a ) p) ]% ]) Y) O8 t) ^ ' x4 ~8 P4 A U7 Q( ai=1 $ w3 ^+ U7 r, L% T3 c, K( d* g∑ 2 P6 t i% M. r: X& }k & M" R3 F. \* {, Y; E3 o ; d- S4 o8 D/ S# v4 C+ ~ + d- x) d2 U( c, f9 Xvol(A % [' [% R3 |3 R0 e. i
i : K1 T; U7 B0 n# ~# x " B, t; m# z1 C6 |+ ~+ v ); Y. i8 z8 h4 o# C2 ]
W(A " `: [' y* s- w# ]- B8 c9 W8 @i) b& m& R6 h: t
& W5 b" m4 U4 b6 l' i
, * \9 l2 a; E5 i0 h/ F% S4 q
A- Z" D/ ^0 S3 l. o2 z; B: A
ˉ$ j5 Z$ i4 ~3 V
; ?5 k. p M" S0 C; a/ L: g9 v
i % ~' v! G f. f, w# M: T1 f1 ]* h# H5 a5 N) c
)+ r6 J% t% N0 B7 q8 N& Y( m
. J9 Q: Y% Y- B( l9 A/ a
6 @( E0 G1 h, s( H3 \( _4 h(1)比例割 * A2 ] t- P* F8 \+ l, e引入指示向量(点击可查看指示向量定义)h j ∈ { h 1 , h 2 , . . . , h k } h_{j}\in\{h_{1},h_{2},...,h_{k}\}h & `2 p9 g( o t8 C# |: ~
j + T. ]- g- ~2 M* U, ^9 g2 n* X: I) ^) |8 [/ s& M0 F, P
∈{h 7 i8 J& u# R; G! s$ C! ?8 U& _1; ?4 N) T4 I! M, W
1 ]2 D1 M8 T4 m( ]& T$ S r6 q
,h 3 o( q h5 S% j! m! c
2 h+ |( i k# T2 {( c" ?$ ?1 z 3 e% e* E! p$ }5 Y: Z% r ,...,h ! u& \7 d% @( S" Y, M @k : F p4 v$ t6 P6 E4 j! y( D* K5 }, `! w' \7 M
},j = 1 , 2 , . . . , k j=1,2,...,kj=1,2,...,k。对于任意一个向量h j h_{j}h , s* x! k# |# L5 w R# q2 rj " h2 g- r. @" r/ v/ W0 r% F8 O- F" ~3 I* F! i4 |: t. ^1 q
,它是一个n nn维向量(n nn表示样本数),定义h i j h_{ij}h ( r( H) T; n+ d
ij7 u3 I& l, M! k$ G$ G6 R
7 [' T. c5 b$ _6 N! N
如下 5 i8 N/ N+ X* U# ~) c, W1 T; J ] M8 y, D5 F
h i j = { 0 , v i ∉ A j ∣ A j ∣ , v i ∈ A j h_{ij}= " D) t2 L! A. w# w. w* H" X{0,vi∉Aj|Aj|−−−√,vi∈Aj " E+ N6 j$ ?7 n- t{0,vi∉Aj|Aj|,vi∈Aj8 i; }; M6 |8 Q3 M3 z
h ' x! |: a, K) g- |7 lij0 e% C2 `0 F9 F% k, s; K
3 h2 t. U% x! v+ o1 j ={ # x3 B( _. r' s: v& }0,v 3 B% [1 _1 ]+ j1 k2 Ii 5 b: d9 }' n7 l" J+ C8 B& k ' h7 t- x, V8 g# r* \; Z ∈4 w, V( e0 S. m
/ 5 e6 x- r8 {8 w% }$ g' xA 1 u, ^! Z m8 l# pj& B5 t) B" N' H8 o3 `; \
1 f7 w$ ~: B- R( u% \+ E 8 V/ L, H5 r9 F" p4 {; G∣A 2 ^) e$ C3 ]& v9 ~+ F8 D
j. i( U1 q8 j* G
( |" B. m: n1 j* p# b& _; ?& }
∣ 9 F7 Q: H% z. C3 A1 U7 a8 Q( b3 H9 t , Q. O" X: h4 I& y3 _9 ^8 h. a9 p \- t ,v z& }; \+ `/ c7 }, _
i" ]* q$ }9 C6 H5 |" B9 ]7 L
" C7 z: U, [* z( l0 ~# k/ X
∈A 6 R O$ j* v+ mj ( i+ i, n3 h$ w7 r4 z; S 7 s& f, P+ j+ H1 C- c2 q# H 3 \" J- _) M1 d5 p- B, o1 A( `! ^( a2 D
, _: ^2 W$ c: l6 W! ~! B, a
# l+ e4 N \) p# _" n* w) f: v
于是,对于h i T L h i h_{i}^{T}Lh_{i}h R' p3 Y3 x' Z3 L& E3 @* O
i' U& c$ A! L( g& i1 q3 J! H
T* }" U6 R2 w8 V1 |6 a5 c( G& T& b
5 P# d0 N: E" y. y Y7 b Lh . A8 H* a! T# }$ T! q' \i ! q1 w* x$ O( A% v" E. j1 }: u& l4 d' T) r! V
,根据拉普拉斯矩阵性质可知 5 V% P5 i( d1 h3 t1 `: ` ' R3 ~3 P _ `9 c$ g对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f & O) q5 A2 d5 F; o; {& ]
1 ! o$ K7 f( k5 f% ], D " K; [7 s' F% Y0 T2 Z; p1 s2 q0 } ,...,f 7 @: y u* _8 l' M6 H
n" V* ]% k0 f9 S9 S9 o
9 P. j- j0 K- Z4 Y+ Z q ) . N+ m( P: F1 v
T * h- }9 o! N+ f( j* m/ c! G ∈R l. G5 u7 l! I4 v1 `- x0 V
n 4 K$ S& e2 q9 Y( } ,有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 ( F( b. ~9 `6 G U
T 2 q; x. g0 D6 s4 A4 v3 g Lf= 7 W% ~4 D7 j! I; w4 U2 e$ P6 l b29 m3 {- b4 r) `2 h8 N6 V5 ^% [
1 8 t# F7 Y/ i' q8 R8 y% _" a% q c 1 s; W/ C+ f9 R! X/ @2 Y+ O* P; b4 o& m2 k
i,j=1 3 W) a$ S7 c( g1 e* [- [+ o* @∑ 2 |# A# D* `2 V& ~n ! _: [4 Q( Z$ U) j2 m+ `7 ^9 B+ `! S& \. ~" C
w / T2 w. A5 M! L$ Aij . v% U$ X+ }0 f! v7 i9 q$ H0 f6 q4 Z* ~; Q: w! z/ T
(f 1 C7 e& L; s5 a2 @0 Xi / ~- N8 n. R2 C- M$ K( d9 n , Q% ]3 v$ d# }8 p2 D% W& C. q ]; ] −f 7 [1 d$ t# b7 ^1 Y! u4 Lj " |, m! q$ U- z+ `. ? \% j; g. a. X0 k ) 2 I/ K$ @4 Y3 g9 K1 j2 7 h) a" @2 t. U, L( m 8 a* I; r( t6 x, \: C1 wh 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}|} X# }, p# Z, V% W. A
h 0 E+ L y, h- {/ ^; i: ki; R" T, {0 ?. H( y- f
T; f# V- G! U, `- o0 @# D) V4 k
: i9 W7 ~! g& \ e/ Q% w Lh + T% X0 I% W+ P$ g2 W9 ~i 8 Q- w. p* M7 v H% o8 A9 u; o * [ m4 o3 V7 U) U# q = ' j7 x2 ]: j8 e3 t, P3 r2 # Y7 r. u; A7 \; Y15 \9 W6 ?$ D" F3 x4 v t1 L' g4 D
' I; C! z+ [2 ^ 3 u$ s% p( U7 c4 cm=1 " t6 w. w' O. ~' Y! M∑ 5 Z1 W; `& [2 u3 b; P" w9 o z/ G8 g$ j( z' C# o
/ ^; B- O x0 qn=1( _/ D1 ]; ^8 E
∑$ m. l7 p$ Z: w# w
7 F J' R! f0 f w 3 o/ V) B5 ?1 B2 i8 l3 P0 ]1 e% Hmn2 e; R* C" a9 x' i5 `7 m; p3 n) D" y
" c' \4 \1 l- y0 {+ Q# e; ?
(h ( y( r8 Y9 g9 w) G' O
im 9 {5 W# |* P- H+ V6 K! t/ E: Q; K q2 Z
−h 7 g& n, W3 w$ o# o7 _* t5 O$ Win4 A/ _- E6 }, g5 b! N/ I
: Z9 M: \" d" E$ g ) 0 N" M5 T" ~: G2 ) a/ l+ G2 b. ~& c; j" Q* T = " J' W6 N+ Y1 P p' d
∣A $ a, b2 P" q' @: E
i / k) r. i; s& @; i$ S1 o, p* J7 \/ M( i+ T2 i/ I$ c3 }
∣ ) `, J+ p2 x O- K: pcut(A 9 n5 R1 D0 k7 ` q
i - L g# D, S2 \5 Q2 a/ b$ x! G7 U$ ] {& Q) Z' k& l
, # l: h0 I& G' Y/ ?2 \. KA 4 g1 I/ i( O' K1 a. U. [ˉ. @$ ]/ g' \+ e, ?
/ a! ^8 R( i; k- C S7 N: j( Ni- l3 l/ b& I' n% A
' c. R( c1 w. N4 m$ R8 Y )3 `( G- x8 c% ]/ C x* v( E
- ^# N5 b2 [" q3 c* Y @
3 V. E$ H' H% u O9 }
) D0 f, L- J6 I. W; `6 q
严格证明过程请看刘建平博客:链接" }$ V! Y/ W& I5 [) Q+ ^8 D. V+ f
可以看到,对于某一个子图i ii,R a t i o n C u t RationCutRationCut就对应于h i T L h i h_{i}^{T}Lh_{i}h - d' q* ]2 {# ~! A" d
i/ O, V/ w% K0 L
T 0 Z. t* n! y' | " @: w# m7 f' P' Q Lh 3 d+ F2 w0 r' x; q" u- gi) l( A, L% h& G( k1 e8 t' `6 L5 k. X
/ V: N1 ? i8 c; N, v; W2 p; E. H
,那么对于k kk个子图2 H0 i% f m0 V* x" {# Y D( j3 t
. X; c7 \, T* ?& q8 R" cR 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 g1 s8 [( T1 fRatioCut(A * `5 z5 @8 D% t3 r" p
1 ( S$ O+ \' a: ?# Z2 z, U0 w; ~ ; ?$ s+ ^( U7 N% S6 y( y# g ,A - N3 W C+ L! w2 / V2 h8 A2 d, a8 n- \% g# e # K* M; M& i+ ?: V ,...,A 9 b F8 {1 |' |, Y6 S
k E B& N' {/ L) Y( q ! Y# {: f+ w' l; Y1 F f' f$ y )= . `; O" m9 w# X8 z0 Qi=11 \0 t9 g8 J- I) {. X# [
∑+ f" J/ Z, [* H. D
k4 ^' _4 x3 {8 p- l: |
, _3 {3 `$ j6 T h - L% W; y& C) U, X1 @i M$ {; d! q: O( ~+ k9 w
T ( q8 W/ w3 N( c8 T 5 z) M* P8 P+ a( M$ @# }' F6 _- S$ ` Lh j5 y3 R: ?+ D
i * i1 ~* `1 W0 m1 _: { % F& B4 [( j; c4 v6 ^8 Y = 9 |* e- y8 }) F9 K1 _. b) ii=1+ _$ `; S* O/ a0 O( N- |
∑ 1 Z2 j) b7 P) X8 ?% ik + R* U7 u) L6 ?5 A$ k( `' O4 e ? * C- p& P5 C C (H 4 z* z8 Q1 n1 T! aT% |* U% k2 A" C* j" {( M
LH) 4 Q* j0 ^. ?0 b) Eii 3 ^# x! z, P6 R% O/ j 9 X4 `+ L3 c: O0 O8 b1 H =tr(H # h: b, K3 V$ ~9 y1 ?( l' w
T0 I" X+ _# O! X; K+ ^
LH) , m2 @3 }' r4 s! i0 {5 v( E% K+ ^; E& ~4 ?# A. U
因此,R a t i o n C u t RationCutRationCut切图本质就是最小化t r ( H T L H ) tr(H^{T}LH)tr(H 5 k4 K, q, m! u: E0 A: h- \1 cT " q8 {# H/ a% `, l LH)。又因为H T H = I H^{T}H=IH ! [3 L4 ^2 Q k" ~ c3 aT T0 C* R. M& B7 ~5 ^
H=I(单位矩阵),则切图优化目标为" N @" n F G! c* ~ M R% P0 o
3 g4 i' D# e- e8 N( ha 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=I 3 _* O5 d9 I/ B3 YH0 a/ J- ~: v0 |2 L' }' |
argmin' B% U/ @8 @! Q
: V# {7 N4 j1 \3 r) S3 n
4 [- S" F% B, A& L/ n8 S) S5 B! W5 x6 \0 j( N x1 i
tr(H ; j4 ]$ [5 o& o; E7 \: t& Z$ w
T 6 a, J" q" ^% ]7 r3 M! s- |; k( c LH)s.t.H 1 X0 o7 |2 s8 p: V( BT + N! D4 f r5 W$ u1 F H=I- y! p) _5 M/ d1 M" B# P( o/ a! s. E9 K
, M1 D% p/ u9 H# x. K/ J; L! R
对于优化目标t r ( H t L H ) tr(H^{t}LH)tr(H ) Y9 Y( |' U& ^+ Y. _- U" s( A
t" ~ w6 b3 q% q% G
LH)中的每一个优化子目标h i T L h i h_{i}^{T}Lh_{i}h / ^4 }$ A' @9 h+ A: ~2 Gi # O7 e2 z5 M" F6 zT ' u% f7 I2 ?+ R% b/ B. A* G [; C- u
Lh 5 D" P0 F' b/ O2 @$ H3 N" x5 X% ?" O# Di o0 W) a/ Q9 ^# w
( ] V P; a# y& Z/ }- o3 W ,其中的h hh是单位正交基,L LL为对称矩阵,所以此时h i T L h i h_{i}^{T}Lh_{i}h - h& {, a7 r$ M
i 5 S3 @2 H- A$ k; @# YT 4 x0 Y) O6 s* I" j1 _# F& j0 L) a! E4 f, f( A K4 C% E
Lh ' c: o d2 I/ i$ |# T1 z
i- s# K Z% @ J% \, l/ T. ^: D% w
$ R& O8 [& i; A0 Y+ K8 U
的最大值即为L LL的最大特征值、最小值即为L LL的最小特征值。而在谱聚类中,我们的目标就是要找到目标的最小特征值,得到对应特征值向量,此时切图效果最佳。所以对于h i T L h i h_{i}^{T}Lh_{i}h ; i5 Y& p: Y9 H& X0 A: H0 [2 Yi. w }4 s. }9 x0 B
T8 T+ a$ ]5 v) v
u6 w' N4 A' o5 f; m! U+ Z
Lh & T0 P7 D5 _2 n8 O& V3 N
i 9 Q! q5 ~: K; P ) V0 q$ v. O3 Q7 s9 I6 a# k* 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 n2 z* g1 Y, I I" D# L- t* Z4 Dt # ~% X& X1 }. T1 d LH)= , ~+ W8 G8 g% ti=1 9 `6 M) N. Q0 ]$ z6 I# m+ m& k- Y∑ # J1 l$ w: T, Ck9 H) \8 D1 D0 v
# o( y6 n( a' b- ]: C h o4 a( ]) m4 p$ \1 g7 w9 U9 g9 wi & G. { [4 {$ CT ) o: P! t& P5 i3 @& z : v; N3 c6 P+ X: ? Lh ! b+ S/ E/ f. w$ x/ W d1 t# o
i $ O* q H8 ?' Q0 X* q/ R/ f I! f s+ l
,则目标就是要找到k kk个最小的特征值4 a+ G2 t% p( K9 H