QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3044|回复: 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
    【数据聚类】第八章第二节:谱聚类算法之切图聚类、算法流程及其实现
    5 y0 l* k0 J" Q% C* `4 W1 N
    + g( T# M: }8 d/ f' K6 C" d本文部分内容源自刘建平博客,在此基础上进行总结拓展
    9 e0 G7 ?6 M( y' O' K5 L4 Y9 `3 V3 q3 t, l
    原文链接" a- L+ l0 {/ Q
    文章目录
    * J1 K6 P, K$ s  f8 d" d一:谱聚类与图划分% W/ |  J6 s* g. i# r
    (1)比例割
    & c; u: l7 J4 ^. k(2)规范割(常用)
    4 d: ~* w& [5 H  q3 }7 B二:谱聚类算法流程# `8 u7 P9 p" X6 Q  G- @
    三:Python实现
    " Z0 Y9 ^+ Y% ]" y8 h四:谱聚类算法优缺点
    + y+ s! e' i- j" }  y0 L- R* ^8 ], [(1)优点9 M- j0 a8 k$ P; \" E2 V
    (2)缺点/ C9 a2 D* J2 F3 T: A$ o2 i
    一:谱聚类与图划分
    6 H6 d$ q4 t0 {/ ?. H( |7 u6 w; H/ M无向图切图:谱聚类算法根据数据点之间的相似度将数据点划分到不同簇中,因此将数据点映射到无向图之后,可以转化为图划分的问题。对于无向图G GG,切图的目标是将图G ( V , E ) G(V,E)G(V,E)切分成互相无连接k kk个子图,其中
    1 P' x' V( w! D% [
    9 b4 \6 x9 v* Q; O  e每个子图点的集合为{ A 1 , A 2 , . . . , A k } \{A_{1},A_{2},...,A_{k}\}{A
    ; @5 O% r2 b0 P/ @* U5 Z8 t. m1
    . W+ S/ Q; j- {# M' g8 c6 l* O  t
    ,A + Z5 p; z( V- y, [
    2
    ' q% k/ m% I* E3 ^# v# p: _( w
    8 g8 L$ r/ `1 { ,...,A 7 q  R  w- u7 U& H. e1 |
    k
    0 q# f8 e& h3 o5 n* u$ e3 H" }; L! n# h3 h! L/ m2 k
    },且满足A i ∩ A j = ∅ A_{i}\cap A_{j}=\emptyA ; N$ N' G: D5 ?6 E
    i
    , d- B  P$ |3 [5 }! x3 A! l+ ]+ V( z  p+ Z, b
    ∩A ( S: \1 A2 g) h0 }+ x
    j
    : y) M0 R, I( @7 m/ q5 `! C! u* _0 ]- N% \- m  A4 f
    =∅、A 1 ∪ A 2 ∪ . . . ∪ A k = V A_{1}\cup A_{2}\cup ... \cup A_{k}=VA
    & b6 k; N9 \/ c  h$ {4 H- f0 G0 t! }1% K* k( E5 j, r: K
    " C' {1 c/ I0 K) D/ \* c
    ∪A - u( Z4 c" @* ^8 I, S, l
    2, {% F! L' t& |" e6 ]$ \* x/ }5 s
    ! n* n9 i+ y) M, O
    ∪...∪A % v0 y. p. }7 X2 P8 v
    k
    6 c9 n7 T! {: K9 c) ?, Q3 J! O9 ^& q% T2 g% d
    =V. y' Z( r7 @+ C' i  e8 l7 t
    对于任意两个子图点的集合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)= " L& t1 [* B% _7 c" M& J! J/ p
    i∈A,j∈B$ h% Q+ O* s. s: c7 P1 Y- y
    0 ], E7 J7 M* z) h& z+ c7 a2 \

    & k" C7 C7 A% h- U) {8 G" \, x w
    6 G5 l% `( K/ r& B4 n6 uij
    6 ^) P, J- S3 o6 t: B3 P1 \! w  `# L& ]7 x# l- k' b
    - \, S* {7 T8 _. f5 X1 o  F
    对于k kk个子图点的集合{ A 1 , A 2 , . . . , A k } \{A_{1},A_{2},...,A_{k}\}{A , a; L4 s' K7 b$ \
    1. {3 f6 ~3 V5 J5 w) V  }; n

    ! O$ p6 h/ }4 ~ ,A " q( y8 e2 g; }) E& u
    2
    ! C; c5 P7 a* _0 o: f
    " N- ]$ [# u  O! L  c3 `1 l* k! ^ ,...,A
    / b, I" m+ ~1 ^, Nk$ H7 b  m0 J! J" Q- s$ M  t

    $ }7 i4 D( D$ u/ ?6 _* R },定义切图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 ! f/ h4 e. p1 o& \# T9 u+ |6 Z
    1$ O+ T$ V! J' b3 i4 p: L

    $ w' M; ~9 A; a4 t' q, ] ,A 7 J8 P% \4 [% I, h1 r8 T
    2
    0 C! b# @) F# _4 ?6 ]2 w: [) t' e$ Y4 {0 @
    ,...,A ( s1 j7 K: \3 U3 h- m# U
    k
    : x8 Q7 {; r7 Z' I* V9 x& {: D1 E( R6 u+ _* C& r
    )= ! q/ z7 b3 J& S; A3 G4 [7 D
    24 u, w4 k8 @: J& d
    1' p, Q. ?; Z  s- |: k
    4 q0 c6 @$ V4 a+ n+ J3 f3 w& L

    + @% o3 \- ~7 z( h" b+ o3 B/ d* `0 mi=1
    ( t( G$ q6 f7 i" O1 ~2 Q  S. e3 S1 K" N9 C
    k
    : S6 d  y: V, `8 y1 h" I' x" ?7 P' s8 h2 V! U( l7 f* r2 h3 ?
    W(A
    . ?- k' o, j& y$ y) ~i, B) i* P' u" Z/ K! A8 J6 w8 g! r

    ; X3 ^2 G" ~0 }0 k$ R , 4 B. ^0 b$ c$ z8 U
    A# j! ~; i4 D8 V5 N3 ^
    ˉ
    ( ?; U1 H. w- W
    7 O  o: a$ F$ y9 {i
    1 L: N! \( J1 S9 M) j" I  j- z3 F% T7 g
    ) (其中A ˉ i \bar A_{i}
    3 O) `  p- g& I5 k% ~. o/ sA
    0 a5 F# ~  v- G9 R/ x+ ~ˉ4 x# l, F2 R4 G1 N2 P
    & U4 R( v8 B# d; _. f
    i8 @4 J' y& K! Y
    . G9 x& q  Y8 ^) g+ M8 q
    为A i A_{i}A
    . W9 P2 \4 D2 N0 }: X, Yi
    ! Y1 ]9 T- S, L) e# {4 @; t
    & t) O; x% G/ l+ m7 U1 E+ S 的补集)
    9 g+ S: J6 |" f/ h% _9 I3 ]可以看出,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
    " x* y5 ~( R. e* m" J- S7 l1
    0 P" A! b0 y9 g( B! h' W  `8 Q- S: }1 V
    ,A
    % m, v5 F' h* g' @, v- ]" B2
    + C7 t+ u; I5 L0 U9 O# w: d7 H- M0 l, B5 B2 O) ]2 y+ `
    ,...,A 2 s  q( }" n4 ?- ~2 N$ R) Y% t
    k
    # q. w$ r2 e. N; Q. _, s
    1 S( Z- L& f6 }( c9 d9 v, I/ a )= , q6 B# |# T3 k4 V# I
    2
    , D5 h8 o8 s3 o+ E1 t7 T* p15 K+ o2 I& h) |9 t1 O% z+ x

    5 r, ]- e& U2 x  R) {# g: t+ D$ P5 g  K) a5 t9 R
    i=1
    ; ?3 H  ?! t! {; V) \8 {4 c5 o1 R5 ?/ ~* @6 X* q0 X- N
    k- j' `/ W1 E! ]% m4 b' x! n6 u9 [3 T
    5 @5 a; v9 A2 A' A" ]7 S7 D
    W(A
      a6 B" X  I0 f$ gi
    ; \& G7 o& T3 X' Q% j% [' ?
    8 s. f1 R+ |$ A! B , ! K# [$ R( e1 v- o* Z0 a" z
    A
    8 ]. N: i+ I! e% J1 V) f( B) Aˉ
    1 @: ]4 \: j5 \1 N8 Q$ h* Y5 M* G1 G6 w4 V: t6 ^
    i
    2 H, Z5 I9 L: t& f
    ( t7 B( @. H; [) T )在划分子图时并没有考虑每个子图中节点的个数。所以在某些情况下,最小化c u t ( A 1 , A 2 , . . . , A k ) cut(A_{1},A_{2},...,A_{k})cut(A ( t3 d4 {; i* H) H( [
    1, Z& J# A, Y+ O0 j2 `7 Y' P, S( @9 a
    3 V& {/ D5 i+ A8 M* D- u+ m
    ,A
    - @% J) J4 V- M# Q21 K  |' k: c# i3 d

    # {, J. B0 b# N1 L$ s9 ~9 D ,...,A $ c: I2 y. y3 U
    k
    ) K& \$ C9 W) Z( B* L: _7 v! N# ]1 }2 L  t$ Z. b  p
    )可能会把一个数据点或是很少数据点看做一个子图,导致子图划分结果不平衡
    : K' b" T, I. l$ J3 C* z. z- e3 Z, D: [) \2 z6 k. }, N
    例如下图,选择一个权重最小的边缘的点,比如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 4 ^0 H6 R0 G% s; I8 K
    1
    % {9 c8 F; {& n9 U
    $ [$ t- _6 g8 x3 d6 n ,A
    3 y, t$ g% f. B# U; U: V1 P2
    " W# ~) G7 N( B/ c6 J6 n% b+ l0 q( ~- \7 q
    ,...,A ( c! ~6 G& n' o+ S; `, I
    k
      }) m4 B5 w! R4 N4 ]( _& P& T: N3 I% Y( {
    )但是却不是最优的切图
    " y  u4 v6 I  t6 u) e+ i4 @& u2 ]/ J/ [* g6 u
    为了解决这个问题,会引入一些正则化方法。最常用的两种方法为比例割和规范割
    ; R$ j& t4 u1 c; K2 }7 c0 q) i/ V/ k$ r
    比例割: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
    $ q/ i5 w0 ~( `: Z6 J14 l: |0 H$ r" N$ K  q- d
    6 P7 e" F  u" I5 O6 {0 |
    ,A : W5 f- Q# a0 J$ F
    22 z1 h9 r% Y% d# L+ r# `
    , j! }/ r% g; N0 \
    ,...,A
    * }1 n0 G' C% T6 S( tk0 l% o+ s  m% V
    ) j4 {& l. ?$ W% h7 F& |+ _* }, P
    )=
    3 ~) G  L/ p7 Z  w2 A2
    5 n( R& U+ o! r- w2 F16 \2 |3 I/ t% ~; l* Z. {( @* _
    : J' |& r) b0 Y$ Q6 r

    ) @' z/ `2 }' Z  r9 Bi=1# `* ~  ?$ D5 s3 I6 G1 V

    " P4 C# c& L2 I9 t) ak
      b% w, f+ w. `
    # F6 Z8 f; G- }1 u+ L1 R$ U$ d" |: ]: w$ J# m, |
    ∣A % f! E: W% g3 d5 l$ m  X1 P" c# `9 S0 ~
    i
    & [  w; A, j/ f! x1 Y3 h9 L$ [- t5 i. J! y% C2 }  q$ C

    % z, g: w/ S! ?# x5 \: \W(A ; [7 D! o; o# D7 y# u
    i
    8 \' I& v" W# m! f
      X/ n" X# Q1 _6 C" }) Q , 8 ]+ }& ~* R7 n
    A! @/ Y/ ]' N( K
    ˉ
    4 c7 U. G- s+ a8 |/ R; n* q4 Y1 {8 f$ P/ p1 |/ L% r
    i6 T0 o% o/ t0 v

    3 L7 X2 b4 M- V' G) f$ H* H0 m )
    0 H. [5 u2 z0 h: N$ \0 W* N0 f. q! N
    2 m# \2 w- T# X) w
    规范割: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 2 X* F- o# g. L- X' P+ |  Q
    1
    1 u5 E, K& P' y+ ~* P, @7 r- f; L) y: O/ p
    ,A . `0 F! O6 U( _+ h& i- l
    2
    9 D0 e1 }) t$ Z" n/ B+ c" |$ i: x# O# n; i! r( L9 [( e
    ,...,A
    8 s4 x( a# A. _7 T% w+ I* hk
    - m& i) z; P" _' n3 V# k* p( ?
    2 J3 V1 k9 O( B0 u  D )=
    / W  P* H6 K3 [# q9 |2
    : q5 Z2 g4 g3 w- i7 M) O5 N6 u1  A" M- S& C  D1 H5 F( E) \
    2 n+ ^' ]2 Z; _1 a$ m8 n
    1 p) u+ E0 b' i0 V' `/ J7 D0 T
    i=10 e6 g9 Y7 }+ s

    ! d% L) v/ \8 jk. R2 \% A8 N: q/ p

    9 U/ Q1 Y& E' S8 o+ w' A7 W9 {: w+ W" q+ \
    vol(A ( }9 {  ~$ M- X6 n
    i
    5 d/ G$ b/ R3 z8 z/ b( o) a4 a
    ' H7 n2 g' Z, ]5 g7 J  w, O, P )
      z! c& R  Y5 d: iW(A
    5 q1 J; P8 |- ]# h( V& A* s( v' L+ H9 Bi$ u# a* {( F4 M  J
    2 R2 H% x9 A' _4 I  C3 q3 Z
    , 5 E% }& M6 W* x$ W5 b4 g
    A
    0 M" Y, p8 j% [( G4 X/ oˉ
    $ \* {) _- l! ?. I. C# M/ g4 z* h% S
    i
    $ v% a% B$ a- i6 G  I+ S3 S- E. P- ~( \+ n+ M. I
    )% {% P' e: {/ u) u
    * t2 ^5 L* [6 c5 M7 n/ G
    . z. N5 p# a" n+ E
    (1)比例割- W& {% `* J7 g2 b3 J# J
    引入指示向量(点击可查看指示向量定义)h j ∈ { h 1 , h 2 , . . . , h k } h_{j}\in\{h_{1},h_{2},...,h_{k}\}h
    ! U' ?2 V2 O/ B9 A# sj$ I9 z) O" {) v7 N

      ~' S( \  X, t ∈{h
    7 z+ Z2 x1 H: U# p1 u; b, k& K/ Q1
    5 z) k: K- m! {. U3 P) q* H- I& a* _
    ,h - z( o8 }' C' T6 m
    22 o7 S7 {7 h  T# s

    + C7 F! h0 O# W! R- E& i0 V ,...,h
    , d& [! ?; l$ vk
    ' |  n, I2 s$ ~4 |7 z$ g* q: C
    5 v9 \- D- A9 d: I- A },j = 1 , 2 , . . . , k j=1,2,...,kj=1,2,...,k。对于任意一个向量h j h_{j}h
    & e) W0 \# f8 s  W2 y* t' bj& A. @8 `" z. S( c$ L3 ^

    1 v5 G; ^' N- ^$ r. G* ]6 O/ Y ,它是一个n nn维向量(n nn表示样本数),定义h i j h_{ij}h + e6 e; j0 G/ B: D  g- T/ Q
    ij
    # u- S, @( U: v* {2 R  w, z' o9 K6 ^9 J  k6 d- W- C+ z6 J; E5 x2 I
    如下
    2 g* D; ]' X* t3 Q8 B0 y' v5 G3 @5 h/ e9 H
    h i j = { 0 , v i ∉ A j ∣ A j ∣ , v i ∈ A j h_{ij}=" T- ~" d6 X  q+ |. Z
    {0,vi∉Aj|Aj|−−−√,vi∈Aj& b0 q' w' s  W, Y6 N
    {0,vi∉Aj|Aj|,vi∈Aj$ Y" \- c" Q) K" p) q- s/ \' @
    h 7 \& K/ {) N$ \
    ij
    7 t* q% [, J, ^! X: F% A
    % b: S2 B% T. G/ L2 T8 a ={ ; ?& l! J, b) m5 a- D
    0,v ) p5 f  l( y" i) o& X
    i4 ^) w0 V. ?$ v! [3 ^

    7 b& r' Z! r% g
    & [0 d+ U; A6 B7 k/
      C' }( i+ S8 U, `$ ?1 n6 XA
    + F( T! }3 \0 X1 \: z6 d* Gj
    , c( k% n2 k+ a+ [* c1 P( H- z5 C5 `8 a- ]+ |/ l8 Z

    ' d1 ~5 a) x* ?' ~5 W∣A
    , i% L! N0 F5 U% c+ {3 g1 \, ej# `2 b% W. p/ L+ ]. q; i
    9 D7 r; b) X2 l! k: d6 b
    ! k# C+ G) d) U$ K; y4 S1 r

    - n0 K0 k  n, k4 v; l8 s' {4 ? ,v ! k5 H; Q( w# Q  c$ @( I" z$ g
    i
    . `, t$ }% R; p) j; V5 N! L# }' j- j8 _
    ∈A
    % j% S* Q7 v& S+ T+ Q6 Nj
    ' I2 k# ]1 U: Y8 `- J' B$ K; c
    3 Z0 F5 `( k! F  V6 S& i0 k* d1 Z; r5 i3 r; L2 Y) P

    9 @1 T, v6 a% k1 a/ M, A( [9 b1 W6 ~3 o, N
    % A" b, ~: T. r0 c
    于是,对于h i T L h i h_{i}^{T}Lh_{i}h
    % @4 A5 a) j8 l4 vi
    # ?# d4 O$ {6 v4 P& s7 {9 t: VT
    + N6 Y* m  M6 v0 t
    0 T1 g1 T% ^. g3 O Lh
    . g  C; c0 G# @4 P( oi/ G, D& n8 z" l- i; z
    2 ~! x- m6 `. R6 [9 C7 m8 q
    ,根据拉普拉斯矩阵性质可知( f% O2 Z0 i- G' B8 |

    4 @! V* x  {1 s: X: |对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f
    6 W0 p, n7 M$ d  j5 i3 i! E0 R) V1
    # a* I/ b0 T+ u4 p" i
    " R5 [, w% d+ v6 n2 {4 S, H+ P ,...,f , ]/ ?0 A' S4 o1 s6 F* Z& G
    n
    0 R. @$ J' ?" Q+ I( q7 a7 @  P' X0 I4 L! ~: h$ |/ x7 E( j
    )
    ! A' y! @! x. z6 |, o* j; N% a' hT
    0 V+ }* H/ v2 e% ]  `( H2 f ∈R
    2 W3 a- L' a- L8 G3 }3 dn  `: u5 J* B8 M' M% P* ?* R% N
    ,有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 1 a( ?- ?+ n4 f9 p
    T, M" L7 \# Q, I0 a1 W8 {
    Lf= ! ~5 j2 M$ {4 l2 C8 S
    22 K  t6 P/ O6 F; X$ |9 b
    14 d8 W0 U" ]: G+ p8 [
    * V5 o' X# f1 i" b' ^+ }6 F8 p

    4 m% @8 H" V' C) i1 ?/ o* H5 b5 _- zi,j=1
    9 e, z1 K8 Q4 ]* h" r1 d6 o# [2 S3 X/ Y& E1 Z
    n
    ; n3 S( ^' A" [. y
    6 l: p: C- N3 d0 I w
    9 W1 r9 q( l7 ?: W# gij, y& e: I( O, p* A* z
    5 n1 E; i! i$ K) ~. `
    (f ! e% D+ `. f' u) J* Z/ i% w
    i
    , C3 F" F) c1 ~* K' j; O/ ~, P+ v! U5 b
    −f
    * \* D- o3 ]/ Z7 D' y! `7 s( aj9 p6 A+ l# r' |. R8 P! ]
    6 I+ J8 Z) [* W2 i4 A6 c
    ) % I1 e7 b( Z4 ?4 c, m8 i
    2
    4 s( b: H  y* n1 J1 m: K) d- a0 Y/ h. b! f
    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}|}
    2 T, g' n0 z- }1 E, Ah
    9 m* q3 c$ Y! \i: n1 I/ B1 ]  B! U6 _# j
    T
    & E4 b! L1 b5 m+ D5 Y
    2 _9 p) v4 p# {! L6 {8 T7 k Lh
    + R% j2 n3 y- X1 b9 y, q# {& Pi
    . I% ?4 T  ]5 ~- `; d( x2 Q# Z- {$ Q4 k/ _+ {
    =
    ! m4 H) m/ N/ o0 h4 w2
    & Y6 s% q# g# W% `, c& e, T, J3 N1 a* r& n1
    1 M# m6 R+ H# K/ I7 _% A+ w/ y, @8 w  L0 Q* f5 @

    . j! e# p/ r; n( c, L* Vm=1
    - L3 [8 H" @! i3 Y2 u- P2 _1 I! R6 ~$ O. e7 I/ w: @
    9 T  Q6 |+ }5 @) c( X* S
    9 C$ I$ S& X3 j* R
    n=1
    % {+ b) n# {) a3 s+ Q# z3 M- s) ^* f) V4 C0 Z( }( c
    3 j; s, }0 O7 N: B
    w
    ' p/ [3 `; ^: {0 Y4 f4 T9 Dmn- f% ^6 h& A* [" i# J( e5 z

    6 W" [; K- A; n; D! y# K (h ! ~- E* [+ \" Z; N- {7 O# A  h: k
    im
    9 @* X: z4 k( J. k
    / v! `- {* n/ E: K3 k −h
    - W4 G- V" |! g0 D1 nin
    $ J6 x3 m- B- g3 Y7 ]# ?8 Z1 f8 U) g, l4 w4 T
    )
    2 c& t6 j. W( X9 Z3 C1 w2
    ) |- T/ M( G% j% d" V! r = & Q  |0 f: E' a# I
    ∣A - J0 d( H  i7 P( W+ X
    i7 p* ^; l% l( a
    : i. k* B% s, L. k1 `1 t0 M
    ( E" w, g2 t4 Q
    cut(A
    / i5 M5 L, D8 t& Q$ n& P3 O1 A* Xi% b; L- i# U) B, a0 F

    - o& w" _% D8 }8 O# c7 f7 S , " B) U+ T/ n) c$ D
    A
    9 j. U9 \+ h+ @( m* Yˉ
    3 R" E% M# [: w+ Q: L( b8 J: b0 p4 c6 V: b, l
    i
    / d. U( S7 h8 L$ A! i2 W* G" Q# b6 I
    )
    - ~4 f! Y" }0 H2 E* V
    ' j' S$ L" q$ I5 j5 r; A! ?# Z( \2 J$ ?) B% t) ~
    : p: y9 ]$ A- }2 n8 r. n
    严格证明过程请看刘建平博客:链接
    # p& ~: v: L5 _6 @' _# ]) F# I可以看到,对于某一个子图i ii,R a t i o n C u t RationCutRationCut就对应于h i T L h i h_{i}^{T}Lh_{i}h
    ! h* Y, e) _, G; C/ t0 oi# p- e# |4 ^' D: a; g+ y
    T" ~6 ?0 V( ]0 E+ c2 ?$ Y4 Z

    0 i* `0 q+ o3 V9 f5 j; d Lh 9 X: b$ Q6 R! v9 g  C
    i' M* y4 M# J( w5 ]. U
    7 \3 Y' T* ?& D5 O1 m
    ,那么对于k kk个子图
    # G: G. o, `( b2 m: [$ L% A6 }8 J! m
    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)6 |. R) z; ]# c! e8 P; Z) ~* F8 r. G
    RatioCut(A
    " J9 s% Z+ J& _3 R11 n& p8 E. C0 C: ^$ x
    # H# \) L4 w2 X
    ,A
    " U+ Q  G' V* c2( ^+ k! {5 T+ ?* M; |$ m. C

    . q8 |) @4 w5 o+ Z: f0 T ,...,A
    1 F$ M- _# C! Q7 J& tk3 c" ^; v$ j' J3 e7 W

    " N9 a: y( q! ?" M )= 5 f# G0 {  Z" {
    i=1. ^' s7 |: s7 X

    & N- z' {/ e7 |6 ik5 F! A3 P, H" [8 P" E- n

    # c% [; d, q' ]( y7 {1 c/ r& O h 4 J5 W% k  t; }' h8 ~0 I0 q
    i$ o) h0 ?+ m2 e& _
    T
    % H$ s$ x7 C$ C/ O: q- o/ A) d
    % Z! ^, O. W: \0 [2 V7 M Lh
    3 ?0 @9 @6 w: h- C: N" P9 bi- y+ L& P, e  A4 B5 K* \9 V3 b
    + \: w3 j* l9 A( {6 L$ Z) i8 I
    =
    6 s" }8 Q3 L& t! T5 zi=1
    * m+ Y. E1 x0 n5 [/ c  L3 Z5 n; P, O% s* q  V
    k/ s. L& g4 L1 d. O5 v9 a, Q

    " I( a4 B, @* l7 z3 ~0 H (H
    ' C: e6 m6 _4 BT& i  e/ A; N# L
    LH)   s2 _1 e( E; |- V; v" g
    ii  F" ]) y+ ^. p( N' {# e! S

    0 h' t1 g$ @4 r. ?; [1 T3 N, [ =tr(H 4 M3 f6 j+ m9 S2 A' O: \7 n$ `( i
    T
    ; q2 Y0 N. ~7 E3 w& r LH)
    ' |0 c/ q, Y' s) C# K; \/ k( L2 x* `5 i3 P) m* w. \5 I
    因此,R a t i o n C u t RationCutRationCut切图本质就是最小化t r ( H T L H ) tr(H^{T}LH)tr(H . W; |. z& q* |: s; ~3 j# H
    T" L7 g2 k* ~2 s' [& G! l. H0 Q
    LH)。又因为H T H = I H^{T}H=IH * d) y  [( W, t+ k/ o, F
    T
    $ U5 }. F8 B9 P, f6 z- K/ n8 |* P H=I(单位矩阵),则切图优化目标为* h& n3 B/ T- R0 p' P5 B) R
    ! v6 F/ l+ i0 V5 K
    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
    & e3 w# |" [5 m! ^3 ^% `: a; NH
    ! D3 t' p2 [# A7 T) kargmin4 K( c) n: K+ g9 n" X3 a; b. O; }1 [

      e6 }3 H  c8 R9 \. |7 j- d5 t* e' E4 Q$ o: m+ A' |0 r" s
    ( e# k$ c* d! y8 m+ l# g
    tr(H & ~4 a% H  c1 X5 T, c
    T
    0 z" }) U& k; k: d LH)s.t.H
    : L/ C- t8 K* c+ YT
    2 k0 |; M: v* { H=I, ?. V& |: i) |" w  T2 ^
    * c' w, J8 ~* M5 U5 g- b$ n- a
    对于优化目标t r ( H t L H ) tr(H^{t}LH)tr(H
    5 x8 M% m  O6 f2 |& b3 G: I: st
    . x  N, b' b. W LH)中的每一个优化子目标h i T L h i h_{i}^{T}Lh_{i}h
    + Q! T9 h# _4 [8 ]! A4 fi
    $ ]& M. A! L; C1 p8 r8 {T4 x8 z" s( t+ J4 H1 T

    + e0 ^4 H6 c2 P3 Y0 Z. W1 |$ u Lh ( L' q( R% k' D' t$ h# @
    i# H" X% L) `4 r2 \3 I& A

    # K8 X+ X5 _# k9 H ,其中的h hh是单位正交基,L LL为对称矩阵,所以此时h i T L h i h_{i}^{T}Lh_{i}h & V& {5 C  Z( T9 |8 V% @* K
    i1 E" M5 h0 L0 `; j! Y
    T& Q4 V4 @& t$ }0 O
    : j; w4 j/ ]9 S2 [  g2 _5 I  v
    Lh 9 n; y$ \3 g2 |- ?$ v9 E
    i
    , K" J! c& B! ~% K& E3 s
    % r; y$ Y' D/ W! r 的最大值即为L LL的最大特征值、最小值即为L LL的最小特征值。而在谱聚类中,我们的目标就是要找到目标的最小特征值,得到对应特征值向量,此时切图效果最佳。所以对于h i T L h i h_{i}^{T}Lh_{i}h
    * d4 [  \$ Y( \: H! N! Ii
    $ q8 O2 [9 \  H, ]6 f  ?5 tT
    7 X1 Q% r: }2 ]! [- {! r  B: ]# ]" ?
    Lh
    : S* U0 l$ X' V2 T/ u8 r: ~i
    & n- r) u' G1 m9 a3 m( [$ M* k2 N0 R
    ,目标就是找到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 / j4 @1 v* r2 e" }1 E1 ?! ?
    t- i7 B! x) z. K: _$ b* _
    LH)=
    ( x& t* g# m- N% w$ Q$ ri=1
    8 Z2 Q5 B/ s2 G" U+ X
    . I% E& i& r+ A* o1 k, xk; n. X. d# U) o# ?- P+ T

    9 U* F: \# i7 O( ^9 B% l2 m. K h
    3 r( \# q: V3 Ci7 ]# [  @/ h5 L: K+ B% M1 b2 ^
    T6 v2 l7 R/ {0 W: r1 E4 ^6 ^8 F; s& e
    * n" F" w; [9 p; Z
    Lh ) U+ N5 O2 a' e1 L+ J- T- E
    i
      I  P" u. N% l3 u
    . W2 J5 U) @9 \  F ,则目标就是要找到k kk个最小的特征值
    2 `3 O; ]& ?6 G& x8 F  C5 w# F. y, U' P0 A1 `, Y; P. _
    因此,通过找到L LL的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特特征向量组成一个n nn×k kk维矩阵,也即H HH。一般需要对矩阵H HH按行做标准化,如下- J; d: r$ u3 m

    8 Z& J# }; O, C一般来说,k kk远小于n nn,也就说进行了降维* W5 ]: O# k! |  O( ~. r* |& ?
    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}}}* C% A0 u) r) z: J) {% n0 m
    h ) r) T: Z0 j9 ]* `; P" m6 o
    ij# b  V9 x& E. r9 V2 w( E

    2 k* z8 ?, @6 ^) U6 q9 g3 x  Y2 ^( {+ ^: i' e
    =
    ! Q2 S9 Y/ R+ [+ ^/ t, s  l( + [* m! V& `9 c8 b0 j% o* d
    t=1
    / Z4 I# Q' ~+ m6 |; K; ?; K( v2 p  i6 P1 B" e% ]9 j5 b/ t
    k
    $ s+ u3 C3 A+ I3 |' o0 c& L- P9 J8 f1 A( o
    h 4 T* e6 o1 z0 {( @, ^+ a0 c0 ?' ]
    it
    : X' B% i8 k( Y1 `( O, v5 U2: t# M( p. |, b2 r2 J/ D

    # Y) w" x+ w" E ) 5 m+ a5 r/ K; Z3 b
    21 u6 S8 m( _. ^5 |- E0 a, T
    12 @. n/ u  n& x' z/ U  g( D
    . |& }: G+ ~1 s) F; ]8 [. q* V
    8 \/ d2 P) Z# |4 p; }8 B. g) C
    ( m$ ^+ Q5 G+ }1 q
    h
    ) M) ?' e' e; ~# R3 a- qij. \: y# h: L& u5 A3 ?
    + Q* O* v. {  R7 I: Q
    ; E4 X- g# j- k0 z7 p
    ( z5 s& k% j' f/ `4 S

    - `, X& Z# H- [$ L3 {9 t, ^
    8 N( X  T* {6 {9 N: z这里需要注意,降维后导致得到的指示向量h hh对应的H HH现在并不能完全指示各样本的归属,因此一般在得到n × k n×kn×k维的矩阵H HH后还需要对每一行进行一次传统的聚类,比如使用K-Means聚类
    ' p( h1 t: `4 z  ~( P: E2 A4 x5 g* E0 O8 C  I
    (2)规范割(常用)! g; `* [' c. R7 a# j: f
    规范割和比例割类似,只是把比例割的分母∣ A i ∣ |A_{i}|∣A ) K. T: }9 @% @8 K9 g5 z2 T
    i& u' _6 z( ^# G

    3 h, _  P3 K! |5 [ ∣换成了v o l ( A i ) vol(A_{i})vol(A
    6 U( l7 h5 R, g! r5 Q- q7 n$ Ki
    - Q* q8 S) }* r, g" D2 P0 o4 V! n8 f- p% }
    ),定义指示向量h i j h_{ij}h $ y* m8 X9 v1 g" {3 T
    ij  R! u' w) e9 J) q/ ]7 C' j- O

    1 d3 x/ w& p" r1 U  T; r3 y: b( V) \ 如下. |( ~' N8 }( |! ?  Q3 Y# o
    $ U' @0 \7 a) c# U2 g
    h i j = { 0 , v i ∉ A j v o l ( A i ) , v i ∈ A j h_{ij}=5 s# ?% \3 k# e2 j8 z$ v5 Y
    {0,vi∉Ajvol(Ai)−−−−−−√,vi∈Aj  H$ l8 m, j) p/ F" s$ A8 S
    {0,vi∉Ajvol(Ai),vi∈Aj
    4 @  Q* M9 ~: n6 l+ R' fh
    ; g0 l8 E: E9 P& [; Z) Yij
    * w) }3 O6 C0 q, b- I1 p: m* R( P0 Q2 D6 y
    ={ " @& P- u3 F4 a- X
    0,v
    * W& Q# E1 y$ t% {5 R% J0 O" hi
    + p1 ?# p& K. T
    0 K4 y' z: Z0 m: n
    - Z* A* w* S5 P# g, d3 K- @/) j5 f! v4 U& O1 H+ K& @; H
    A
    & a( m# `4 P+ Y' wj2 B) `  k* L3 P: u& p
    2 `- X5 J! T  t0 A5 u9 W, M& C0 J
    & g2 I( d% v$ A6 L: i6 Z
    vol(A % O5 s) E! A2 F  E: ?9 @! s' J( {
    i
    - e- V8 b/ q5 @9 A, Y4 P
    # k7 k0 |: s- y& W4 i$ l7 }1 J/ P7 j )& i5 w1 `( Z& O% b" T
    4 Z) T: p' c; z3 W: W  E
    ,v ; W9 b- k* M1 P8 H6 c5 N7 e- F+ f
    i
    ' s) Q9 c6 z4 l* g9 E9 W$ t8 Z: X# {/ d9 Z0 m
    ∈A 4 H2 T( t1 b9 ~9 s  `, X
    j2 p5 h, q8 L/ P1 a" M* c

    % h9 y4 ~) u( i( V7 e9 V8 T
    1 D7 v( z: c. Q9 |
    2 |2 \& t2 V& y' i
    2 \7 B  K4 F' W/ d. d; ]6 k, L/ q0 ^
    6 r& [- e$ t, M) p% m, G5 ]# s于是,对于h i T L h i h_{i}^{T}Lh_{i}h & b- X1 D, O3 d$ \2 f# i
    i8 }& R9 O6 c) ^, K
    T
    / c/ y( B6 v- Z( l  Q1 E0 j  O& O
    + [' b9 K% b# z, C3 r" t4 |% S Lh
      B% L7 T4 r. \' Z- I( S- li
    8 g1 T3 Z0 z" O  }
    ; i% P* n6 I& I( g0 Q6 q ,根据拉普拉斯矩阵性质可知' [/ f' z6 Q, T- x" L1 G

    1 o- d7 B2 i' m9 M+ y对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f 9 O  s  h/ p2 b/ Y& m. q  |
    18 |4 W( C! z1 J1 j' N7 g
    $ e% `1 G: Z& S- d& m  A. l7 `$ X
    ,...,f 8 O/ B% j! |$ `  k6 W
    n4 V9 [! x. Q+ }9 e! y

    % r/ p' ~( R1 i4 P ) ; D4 n# C/ `" g+ c7 F+ s
    T
    2 ]' ]8 X  g' A% K0 Z$ a9 l0 Y ∈R 4 r% X, F$ y! L+ Z! A
    n
    ' e, d$ H9 g5 }0 v! D- U& | ,有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
    ; Q& _6 D2 ]) H- U0 nT" L# E3 E3 [  j6 h% s# H8 P
    Lf=
    " N1 X# j! X5 B. j: G7 D2( B4 Z% {5 C4 X" S' p: ], R
    1/ W: ?+ J% E+ i+ e# r7 J' x2 l

    : I0 H2 \& }1 b! D6 I. F9 u4 ]
    - a7 n$ j/ K/ m* {  J" ui,j=1+ `6 B, {, J' I( U

    8 P" a7 A9 [+ T4 I6 }n
    / F; d$ ^% z* N/ t. o& U0 X
    & f+ y  X) b$ B+ p w 4 q+ ?( ~1 p+ O8 T1 T" u
    ij
    6 f/ C; Q( y, p6 d+ S# T; @8 N/ o2 R' |& P
    (f - w. |# W5 d' {
    i
    " N/ L+ j, d9 ^; V1 f1 k6 Q8 `9 m9 T
    −f
    - M, B9 @/ O2 N; s' |! O# S/ W/ t( Oj
    4 n% H6 ?- H2 T- |5 j3 ^8 L. l. z
    ) . ^) I* B8 z! [% e6 F& ^
    2
    / [6 k0 b+ o  V1 @" i; g2 G% l5 }1 T! f% C7 J* t! W
    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})}
    & o! n( @  r  z7 u2 ~  M: f7 Kh
    : c0 X5 Y* |1 {3 X3 b1 j) Yi8 k- K2 O6 v: e
    T, _- U9 U% y; r2 z2 ?, m+ J, ]$ w" r
    5 e- e1 g9 r7 A
    Lh
      V9 E+ l, H6 c: oi7 m6 M0 @# F9 L& T

    7 ]5 z5 \, R: y# @: Z% V$ T =
    " [+ D6 H7 Q! P2, D6 @8 I& j+ A, v* T+ z4 B
    1
    0 }; A0 H3 ^3 J
    & {# c8 @: f) \6 @" k- v. ]# L" m: V
    m=1
    8 {% e+ n: ?% e
    4 U, J4 A3 \) r+ h1 O( ?% _8 p* f7 _$ U$ d! L. p+ T0 S% W* L

    ; z5 u/ A0 }: v) {5 |' rn=1
    : c! y% x; l! B3 ]1 d  W2 i5 s& }; S1 B0 x! K

    . x2 H5 |! t: {0 W  [# N w
    6 N: k  ?! F5 A: c. P9 g4 ?( L$ Emn! `( @9 e; u- \" A( l2 ]
    " i6 ^: d7 P/ I
    (h
    # n2 {1 z( |9 d/ I4 G& u8 eim
    + D4 m0 L8 _1 Y! u1 P1 _6 [( x+ k2 G
    −h ! P9 _6 f; M9 y. z( Q
    in
    4 B- k  U7 V5 w- y4 V2 }$ W" U$ K. D5 K- Z9 O2 x% S
    )
    & }8 G9 O8 E1 T, N+ X! f+ I2: Q" o2 N7 F% F. K% q$ f
    = - m1 }) C2 J! D7 p- J3 _/ I1 Y! O
    vol(A
    : e: q, Z8 q; y* M+ O7 r, G2 q0 Zi& X& V; D2 ?6 f& F$ p5 E

    ) E3 b. b' K1 @- n )% m% U+ T6 e3 A# _6 ?9 X* S3 N
    cut(A
    ) V0 h( t6 v- z# yi
    ; G+ x# A& ^. Y; E; f# k; D
    . [  a6 M! i! k; K, M/ k, b ,
    ( Y3 h" d4 M, `- d. ^  U4 \A7 ]. n, U1 A9 G" r
    ˉ6 \6 C% L: G. u% F

    & E9 `9 S0 N: w; j6 li6 ]- U" F: f$ ]4 M2 ^

    # D3 t3 ?8 ]3 [ )4 n! a! u9 w. `) H+ M9 M# |

    % q0 f; }4 y8 P
    * ]0 \# p! ?/ \8 f# W6 U/ S8 s5 e5 O& Q/ k; @* l$ f* J, _
    严格证明过程请看刘建平博客:链接7 N4 Z& @( H# {- Y+ p; a
    可以看到,对于某一个子图i ii,R a t i o n C u t RationCutRationCut就对应于h i T L h i h_{i}^{T}Lh_{i}h
    5 q, Q; t, U' l% O, z" H! Di+ b' G+ M, r' [- |5 v( T5 x. p  `/ E
    T
    8 {4 |% X! J3 A. e3 Q# \
    0 t( X) o  p" R+ Y2 |3 }; M$ g Lh
    # k8 X' e3 k- n( y1 u- P6 h$ `! Ci
    1 @7 K  w; S- R: ^
    7 u3 ~7 K8 d0 h/ z; i' A0 | ,那么对于k kk个子图2 y8 a% D- i( P* H( J2 q+ e

    " H7 F! B. a' X. g4 I5 d4 WN 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)' K7 Y% l/ T' K: X8 N
    NCut(A , h2 X0 ~& Z* O7 i: M* f) y
    1
    ; ^3 d! c9 ]/ i0 y, O( V- e# F& z. Y# _) i: }; F, j6 V
    ,A
    : y/ k; D9 r4 V( F- H2 e9 Y4 ?2+ z3 B: j* t" S9 Q

    ; @. j0 q2 k, p2 w/ b, P ,...,A
    , B! M, x. T( f6 lk
    7 m$ E+ ~( ~6 k$ h" z6 a9 j8 H8 Q, J0 N3 Q9 g7 \' j! x
    )=
    7 x  f& r* H* Y/ z) P  wi=1
    . O( T' ]7 c* t5 E% X" Y; x# x5 _; U9 s9 o7 b
    k; b2 ]0 W# y+ A/ b4 p

    : M$ l$ ?- }2 Z) b- e- x h
    / Z/ q6 i$ |; W) p2 v2 yi, h* e- m3 K. i6 C
    T
    5 c) e. g% K& L  X6 M2 N+ q% n; N9 O  M! p3 U6 [. |$ J5 M) N
    Lh
    * S# ]2 g, a$ _8 U: z- C" Ji/ ?7 q5 k5 z/ I  h' {
    ' X8 p8 Z) q' U8 l8 o
    =
    3 g8 W% l# I3 J5 k6 Z8 M* u" T8 g  Ci=18 c( f; G1 _/ s. ~* K. D" q

    / p: v% \+ T$ k, G/ M3 Bk) w4 A- C/ \4 H- V9 G# ^
    ' _* O0 q6 W3 d. i% k9 Y0 }+ E! Y2 U6 w
    (H
    , P0 _0 p* e5 L: jT3 K; A9 ?6 f* `- S2 v- l# u
    LH)
    8 H9 T5 U: n3 k5 m( q+ @ii
    ; @3 J# P4 @+ h/ p: _. Z9 U
    % s# U( I2 }* ]; S# v- ~; Q =tr(H 7 N1 y& ^. @0 C9 V! }
    T, d. x& q% P7 V( n4 d6 G
    LH); f  d6 b* u# y7 V4 h1 t

    2 U  S: w/ N' g0 j+ G7 @& m但此时H T H ≠ I H^{T}H \not=IH
    ) c+ u* o& ^1 ~4 |$ MT
    5 i+ {/ X( @- ]6 N$ u8 e0 L1 U H, b/ k* N! K* A
    ( D3 x/ M% a: b  @6 ^1 v
    =I,而是H T D H = I H^{T}DH =IH
    4 m% S) d6 ]7 I/ j' o! DT9 A4 G4 @& Z+ E0 c
    DH=I
    6 i+ ?% A& m# u# e& m2 {3 v; \- F) }: e0 ^* z- g
    这是因为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
    # m9 W, P: S$ D* b0 A7 Oi
    # J/ U- N$ T- T! A5 V7 J! |: WT3 d/ Y5 C1 N, @/ w

    $ A+ C* h/ B; F Dh
    . S# K, |0 ?; s% e! g6 a! O& f0 Vi4 a$ j: W, ^- W; Z2 @
    6 x) m( A  Y7 U
    =
      `! O0 Q. i. k# Ij=1
    ( C# e' Z: Z8 V7 I! D$ v) H( f$ i/ @( Z& t" [
    n
    % F" h, ]! q- k; k
    4 J9 T1 p* J- \9 _4 t h
    3 Y! Z3 d& ~' Z* F* \0 V( H* ?, B) ~ij
    ; c: P, o+ M5 u0 y2
      q8 p1 U( L$ g8 S! d
      n) X% z+ b7 Z4 ^5 r$ v d
    ! ]" |  @( r3 Sj# E  a$ E4 f* Z( Q3 b; J% z: x
    ' z# D- p* u* s0 J9 e
    =
    ( k; N8 e: k, uvol(A 5 T' ^9 x! ]0 U$ L  F8 C! Z
    i: W" ^1 S5 W" g, o- R

      Z6 T) G" {, t; o )1 @" h2 X+ f0 Y  F/ Q$ g- P
    1
    6 r3 j2 l' j# c5 J
    ( _' c, V* k6 f9 }
    6 X+ J4 E4 m6 q3 m2 Q- qj∈A
    0 O+ e* T8 n3 W1 Z" o: f3 Ci
    1 ^0 G8 ?7 I+ S- F* b; ~% d. O# b5 O. [: g' ~: `
    ' m" ^* U$ T" W' D$ g4 d$ `

    - i' ]1 u5 W9 F; g) o8 y9 Z$ h
    , C4 [4 v. S( t4 Y) Y d & U: e$ a2 G1 q* e0 J6 K# U
    j. g- X/ a& t8 g/ B" O9 u  L
    ; a2 `# }0 f1 S& J. A8 d* h
    =
    6 b5 Y3 ?/ G4 k* n7 e% \vol(A & W0 s1 T% K( T
    i
    / k1 G7 ~* i/ J9 S5 K* \' \0 O2 W/ U: N  T1 u: ]2 N
    )
    ' Z) T+ j  M1 C16 q! l1 V# m7 p% x6 g
    / v& u. V; s7 Q$ z" Y1 h
    vol(A
    0 @& ~% N( v1 V& \/ q+ A# d) Li
    5 W: b. r( {8 s% [7 h* y
    * Z5 S5 b1 ?2 L( \) {, _ )=15 g1 H  w0 e' U3 T3 O! [5 E/ C, ~
    因此,此时切图优化目标为' c; q6 a1 I) c: g  _2 i: f

    4 `# Q8 @. E& ca 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
    1 V# e. k& o4 R6 oH( |( V7 X) e1 i
    argmin
    4 Q& u% Y/ a! E  j0 l) Y* h) ]! ]" o
    5 x, \6 `$ ]8 |' V* P2 v. O; C) `3 c1 T' v. R, j# G

    0 `: p% m# a; k9 n tr(H
    2 ~6 F- c8 Z- h9 TT0 F+ |3 Z+ p" Q2 v9 q/ I
    LH)s.t.H 5 a# o  G* p1 X8 n. c2 \) X2 G$ C
    T) U- a0 w, V/ g; |/ i
    DH=I/ e/ f2 l: F2 M8 i& ^) _

    9 c3 o! X* t! V! I0 G3 |: |但是现在矩阵H HH中的指示向量h hh并不是标准正交基,所以需要对H HH做一定转换。令H = D − 1 2 F H=D^{-\frac{1}{2}}FH=D
    & t) b& t0 k, ]6 j$ a' ]: ~% j  z' L. e+ L/ T
    2, s% c8 e! Y3 ?9 x- p
    13 e6 _3 f6 }$ T( V* l! q4 U

    6 h2 b. h( O, e- D6 j6 }& c3 R" R- p
    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 # C& k" _# ]4 l3 y
    T/ [. ?7 r$ N/ e
    LH=F 8 \. G+ ]( ?: E
    T7 Z1 x5 _9 B3 q! B7 X
    D
    / Z4 \) J, c, B
    6 w0 m4 e0 N1 F! W( a# x* w6 ]& ^$ h2! I) @8 k% S) Y/ G$ b
    1
    ; l+ G  e- B; Z; ?2 F* h  C1 {, K& ]) T9 o+ L, w; g9 {
    : {' d# ?1 _2 i
    LD
    6 `4 l2 ?& w3 ^0 h3 r2 D
    4 x( C/ W9 g& H% j$ }+ W+ n2
    ! Z3 K& I! Z: ^- \+ p3 H1
    , y3 }% Z5 s1 O. ^: b* ]- |6 Q
      \! Z* m! o) I0 b0 ~5 Y( U( H& z: h
    F、H T D H = F T F = I H^{T}DH=F^{T}F=IH
    9 T5 k0 y: q" ]  oT# W- X/ }' D5 u/ {
    DH=F ) ?, w1 o4 g7 z* n7 ^
    T
    9 L. O7 u. Y' f; Y F=I,于是优化目标变更为
    / Y7 A7 ?/ |# L7 o5 {a 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) r% [4 f5 |( a6 n$ t
    F
      U. [* a: {- H4 c. @6 Z! {argmin
    0 t9 j, ?/ c( Q7 ~7 J! p1 f- V& p, F+ e! _8 S! k, ?
    ; j2 {4 C# H* N! @, n. _8 V
    , o5 L  ?0 h8 T" @$ u
    tr(F " y3 [9 N: F0 s
    T4 ^1 u) i1 J. m+ {
    D
    , v5 g( y4 i3 G$ x
    ; S  s8 ~. u* V) W8 W% K7 e22 u2 I# w7 {0 e& P+ R( L
    1
    & z" k' Z, ~, W' g- K4 r9 r9 U6 Y2 F7 s3 Q% a/ h# o
    7 C% [. @( {. {1 ?
    LD
    , p# `& T0 o/ |) U, p8 t
    6 ~0 ?  \4 ~% r$ k2
    0 l  ^$ q7 i( V0 R5 g% I11 {2 S8 h. ]1 v& ?  u; z
    3 d" b3 B/ r# Z( D7 H

    ( c  J# Y9 \2 G  J6 t+ n4 \ F)s.t.F - t9 G# g4 E. B4 u; o) t8 T, A
    T" Z8 N( x: [5 y+ r7 H! w" U
    F=I
    ; y$ _+ Q1 ^5 s2 I" J" O& Q
    ; i6 O/ \) q% C5 p! W$ {9 \现在,和比例割一样,通过找到D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D 6 A- ]* P# e! P( d9 M0 _) Q
    + c* I0 P" }2 W( X: c4 J1 Q! l
    2
    6 x1 z' K8 T& n* r6 l: z* s11 U' i, F0 M# T! h( [3 b4 w& X

    8 D& g. s- U. S2 [- n. G& I; g6 u- K/ ]" h7 C4 F
    LD
    . C0 }0 K% X: I
    6 `- n5 |' d, t& Q; M0 h2. u: w4 G/ }, D9 r2 d! {
    1
    " W. T% D( G# `6 U0 S# M5 [; c7 }" e" _6 N" g) }# ~

    0 v% p$ O6 Q4 j4 H, y (就是之前的L LL)的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特征向量组成一个n nn×k kk维矩阵,也即F FF,最后对F FF进行传统聚类7 p7 O. Y2 B* p. `: W- g+ c
    ' D. ~, ^% t* i$ M, D9 v# E# a! x
    一般来说,D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
    0 u4 H: X6 Q1 r) x, ~7 H
    6 M" i) n8 C2 X! c" Y9 U4 Y9 M1 l24 w  O  F/ _7 O& p1 T* h
    1$ R/ d, L+ h* c3 U% u) T

    ! I. l" {, r% M! l) f! T3 X% s9 B0 C$ \6 j8 C
    LD
    : d- L' b; o# U8 k& K. x1 I
    ' w& C' ~6 W+ }# F4 n+ B$ O* y2
    ( E& x" {: z1 y( [3 y1
    . _) d+ N% k# G5 o% b  E
    6 y6 F2 i5 g/ K: e* Z: i/ B0 a* E  V! ?, T; ^
    相当于对L LL做了一次标准化,也即L i j d i ∗ d j \frac{L_{ij}}{\sqrt{d_{i}*d_{j}}}
    ( Y3 p. t) r% N2 q+ Wd   J5 V. d% A% T
    i* C: P5 p9 j" Y9 P! X7 {, K# z

    9 p8 ?4 \3 k( S  ~1 M; Y; f7 \ ∗d
    # @8 |2 N5 P! D: Xj
    $ K! n7 n0 X) I( [' F) {
    7 a+ P4 b& x" r: m8 w& r6 g* O! p+ W6 K+ ]( `
    / d! `. \  i+ |/ K
    ' Q2 B& |1 J/ K$ F1 \  e
    L
    8 @$ e, U) I& A# M7 [ij: T$ j- M, N0 q. B  f

    5 a6 i4 X  U2 h( g- B5 l$ J( ]9 L% E, H% \# x- c2 e8 m2 l3 u
    5 s$ b0 a9 v+ {1 e, J& X% x& f6 E

    4 F' _0 T. l. ?2 \6 C( V/ @二:谱聚类算法流程; }2 E. [/ w3 m1 N7 ~
    给定数据集D = { x 1 , x 2 , . . . , x n } D=\{x_{1}, x_{2}, ... , x_{n}\}D={x 2 O; P' n1 y  ^& {4 E9 a
    1+ c( V2 u. y. a. U# x: i
    ' x; @( R% S( z$ h, [
    ,x % y8 `5 ]$ j' i8 [
    21 n) Q: s/ P1 p0 @
    / V& q3 V6 Z# h# l0 |
    ,...,x 5 v( M% @' e2 c7 L
    n2 L: g- g+ n3 K3 v% B: t. K
    9 H) _4 E" G8 q% l5 m
    }7 E- b9 ^, k- p0 X$ j
    . t1 s- \' }# H$ i9 q' g
    根据输入的相似矩阵生成方式(一般为高斯核函数)构建相似矩阵S SS(AffinityMatrix)
    1 P: |) z( x9 Y, [- b+ [6 J根据相似矩阵S SS构建邻接矩阵W WW,再构建度矩阵D DD
    ) H/ i+ C9 @: B8 V) r8 Y& `- V计算拉普拉斯矩阵L = D − W L=D-WL=D−W
    5 f9 T4 d5 e/ J6 ~得到标准化后的拉普拉斯矩阵D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
    ! v" g- a& Y0 C
    " [; y  o# K" w2
    & F+ I# c7 ]5 ~3 J# k1
    5 c6 L, E, ^9 ]8 G
      V; {* @6 U6 I1 I  o& h
    & `* o1 x# A9 R LD
    1 H# H3 b% O2 U' H' I3 @6 o, Z! P5 x6 h2 q* o+ n# I
    2# m& L2 e  [4 k) t1 H
    1+ a" G$ `6 }; p' U
    4 e1 H' E. K6 @% r* N, ^
    + u( D4 b4 v8 }0 G( e

    + H" Q9 y+ A! a4 u- ?计算D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D 5 v3 a" q' j  b' U% _8 n/ r: u, y

    * z& a5 D5 e/ n0 \2
    5 D: p9 T) ]8 T( a  |1
    9 W) t3 b# {( M* k+ v  I. F, n: D; m8 j3 }
    9 Q, z- M/ }6 y# z! a5 A
    LD # ~. L8 v0 K  J

    % U# u9 w. C' o1 Q# W7 Q" X2+ w# K' n$ ^7 R" j4 s2 L  M0 r
    1, ?6 ~  s6 l# Q

    1 i3 F9 T) x' w  i  G5 @5 z" J0 r, ~" z3 p
    最小的k kk个特征值对应的特征向量f ff
    4 Y3 c2 a, U& l将特征向量f ff组成矩阵并按行标准化,最终组成n nn×k kk维的特征矩阵F FF
    4 v2 e- E+ R( b. H# ZF FF中每一行作为一个k kk维的样本,共n nn个样本,采用某种聚类方法进行聚类,假设聚类维数为k 、 k^{、}k
    ; U# _6 x' I6 x0 h' ]7 M- L( d) \- P4 P: r5 x/ `( }) [" S4 o$ S

    9 |3 A! U8 `: Z2 I* Z得到簇划分C( c 1 , c 2 , . . . , c k 、 ) (c_{1}, c_{2}, ... , c_{k^{、}})(c
      t: b# a' Q- g) ?3 Q$ J: \1$ Y: C* M8 m! r1 R

    6 @8 c9 n/ s  s) t ,c
    9 |8 j# A, J0 z  j: ^1 s2
    : ~! c! N' ^0 K5 M* J7 Z8 c4 x/ ]' B( E) i
    ,...,c
    , F: q6 \) c0 O8 w6 @2 @k ' u, F* c) d6 d0 \. V
    $ D- |( E8 ?3 G4 X% N; \! \
    7 l7 C. w6 G* e4 C7 X0 v; @" W6 I
    % T2 H0 U  o# l
    ), A$ w+ J5 H' j6 N* q0 B3 ~
    三:Python实现
    : j5 _7 ]! {$ |- s4 q& Eimport matplotlib.pyplot as plt2 D6 \# X& U% s( F1 o
    import numpy as np  a- h' q$ D# `) X' E; A7 p
    import pandas as pd
    7 h9 Q7 n7 S( a& m2 b% d- L2 y6 \/ Lfrom sklearn.cluster import KMeans
    " V* C6 U& k4 E/ [4 j# p- j' bfrom sklearn.metrics.pairwise import rbf_kernel8 i& [% `) t" r3 n+ e: n
    from sklearn.datasets import make_blobs
    , S9 v" T: D5 Q" o& r3 ofrom sklearn.preprocessing import normalize- }+ y9 ]; Q9 k4 e) j8 e/ R+ Z; [

    5 J! l; I% f3 A3 ]+ e" ~% kdef get_affinity_matrix(data_set):
      s6 d# W' h' G6 K: }4 c* @    #  利用高斯核函数计算相似矩阵(全连接)# a- j# \5 n, D
        rbf = rbf_kernel(data_set)
    . V! y4 Z6 w! Q    for i in range(len(rbf)):' p7 j8 i8 U9 Y" V2 [  ?
            rbf[i, i] = 0  `9 Z( j* F! e. D8 u
        return rbf
    / x& X' i, i8 N5 a( v
    5 G8 B) ?+ x+ @  B8 `
    * V7 t5 |# O1 C: edef distance(x1, x2):/ d2 d1 H) g( W" t$ h
        """
    ) ?9 g+ F( Z8 F8 r8 b2 a% b1 x6 x    获得两个样本点之间的距离8 H/ h' {4 ?( }. U2 }, l- M
        :param x1: 样本点1# w: x: @" N- ?6 I2 i  H- ^
        :param x2: 样本点2) e3 @, S# m( A* q) |; l5 b( ^" m
        :return:. s; E, s5 k$ m9 W/ y3 Y( Y7 L# ?
        """
    , y/ `% i. v. z- R4 L    dist = np.sqrt(np.power(x1-x2,2).sum())1 @. L, E% X  p' s$ y- f4 p" {
        return dist
    3 Y, ?( Q* s" }1 [* K) ]( k0 N6 K& Z1 a) ]3 k, g
    def get_dist_matrix(data):
    5 Q3 c1 j+ M( j1 t    """* U4 I# M/ _4 R) k$ \
        获取距离矩阵
    & B) E" t  v" N    :param data: 样本集合) R( J* X1 Q# ?$ T9 G; Y) o
        :return: 距离矩阵
      r, Y: W" |4 m" p2 c8 B    """% Q$ Q' S; h: }, X9 p) j
        n = len(data)  #样本总数1 M' C1 ]8 ~) B+ t# ~* x: h  _+ z
        dist_matrix = np.zeros((n, n)) # 初始化邻接矩阵为n×n的全0矩阵/ I. z3 \( O& T: p! a, E! {% W6 a
        for i in range(n):
    % Z+ Y8 ]% f' A- X1 D6 D& n        for j in range(i+1, n):
    # R3 R4 L+ Z" j            dist_matrix[j] = dist_matrix[j] = distance(data, data[j])
    ; m6 j" H+ K+ t2 K    return dist_matrix
    8 O$ X5 r9 i* z( J9 @$ D1 ~% u, [% a) y
    def get_W(data, k):
    # O; Y$ X" a% N% v4 V  z    # 获取邻接矩阵(K邻近法)0 e+ f, M3 E0 i, T/ b0 r9 B
        n = len(data)) R9 ?0 [5 o6 l/ {" H/ w3 Z( o
        dist_matrix = get_dist_matrix(data)# s$ R8 U3 z' M8 b
        W = np.zeros((n, n))
    1 A- d# p$ Q# X2 H; [    for idx, item in enumerate(dist_matrix):3 h& _4 b; }' X. @, c8 `( _
            idx_array = np.argsort(item)  # 每一行距离列表进行排序,得到对应的索引列表
    5 ]% O, a5 E+ W8 O! x8 j: W        W[idx][idx_array[1:k+1]] = 1
    9 i: q0 D" I, t- f, {9 w9 `    transpW =np.transpose(W)
    * v+ a# C6 u" a1 U3 b4 u" u    return (W+transpW)/2" _' g7 T' a0 D7 c9 Y. J( A( N4 d, P6 H
    6 E9 Z5 L, Y. i% L
    def spectral_clustering(data_set, k):3 G$ m$ n$ {- z' @" H- h' C
        # 利用相似矩阵S得到邻接矩阵W
    ( u. T' D2 [7 l0 ], @9 D    W = get_affinity_matrix(data_set)  #高斯核函数(全连接法)
      C6 E# U) R5 b! q    #  W = get_W(data_set, k)  # K邻近法
    1 P$ u9 i$ H* H* z# @- d( Y7 p/ c  K; v1 S$ K2 m" L+ ?
        # 计算度矩阵D,并得到矩阵D的1/2次方的逆矩阵(便于计算拉普拉斯矩阵)
    + f% d! F& \9 L: B    D_inv = np.diag(np.power(np.sum(W, axis=1), -0.5))/ R3 R4 b% N5 l2 e
    " Q0 B" @; \0 F. q6 @
        # 计算拉普拉斯矩阵L=D-W' Y; O# M( {1 Z0 L; ~8 D: l2 ~
        # 标准化拉普拉斯矩阵l = D_inv*L*D_inv=I-D_inv*W*D_inv/ {/ `( W" X: y
        L = np.eye(len(data_set)) - np.dot(np.dot(D_inv, W), D_inv)& l- T0 Q! e* b, m7 T! p

      N! s! G/ X/ Q8 N  P6 b    # 得到特征值和特征向量
      T0 h  t0 D  [: b4 ^) c    eigvals, eigvecs = np.linalg.eig(L)
    : ]$ j6 j% F2 `6 u. s* U7 u; g
    8 a  m# i8 R! D9 S% D7 A$ d    # 找到前k个最小的特征值(索引)
    # @4 H! P9 B% `& A    k_smallest_eigvals_index = np.argsort(eigvals)[:k]
    - l; w) v& e; J. K- i. ]) h/ U4 Z) c. t% Y1 V6 `% K4 q
        # 取出这k小特征值对应的特征向量,并正则化
    7 T4 P: O) }4 ~; G* T, N0 \    k_smallest_eigvecs = normalize(eigvecs[:, k_smallest_eigvals_index])
    - ?4 r& }% G+ [
    9 M' ?1 @. U0 P& a' m5 i    # 使用K_Means聚类
    : k) ^) R3 W1 s5 ?) t) a& ~    return KMeans(n_clusters=k).fit_predict(k_smallest_eigvecs)0 \6 ?; X# Q) m! t

    " G5 N. X9 j7 a8 A% B- K' D
    $ Z1 o% D. U( b$ N. j* x8 draw_data = pd.read_csv(r'E:\Postgraduate\Dataset\jain.csv', header=None)/ i$ Q3 M" ]8 f9 L8 f+ _9 N
    raw_data.columns = ['X', 'Y']
    + |- b( m& R( g1 v1 s, E7 Yx_axis = 'X'7 h8 C/ n' a. g: O* ]9 S
    y_axis = 'Y'% A9 i) R8 {7 o+ s5 q% v/ d$ p. f

    ( Q$ m% n/ |  Q$ I. `2 hexamples_num = raw_data.shape[0]
    ( L' p- y' e9 [% I7 r5 J% Ktrain_data = raw_data[[x_axis, y_axis]].values.reshape(examples_num, 2); k0 G- j3 T5 X7 W0 O; ^

    * v2 N  [0 V8 y
    " q& h* ]% s( U: [! @min_vals = train_data.min(0)
    6 P6 L* Y# @; x$ Tmax_vals = train_data.max(0)$ p' P7 |  w8 g4 D# G- p% Y4 B' @
    ranges = max_vals - min_vals
    ( }# p. a) j- hnormal_data = np.zeros(np.shape(train_data))
    - `$ M) x, z7 d3 w; @! h+ h5 Z9 p7 ]nums = train_data.shape[0]
    2 b6 ?( M- A6 O+ L/ L0 ?normal_data = train_data - np.tile(min_vals, (nums, 1))
    : A& Z/ s2 C  v# V2 ~* R1 Znormal_data = normal_data / np.tile(ranges, (nums, 1))/ u1 }' B0 a* x* B

    % J8 f0 x/ Y' X$ h0 Glabels = spectral_clustering(normal_data, 2)0 m/ z5 d3 D+ j% z& `; M' L
    / G2 p8 \5 x8 r# E. L
    # 原数据
    ( d& f- Z& V- v( V9 x4 tfig, (ax0, ax1) = plt.subplots(ncols=2)
    2 k" H* \' p  jax0.scatter(normal_data[:, 0], normal_data[:, 1], c='black')
    ; K0 W& ^7 O* `2 R( [& B0 qax0.set_title('raw data')4 H: n' y# S1 I( s
    # 谱聚类结果
    / C  m( R5 h2 \5 y5 z0 I( H0 qax1.scatter(normal_data[:, 0], normal_data[:, 1], c=labels)/ g8 q5 A- V! T; e% o0 k
    ax1.set_title('Spectral Clustering'), M' e5 t1 y* B5 Q0 A1 K5 T
    1 \1 l& ]6 m, Y' o
    plt.show()% T+ W5 k' g1 {* a% f' r8 K
    ; ^8 e& q% V8 Z: |5 ^
    1
    ) C, l7 a( q) A+ v1 I  H! U27 ?1 y- H! t1 A! s1 F% b" a% R
    3
    7 v1 K& u" ]  e( k( j) ]7 \! f4) k7 j- i# g# C" P/ o3 J& ^8 Y$ N
    5
    6 H0 I% n+ T1 k% I6  r2 [0 {* G" a. B: U- K! B
    7) Z* Y4 n( M, N8 D( M. ?
    8
    ) j% u- J' G/ {9 ], [91 u4 J5 d6 q% I& W7 v8 X
    10, a4 N" N1 W" _% i
    11
    7 f( Q5 o; Q) W3 l121 y9 H( {. G$ R, x
    13' `7 K& g4 D' y+ S7 i2 s' I
    14
    + P: x5 j( Z) H/ u7 z15
    * t/ ?3 [7 Q9 j' ]165 I3 @; B$ Y6 e' B
    17
    " m# Z6 S, Q- }- X8 r5 f  j! A18
      ]5 ?, i/ `. [1 |19
    * r6 v+ Q& L( O  O! J20, g9 T; ]% w4 }- }
    21
    " @3 v6 A3 E8 |0 W7 E4 y2 B22  K# L3 l6 O" }' Q: Y
    23
      ?3 U* t! P& n' v$ F248 S1 V9 p; `7 H+ [( v" B
    25/ H% G0 s( y9 T1 e9 {0 P& [  k
    26
    % A- m" |% [" O279 v0 D4 d- F5 R8 s& S2 F6 F
    28
    $ h# \; e' d7 d+ i0 s296 Z8 o8 W6 c* f, W' I
    30
    ; i- a  X  E3 v* r. E$ K31
    . Z$ F* G. P; g( }  `2 _& E32
    ! t6 P( P* ^0 i# g& H" B338 u1 O( v; ]. B5 `3 I' y& F* w
    34
    * P% G; B6 E7 C) r0 h6 s358 j" h6 \, Y9 T3 m8 R0 y
    365 `9 p' i9 y. m3 q( Q0 \
    37
    9 r1 h7 G; @6 p38( e7 ^7 `; o. \1 ]! ?
    396 Q, J% `" u& s5 B9 C: j
    400 l, a' {! R5 j0 M6 K% f: Z8 U
    41! b! x0 R# K* w, N" T! g& m; s8 C
    427 E: ~. s- `! n2 E8 q& H1 y. \
    43, \8 W* i) K& M7 W( [4 b
    44
    ' W8 o5 K, q& _457 s; _+ ~8 Z  p: z3 K; s; I
    46
    , ]# l5 L1 G# V475 }% N( D4 q$ H) ]3 u% K
    48
    ( I. n5 y& z8 T49, w7 l- v; B+ z0 v3 V
    50
    - _' f, g' @. u3 r% M0 x51* ?1 ]* Q+ T- T) y
    52' s0 i6 r- `; t$ ^5 l8 u
    53
    7 E9 M2 A5 H8 O7 N9 @! Y& y54$ H# D' c7 f5 d' ]+ v- v7 H
    55
    % D' A! Y! t7 T4 J7 Y% H56
    0 u) o0 w/ C7 C8 |; c" a57) F, |' V; Y1 U4 A, C( x( ^, B+ H
    58
    ! I  a3 T7 z* O  w$ `59
    0 w9 u" s; W: Q; E60
    ' s7 }. S* n/ B3 u8 E. |/ Q61
    ( k6 i9 g8 ^- S) u# L62
    9 b. g/ r2 T; K8 B. H$ [* P' y63
      B  M$ Z$ N% B" R  N64& d# a7 C/ b3 ]' @  i) q. I
    65
    5 j9 k' p: P$ U, I& U5 o( a. a66" s. M3 \" \9 p0 w
    67/ ~, Q9 P3 B* m* i) ~
    68' h0 \/ @. X, @/ j
    69
    6 r0 I# u- _+ o; O6 |8 A1 H) b2 _70
    3 J9 o5 B% S6 ]/ O. x712 a* a( Q5 x. L# u0 I9 v& I
    72  g/ ^! U. ^" e' [4 I! ]. n4 W
    73( L& j1 j" \+ D5 u
    74; v" u# y# y* \# h8 A: N+ v
    75
      |" u' p$ n5 O7 f) N761 `3 G( i) d7 v" v& u* f5 o, K: ?
    77
    % D% S" B# \( t/ u% a$ O78; V- M7 b3 U) m: M3 R! ]
    79
    ! w$ Y" V) g( r9 `* y3 g80
    / ?* Q* j: h8 u4 Z2 o3 k81
    + {0 A: U+ }0 m7 _' ?; Z- u+ i822 N* d' M/ q( o) R
    83' J" x2 j2 \0 `
    84% U9 J) Y9 H' H$ A( n
    85
    2 n5 l  b! c9 Y/ N& U860 F1 [7 d5 ]* E! [0 U" `. a
    87
    1 K) B% H8 y. u% z' a88' o# q$ E1 o( i
    89
    3 b2 X2 V7 b6 F90$ t# x2 ]: @' ]& i' b" O3 F% _* ?
    91
    , {  u5 K+ _5 G5 X( Z92
    % o7 ]6 G) g1 e' o938 z8 `1 k; `- g& r
    947 Q6 o8 l0 c/ w8 U+ F7 h5 V
    952 u4 ?3 I& d, R5 O; j3 |) d
    96
    - P# h& v2 f" M& b0 _97
    $ L7 f( B& z( L% @8 {$ `98
    ' S- b) q0 I, v2 o$ J: e99( m1 ]; u  p$ h- C& u2 i. z
    100  ?( e' G" R" A2 E
    101; e1 N! \9 N7 N# D" z# w( f
    102* i- ?  r# M. U( R+ k
    103' E  K  t' v8 E, r
    (高斯核函数)* q' D% ?! h5 {- m

    1 g5 V6 t9 ~( k( H& n5 |$ I$ e! p, z
    (K邻近法)
    . {3 e* S% Y1 g# B+ ~- b1 ?
    ' d- T; j; l/ v6 `& \9 v& w) k& V2 c0 g) k8 b4 x+ B$ C( j* @
    四:谱聚类算法优缺点
    : U, y& H( B! O) t4 t. |- ?* M. C% j(1)优点1 t: q- z0 q+ D+ ^! B
    谱聚类只需要数据之间的相似度矩阵,所以对于稀疏数据的聚类很有效8 S' m/ f- s6 s' E- Q3 h! D
    使用了降维,因此处理高纬数据聚类时复杂度要明显低于传统聚类算法
    & j$ e+ e: e; A! f" W1 c" j谱聚类算法建立在谱图理论基础上,与传统聚类算法相比,它具有能在任意形状的样本空间上聚类且收敛于全局最优解& n! ^' t/ o0 V4 U( j
    (2)缺点& p8 s$ @( Z$ y" h% J/ s! `
    如果最终聚类的维度非常高,则由于降维的幅度不够,导致算法的运行速度和最后效果都不是很好
    # z0 f/ Z) A# D( Y9 H( N聚类效果依赖于相似度矩阵,所以不同的相似度矩阵得到的最终聚类效果大不同相同: k: E+ @; I+ j1 V' v/ y7 f0 a+ l
    ————————————————
    % l" T  @8 P: D8 d, L% k& q  i版权声明:本文为CSDN博主「快乐江湖」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。$ g6 u. s0 S0 C  R
    原文链接:https://blog.csdn.net/qq_39183034/article/details/126747494+ ^! `4 a2 X* H
    6 C) w1 n  c" s% `/ p! X; e( a; P
    / o: `7 V7 b/ o+ e; c- i% Q
    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-8-24 04:59 , Processed in 0.426546 second(s), 51 queries .

    回顶部