QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3013|回复: 0
打印 上一主题 下一主题

[其他资源] 【数据聚类】第八章第二节:谱聚类算法之切图聚类、算法流程及其实现

[复制链接]
字体大小: 正常 放大
杨利霞        

5273

主题

82

听众

17万

积分

  • TA的每日心情
    开心
    2021-8-11 17:59
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

    自我介绍
    本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    跳转到指定楼层
    1#
    发表于 2022-9-12 18:41 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    【数据聚类】第八章第二节:谱聚类算法之切图聚类、算法流程及其实现; B; O3 c2 }4 k7 M0 ~

    ! K# T% b0 O) @* T) e( i7 D本文部分内容源自刘建平博客,在此基础上进行总结拓展
    3 h5 b( m6 @% X. z& G8 C3 l' ?
    6 H1 ?& P. S4 H0 e0 `& c+ j/ I原文链接0 O  x" F7 {6 ^* l2 t( ^- m
    文章目录( Z' s$ p9 _$ D
    一:谱聚类与图划分# A- Q" w1 _, S+ w3 r: X7 I
    (1)比例割
    . s6 a+ t. q5 K" S, [' R6 T7 r, N8 s(2)规范割(常用)
    ! a' r6 F0 X9 n9 {% t二:谱聚类算法流程: Y* `2 ~- I+ `  V* K. r2 }% e3 \
    三:Python实现
    * O$ J. j) ]/ \6 ^. H4 k# O) Q" e四:谱聚类算法优缺点
    4 N! ^: D% H/ }, w- r3 [(1)优点
    % \/ Z( W; G. A- u" B5 h(2)缺点4 s' u3 a5 L* h0 J( M9 B0 U
    一:谱聚类与图划分
    1 X- p- V) r, W; H; }无向图切图:谱聚类算法根据数据点之间的相似度将数据点划分到不同簇中,因此将数据点映射到无向图之后,可以转化为图划分的问题。对于无向图G GG,切图的目标是将图G ( V , E ) G(V,E)G(V,E)切分成互相无连接k kk个子图,其中: D. `. [5 i- I; H, _
    1 X# E. }0 G# {+ q- T& R# n  t
    每个子图点的集合为{ A 1 , A 2 , . . . , A k } \{A_{1},A_{2},...,A_{k}\}{A 5 z7 P+ r  k1 S, U$ S
    1
    - ~9 s# s4 \1 c* P! ]
    ( ~/ @  ]/ }4 P5 m ,A
    * j7 E: v2 X  d& l5 h- Z+ a4 i22 [1 O2 E) a, E0 A1 Z6 k+ y/ p  F' _
    6 O3 G+ H$ A8 S7 A$ p) Z: F- [; `6 R3 a
    ,...,A $ @  C) u8 n, A! L; M+ j4 k
    k# k& V1 j0 P3 r3 m0 L+ Z
    ! S" R# {, ?! _' A% }2 x) [3 }% M
    },且满足A i ∩ A j = ∅ A_{i}\cap A_{j}=\emptyA " ]5 ~6 i7 V  G, {( }
    i
    9 p# y. d' v) r1 ]: B1 ?4 o
    # z4 o, x# U. ?- @ ∩A 8 G' n0 @: {+ G$ h. p  ~
    j* \/ B/ _, B& p3 K

    ; u. D! F7 t7 R& F, q6 b5 P =∅、A 1 ∪ A 2 ∪ . . . ∪ A k = V A_{1}\cup A_{2}\cup ... \cup A_{k}=VA
    ; L" k2 J% w& M" ~19 |/ [5 T- c. p2 x" [0 `$ B

    , |% P5 P; e0 Z. w2 e; K ∪A
    ( j- ?. F  P' z/ e( p/ ~5 S2
    ; y8 ?. S' l3 M
    , R3 \; k/ A& C! { ∪...∪A 5 N$ w8 B6 r- V( T
    k
    : V# E0 c4 R+ h$ H7 N! m# m. j* h) c3 s
    =V) V6 j! ~" U( \2 o' D' f8 K/ ^
    对于任意两个子图点的集合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)= 4 U2 K' r5 ~; ~  A2 @
    i∈A,j∈B
    " D6 a% o- Q* G" {) D1 N
    6 ^- y- Y. a/ |) k5 ]6 D/ L: f/ j' z, a; M" r& B1 h
    w
    * a$ ~9 Y+ v1 \2 R/ j5 ]. f' aij
    9 ~) ?( X' \/ A- q
    9 s: P3 M/ c; n( U' \5 Q* o
    ( x, a9 L! U! W- W1 z, m# F) P  Q对于k kk个子图点的集合{ A 1 , A 2 , . . . , A k } \{A_{1},A_{2},...,A_{k}\}{A 2 b! o7 c3 H+ J8 ~% x
    1
    0 K- C: j. `- {0 K- \) q, N, s# u0 r! E- e! X# a4 O9 J
    ,A
    6 G1 y- z, V8 }7 G  k2  c4 V$ c* W" o- ?* R$ P6 \
    1 _/ L; A2 m4 Y  ~2 r! W
    ,...,A / \! c+ C1 u, R/ g! g
    k- [/ I4 k1 E' C) }. p- U& A
    ) L) W( f2 d* g9 w# K. ~
    },定义切图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 ' x) x* t' q$ K1 q) f
    1: H1 F* V' I+ W; ?3 u& h" C6 F# T
    , ]0 y! \9 b- D8 r1 S$ @* B
    ,A
    - |. L& h& z, `# b9 f& t20 n& j% ]; P1 e) ^/ }' T
    3 l: I* g# {) s  M7 {" z8 ]# j$ R2 g
    ,...,A
    8 X7 x; Q3 M, g" a- ]k
    + v* c% o# X4 i0 s4 w' r! [( O  `; r+ y
    7 g4 ]6 m: S- o! M )= 1 y1 n6 [7 ?  O& A: b- p4 P3 v! O
    2* ]& G  w' a2 Q+ O, ~
    1! A0 \  S6 l9 Q2 l. g" R1 t
    & k, j; E( M+ e3 l
    + U+ ?8 ]5 b5 J& b
    i=1
    ! {2 S1 d! e! ^* n) _. X* m& M) H) ?9 J+ ?; l6 P7 I. z& ^0 b! l
    k
    # a( D3 k  H5 ~( C8 T$ N. z: z  F! Q, [
    W(A
    9 K% @( ?/ {: r+ o& Ei
    # ~. o" [+ T, P, L, S9 R
    , m" g# }6 y  w5 }( G, _ ,
    0 k* C& A- q% m7 v: ^0 ^A3 H! v' X- u- y2 ?* Y4 }
    ˉ# p% d# ?4 a: _+ E' T0 M

    . P  ^7 P  h  U" u+ Z4 u% _i
    3 W( ?8 e4 E: [9 V
    ( I( I, P" p, M8 C" ]: R% [0 F# _ ) (其中A ˉ i \bar A_{i}
    . T8 @$ U2 o; p# I9 |5 XA$ e/ J: P+ Y9 y
    ˉ
    " X# w3 v. h9 B8 b
    0 R8 a1 i3 q2 X+ s6 m: J. U0 n# oi
    & c0 j3 P. @/ M( E5 Q8 m" }( R+ s  }: o) X
    为A i A_{i}A
    0 S; ~0 x. ~: H, t) e/ ai
    " o3 j; x; |7 Z9 n8 z& i: Y$ R  X- I3 E
    的补集)# t, R% m0 T" U
    可以看出,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
    8 |8 u, |" x, j* [; n19 v& C. \' b7 r% s( ]3 E/ Y

    + }0 J& s" j- n+ x* q9 G9 E4 S: w ,A , w' t1 B3 A* |' }
    2
    4 r5 b  I! b6 k2 ]+ ~
    * U4 ]' D5 E6 T ,...,A
    & A; X! I) C) u: R7 M# Jk
    3 W* k! S4 f7 L/ S
    # Q7 V- R9 e) I )=
    + H7 n2 V6 k4 w# L0 E2
    ' L  Q7 p6 D2 y$ [15 S4 M- ^6 e- k5 O6 f, k
    ) y! s+ o$ M5 M
    : F2 F; v) n  s9 p9 h  b) |
    i=1
      B/ I2 R: E. _$ }
    & w  S/ ~* g. m* J' \) Dk
    0 S  J+ d0 J8 v& w! }& S1 D: O. S5 a- B0 Z& t
    W(A & \8 j/ i, N; a  |& n
    i
    ( {6 \0 j7 r( ]4 L5 T$ J0 e6 t! |; F1 R8 ]% v( b/ r2 v% a
    , ( V3 c: {9 @& p
    A* l. o7 S6 Z7 |% Y7 I/ X
    ˉ  T. \- }( i+ r

    + t3 g9 {' a( c/ N& S+ B: |  S# ?i
    $ j5 J! i2 D& ]
    3 n8 s( e/ g+ K! ?4 c: `7 l )在划分子图时并没有考虑每个子图中节点的个数。所以在某些情况下,最小化c u t ( A 1 , A 2 , . . . , A k ) cut(A_{1},A_{2},...,A_{k})cut(A " i: o6 D$ |% ^! g# u) `* H& |
    1- V6 H/ v/ a4 u( l7 b7 T" \

    9 n6 a8 k% b; H# t0 ^  Y1 r ,A
    * N, W1 |/ `8 ]) G$ G+ n& _% U23 e6 E0 z# d( D( f0 n" u
    - Z2 z% s( O( S# ~- l3 |
    ,...,A , z8 g) A0 S: U
    k% T- ]2 Z  |0 g7 {: d
    ' D7 W4 o# c& L* H/ p/ `  q8 Y" L% M2 s
    )可能会把一个数据点或是很少数据点看做一个子图,导致子图划分结果不平衡, x) Q6 ^+ o/ U

    6 F( A% l" I/ k" b例如下图,选择一个权重最小的边缘的点,比如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
    ' m. n3 ^$ ]3 ^* ^& e1
    ! P: u5 a  h6 P1 a- o. ~* w$ I4 O! ]6 B% x2 g$ P3 M7 \
    ,A
    - K, S4 \+ G! U7 M% i1 F2
    8 P$ P4 W5 R* p% V: W% Y% N$ f* s" u2 m! u# i, v3 d$ T
    ,...,A
    - A0 [8 M6 B: n1 J) b% r2 T5 E8 qk, r' h! G) I7 L- O
    " M2 ~  o$ V8 G1 l  s/ T! Q3 h
    )但是却不是最优的切图
    5 w3 W' g1 c7 `3 I. k4 g
    " T$ F- F3 c" K1 u" A为了解决这个问题,会引入一些正则化方法。最常用的两种方法为比例割和规范割3 n- R6 ?' ~9 E
    % g5 ?5 ?6 e7 \; {: x$ V6 d
    比例割: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 & Q8 v$ q, @/ L7 s5 u, f! x
    1
    . C; Z. Q" P; @' U% v+ Z: Y( x7 C8 y  n2 y6 @% G
    ,A
    ) m3 [% c3 p/ w6 @26 u" x, `, _1 o, k* C; a

    * K" R* p+ m& E4 w2 P ,...,A ' r7 B2 [6 n- n
    k
    " N; y7 }/ w  v4 s/ h( }2 ~( Q. V# I2 Q7 e$ B* `0 u
    )=
    & W: B3 y/ p$ ]( S  a2; a0 P4 I7 c/ i
    1
    / b5 U- ?, }1 |- j" D: @6 H. f* t( K/ _
    " B- Q7 M3 |+ i1 z5 N1 w
    i=1' o( N9 ]6 A# {7 ^: ^0 U
    ; o, a' c- g! M3 Q! f# c( l8 V
    k
    ) y( Z' ^0 Z( ]" A' W, y* g
    4 O# @  R% T: |7 _1 X( `! ~1 H6 z1 ]7 M7 w/ [& k! L, s
    ∣A
    " N7 Y; @) F2 ~. ni( v' R' a$ y1 y1 O" E* q. U

    / A2 J9 p  G! @3 }/ s% |3 q+ }9 y. W( w  P& K
    W(A ' H+ H% b& s- H! ], s: R# b
    i
      R' X4 T. w" w9 W& x( [4 ]9 m0 Q; ^  v1 s& A5 d+ k, k+ F7 s
    ,
    , b, ?! E" R+ I7 V. IA
    5 c( _, ?! _" m* L5 m8 cˉ
    + K/ D+ ~8 _- d* Q
    3 S8 ?# Q2 e, q4 oi
    7 V% k7 K% a# U; W$ Z4 Y3 q9 C2 f4 p4 ^! @+ `
    )9 |1 c1 Y8 d" r9 z( Y" z

    / O( W* o/ p5 S/ l
    $ M; s# J  l4 [- D3 ^  L9 X规范割: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 - t6 i% v# C% P. c& W& s
    1
    ; ?3 ?- r7 c  n# ?9 N9 i  A) A5 s1 P  u# w7 c
    ,A ) h" n3 I0 R; _9 P0 }3 n$ G. _
    2. P! z7 }3 X, |( I: O7 d* Q/ G

    " d6 x" z8 N! l6 J0 `) z9 { ,...,A 4 U4 Z: s; |5 ^+ ~
    k
    1 ~* s! `2 i4 Q1 d3 K3 }+ c5 @8 {4 L" ~8 k/ v' ^( \, X( I
    )= % p* M/ \0 w0 [1 Y8 C
    2, z- H9 ]1 e, v! V
    1* i- G9 }) E& G

    $ u* S" E" M! X9 H5 `9 E. O  P  k* O; t; f2 F/ |
    i=1
    - L( C6 S/ T  c% }) C0 u; l
    ' @+ Z& A: g" m$ q# m  Z0 F9 yk
    : @* D0 W! V6 ?3 ]) n$ K5 c$ p6 o+ ~
    8 s1 l% p5 H& j. ~$ N
    vol(A 3 g5 C9 W" c5 r9 N
    i; O; q' ]/ i  k$ m
    % U0 `; \& h3 r5 u; F/ K
    )
    ) e  g# b6 [( h2 O5 YW(A
    9 |$ q2 g, {' _i
    ' \5 Y9 c% s* W' ^8 q% b6 r( Z4 M6 P$ P* k, h, C# ~
    , % w, T7 a) m4 v0 F0 i7 Q
    A: W* |6 u3 T$ c( S) @  o' B9 D
    ˉ
    ! C; q; l9 A# W6 t. ?. t- V1 p$ e4 j3 ]- V5 r& m
    i9 r0 b! N5 i2 V3 E1 s7 w

    3 r$ u# g) P+ T )
    / w0 e, P' l$ T3 m7 p. w7 |7 Q0 d
    3 [+ [9 p! P, y4 N) j7 f1 Y4 |, n! v0 s$ w9 O
    (1)比例割& y8 C6 W  s0 N  q
    引入指示向量(点击可查看指示向量定义)h j ∈ { h 1 , h 2 , . . . , h k } h_{j}\in\{h_{1},h_{2},...,h_{k}\}h
    0 p: n+ w2 w  P6 K) }: cj
    ! c$ B4 s3 T- o8 d7 u8 W: V4 j5 m- B* k( O7 L! x
    ∈{h
    ) i  n- l/ `# y) V& K+ Q8 |* K$ |1- s. D; i3 E3 S/ ~5 N2 R) W& r% v
    4 r- O3 U- ]# B% `5 C2 E
    ,h & t, O7 a; K. D
    2
    2 v" @1 U3 E1 P0 f0 i& ^  l/ a7 I: o6 |
    ,...,h 1 B; }' H/ c$ z& [/ X  h
    k6 [1 h; U3 N; @! I2 }
    2 A# A- o2 k% K
    },j = 1 , 2 , . . . , k j=1,2,...,kj=1,2,...,k。对于任意一个向量h j h_{j}h 1 ]0 t! n0 I+ }0 ]# _8 p
    j
    6 |# L$ [% C/ k3 f+ o" _1 b' X
    ; M( t  x% L2 {+ R- m2 X ,它是一个n nn维向量(n nn表示样本数),定义h i j h_{ij}h
    0 K8 X1 r6 s8 l( i/ j( r/ mij9 s# C) \! H4 j* g

    4 a% r- N+ t; j; s" { 如下
    : b# k9 l" h% S1 o$ o) q
    - }3 Z4 V$ x  e5 f  @6 wh i j = { 0 , v i ∉ A j ∣ A j ∣ , v i ∈ A j h_{ij}=& u$ I0 J$ ?6 r) L5 c" H
    {0,vi∉Aj|Aj|−−−√,vi∈Aj
    # g9 B7 y4 G9 n6 [2 L{0,vi∉Aj|Aj|,vi∈Aj0 d: T) w! X; W, e/ A4 t
    h : w" X( j) Q  u7 P- ~1 h
    ij! ]( B8 P7 h0 j, R9 T/ @3 O

      b9 [6 F; {- K' d# ~ ={ , \# _, l  o, r
    0,v + q: r  d, Z# z* h( \5 ^5 Z9 F! a/ t! ~
    i5 e, H6 t8 C* P1 ~2 d) [

      t: u& t! `: J* ~# h, s: K' @8 O& Y+ |$ f7 B6 c3 l  m& E3 C; W
    /
    ' L, a; ]% J1 zA
    % [$ [$ R- ]: `- a; z" o0 `1 _1 |j6 m; z, _# W- P: D5 a
    5 k5 X( \, t2 z0 v$ W, ^

    + z& X5 D  ]# \1 ]& u∣A - E, T' F0 `' j2 e
    j6 F, V3 Z: u9 ~5 {1 |: s# L1 R  D
    * H: A/ N: ?$ M# X) M+ T

    7 }# j2 T2 v- f+ M1 I" J7 L5 O1 a/ y: d/ ~/ f
    ,v + j" u; ?$ K; s8 \. m0 c
    i1 B7 z* x- L% I4 D4 D( }
    3 Q* m- v1 c) V4 u5 A
    ∈A " [. S) M. j$ A7 |
    j
    $ K! ~8 j; T5 {3 `" D# c: T
    8 x: d) T2 h8 S" T4 W! p8 U5 N; Z9 j; C' \0 t' L

    : I0 Q- g+ O. z+ z. g1 {3 {/ Q( k! b; h* e5 F& `

    - x' w) S8 w5 G$ Z, i# O于是,对于h i T L h i h_{i}^{T}Lh_{i}h ) {7 Z  Z9 W4 \5 g: {" I
    i0 e: ]) Q& \- @4 L0 I
    T
    # _$ K7 }$ U. V9 ?! h* ?1 u
    ( h. [5 |5 s$ P( {6 R8 j7 _* X0 ~ Lh ! _* L: H/ }6 A4 m/ g) ?
    i0 e- {# b& _" c+ x' k8 x% g* L

    1 t5 N# `. ]8 v2 c$ O9 d& M ,根据拉普拉斯矩阵性质可知9 Q$ A, |4 V1 g  M  K# s/ E
    . U- K5 p8 O9 F' X# I0 Z% }% e
    对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f
    5 j/ d: w1 U$ X- x1
    # B- {, N# U- P7 n
      m; A- F; C/ n+ c( G ,...,f
    ' `) _. m: _: a1 V: h% i# o2 kn
    8 M  C% b* ^$ j* ?! S4 n
    ; i+ B+ M$ Y( J! T4 p5 _) ^ )
    ; l) c) i& b3 G+ I7 pT& M0 D9 e" _4 _6 S2 R1 e
    ∈R + W# O  v9 }2 H) ~. s! h
    n
    # Q2 |$ _/ G$ i1 i, B  ?8 f ,有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
    6 b8 }, Y& J8 i# w: ?( jT" c- @1 |: Z6 R
    Lf= ; a' |4 {* O4 @
    22 Q$ f/ B7 V* Y9 _4 R6 r
    1" r+ A/ c4 F) k% O' `
    ; d$ K* n% X- c. u% |
    6 J* p1 A$ {8 F8 v9 F3 J1 Q
    i,j=11 f% F- n8 D6 M% }
    & o0 C0 @* z7 a% K
    n4 x& ~7 M) A8 {- l0 j, y

    ( \) N2 W. D8 p4 ~9 i w
      E; |& x1 a* u; Iij
      p: \; A5 c. `: t7 w
    . k9 g7 q4 ~, _0 k: v (f
    " o6 }6 B4 l5 k9 g- S! x/ ni& H2 w9 P2 w* E0 ]

    2 `' ?# a' p( Z! r, H5 t −f - i  z* e* k6 P9 m' o" M/ T6 E
    j
    : W! q- ]" V3 S& a& U. Z. c+ O
    6 C* [- ^+ x& B* {, k, N  J& Z ) ; E) `( \9 a" _5 B" I( V8 x
    25 }  C7 U: [6 ?* Y) U1 |

    0 @, l$ l$ h4 u& lh 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}|}
    ' o, @! h$ |. [) z2 K  P6 Th ' F" \: q. w# Z
    i6 c1 p1 m* |  Z7 U( ]4 L6 x
    T
    1 ?# R* |# Q/ a9 Q/ f; M  E8 ]* [% i- t$ G  C. c
    Lh 0 K9 T6 i3 z. d. b# b+ ^
    i4 D5 a# U/ D4 b+ d0 L5 C

    ; e: A# B/ _# P4 l/ E% n = & b& O+ o+ o" O: b$ g) y
    2
    $ L) z  _$ K. |* w6 E1
    % H: i3 D- Q" s/ }
    , h0 a1 {: u% N$ g/ U4 u6 u: Q( D- e
    m=1
    3 n; h0 u# \; e) w5 M, i0 \
    1 D* B. }9 R0 ?/ n
    / \' y. r, [4 {4 i
    : s9 V6 b) z9 f% C! In=1) s; o  N. J7 }
    / j6 S3 L2 \8 J9 U. M

    % @4 r9 n9 e2 F; z& J, @4 \ w 3 N) R0 v' y! k
    mn8 {* N/ z6 X3 v& x4 d- W
    ; W' P2 W( |, [1 Z! d( S: o
    (h
    + @. A2 R9 r9 F. M1 Oim
    4 |0 [4 n$ J& @* k$ J5 @0 _+ B5 K
    −h ; ^" N2 z/ n# @% V2 Q! a, ]  J
    in8 [( z& ^2 ~, A: o+ n; S

    ( G: F4 V8 ^( C1 n+ g; l; Q )   f' N7 o, l0 r, J  m
    2, S) M( ~; k+ \
    =
    " s2 X& l; R, H4 l/ @∣A : f2 `# u0 m# d" J
    i
    9 W/ h7 t5 v* Z( n  W) e& P- d. j+ A" N8 w9 z5 B3 C& f% O) e

    . d& ]' p/ t$ w3 Y* X" T* T% \' I0 q$ Jcut(A
    # [0 m/ |. d* l1 Y4 b5 }+ G0 Pi
    ' S! U$ A5 A3 {% d
    , b* k$ v& f( s. H ,
    : r" g$ v1 [+ U" K7 T3 B( _, p- bA) g3 g* r6 i" S
    ˉ0 z2 v( P9 v6 J; T. J1 d% A
    6 H" Z% U; v5 N( \
    i
    4 s# l  e6 d2 f% y* _# a2 k* v% ^, v4 }
    )
    $ |, W& X! v3 m1 l+ W: \% T* A1 o  B: ]  t4 L+ {$ D% p

    ! K: ], y, `0 f) {' r4 E/ f- i6 _  _4 h8 X& @3 k9 j
    严格证明过程请看刘建平博客:链接4 P# j4 w& i0 z0 e+ K7 ?! E
    可以看到,对于某一个子图i ii,R a t i o n C u t RationCutRationCut就对应于h i T L h i h_{i}^{T}Lh_{i}h , W+ a' j6 l  ^# X+ v7 N
    i8 O0 M5 l2 G. ~# h2 t, c2 H
    T% i) F# ~: h9 M
    7 J; P5 I0 J5 Z: |2 R0 f, @& \  H
    Lh
    7 ?2 D6 S! {' @. ji+ J  @. D1 _* g* q

    0 ]1 C2 q3 m, Y" Q+ ?/ \ ,那么对于k kk个子图
    ' D- s: F# g" k- @5 f/ H2 @( Y4 p5 A- ^& J! ~' ^6 v
    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)
    0 k! c; v( i% WRatioCut(A , V6 O+ o1 a8 I4 }5 \1 |2 K: K% v
    1+ b+ Y8 L' x% \. T8 f( ]! O! a
    * h, N; a2 q4 U' d% E" I
    ,A
    . C* f' K! n) ?5 ]& W  T( i& a3 G2% y5 q8 U, _; V9 x4 G# S* v$ R0 U

    + g  `3 O8 c2 p/ |+ N: S ,...,A 0 L4 ?) d* B- l' y
    k
    * x; @. ~- U" P: c) x3 S. K
    6 C- E2 ^; J$ T! l: | )=
    / I7 P, y0 K1 _, S8 i( ]" Bi=1
      k0 I% W7 J9 L
    % F# i3 w' `( L" Qk
    - ]8 p. c' I8 ^0 T4 ^1 k7 [, D( _0 w. O0 m2 S
    h
    7 Z8 C0 ~; p3 x# g" [+ Gi
    6 j) u! P- s) e' N- d; d) [7 {, YT5 n; P7 U! V$ f# I3 y7 P
    . @: L* x9 ?( x1 o' @
    Lh ' {- C  E/ h2 @
    i& d. b# w- H: t$ V- z1 j0 ^
    ) C& G7 [& ?  Y% M2 L# y' T
    = ! g: {: I( ?! f  t
    i=1& p  l; N7 q) |4 z  l* I

    0 r9 Z" E) E" X: }k
    , {1 J! y+ J; Q3 Z9 e% ~9 n- |9 [" U7 c+ T
    (H
    & w5 q4 s. z& eT
    ! J& ]4 u+ l" z/ M$ I) Y LH)
    & Y# l3 x% Q' c/ t3 E1 Cii
    2 R( a5 W3 f, o& s  M9 M# A% P
    7 @  f4 k4 T8 s0 A: |* @* B* x =tr(H
    7 H: _, n- V0 e. }( Y  I2 ]3 IT1 O6 e9 C) G* W' ~
    LH)
    - i( Z/ s/ k' E: r- O; t+ K, {. ~# |
    因此,R a t i o n C u t RationCutRationCut切图本质就是最小化t r ( H T L H ) tr(H^{T}LH)tr(H
    2 K( a. W, i# R4 g4 ^" f" CT3 p/ V+ }2 c* L6 Y
    LH)。又因为H T H = I H^{T}H=IH
    2 A) h# p7 c! E5 w! s( n3 n) i  ]T
    1 m0 i% C( P% k/ a* x* H H=I(单位矩阵),则切图优化目标为
    9 r4 y0 N( L" i, M5 `. {# ~
    7 @7 N) S9 L: l  t& \a 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) d+ W7 M5 b' l$ l) q- c
    H) d/ B( n3 Z8 |
    argmin% ]( P3 Z! ^6 c6 F6 P2 R

    3 z8 M. ^# R& e6 v; N. X& H0 F+ e- X5 w* v6 W0 |7 Z# k/ {
    " P8 M( z( T$ ~9 y
    tr(H
    ; a. N) j5 P( C) H! WT  D; ?- R6 |1 g, L
    LH)s.t.H
    - z+ j% e& C/ g* H/ o$ q# f- OT
    ' @, i/ M& l% }! R H=I
    7 T' b* n- X, }8 {  Q7 h& V/ `
    # t/ K2 B9 H% n5 y! b$ r对于优化目标t r ( H t L H ) tr(H^{t}LH)tr(H
    . Z7 d  R: T: ?; y5 v/ H  `t
    0 G# O3 }6 ?  S; H# c LH)中的每一个优化子目标h i T L h i h_{i}^{T}Lh_{i}h
    ) D+ S+ A( g8 {* F( S8 ]i
    . n( p7 @: c# j6 ~) `$ D/ o- gT* a; Y  a' f) E' `# M1 m
    ) p: ?- M# t; O* O1 E* T/ i* p# n3 d
    Lh
      ?4 g5 D+ l/ }! I& e$ S# wi- s2 M& f+ q- N

    , u) W/ W5 d0 k9 N: X ,其中的h hh是单位正交基,L LL为对称矩阵,所以此时h i T L h i h_{i}^{T}Lh_{i}h , K& ]! g$ Z: ?. x3 B$ J& l1 d+ v; `
    i; s# q: c- B5 b4 M% x5 p% k
    T, ?1 Q/ A# N  w  L9 g. ^
    7 m+ v3 ]3 h2 C) @) I8 p# u5 n
    Lh ( V6 Q  l& Z4 a8 J; @
    i
    ) ^% }- ^! Q+ \+ Z
    6 I! A9 G# N; F( q7 E0 h 的最大值即为L LL的最大特征值、最小值即为L LL的最小特征值。而在谱聚类中,我们的目标就是要找到目标的最小特征值,得到对应特征值向量,此时切图效果最佳。所以对于h i T L h i h_{i}^{T}Lh_{i}h
    8 w: Y  ^/ C" ~, k+ f) ai
    & m1 x1 h: ?, X8 ?T
    8 p  g& y) E' y9 z
    : f! p( w+ W( y3 w. n4 f8 N3 ]5 U Lh 9 q2 h9 r4 ^" j- Z
    i5 _. m+ o0 h- P  y8 |
      M+ h( o  A* b+ k2 p7 d( L7 c
    ,目标就是找到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
    . M1 J; c' d6 q2 F7 P  h# A' nt) ?6 h; |  u$ p5 {
    LH)= 9 ^( K9 c$ R* G1 t
    i=1
    0 J( }4 k$ Q. V
    * p4 @6 N/ L) \+ Wk7 A, r& q3 g4 v0 X# [

    ' @8 Z/ T: V2 o h ) v: w7 R$ B! B6 i* t9 e. D& v
    i1 G% K. F  k" u& N1 ?0 K4 C: d) B
    T: w8 f! z; Z/ r# b

      U0 _' I: x4 U Lh
    7 G: o% @$ Y$ a0 hi7 T; j* G) G1 H0 T& z0 t

    0 N4 q, {/ W4 F+ ^/ v& ], x4 c/ C ,则目标就是要找到k kk个最小的特征值& x! m4 Q2 p8 T6 u/ t
    / f" n5 P5 s! z3 q' R+ \1 F
    因此,通过找到L LL的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特特征向量组成一个n nn×k kk维矩阵,也即H HH。一般需要对矩阵H HH按行做标准化,如下8 X% H" G5 I5 z5 j
    / h7 |/ v- B5 o" l
    一般来说,k kk远小于n nn,也就说进行了降维) i: d0 b, l: o& I% S7 k* ^
    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}}}  Q2 D& h( E) m+ }( {6 U
    h
    7 |' M" k0 I  c4 ^( ?3 u6 ~" _1 s2 kij+ F1 M! w5 j. {  D( Z

    7 d7 O  T3 ]& l( H3 ~# K# o( ?' A7 G8 }- N1 e8 t- |  |
    =
    7 |+ R7 z  r- d/ ~1 F/ X# G; r( 9 \( i1 S$ ]% f
    t=1
    $ M+ s) l1 X: r, w9 O% U( O$ x) Y6 Q( j8 J
    k( R; G5 }5 f5 E6 N

    " @8 R9 J% B' m h . M4 s" T( Z4 J
    it# u( |8 n. H! q  s3 R9 }
    2
    2 }8 X, C# b, ^# s/ {) y$ g/ Y) ?$ z' G
    + Y0 C7 |% |( y6 C- ` )   M  R, Z' L. X: G/ K* e
    2
    % m0 d0 C, o, v! \3 P, E$ Z( X( ?1
    " `- W% v6 B- P, A9 O( E1 `! w% R4 M8 ?0 Z& D  v5 `

    * d+ B2 m- T$ v4 Z7 E/ ]3 @
    # K! `  w5 d8 {2 o* l) dh
    5 E* Q! J5 T8 @  F% v4 }! C  rij
    6 X: H, H. X2 Z2 V
    8 J* q  f3 N5 B8 w2 ~' P# [9 |% D" p  \! F

    / `& G; Q& X; ?6 g7 D1 D! }* L
    / \3 O9 {/ |3 K% j4 k& M% p' @7 g5 P7 W3 f: I
    这里需要注意,降维后导致得到的指示向量h hh对应的H HH现在并不能完全指示各样本的归属,因此一般在得到n × k n×kn×k维的矩阵H HH后还需要对每一行进行一次传统的聚类,比如使用K-Means聚类
    ) R4 d, ?( {1 E, r6 H7 D3 H
    $ n0 i& i! R( E/ m8 ^# I(2)规范割(常用)/ G& s) F2 [# X* X3 D1 `
    规范割和比例割类似,只是把比例割的分母∣ A i ∣ |A_{i}|∣A % K3 B( S8 B- H1 h
    i( K: Y) z! ?. _( o* t$ v1 x7 f% a

    ' v6 D4 z, h4 v0 |1 N) R ∣换成了v o l ( A i ) vol(A_{i})vol(A
    # w1 Z/ v8 b0 Q0 P- W1 K  X+ U% N5 ]2 @i8 B+ K3 M* B! Q* w. [

    $ R& d  a7 ?9 n  W% k/ A5 L6 Y ),定义指示向量h i j h_{ij}h
    $ R7 T+ }1 Y( p+ ]- S' iij
    # G  H8 k3 ^) z: \8 D; E, d- }6 i/ J" i& l
    如下% F; c0 N# ], k0 Z. X$ F; e
    ! ]5 q% ^* Q5 ?$ t6 N( h
    h i j = { 0 , v i ∉ A j v o l ( A i ) , v i ∈ A j h_{ij}=
    : z: _* W5 c1 _- n" ?{0,vi∉Ajvol(Ai)−−−−−−√,vi∈Aj+ M2 w) d! ]6 e
    {0,vi∉Ajvol(Ai),vi∈Aj
    3 g0 s* q* q* W% _7 }) P/ R! ~h
    ; K0 L+ m  J) {ij
    + p9 D; i" b% d& \; ?  t
    ' `+ U/ s* R7 ~' w ={ # O, ]1 m& i; |- _9 ^: H7 m
    0,v
    $ G0 D% r9 t# f" }9 @i
    7 [4 i% _1 e8 w  V; d: c/ g9 Y: B2 Y
    6 U: \1 W3 P5 A4 N# N
    /
    2 B6 G4 o- `2 @8 a. H- ?% PA 3 Z. N7 S- S7 i1 d3 E
    j
    $ M# u. q7 Q. H' E; i5 O/ _4 }3 e. B
    3 q0 ~4 Z: h, l( b( U7 x% w! \
    vol(A
    # e' {" k* R/ o1 ]7 J0 c$ Ii8 Q$ u/ h1 O) q

    0 y9 T1 R, h4 F )
    . i8 K' ]0 d! W1 c5 s9 t& [
    7 H; D" d7 [6 K' ]  D ,v ( |+ G  [9 M$ |3 P# @! {  q6 q
    i9 G( D* ]; g' l
    : _7 h" S# G8 _* e( S5 v9 S. _
    ∈A
    1 L1 C7 D+ P: W8 A7 a% h2 `j
    : W" H/ {7 t7 ^5 ?
    0 v( d. k" b  [* ~4 g/ X& n* }/ v- b! U' ^
    ) S: U) j# I2 M: m( I
    / b  G9 `7 o% c1 z

    9 p- r: U4 E$ P& p  B于是,对于h i T L h i h_{i}^{T}Lh_{i}h
    8 V( f. h! }% I! ~i
    + ~  u% s5 b: ]. r3 p# k. H; G, K  GT5 ~2 t* D) K/ R! x. d; v4 E7 z

    / L/ y! w3 H9 L8 T/ L$ }4 k; a Lh 8 F3 Q  C" i2 c+ t% H0 f
    i% @% ^6 G& j0 l$ Z+ W

    9 y* M# x( T4 Y0 @; q9 [8 { ,根据拉普拉斯矩阵性质可知
    : f2 A- M- c! T: `, J6 J- U; i( u: X* I
    对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f " C+ s' s. E/ h( S/ l
    13 [8 T5 C) ^- _) _! {1 i6 B3 x
    ! z1 W3 P) K- e
    ,...,f * E' r) t4 l7 l" R- J% h$ W5 g
    n
    " H! R7 O8 d* w5 b7 f) P' S: i0 X3 c) ]: p. d7 v" Z, I  A
    )
    * X5 C7 A; [* G, b0 z7 \6 ^T& ~# I3 r& j0 n6 H0 n
    ∈R , T1 ^8 G0 G6 z, G7 o. Y% a4 \& b0 f/ T& w
    n+ X' {" W* z0 B: }3 _
    ,有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 ) S& _5 l( k' e: _6 v( J7 `
    T
    . I. f! R: y1 j6 S* B Lf= 5 C4 V8 v. x2 Z' o2 Z
    2
      M/ ~8 y, k. i! o12 j/ Z( ]5 a, r& C% [5 I

    ; A1 U% ~" Q! v* ]( n) F
    7 \$ |8 ]( S( a! Y7 ki,j=1
    ( h8 V# J3 o2 v
    . O( C. x9 b, d9 v% g6 V: P+ x$ ln
    2 D" E" g5 ~# o7 q
    4 ]% i0 {( e* T) }4 \ w 9 P  m6 j8 T7 u: A) v- }: ?
    ij( y* Y; R) w$ E+ J6 h

    0 M; U$ i+ o; ]. x0 _: f' ~. z: }( u (f
    + A% C" k: T- i4 X& |: Hi
    + I, |8 \8 s# Y6 X& P1 |4 c. I* j  v: `+ m8 g. ?
    −f 6 S$ ]( {4 e4 t( h- w% v3 k- ^
    j! J9 f, p# S5 {" @; U6 F

    ! q4 Z4 l- r9 D& Z* m3 h9 c ) - L, u+ b! L/ e- ]; W
    23 Y, r" x" d' G2 l

    & p8 u1 j( {. W3 e" Ih 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})}
    6 A4 @7 {/ B- _( d( Ph , S6 P% w$ u6 A
    i! u( o4 }  `( {, F4 C
    T  Z; [6 l3 |/ ~9 o: L
    # [" L# o) F% t$ _& p& F' z
    Lh 5 c6 L/ e( ?( u/ M; D/ Q
    i
    # {1 R7 C, }/ ^  s% v" J" j4 x. Q: c8 W8 d& t! f
    = * D! J, W( n, v+ ]
    2
    1 G9 T( T: g+ d* _6 n1 K9 S1
    # k0 W" n5 h; M" V: [0 m
    3 D8 L( ^1 M, @( U4 J- t7 w
    ( K' J" _2 Y. k- u- F8 im=1
    6 _% T6 j" j# R& a( u9 u# x+ h) c5 m6 Y# D' {) f, U$ L5 i' u7 d, g
    ( d- r" T0 ^) r/ M, H
    0 L" f% x, a) ~2 X0 \7 {
    n=14 _7 Q7 y$ \6 f. W

    & z( M; v/ o6 D7 g8 N6 y+ \# X. e4 b1 {3 b5 e3 Y0 Y6 B: c3 r: h
    w
    5 o# ]# X9 v) Y. vmn
    & D: `; r: @7 W# Y9 |& w/ o+ F4 Z) Y& R
    (h
    5 o0 s$ @& [" d1 d8 [3 gim6 W2 ?1 d! T! |0 a/ j
    / M; }- I2 J* H- V! V2 N% j0 U
    −h
    6 W( g8 ]& Z1 m! M! E7 z" Pin
    & X4 @5 V  s/ }9 o+ X9 A
    9 f2 l; s) i5 f. f ) ! _( ]0 d- v% f5 O% q% }3 T3 R# p
    2
    3 d9 Z0 m% K7 A4 ?  Q5 n3 Z =
    , A$ B- Y7 n% O8 X7 d; xvol(A
    " r% _2 L$ ^1 A3 `0 r- W' Ti! n; O, g) r5 \" L
    ! g( b; P2 f. ]. ~
    )
    ( ]: N/ t- |7 }+ [+ K! _! ]cut(A $ \* c/ F# w% h* E  ~& ^0 E% B- J
    i
    # @  J, R' Y1 w% P3 _$ z( {0 m
    " a7 m! d) S. B& w ,
    4 C4 F3 X& c: f4 CA
    & V3 ^2 O2 b; l$ Hˉ' p, K  G, p5 i) i, q4 e
    , H9 e: h) g( {' c1 e
    i
    3 c: {- G! {" d3 K1 \3 V, h8 Q; J3 g2 X! ^5 b2 A6 P
    )
    ( E, I5 [6 Z; w% a6 t( T( g# z7 ]

    . q$ Q* O3 J$ t5 J
    , M7 t2 E* j" ?! x2 D8 R$ d) B. A) |严格证明过程请看刘建平博客:链接
    9 Q' |% {- a3 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 & C3 m3 u5 D7 h5 a* N
    i6 p/ c2 U) a$ u. \7 w) K
    T0 c8 j$ g: T& q$ h1 w6 r

      q5 V$ I; b. O( h Lh 2 ]9 }  U. C- M$ Q. ?
    i+ n5 n$ B& M% c( v# e) S
    / v# V* o* w$ d1 y
    ,那么对于k kk个子图
    1 D8 O% s% w( X9 z/ Q5 i
      C6 S5 o" ^! J1 s6 _  L) }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)
    1 k1 z/ e! K* }7 wNCut(A
    ' \9 i9 i+ [% d7 \4 ?) _1" m+ G* D! V( G4 M3 F
    ) a1 g- H) D" q2 l7 @$ ~) f8 ^
    ,A
    9 X! S( E$ x4 M8 t3 [+ ?- q  m- ~$ R2, @) c# O8 D# j. U; c
    ' o. l2 \5 c4 x8 v' b
    ,...,A ) w" m( k( s0 R& }
    k* C$ ?- F' Y2 b6 W% P* N

    : h9 }7 `$ @- X& s6 m+ A )=
    4 q2 n7 v6 o9 H# z" Mi=1
    ) S) d( u5 m; b8 L9 \( R5 q
    1 F  B3 b. L' [" Ik
    ; y: A& E. t3 O$ H' Y, f/ n, _3 t7 x! X
    h
    0 X: Z1 m' Q0 G  A7 T2 Y, [i( i+ Z' K: Q" F& N
    T
    $ e  R/ n" r2 @# i- l9 J. S2 n2 `2 V4 E+ B' W
    Lh * b3 P+ ~( f4 y$ x
    i
    8 C9 g3 {  S! r1 ]
    1 @, Q+ v' P2 J  |4 W2 D; E = 0 E3 n5 o6 I: W. n, P9 G
    i=1
    % l9 I0 N9 L3 J/ T; l# A- D' }) T* {( P( U
    k
    ' O6 u  {( s7 B& C. c0 a* A% Y7 D0 ?
    : M6 C% t6 b/ \ (H / B+ k3 b5 V% D/ _" [2 f
    T! U8 H7 O5 V& L$ d* l5 Y: |
    LH)
    $ P* T+ Y: e+ r9 w1 }- E; Jii
    : N1 R8 \7 C  j" K( K2 D) X* c- L# n. T, f( U1 c6 e. c
    =tr(H / K  o7 l/ R8 p7 T& q6 O$ A
    T: C! S" L  T, P* U0 N) |
    LH), }" q7 s. k7 I$ B3 ~" F

    % Q7 H8 `5 A+ ~( a但此时H T H ≠ I H^{T}H \not=IH
    $ Y$ ]$ }0 @& S" W: @. c, xT
    ' W4 L* q* @3 i+ r( ]' f4 m H: @# t5 K  Z5 R
    5 m* g/ E- L3 ^: Y9 k, d" a2 V
    =I,而是H T D H = I H^{T}DH =IH
    6 ^  ]. ^3 f8 N: ~  J* g1 k1 U/ CT
    ! p3 w1 `' D& E4 p( F) R! }" j( o' p DH=I4 x# J( k8 H) P& n+ ]$ u
    * ?6 z% o+ }, E( I! B6 g6 k
    这是因为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
    + [- l6 `* O! ^3 ci& ]" K/ I% `3 U  f% J8 w
    T
    9 g, [( a' o+ ]8 r) T+ T" ?3 }) P& l+ v+ ?% H1 `
    Dh
    1 t: W+ Q! p8 w& M6 U& Wi! b  G4 i& F+ K2 }4 j
    + Q, B3 V7 `! ?# d
    =
    - y0 T' S( }& r% {' O, hj=1/ C: d  \7 w8 m% X
    ! T& b, D! N* T9 O+ p. \: X& F
    n# Y) E4 W) b/ A" `8 c; Z

    9 X! F- \: D, _) _7 j# ^9 y1 r h " r) ^/ X5 t1 c& C5 M
    ij
    ! V2 Z2 }- F$ X4 h23 v: ~5 y: T" K5 D' J

    . v+ l4 [9 R5 B/ t  l5 Q d
    ' j+ k$ g, R5 r  pj% z4 k. f; q& f! L4 F/ [3 }( r
    % R8 s: d( {. [0 J* ~7 u) l
    = ( \  @) O7 d9 _
    vol(A 6 U0 G7 f* T) C8 i
    i
    . |% j/ G6 y. _) W: s0 _" d$ [$ p; ^: q: h; e, ]
    )
    ' z( b6 F' B  ]3 X1: k( k# u, K8 a
    5 Q5 }: c9 s: p& w7 H+ V

    ! v( O1 G( l+ O* mj∈A
    ; j! t) F, s8 c' b1 `i
    6 o- s0 T8 ?0 v# U$ i. n
    / i2 _. W; e, y3 [0 a6 n( r
    : Z+ E' Q, N- }. a) X) i
    ; Z, d" b& \& E$ k+ N% s: z
    ! v2 T3 `- u% b" u2 o. @ d   ]+ t2 b" P9 V3 C3 @& m
    j
    ! E! d! C3 E+ v( J; q) M
    0 L+ T, z4 `! F; z% g5 D: b# b =
    % q4 E! Q% A& s9 {7 H, avol(A ( B7 ~# Q7 K9 Y
    i0 C$ u1 f' X$ z; W( w$ \
    1 t, K8 h; m) u2 g3 q( K
    ): P* M" I7 f' m+ X
    1% U& U, r8 a( t
    & S# }2 d3 l. K* ]% d8 Z2 d
    vol(A & C1 a  B0 K5 T  N6 D, j
    i
      U  O$ R# ^& ~. g
    6 S" {) n8 _" L* L8 ^) b( k: h. { )=1
    8 {" B0 e1 L8 s4 x2 _因此,此时切图优化目标为2 U2 o5 a6 ]. O3 [
    8 l' C6 M: f- q1 ?8 \" L- D
    a 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
    6 E, z! W# f$ c6 I3 T) K4 W/ FH. J" ~! E8 e: j2 ]# o
    argmin; }# v4 R+ K( W7 e# v
    , W% w5 v$ z5 h7 z* P
    0 |& h& Y, I0 h% H# `

    ! Y( o; i! ]  K$ Y4 ~* K* t7 i tr(H ( k2 v5 g( P" x2 e
    T
    5 U3 g* L- e! l5 X; \ LH)s.t.H
    ; K- k# d% M' C* gT
    2 K; G5 |  r" @3 I DH=I
    : E- q+ J; p5 M* \, a2 Q2 k
    / @1 k6 W" ~2 S3 s' ^* @$ q; Z. E但是现在矩阵H HH中的指示向量h hh并不是标准正交基,所以需要对H HH做一定转换。令H = D − 1 2 F H=D^{-\frac{1}{2}}FH=D
    1 L: N4 m( ~9 E0 w4 S
    5 S1 t9 j& f& y8 q" p  r% m, ^9 d6 M2
    , t# r1 `: _% d$ b* t5 `$ A- u1
    , n0 s. `8 m  a' `7 ~4 N* D1 R
    ( U3 D  ^3 _& Q. _2 f* i' Y  P$ S% A; ~+ G. h0 o# [
    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
      w$ z) K0 Q3 ~) bT/ E8 h+ X4 E) |
    LH=F - f+ V# l! y! S1 f' J1 z
    T
    . l3 F6 F: i+ k: z5 O D 5 f7 f; _9 ^$ E- b0 P( B( M. H- Q. l
    6 P5 E3 ~$ t( Q' n3 H* R. u3 q
    2
    , n: u: i# ?; Q* T+ p/ p- `0 C1 }18 [% M! e; ~" ]
    : f8 L; G/ A8 W9 {
    5 e0 s6 n/ i2 p. k1 p' P
    LD
    9 W$ H) @; k4 l2 |# Z
    1 s6 z, x9 d: u  U2- k2 {8 f4 ]' w
    1( R, D$ j3 W4 |" m3 o/ T, s
    8 W+ n3 {7 C4 y: T

    * A6 O5 a4 o: z$ }$ m8 y F、H T D H = F T F = I H^{T}DH=F^{T}F=IH
    2 X! u  [% B) ]T
      L; [, i. S. V- J DH=F
    , F: a, ]$ \; {. P& e  Q3 ZT
    8 R) U& H0 m7 J8 z- P* s4 K; c F=I,于是优化目标变更为
    ; U5 k: X" b6 J) 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=I1 @; L2 a1 }" O
    F
    . e& l6 v1 n1 c/ w" rargmin
    1 z! k4 T! |! A9 U
    , P" h& T' m4 d8 j6 s
    4 N" m, c5 X4 p6 G& \& s* [0 r- G# P5 c4 V' |! m
    tr(F
    2 t3 D: ~  `$ B( u" F: s+ cT9 e4 K* e. {. N. M# b3 z' R5 L- K
    D ) U- B* W$ E0 E) }0 l0 i/ e

    . t% X6 U/ V3 R; _' U2
    6 [# s2 P" a+ R% m% m8 w1! |6 u  U( K+ y. T, S

    6 \. q& u' \" b+ P, \7 q" t+ E8 L
    LD 1 D; U# v  P, b, P, l6 r  V4 J6 j
    2 I/ R% z! w/ h. B3 V4 b; ~
    2+ G1 k  q1 ~/ G( m5 p) i, B( |: r
    10 j) D5 L# Y; |; i" B
    ) M) F" W, `. t2 f/ _
    # f3 N5 R* Z% Y: C8 H
    F)s.t.F
      Y; N1 `4 Y, _3 kT  M: k- Q% G( c( h9 ~. m8 d
    F=I% g" j7 d; W4 V: V

    6 J. a1 F2 N6 I% O2 b' x现在,和比例割一样,通过找到D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
    0 \1 @( `( w) O/ V1 y
    : I7 Z) F* |* T/ G- u$ ?' p21 v; e) ?. f8 v
    1
    8 |, y- m3 I8 s4 e2 z; H8 K( s0 X  @1 r$ v+ V" e
    8 z7 j$ s4 y3 ^# {) y& J' \. ]4 p" H
    LD
    1 O' l+ r6 l3 T- Q) p: j! M* F# }1 y/ P! z6 ~. Q
    2) p! P: Y0 {' w* k- \7 _7 Z4 h* R
    1  a7 }( G+ h: U/ D0 [0 Q

    : y% A3 b2 f- r
    , `3 R" c6 t6 o2 B% G0 u1 S; D (就是之前的L LL)的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特征向量组成一个n nn×k kk维矩阵,也即F FF,最后对F FF进行传统聚类3 z: s" Y5 e5 ^& E& B$ h
    5 h/ Q( y( N+ T7 O
    一般来说,D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D 1 Q2 i. Y3 t- O' Y+ p7 a7 b; n
    5 O# {: [4 [+ \: v
    25 N# D# q0 @6 U) a8 Y
    1% o6 a0 N2 u+ M' t, k

    ; s7 }( @& f5 C- B( @, R9 W) m  H) w/ s! @& U
    LD
    4 u" B# s! |! a8 R8 b
    3 D( a/ H6 r" Y) L, D* ]3 f7 z4 Z2
    6 B% @" s: z7 m8 @$ I1! P0 M9 [4 V; i7 ?- y; i  b1 w

    0 x3 Q. Q! l) A- N; `9 c' p! s: T/ G; s' L* _. |8 n- m1 b
    相当于对L LL做了一次标准化,也即L i j d i ∗ d j \frac{L_{ij}}{\sqrt{d_{i}*d_{j}}} , V) V  p/ }" K9 V; {
    d
    ' ^7 f$ ?8 W8 s$ |i6 k7 \7 K- r# ^$ b2 L* F

    4 B. D  H" d& o6 ^. a ∗d
    ) \( R" N4 Q" J/ J. I0 h8 b) l3 tj# d: u3 t  g) l( h/ B# ^- w
    : X! H! I% ^3 j* `% w2 S
    3 \% y+ j8 D# C, d  \
    $ x3 Y- a+ Z$ Q5 _5 s  T
    7 l1 k7 W8 \- g+ {" f0 t+ h' \  N
    L 1 e/ {  L. n# J" Y: m- h
    ij0 t+ n4 P7 i: o. n  p
    4 b# ~# }6 C$ `1 J% I' {

    1 s5 R; Y4 K  Y; k
    : Z7 W# E2 S7 x/ v) H: z) l6 @) J$ A- i* r: [  i7 C/ o: ^% W
    二:谱聚类算法流程" K1 g3 h! Z( C; E
    给定数据集D = { x 1 , x 2 , . . . , x n } D=\{x_{1}, x_{2}, ... , x_{n}\}D={x 4 Y" w$ G. y3 Z7 @2 Q2 u! V
    1
    4 W/ |( J5 w. `
    $ a$ t! H: v# Z8 \( u ,x
    " j# h# @* e* m; _: x/ T% o, _: C2
    1 ~9 o, q" l3 I+ m8 L/ e9 x
    ( Z) m! A0 t3 b& q. ?  A8 K9 h ,...,x " p) S4 Q4 v: W! t5 _" g0 T
    n
    - l5 [. [* b) T5 i0 a3 o8 ?; P- t
    }
    4 W  d8 D1 f* k! T/ u$ t
    , D0 F# j$ O( N7 M, ^8 h- r根据输入的相似矩阵生成方式(一般为高斯核函数)构建相似矩阵S SS(AffinityMatrix)
    " ]* i2 G0 s  {% s% I  [根据相似矩阵S SS构建邻接矩阵W WW,再构建度矩阵D DD
    % b9 p) g" Y* j4 o' }# _# c6 k$ H计算拉普拉斯矩阵L = D − W L=D-WL=D−W# q8 k9 {, h* N+ P$ I4 V& V4 a
    得到标准化后的拉普拉斯矩阵D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
    " i" [* C$ E. [- b. d* [1 A8 V7 c" U4 I
    2
    - z; X0 o" ^* r4 E( {! r& n2 e1  b. W. y2 H$ Y

    - x0 [/ w1 B2 n. i$ P4 u9 J1 ?+ v8 i# H6 {3 A# j" t
    LD
    + y- L- ?1 c5 L3 \" K: i! u' }! f! Q4 x
    2% W: t/ n" I* @! A) j2 J
    1
    2 O8 X$ |  X1 O1 g& V' G% g1 ~/ \# ^6 M! j. d; k

    1 @/ _. K: n1 H' p. {# N2 b: S) c- O, h
    计算D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
    . W% s1 \& j/ t4 @4 N6 q! k" ^5 d( \2 z
    2
    ' @' t" d9 N$ N  Y5 V. V8 m1 v1
    - I5 G  x+ d* l) r+ ]: `- ]  s
    4 `* k+ I/ _. W$ D4 I
    ' u/ Z8 |: s/ s! D) Y LD 6 }0 d4 Z& b! }3 r
    , ?7 a0 x( m! E( L% V
    2
    6 T) U" ]( s" G5 _/ c' Q! k/ K  q6 g13 {7 M8 o6 B$ q3 ?
    . U* O0 ^/ @2 {! a9 s

    - K9 y& K) u  ~ 最小的k kk个特征值对应的特征向量f ff8 ?' k6 q" t! {# U+ [* B4 o6 x
    将特征向量f ff组成矩阵并按行标准化,最终组成n nn×k kk维的特征矩阵F FF
    # y# J0 F. g1 v3 W8 }& u; IF FF中每一行作为一个k kk维的样本,共n nn个样本,采用某种聚类方法进行聚类,假设聚类维数为k 、 k^{、}k
    3 v, m: J! R+ q6 l4 ?% B% G2 R5 i& r0 \' M- I9 b0 ]1 v
    + i: e+ E- N. R
    得到簇划分C( c 1 , c 2 , . . . , c k 、 ) (c_{1}, c_{2}, ... , c_{k^{、}})(c " ]% b: k7 G( I* b5 \! r
    1; G! n) a  ~# e" j6 z1 [

    ' k. C2 E% E6 F4 ^ ,c 1 {. Y  B9 j+ _2 _$ n
    2* B: S2 P  l' {% }( p; n. F0 y
    8 |4 h, W, Y' n" X+ z
    ,...,c
    4 Z* _$ p/ Z- m2 s, j) E& {& ok
    ; |" E2 f+ r9 f. V+ R1 Z& L: T
    0 v7 }) g5 s- V  E
    ' ]( m# P" s) n) H8 _+ w+ P; C! d4 h4 X& E6 d. d
    )' r0 p- T0 c( U# S5 t( l
    三:Python实现
    9 o  u/ U, n2 Y+ aimport matplotlib.pyplot as plt) \0 b, w2 L. {+ S' E  c
    import numpy as np
    2 y1 N* v* P' N1 Z1 e  r' f: S% Dimport pandas as pd0 B  }0 v/ _5 }3 E) U8 E# E
    from sklearn.cluster import KMeans
    $ a8 n' \* C5 O/ Z" L7 g) V- t: Afrom sklearn.metrics.pairwise import rbf_kernel7 d7 N& q6 M9 p  [: O* b
    from sklearn.datasets import make_blobs
    4 {& n. w( v# _( u: P' ?from sklearn.preprocessing import normalize
    5 m) o7 R  h: |9 S
    - |" ~' ]! `6 i" \7 G- \. Q5 Adef get_affinity_matrix(data_set):
    4 j) B: F* _" f- }! @    #  利用高斯核函数计算相似矩阵(全连接)
    4 b7 L: z- w* j8 H% j1 Q% Q. [1 Z    rbf = rbf_kernel(data_set)( u$ C4 ?7 i) ], K
        for i in range(len(rbf)):
    5 N4 g- k' ]; k) a        rbf[i, i] = 09 D5 }! T1 ^2 W
        return rbf7 ?4 |- _7 ?! L

    5 n: J, W7 C8 t3 P7 X' p  _7 w4 K1 M  c! q, \# O3 I$ e, d
    def distance(x1, x2):1 O' z. g4 h$ L( N; b9 W; u
        """
    6 I3 o) }0 V6 T8 O1 k    获得两个样本点之间的距离
    1 Y8 {+ u3 P0 s" p! _    :param x1: 样本点1% D# m/ \7 ?. O$ F% a7 R
        :param x2: 样本点2
    ) K2 O# l( D7 _+ n" `5 {$ {    :return:) V# P3 \1 L! p9 ~8 u$ F' B4 f# J
        """! m6 M: L7 r: h" ^6 K
        dist = np.sqrt(np.power(x1-x2,2).sum())5 x+ x" E4 X0 K& t7 e+ K4 @
        return dist2 O# Y0 P: _) B! w* X* J: P- B: B
    ' s2 B. h* S" z6 p5 |1 q9 \# R
    def get_dist_matrix(data):+ |' F% |0 F+ f  `. F$ U
        """
    $ \" H; l$ z+ }! Y7 K    获取距离矩阵
    9 Z, W$ j0 R1 \2 d" Q, I1 ^' h    :param data: 样本集合! M) D& j/ s$ @7 R
        :return: 距离矩阵
    * d$ L& ?, \: {& n$ D    """
    ; b' z. n( n# W, [    n = len(data)  #样本总数
    % H2 q6 b8 ~. J9 w" _9 q6 j    dist_matrix = np.zeros((n, n)) # 初始化邻接矩阵为n×n的全0矩阵3 I; y, o( N6 ~( p- x, S
        for i in range(n):% ?, B# j0 f9 G4 d8 r
            for j in range(i+1, n):/ V) x# f4 K# a" z5 v, U
                dist_matrix[j] = dist_matrix[j] = distance(data, data[j])
    5 t) Z: Z: g7 z: ?" L    return dist_matrix& B" S- T& T( m9 l: g
    + e0 U+ f. b- l2 e* b9 e5 Q
    def get_W(data, k):
    # L9 ~$ @6 L3 Q$ @6 g    # 获取邻接矩阵(K邻近法)) e0 [' A$ P3 J# r9 I# o# e
        n = len(data)
    " K+ w# H! n) \* G; L* ~+ z( r    dist_matrix = get_dist_matrix(data)
    # K5 h+ W% c3 w    W = np.zeros((n, n))
    3 b" _$ j, _) L2 F) ^    for idx, item in enumerate(dist_matrix):  L" N# C# F8 _& t& H1 j
            idx_array = np.argsort(item)  # 每一行距离列表进行排序,得到对应的索引列表
    8 F* N6 |( R# R# v& A% y        W[idx][idx_array[1:k+1]] = 1
    ' h$ x) d7 X1 z- ?    transpW =np.transpose(W)
    , ^; V0 i* X5 [4 c  J+ n: Q    return (W+transpW)/2# o" O( ~; T% I" ]# D4 x, {" Q0 ]
    0 F5 f1 |3 q9 {% l
    def spectral_clustering(data_set, k):
    % l3 n  c- D: N0 Q    # 利用相似矩阵S得到邻接矩阵W# w, y7 b3 Z' g- h" s- }3 _
        W = get_affinity_matrix(data_set)  #高斯核函数(全连接法)
    - G7 o3 t4 H$ d1 h    #  W = get_W(data_set, k)  # K邻近法
    . i+ R8 p* ~; r7 |% b2 D7 }6 b8 k, ]( C6 Q5 C" `5 |6 C  V
        # 计算度矩阵D,并得到矩阵D的1/2次方的逆矩阵(便于计算拉普拉斯矩阵)
    ) E) i& ^0 }& _    D_inv = np.diag(np.power(np.sum(W, axis=1), -0.5))2 n/ j' ]/ q' ]( `2 ~) Z  T
    ' v* S2 r$ v4 E. l- U' k! O+ G& A
        # 计算拉普拉斯矩阵L=D-W
    . f6 X* |* N  G- W, u" K/ l1 Y    # 标准化拉普拉斯矩阵l = D_inv*L*D_inv=I-D_inv*W*D_inv
    , n% V3 K+ i! G/ t    L = np.eye(len(data_set)) - np.dot(np.dot(D_inv, W), D_inv)) K" l$ z6 K- s
    0 f& E8 T7 V; B" s8 R% ^3 c5 o
        # 得到特征值和特征向量
    8 C+ P8 M/ ]4 y# W5 k    eigvals, eigvecs = np.linalg.eig(L)" a: B+ ?4 h+ e2 b% _2 r; \
    2 G8 U0 v5 a7 F* i' c# C4 j
        # 找到前k个最小的特征值(索引)
    4 Y, @/ y0 z. r, c    k_smallest_eigvals_index = np.argsort(eigvals)[:k]
    : s# `+ `. U  o) x
    # H3 e9 X" c' a4 q! q9 @    # 取出这k小特征值对应的特征向量,并正则化& e/ q" |, A% U9 d3 w0 n: n
        k_smallest_eigvecs = normalize(eigvecs[:, k_smallest_eigvals_index])
    : |+ m7 j  t  j( `! @. O
    ; M$ B* c! r$ v+ U5 N    # 使用K_Means聚类) f* ~; X* Y5 M9 L$ D8 K
        return KMeans(n_clusters=k).fit_predict(k_smallest_eigvecs)
    4 W( t( ?- b/ F: ^* l8 h
    7 s0 |4 ^$ c& p3 e0 c
    4 U9 E7 @5 O2 ~* |7 z: ?5 F+ yraw_data = pd.read_csv(r'E:\Postgraduate\Dataset\jain.csv', header=None)3 k. k' a- E7 F/ j' B5 K7 R) G% D4 S
    raw_data.columns = ['X', 'Y']
    6 W2 x/ e7 B0 f( W! E; G, bx_axis = 'X') ^: V$ v2 Y% E5 {& A! k( C; J6 }
    y_axis = 'Y'
    ; ^$ u% y6 p: _4 K; B$ Y6 \# N& \+ N& v- e: s9 i
    examples_num = raw_data.shape[0]
    4 P" U- e! K& }( X# _& w5 B! Btrain_data = raw_data[[x_axis, y_axis]].values.reshape(examples_num, 2)1 g. o9 D/ ^) h: u5 }4 h/ m9 m
    ( G* z& F$ n# P2 ~2 X

    9 i+ I+ h3 i7 U; b* @min_vals = train_data.min(0)
    9 U3 Y) a) _! i8 c8 S7 `max_vals = train_data.max(0)1 W0 ~  Z* ~, e' ^- Y; l
    ranges = max_vals - min_vals
    ( c" @4 P3 N8 X6 e' Z% snormal_data = np.zeros(np.shape(train_data))( Z6 s: m' j2 J$ T  H
    nums = train_data.shape[0]$ `& ?- A9 ~7 v
    normal_data = train_data - np.tile(min_vals, (nums, 1))1 c6 V/ z0 r& Q! S, Y2 F
    normal_data = normal_data / np.tile(ranges, (nums, 1))+ z/ e( ~* n/ L$ o
    % S# p5 P! c1 z/ l3 u* `$ @" z
    labels = spectral_clustering(normal_data, 2)8 Y$ j1 M, h, Y$ v
    . p$ w$ X# r5 z; P6 H! j
    # 原数据# T$ W- ~4 o7 K7 j. |
    fig, (ax0, ax1) = plt.subplots(ncols=2)
    1 l3 u* O2 X0 M4 }- A7 [4 {ax0.scatter(normal_data[:, 0], normal_data[:, 1], c='black')
    6 }  _# {6 S1 M2 m. m) [5 S/ Dax0.set_title('raw data'). E8 I1 L, b- t; y/ Q
    # 谱聚类结果
    ) w8 S  `; u  `/ C3 I8 ~ax1.scatter(normal_data[:, 0], normal_data[:, 1], c=labels)) D& O+ R$ n% q3 E$ r9 e
    ax1.set_title('Spectral Clustering')$ U4 r; I* ~  n6 x6 J/ l+ [0 F

    " t! X1 y9 f5 ~/ Hplt.show()1 T6 M" P: x# s1 s' v# K& R! ~

    + C; h- I2 u; D+ E& ]- |6 E# \1, J% }# x3 E/ D0 B$ Q
    2
    9 w4 g, b4 r* B: R! A3
      Y: F/ G% u5 B+ v4' a# g# k7 e* _; L  ^# R. ]
    56 c" }* s: j- c$ h' i, V
    67 j8 C. S, C# r4 U$ N" u  g+ w+ n
    78 g1 h& V+ I8 `& t; k3 v
    8
    / o  X2 \' X  o! z' Y7 U$ B94 x* r1 |; ^" J5 J& R9 Y
    10
    $ l8 D4 \6 Z& W5 Y! D( [7 T110 p( S  L% g2 z
    12
      Q, v  j" ?; x9 l' V- Z130 O, B! U. z4 Q
    146 T  b3 D, K  x3 `9 T. g8 [
    15$ [' m: s" x' q6 Z
    164 M4 y6 ?( T, c0 {" @
    17
    # o" u0 Z9 G0 [& ~6 f$ o! z18
    4 [$ \- ?  @$ E$ ?, k19. M- _% r" V7 ?0 F- W
    20
    " }3 ~; V+ H- i3 j$ N) C& P/ t21( G1 n: }  K. J; ?
    22/ l, {  |4 `0 p% F6 v
    23' l0 ]0 j' ~  r/ s
    24
    1 O1 ?: w+ f% ^; V+ e" b3 v! P' V1 y25
    * f0 l( z8 V0 k, {, _: @9 \26: E" a1 W% G$ N. K- b; |# r& j
    27" ~/ z0 r% q* ~6 G
    28( d8 }5 i- @# j1 I6 D
    29
    4 t( }- ^8 x8 y  t/ w30
    . x4 x' y% u/ G0 |8 i31
    6 ?4 M$ A" F, a; s32. _: F8 o1 w. q* ^- |+ Z6 {' u' y
    33
    ; k0 E/ A; P# j34
    * e& x! Q+ k0 F! |# M' A35
    7 `5 t; `# s! N- k# h3 C6 R2 V36
    8 q! v9 Z+ H. u% i" ?9 B37/ Y" M: R6 E$ i7 D1 K8 L
    386 V4 t( s& R$ _' p, e& _; z
    394 H& k$ ]8 x: \- O- i
    403 |+ }% ^$ A, X) x; a, X9 @' `
    41
    " _! ~; U0 Y& e8 A42  _8 l6 P6 A+ T2 a: _
    434 S* j! O! l/ c
    44% {' q; c$ a  B0 I" \
    45
    8 o3 ]+ V+ i! c2 _46
    , @0 X5 J* y8 }/ u  O( {! x( @47
    ; q7 c% b1 r* M8 }48
    * x& y- c$ T7 l! Z2 m% g+ U* K! c49
    . z) q5 a; b# Q/ D# T& D, E50
    / w* }% d4 ^+ i8 }( d& s51- X$ ~3 c% U6 Q
    52
    ( |: l/ O  V4 \0 V3 i# D6 f53
    ' a8 V  p3 I. R. r. D1 ~54
    + t9 ~$ Q, b' j. X552 A& J( v4 N7 `' }  ^
    56$ O6 u, A7 \6 g* R
    57
    # u) f: Z4 Q+ Y3 c58) t# a4 A+ b$ H7 d/ V# O; ]
    59& I8 w* x9 p$ ?
    605 @. l, X1 ]! j
    619 A% v6 Z' D$ ?1 x4 p
    62
    1 Z- J' o9 }9 G' K63
    2 I, S6 W4 V1 Z$ |5 {64
    * K1 ?: f- n% _4 y) C& o65
    ( `# i/ e! c7 m: D7 E9 v66
    ; L" `- D7 m; Z1 ~4 C6 ^9 M671 P& Y2 j* V  V2 k
    68
    8 Q: I. {" o* }( G7 K3 k69
    - b, S1 \; P( X3 R1 ~( {( Z70
    : A0 S( B  \  [/ w# s71
    0 P! L5 D# D" _% O9 Q' U! V72
    ' e* G0 i" X& O( R9 |. x73
    , U2 @( V) K3 v74
    8 ?& |' ?# b6 @/ W# x; f" ~753 Y6 z3 o+ W3 U+ M/ a
    760 V, R7 W6 Z  E2 y0 h5 C. o: K
    77! v/ }7 `1 z3 A- R& A
    78
    + X8 G% |2 r( M) d  `* Z/ O. H791 O, w$ H0 p! w0 \9 R; y
    80
    # h5 D: u' i; B, [811 T& u. f1 Q5 y5 I4 P+ b# L, k
    82
    4 U. N' f" ?1 F2 e2 w8 y% H9 e83, Z0 s# L) r# ]8 s: [) E( F6 m
    84
      f8 O0 v: V0 U$ T* n* ^85
    2 y/ s8 t  ?7 x( K2 G& Y86
    ) v/ D+ T. n' j" l876 t3 N+ {1 L" X5 \) x
    88
    - ?' R, W3 z* C89) T0 H8 ?2 Z: e- z5 F! e7 ^: G
    90) z; N: B  ^" R# b
    91. Q: \1 \9 @8 B; B2 [
    92
    * C) S1 @& f/ x% y0 g  |939 z# O2 J2 }% s$ z, s% K/ k$ \
    947 l' P+ e# S1 [: Q, N3 d1 R
    95
    . A8 K  e9 c: W7 B  e96
    & h$ k8 v$ l7 m" j' \97# O) e) b& P4 {/ r' r7 b7 M
    98
    * X5 _5 j  G- \8 j+ C6 m, M/ g99' \/ z3 s) r; h& T7 ?
    1002 N! c( {" n. U6 U1 J: t" U
    1016 J: G# u/ u3 {7 i7 d& j8 G& E: c7 F
    102- q! z+ Z) U$ |$ u0 q6 p9 B
    103
    5 m. ~' W  l8 g(高斯核函数)* C% R# L/ @: _' X
    # D5 s: n" D6 |  ~5 [6 ]0 a$ ^" Y

    " V# j& k. m. `# [(K邻近法)
    ; b" j  y0 n8 D2 \5 }7 ~. N
    7 |; ~$ \7 L4 @% j
    6 z+ u: U4 W* A! ^四:谱聚类算法优缺点% g) a5 X/ p: I9 L2 h- D, |7 ~
    (1)优点) F1 \; {: z; f9 F
    谱聚类只需要数据之间的相似度矩阵,所以对于稀疏数据的聚类很有效6 u+ S/ \8 j2 q) q1 `* [3 F: x
    使用了降维,因此处理高纬数据聚类时复杂度要明显低于传统聚类算法
    ) q& v- H: S$ x  {* k- M" T% v0 m谱聚类算法建立在谱图理论基础上,与传统聚类算法相比,它具有能在任意形状的样本空间上聚类且收敛于全局最优解
    0 q% j/ W# z, b8 D2 k7 A5 M(2)缺点
    $ P- T* A5 {6 {. W) N! [$ o如果最终聚类的维度非常高,则由于降维的幅度不够,导致算法的运行速度和最后效果都不是很好
    + k% w9 A8 u: H聚类效果依赖于相似度矩阵,所以不同的相似度矩阵得到的最终聚类效果大不同相同# |  k5 i/ C" z+ d
    ————————————————
    $ |8 {# ]7 s* h% q5 l( B版权声明:本文为CSDN博主「快乐江湖」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。$ A% @2 i' n: @+ V, d- m% L; E' E
    原文链接:https://blog.csdn.net/qq_39183034/article/details/126747494  O8 X6 M' s: {6 d0 j& C4 d

    ! r# S" Z. j4 S* D
    4 B1 `  C7 I$ w8 p- v* |. L/ a, \
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-6-16 03:13 , Processed in 0.414742 second(s), 51 queries .

    回顶部