QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3033|回复: 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
    【数据聚类】第八章第二节:谱聚类算法之切图聚类、算法流程及其实现
    : 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* J3 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* \; Z4 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

    & b% ?  b0 w+ H/ h' z) m: J因此,通过找到L LL的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特特征向量组成一个n nn×k kk维矩阵,也即H HH。一般需要对矩阵H HH按行做标准化,如下5 L" c3 O; j( S1 N# n

    5 [3 w& `( w& s" j6 ?. ^一般来说,k kk远小于n nn,也就说进行了降维
    & [: \& Y. i* A' ?+ w. Zh i j ∗ = h i j ( ∑ t = 1 k h i t 2 ) 1 2 h_{ij}^{*}=\frac{h_{ij}}{(\sum\limits_{t=1}^{k}h_{it}^2)^{\frac{1}{2}}}
    , j- w1 f( Y) ?' K% x/ Y+ v3 lh # ~$ L9 K4 B5 J2 ^; u* q+ w+ t
    ij; o( N  T. P, [

    ! L/ h6 T- o4 c4 x1 C' b. z2 h9 [: F, @: j; ?
    = 8 [* ~2 @+ F' E3 r$ u. W+ [  F
    (
    8 f3 R: v- T7 T) Q! \$ Z) kt=1
    & k# m/ Q, }$ P; D; p7 X) i- M; X3 ?4 r( G& N
    k) g' {9 i- D/ g& l/ E
    - {3 F/ t, a9 P  C$ b' W
    h
    # P( |" x9 _0 I3 B9 N9 Q1 }it
    6 e% i$ y) q1 d6 ^/ y( [" s2
    . n5 r/ \, r2 \1 k3 W8 i: W0 w; i/ j9 q4 I. u' g- D; K5 p% q0 R5 _  m
    ) $ S2 y$ c8 v$ D
    27 j, u. r3 g* D) {1 `
    1+ a% y: Z+ C# a7 _7 `
    & V) n5 n0 x5 W3 T1 g

    0 i. Y6 C5 X, M$ ]  [) |* h) F+ e6 w  u4 G# Y2 u. E( N, m3 z+ t9 f
    h
    3 {" k9 N8 s# Q  N6 ^. a  gij+ z  j( @" J7 \% y

    7 M: ?; X9 s: r
    + l- ~9 p4 C$ A( l5 R2 J: d2 v  U* ?/ T5 [! b

    3 F6 e0 a/ N- ]* P8 Y3 Q; `( T  L1 c' n2 z' V0 f, ?8 C( V% R7 T
    这里需要注意,降维后导致得到的指示向量h hh对应的H HH现在并不能完全指示各样本的归属,因此一般在得到n × k n×kn×k维的矩阵H HH后还需要对每一行进行一次传统的聚类,比如使用K-Means聚类: l' g! ?8 Z4 d# v3 |
      ^- b- G0 t1 J
    (2)规范割(常用)
    4 i6 W0 s& `1 @$ T+ W% I规范割和比例割类似,只是把比例割的分母∣ A i ∣ |A_{i}|∣A   ^  i, T! i/ G  c* c4 i
    i
    4 ]& U0 r) K; Q3 ^3 E0 E
    " i( B$ ?' x. Y. Y ∣换成了v o l ( A i ) vol(A_{i})vol(A 5 A- P# J: }7 i- U2 j
    i0 j" g& K! N- r1 T- ?7 ]

    & D; o/ ?( @4 f$ _ ),定义指示向量h i j h_{ij}h
    . p  \1 s+ i6 O3 {ij- G' [& j1 }* z6 f" ]: ]  |

    & d: c8 u/ X  I& B9 b 如下
    6 x3 a4 s$ u& K# w  `5 ]2 X# z% D9 t8 R
    h i j = { 0 , v i ∉ A j v o l ( A i ) , v i ∈ A j h_{ij}=
    2 f. z6 f  B& l" {{0,vi∉Ajvol(Ai)−−−−−−√,vi∈Aj8 r; }& E2 e6 h( |% c8 y# U
    {0,vi∉Ajvol(Ai),vi∈Aj& E0 }7 p3 K- d. N: n4 Z3 p
    h : p. J, j& u& Z* b% m
    ij' O: v* n3 k0 |3 y

    3 B- ?- w' M# H6 A! [ ={
    5 ]' X. U$ }. K; j4 k0,v
    % c2 t& o; E, ^- ]$ Y) oi
    % E, Z! }4 x6 B3 ?& {* p& |) e3 }' r! r7 p8 P+ o
    & ?) K: c& h9 T, f. A
    /9 D4 I6 R5 P: Y' r: g8 [2 d
    A
    ( z+ i3 E4 b& x' d: T. ^4 I) Kj9 E) @7 f( l+ p' d

    ; @0 E2 P" g9 H+ j& [2 U5 c! p# Z4 v: g+ E3 ~  D
    vol(A
    6 E/ o+ v( |0 \% s& g* D- ri# p$ A& S: j- q6 k

    6 y' k0 D, O# C7 \: B, m# M )7 L* W% v. W" I  ~
    2 d9 s$ y* e: ]  p  P$ a+ x
    ,v
    ( A5 O5 r2 L* q+ oi
    1 M  O0 t3 \" p4 Q( e4 X/ |
    % E& R; O* w' y1 r ∈A
    5 R$ |+ R- J: w# G2 b3 S1 sj
    : m3 m) u. v: J" X/ K% Z6 q% f, {" b
    5 i; `4 S" Q+ h+ K" l( i; y
    + t2 w  K1 T6 U" j' s- s. D; y  l/ O" G( G: }6 D

    1 G1 r% g7 M. W9 n) b& ]; }
    ( c0 {: R" e* e$ c  h/ q+ V  T# o于是,对于h i T L h i h_{i}^{T}Lh_{i}h
      ^) X  {# R! bi9 f, M5 N- z( e0 t
    T2 H9 O& k( l: S' L8 m" {

    9 r& P7 D2 i; H* p$ ?% F Lh
    0 t4 K. H( h3 u% w" J, i2 ri
    2 C5 T+ ^; h2 ]2 X2 @
    % C, H& L* r( K% L6 k ,根据拉普拉斯矩阵性质可知7 o1 `. T8 M3 C3 n4 h$ k: O$ j3 x. f
    / L, ^! m1 N6 e5 R$ i
    对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f
    ( ]2 o9 P; P+ ?+ E( k8 v9 y1
    2 U# d6 C- j. o+ E- j: L8 S" E6 p. Y; U$ v7 a1 b! l  V
    ,...,f   L" E% J! a# ]7 I( W& S, I, _  ^
    n4 N, x. {, J; H

    2 ?4 \" t5 X% `) m1 _7 m$ {# M0 @8 V )
    7 e: x7 i  x4 T% _T
    7 i' j# u5 Q/ N! g6 b- e# H4 p ∈R
    0 w" O  x# W! {2 N5 \/ vn
    ( W- Y+ x) X9 U, s5 S. | ,有f T L f = 1 2 ∑ i , j = 1 n w i j ( f i − f j ) 2 f^{T}Lf=\frac{1}{2}\sum\limits_{i,j=1}^{n}w_{ij}(f_{i}-f_{j})^{2}f 8 P% |( U( |2 O7 A2 R& f
    T& J) b& l, G& f% @
    Lf= , m7 a% Q2 V% b3 K
    2
    ) n0 H: q: x* h# e* H; p3 D& L1
    4 N$ Y4 Q8 \8 b/ b0 m- N& A3 f: Z/ |  h

    $ A5 R: ]  Y( p: E; ri,j=1# o6 a$ G/ I' X
    . @) ^# P* z  F4 \9 W  T0 v
    n# c  u0 }6 }" i6 j" P

    , |: P) r6 A, R5 o* \ w
    : f1 C+ l/ i/ w; q" gij  C3 j- M/ I, Y3 G/ h( L( h
    / [9 _7 y8 l' g9 O
    (f
    & X5 z+ t6 X' t* zi6 m2 |; U) b/ _! S( M8 Y* H, t4 n
    : I0 O+ I6 H1 M" W
    −f
      H. G' Q& l) N7 d$ _$ \j: |- R/ @+ E9 W4 r) F
    1 w- t4 A* E/ y. s" s9 d
    ) 4 T1 I5 _2 Z8 a7 ]) v1 }( @
    2
    5 [, d0 v# S/ x1 t  ?- A& x8 H) }% v: W! p( n& ~* [' s0 R1 ?0 y
    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})}3 a( y+ Z/ {/ {
    h
    $ q" }  m# F3 V" z, R$ Gi
    - b, ]8 \/ T; p- h/ f' |T8 a0 V5 R7 \/ U5 C' J& B
    ; B/ {2 B* q4 q% x, _
    Lh
    ; H: \+ K9 v7 y" }. [i& a* a. c$ F+ w3 j; K3 N; f* J
    2 H8 _/ s2 _: U$ n8 x! A
    =
    " q" q& v% c% y% ^3 |, w8 k( z2
    4 m, ]' E; [' ]2 G3 J$ R1
    ' F; f% m/ @8 l; H+ z6 @- c/ C9 ~! U+ A$ t2 j' p
    , p# n# O" F6 H% j) E! E. {# Q% i
    m=1
    9 N  N' M$ A! j9 y6 p, A) Z9 q
    4 }+ @5 S, K3 w- ^
    9 \. }, J+ Y+ G: Y0 g/ p% h& o* K  h6 R& k* r# W
    n=1+ z$ N, l% G# i+ h. V

    # E6 c. Y6 \7 x3 H+ t4 D/ ~2 x
    0 \) L$ U7 v- G3 [ w # g7 l4 h+ T" Y, m
    mn
    : K, D1 o0 a5 @5 k/ E# T3 L  f* J: d, s
    (h
    # {5 {8 i+ C) ?+ U; U( O2 P. x8 pim
    . |5 n& Y  B9 {, W" I
    " R7 G0 }" s# ~6 O  }- n0 G −h 5 ^" V' `# i5 Z# e; l; b" r8 Y- d- b
    in
    $ F7 B+ k# G7 p6 r5 J4 `8 S1 a! W7 u
    ) H1 W" c1 i! Q, [6 O. C# C6 _ ) ' h8 i( w6 y: `3 @# _) e2 [
    2
    & |* K* I- t# G = 7 Y+ f' {; a7 K8 `6 \( v9 y
    vol(A * Y  J$ T, R7 v- h5 n  N" ~( Z
    i
    7 X5 G+ M7 H( Z/ ]( w' |8 T% a8 k: e  g8 u3 Q/ \
    )
    & z( T/ c+ D2 a5 [cut(A ( s/ X9 ]# b( Q# H/ r' X$ Z1 p. i
    i$ @/ M/ H; ]% }% w# w& Z; Y! D# T
    4 [) k4 ]+ P; ~( E( O$ S
    , ; c. G6 u% v  @; P% b
    A; S3 t, K$ `# R6 Y* d% ~2 m1 Q- B
    ˉ
    / f& T, Y% F2 V& g# E, o+ E2 i8 t! V5 v
    i
    ; ]4 X) ]& I/ @0 @* E! |( O& n5 U% `/ T% r
    )- w, r  C+ E3 k0 r8 v+ X
    4 e7 o8 b5 E+ I4 H6 N$ I. b, |
    ( N. U4 M3 Y& i- u
    4 z9 Q2 l, N* V
    严格证明过程请看刘建平博客:链接
    0 z% J9 @# h$ X. E6 \可以看到,对于某一个子图i ii,R a t i o n C u t RationCutRationCut就对应于h i T L h i h_{i}^{T}Lh_{i}h 8 k( j- j* U' D5 @
    i! o6 O! N$ L8 r2 ^. ^7 @5 ]
    T9 z; u2 u0 S! A' d: m4 w
    " t- Y; Q* Q/ U% q& ^% ?4 Z
    Lh
    2 U# K$ \* T3 m& v; ~1 E* q5 Xi
    ) k! Z7 Z) ], x" f
    & y7 B7 D, z3 ~- C& ~$ _' ^ ,那么对于k kk个子图
    3 A2 R; G. U! O8 p$ R9 [: [  S" Z1 a; u( U* H+ F$ O
    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)% Y" p- N) w: c: ^
    NCut(A 5 l" z4 I/ J; `
    1
    / d, ~" I$ X- C& X& f; j) C6 z1 n0 Z1 @
    ,A + K# ~: j9 {! n, T, U
    26 @. k' @' \" f+ R5 ]
    8 {" a/ U9 @# ?+ }. O" M) O+ m  F. K
    ,...,A
    9 u9 Y; |+ D( x- [6 |2 y+ L8 M" @! Mk
    0 {5 ^: Z4 T+ c
    $ W+ O8 A) q: d  _3 [- V) D' c, q )=
    3 |9 q. b$ d$ x- g" \% Bi=1
    / {6 ?0 M. K& q7 j  h# Q9 Y
    - k9 c" ~6 _- qk! [- l7 p" [$ S$ p1 c5 O6 d% ^

    # H3 S  M* y) D( D2 d' ]: {& [3 ^9 A h + L! G8 N4 ]3 T. X
    i
    ' r  H$ w& a' h$ _" @* O2 UT
    / {  H4 O; c1 @$ a
    6 s" e/ B& [* D2 `9 C% k Lh ) w& u# K, x+ l! W2 |7 U
    i2 y+ o/ a, g# t- w; b; o
    5 Q8 U: D/ w, u8 q
    = # s# f$ |" ~& G: U: N
    i=1
    3 W/ t; [! `* A$ m- K# D1 x0 T! l/ X! _5 M% |& V
    k
    ) O1 i3 r& U6 j8 P+ A: n3 d& s4 @  N
    (H
    + B# r# o1 K4 {5 UT
    8 @3 \" l$ Q& K2 T; l8 k0 ] LH)
    , E; s+ a2 f1 q. V* w0 O! Fii9 z* J* ]' v2 }8 r$ R
    ! Q6 d. k$ B4 V7 o/ B. C
    =tr(H ! K; R1 l5 Q# B9 n' {5 \) i, o
    T
    $ r; p- r* y8 Y" V  L) S LH)( q2 ?- F- J" T. [- k
    2 J5 Z( c" x, z& h" e& B7 L# T" E
    但此时H T H ≠ I H^{T}H \not=IH ) c1 k, J: S, s! I* L2 T5 E8 W
    T0 e5 n4 C0 m$ m6 j5 E; l  z
    H
    1 J4 t0 F, I6 Q3 h& T- z9 ^( L- d
    4 G0 E8 M, V, I=I,而是H T D H = I H^{T}DH =IH - w2 R$ ]/ H) `6 R3 ]
    T9 ]9 P8 Y( G$ k% \" Z% u7 @
    DH=I
      J( W, Z% J  j  _* ~6 J! T' u
    : |# m# k$ ]! @* K$ H- J这是因为h i T D h i = ∑ j = 1 n h i j 2 d j = 1 v o l ( A i ) ∑ j ∈ A i d j = 1 v o l ( A i ) v o l ( A i ) = 1 h_{i}^{T}Dh_{i}=\sum\limits_{j=1}^{n}h_{ij}^{2}d_{j}=\frac{1}{vol(A_{i})}\sum\limits_{j\in A_{i}}d_{j}=\frac{1}{vol(A_{i})}vol(A_{i})=1h 2 `# O4 a8 H" X# d
    i3 X4 S2 ]8 q3 f+ k1 O5 @
    T
    : y  V7 ~8 L+ |6 s# O
    / Y3 j5 Z: I- e: S' A Dh 8 H) w& t. h% V
    i3 f  ~" p2 X1 ?# O( t) q- w
    ; _+ h" g/ e9 F/ ~6 y
    =
    - A9 Z! R* F, h! Yj=1# {; V) G9 q3 t

    & ~9 r. n* L* a' g5 hn" c: r/ E$ \2 {6 k" g

    ; Y3 {2 B: _6 L( _  y h
    $ [' a* f2 J( L. m- B, n0 ^; ]ij
    1 E) p- N$ x1 Y9 U, \2
    4 P3 u  s; j* q0 i8 l
    ! G/ T2 l- D* k7 n5 [ d . O+ _7 m  D0 s6 R" M' D  @: h) Y
    j
    ' y4 k3 f5 r5 @3 g0 X% B' B' C$ b% O3 J) c, R: f
    = 3 ?$ e" ^, a# l! r, x- ~4 P
    vol(A " z- ~8 }+ @2 g+ p5 u$ y. I
    i
    3 f& B5 a! P, ~" ]! z, G9 v5 H1 w& N
    )
    2 B1 d' p: |) I1 H+ K# D: R1
    ( \" M2 O! z+ H9 m9 i% c  E( j. F. ]
    0 [- a0 {0 B5 g; q7 s. G. [
    j∈A 4 {! a1 e; i0 _
    i
    ) P2 K! o0 e( P1 D  r& y0 j  h8 Q  s. k# z

    ; F+ M& {+ i: |2 A4 I) W6 _; v% [+ L3 [0 m5 G* P( W! Z( q
    : {- N% U$ v# A; F4 V
    d
    , b8 b5 {. d4 A, x1 tj1 Z9 `& k" G% V& M3 f% u1 T" k' l
    ' I( X! k' S& O6 |: ?2 ]# z4 R
    = " `! V  ^* }* _- {( }
    vol(A ' C( m8 E& s# y6 r7 i
    i
    - ~: S# z% ?  |) ^) n( A" ]3 l& s% I' [; v
    )
    + E& K! u& m9 y+ b* @14 T' U- g; W2 X; N, \
    % d9 o$ n0 e% H+ [( A4 Q) ^% e
    vol(A ) Z/ E4 r; W9 N* i8 D& J& d
    i& A7 f5 F' G7 O: a# a$ F; C$ M) G) s' Z
    4 q/ ]  t1 Z% s5 n
    )=1, y5 e% y) I- X& }: j) C
    因此,此时切图优化目标为4 t% a! w/ r" X
    7 K, O# y/ V6 V  e/ h! n
    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# |3 w* y5 K' ~, y. `
    H; E& g' U. x8 [- {; E
    argmin
    3 r6 I+ Z/ V* t0 n9 g4 D! U3 y- ~; T% X6 v  Z. z
      |" s2 @! A8 t

    1 T, U( T8 M7 u1 R tr(H
    : y% w- W9 @/ \6 `T
    # ]5 w1 ^) ~, K2 L/ H9 ?/ V; \ LH)s.t.H # v6 c3 m$ Z7 r: E: j0 l' {: l
    T' _/ z6 P2 o7 u( b  b. l* n
    DH=I9 @( R/ j, u1 b' t* ~5 J; r5 Z  d% c
    ( Z6 ]: [# S. ^5 O: A+ x
    但是现在矩阵H HH中的指示向量h hh并不是标准正交基,所以需要对H HH做一定转换。令H = D − 1 2 F H=D^{-\frac{1}{2}}FH=D
    4 Z) E. R% @* p& _1 \" V, l; `, j6 ]: Q; j& [- v6 E( J! b  y
    2
      C/ {& x, J1 a9 E1
    2 @, L' ]3 c' J. S( t$ y2 D4 w( W" {% P0 N+ l9 j
      D" R, h; \: s
    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 & R( Q4 M3 X2 ?; {7 t) t& B3 L
    T
      J' A/ u% ^/ s9 F5 ` LH=F
    9 a2 t2 e# p% ZT" `# w2 u/ }  g  }$ V: E
    D . Z1 [9 f' Y" k2 w+ z
    & }5 ~) D& j2 [& Q; M
    2# X% |: T& f5 G$ E' d; @
    11 a) M0 b/ S& Q9 \

    & ]5 b$ O) k/ r- I+ p# p) j
    & g" `+ N. J' X5 K& \1 o8 B LD ! k: \' s, C5 H% k( g0 G

    * f( @" N8 Y3 l2 [2 W2  b& b9 j' b% g$ {( x9 J* e
    1$ U# w; ^0 f7 l' c
    0 V* h3 O; W$ ^: T; R  h

    5 k% ?4 A5 L0 Q* ^7 K" F F、H T D H = F T F = I H^{T}DH=F^{T}F=IH
    ! m' [4 i' Z9 Y* M% Y* `. j% T7 vT
    % K8 B' N6 |, u" s DH=F   t. P9 J# ~& V! p
    T
    6 _% Y2 K8 n+ [8 f4 H2 @5 e7 B F=I,于是优化目标变更为! \5 a" P9 w$ A; Q% `8 W; ^# q$ i
    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+ H1 G9 }3 M7 ]
    F
    3 D3 M6 X3 ?! q5 ]$ X% U5 Dargmin: U! |/ h) U5 \, i0 ~- o' j

    2 j$ V% b; A+ }
    ( n0 q, g) `/ O, {4 d
    ( g7 H  D! w$ Y4 Y% L tr(F
    : z* F7 o5 d1 N' }& F' {T
    * w; q2 v5 O5 H% ~ D
    ' G* b/ r# T* b, v. [  Y0 M/ }3 G: i7 A" Q" F, Z* b
    2" A4 O  Z  f+ B2 \5 z
    1
    : a' T8 v0 V: I' \' Q1 X: j
    / Q8 q+ ^% P/ u4 G( M; _  j
    $ K, |) _: T  R' q LD 4 C8 I% t9 f- `9 l$ J

    # }1 ?. e8 B1 j0 M1 a4 M& n: A! G2
    4 G9 p- r9 R  k0 D2 P4 n8 `& s2 ~1
    4 n4 c  B! H- N, Y
    # o3 U- a; S% k4 E% }* p2 u+ g8 a1 X4 o. y/ o) K
    F)s.t.F
    / Q3 X2 ?! d' K, I% o1 D8 n$ ?T6 _7 P; e9 k4 H# ^" i
    F=I7 Y0 t0 w$ R7 j) n. x. `6 k2 `. j
    / [! J7 P, t( J: a  ?  Q
    现在,和比例割一样,通过找到D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
    8 r$ _" d1 U- `2 H  p
    8 o& Z: m) y3 M9 c2
    ) |1 _+ [' |1 \7 @1
    * m1 i3 T7 T' L- L8 h0 G7 n5 H' p6 `9 s, R! M- j
    ; ?6 e$ x9 T& Y8 J& c
    LD
    1 H1 H3 Q5 b. h7 O* Y7 |8 s; g; i5 L9 w, ]0 \
    2
    2 c" Z0 v# N, i+ O1
    8 g3 n; j) Y/ W/ `
    + k+ n5 s$ B" p* g5 o7 C1 V; g
    7 I3 e- l8 o( l/ Y: e( L (就是之前的L LL)的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特征向量组成一个n nn×k kk维矩阵,也即F FF,最后对F FF进行传统聚类
    1 s0 Y8 y7 G0 y8 t' Y( S0 f% x! `, D! B0 x% c
    一般来说,D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D # s  d0 v( O% t4 C9 s% W

    2 c/ v7 ]) c; S- `1 p6 [6 w- z/ e2" @- M& c( Y# n0 _' B: G
    11 ]& p% x* U- t( t" V# o% l
    ; m% Z* T" k9 @! @: b
    / c  p& d, K+ V/ T3 r
    LD $ D& S, m" b; y0 j& j) _

    6 |. p" [4 {6 r# z# [# S2
    / O5 X& Q$ W7 R! e$ \1  g' O4 i2 Q& r0 S( n- L. U# e/ d; `
    0 x4 T  W) C" H# T' V7 e5 q
    5 k0 p; c; I3 [7 c! L
    相当于对L LL做了一次标准化,也即L i j d i ∗ d j \frac{L_{ij}}{\sqrt{d_{i}*d_{j}}} 0 ^8 G0 q' U4 Z" p/ s
    d ; d# r# a  F2 \
    i# f7 m" \. `* a  i& F3 ]
    & B  z  U. R  y8 Z8 ?8 l
    ∗d
    9 I: ]' l7 a, P. k9 x* g6 Fj# G) O4 m; |/ J/ `
    , X9 l! C' M+ \

    $ s  j8 R4 _5 {/ ?% u# e6 A+ o3 C
    # K$ `' L7 C3 a$ }! K9 i) r& \0 B+ S: y$ v9 |0 y
    L
    . [- Z) Z0 Q5 y4 |5 j4 hij$ \5 T5 ?2 X+ e6 M7 J7 }

    5 f, F' i# `: h3 ?6 @( S7 c
      Q% j, X7 E- o0 u' |0 u8 _& b- l6 U
    7 i/ J* E0 n: k  N& X2 b% }
    二:谱聚类算法流程& @' p& B; R  x3 o3 a
    给定数据集D = { x 1 , x 2 , . . . , x n } D=\{x_{1}, x_{2}, ... , x_{n}\}D={x 9 u( z' y# n5 f8 k
    1
    / r/ P( }4 Q5 u3 G. _' S+ o% L+ s7 U  e, I9 K
    ,x . T4 G$ W. z5 J+ g9 b
    2
    * u2 F3 a! B4 t. ]" t% ]- g2 [- X, u+ }9 c% Y: U$ K6 Q2 i
    ,...,x
    * T# T/ v1 s* {) jn
    ' G5 `7 z, u5 G! e& ?: e% _3 `- \3 i: O& Z
    }
    1 k. `: L7 l+ }0 I* A6 h: ]2 g& y$ h: z. w, H, T
    根据输入的相似矩阵生成方式(一般为高斯核函数)构建相似矩阵S SS(AffinityMatrix)
    $ M8 L! A" ~+ p) N& ~. F根据相似矩阵S SS构建邻接矩阵W WW,再构建度矩阵D DD
    " L: H8 c4 D% P计算拉普拉斯矩阵L = D − W L=D-WL=D−W
    ( ^' g0 d; L  O8 J3 S得到标准化后的拉普拉斯矩阵D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D ( j. C+ t, m/ r

    / p: ?- h: Z- U( ^2- y& S: A- f$ s( J8 L; _, L
    1
    4 K* T+ d2 }6 o, ~: X" P
    : y. }8 ]) j6 a; Y4 J* |+ l& Y1 y" v' J" X  g6 r% b1 o7 O  I( T
    LD 4 q) A3 F$ c! [" T# K. V3 K
    2 X0 c/ h4 H- i% ^$ }4 P
    2: Y0 Q8 E# S& w
    1
    , a- L# r: u2 v# y# J& M
    & `+ t, f" q! E  v% b, r/ g: x4 ?" C- E& r

    ' {! w* o) J3 B- O+ J计算D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
    ; A4 `0 G( n3 e/ x& f4 e  T# g% x2 ]! h$ [
    2" f  k. u: M- [4 O) Z3 |: x
    1
    ' a0 T& m' O! y# u# w8 Y
    0 I$ X, ?1 i7 p# l# t0 e3 w7 `( w- ~
    LD
    - Y: V% g' c" Y/ d, r
    ; F4 |# e1 X6 o: K0 R1 w) V26 D& ], [) v4 e; H  [3 o  s
    1
    6 T7 t9 H7 p/ B) w' K* U% f6 T: |1 ^

    , A3 F* P* c. P 最小的k kk个特征值对应的特征向量f ff
    / u/ X# z+ B' B7 S1 p' q+ J* Y将特征向量f ff组成矩阵并按行标准化,最终组成n nn×k kk维的特征矩阵F FF
    1 Y1 C7 R) d- }2 DF FF中每一行作为一个k kk维的样本,共n nn个样本,采用某种聚类方法进行聚类,假设聚类维数为k 、 k^{、}k
    ; X2 n) |3 m& `7 \7 v6 s# z. r3 i% j" d
    . [* a6 ^! a8 z0 m/ \: Y2 _- J
    得到簇划分C( c 1 , c 2 , . . . , c k 、 ) (c_{1}, c_{2}, ... , c_{k^{、}})(c $ o" J/ P6 C$ {! @5 }
    1( N9 W" H1 X" [# ?

    / K3 x4 P( i1 ]4 R( d0 X6 S0 Q$ D ,c
    , X8 {! |  G! v& m0 E- v2
    % p6 t3 m1 s* H- Q( D) C
    ' \  ?  R  q0 n) a ,...,c
    ' F$ Q( h1 w, g# a* ~k 4 P" A5 V8 p7 B! d0 z

    " A" Z3 ?+ J+ Z2 |/ F  d, V- u0 ~2 U9 h1 H0 E% q4 h% ?4 j' B3 q
    . N: w# V8 d. f& v
    )6 g6 r: m- S( y- ^8 F6 x  O
    三:Python实现
    $ m. m2 o( e3 ]6 ?% l8 B5 P9 B- dimport matplotlib.pyplot as plt0 j8 Z4 A9 d9 m2 t. u( \+ O1 {/ k
    import numpy as np
    + H5 I9 r- m8 s" Eimport pandas as pd
    . v7 o4 z" B) {1 n" z% `1 L0 `from sklearn.cluster import KMeans7 t" e  ~1 v; v' n% d* C- W
    from sklearn.metrics.pairwise import rbf_kernel
    5 f8 M  B" P" c  n, r2 _8 C2 Hfrom sklearn.datasets import make_blobs. Y* D1 l+ k; F6 h* [9 Z
    from sklearn.preprocessing import normalize
    7 o$ ^# B. c' W. [' X  y: @8 T( C8 u2 ?/ ?7 K
    def get_affinity_matrix(data_set):
    - T$ L5 ]; v+ d+ e) |6 z9 B, n/ `    #  利用高斯核函数计算相似矩阵(全连接)
    8 r' {3 u) ]! T  X, Q    rbf = rbf_kernel(data_set)" U. S. y: \/ J' R6 \6 l% N+ J
        for i in range(len(rbf)):
    ; D& i3 h" _' v        rbf[i, i] = 0' i8 U5 b4 U; _" c# O$ K; C
        return rbf7 Q( C- ?& f% u3 x" C, `
    0 K' a4 t0 L" R

    5 ^+ C" u* t- {, N- n) p2 s3 tdef distance(x1, x2):
    8 f+ D, p3 O' x1 f' S    """7 g8 x2 O3 ]( m: O  w$ o
        获得两个样本点之间的距离" J! x+ ?! I) C) B( \
        :param x1: 样本点1# j1 m6 R! n9 p; j4 `7 [
        :param x2: 样本点2
      c4 Q! i/ H2 m4 g    :return:* ^( U8 ]' W: |5 B
        """# a. {: S3 R, X1 {$ c# C1 |
        dist = np.sqrt(np.power(x1-x2,2).sum())( {2 Z3 F% z2 R! A' z! }
        return dist+ }; g0 f) T! Q4 ]( S

    0 v" }' N8 x0 s  C  udef get_dist_matrix(data):
    : j9 S! @* M" D; W1 l6 M    """
    9 C8 X" v2 `( A$ M/ L, t    获取距离矩阵2 J+ f9 q' Y. k" Z7 Q2 q8 i# S
        :param data: 样本集合
    " @0 T5 \% O, Y- i. x1 q: \* E    :return: 距离矩阵
    2 ?# ]" g9 k! {$ M; c2 u2 L    """
    ) e2 {$ W6 e. ?, m- I    n = len(data)  #样本总数
    % c' h+ _/ b/ ]5 V, i    dist_matrix = np.zeros((n, n)) # 初始化邻接矩阵为n×n的全0矩阵
    2 L* `4 }3 n9 {+ h: v    for i in range(n):" j! d! D) l# g7 T* a9 V  z
            for j in range(i+1, n):
    1 P5 I, q7 t  v! J6 y            dist_matrix[j] = dist_matrix[j] = distance(data, data[j])* H4 x* {" `8 e& S, |
        return dist_matrix
    ' E7 Y0 Z- Q5 J1 }  i% j) O. v9 t% w/ L9 \7 y& V( E
    def get_W(data, k):
    5 f! L+ K) h& z9 y/ O    # 获取邻接矩阵(K邻近法), ?+ \; u; I8 f7 M
        n = len(data)
    ( K* M* U7 j! @3 K, r, k    dist_matrix = get_dist_matrix(data)
    8 O) J9 q" u& ^" F" R# x7 |5 V    W = np.zeros((n, n))) l( c6 i) D- d0 ~2 }6 n7 d
        for idx, item in enumerate(dist_matrix):
    + y& D2 ~0 @. R: `2 u2 E1 u* f        idx_array = np.argsort(item)  # 每一行距离列表进行排序,得到对应的索引列表$ `5 I3 X% F, B. r# T% q; x: I& j! t+ v$ n
            W[idx][idx_array[1:k+1]] = 1" E: x' n+ ^' T3 o$ e: F. z
        transpW =np.transpose(W)! O, h% N/ O/ o9 K8 \6 _# C( ~
        return (W+transpW)/27 v: T% \+ o0 Y% q1 Q8 b
    * j4 t6 p& Q) ?9 u) z) X6 O; \0 \9 z
    def spectral_clustering(data_set, k):
    5 D, |9 _. p& l0 q6 E7 R) J  b    # 利用相似矩阵S得到邻接矩阵W- a. |% Q  U: v; Z# D
        W = get_affinity_matrix(data_set)  #高斯核函数(全连接法)
    2 s; j# U6 K, z% l3 Q: |    #  W = get_W(data_set, k)  # K邻近法
    8 n4 S+ G1 [, H1 g* g9 D5 C6 r7 d1 j7 Y7 g8 O1 l# n) e. P4 k
        # 计算度矩阵D,并得到矩阵D的1/2次方的逆矩阵(便于计算拉普拉斯矩阵)/ U6 a- {7 F. e: F4 x. t, h
        D_inv = np.diag(np.power(np.sum(W, axis=1), -0.5))8 O0 M6 E7 J# \( j/ T) P

    # D' i# V* M8 j5 \' u    # 计算拉普拉斯矩阵L=D-W
      ~/ V9 a2 p+ F" M    # 标准化拉普拉斯矩阵l = D_inv*L*D_inv=I-D_inv*W*D_inv
    9 |2 ^* O. P, f9 y2 O5 _    L = np.eye(len(data_set)) - np.dot(np.dot(D_inv, W), D_inv)5 V* |( z: k; z4 F. Q) k: ^! p  r; e
    2 |$ ^2 F$ v1 @* p/ I
        # 得到特征值和特征向量+ S/ E9 \6 b' d5 F9 H# `- g
        eigvals, eigvecs = np.linalg.eig(L)
    ; M! Q, L. E. w  |
    1 S, e* H  O! H7 u% e    # 找到前k个最小的特征值(索引)
    1 Z2 C3 Z& Y% O: A' Z    k_smallest_eigvals_index = np.argsort(eigvals)[:k]
    ; u" H* o% E9 u) n& Z$ M. r0 d) b1 D6 F& J: f; P% N7 }
        # 取出这k小特征值对应的特征向量,并正则化
    ( c: G, F5 f2 Z4 C) J% A    k_smallest_eigvecs = normalize(eigvecs[:, k_smallest_eigvals_index]); {' o4 H  P" O4 ?8 M
    : R* H8 i2 H! O: {! ^
        # 使用K_Means聚类# a3 D3 g6 ~  p
        return KMeans(n_clusters=k).fit_predict(k_smallest_eigvecs)
    $ p% Q. {& U$ Y
    . n3 F# P/ a* V! _
    % N% g- R3 k5 w& X3 ]6 rraw_data = pd.read_csv(r'E:\Postgraduate\Dataset\jain.csv', header=None)
    9 \2 Y2 u3 |' E5 V/ [raw_data.columns = ['X', 'Y']/ f% w$ X0 W/ {9 X; S' m5 F
    x_axis = 'X'% m: A  P" d  V2 f3 S& {
    y_axis = 'Y'
    ' h3 L+ ]9 y; |: G5 ]2 ^2 k' G! p( V$ b' I# ]$ i4 J
    examples_num = raw_data.shape[0]% J. o; L/ [- v
    train_data = raw_data[[x_axis, y_axis]].values.reshape(examples_num, 2)* C! a3 ?/ U  O. F# v$ Z4 }" T
    0 a# q: U6 r4 M: x; G/ Q% B3 t4 j9 c

    " ]& I$ U" S/ p/ J( Umin_vals = train_data.min(0)( k* n' i# e/ T' a+ b
    max_vals = train_data.max(0)5 D- N2 y1 N0 Q+ {( n! m6 w2 [% [
    ranges = max_vals - min_vals
    / c$ `. F/ p! `0 Z% j# Nnormal_data = np.zeros(np.shape(train_data))6 ]9 P2 w) _, z6 d/ L, J0 Z
    nums = train_data.shape[0]& L0 v3 Z+ h& T. I: M5 `5 g
    normal_data = train_data - np.tile(min_vals, (nums, 1))
    1 V( ^$ C& x7 |4 cnormal_data = normal_data / np.tile(ranges, (nums, 1))
    * i7 P  U8 j' [5 y9 b' p* `7 j" _9 m2 p% [$ y9 Z. S( a! O
    labels = spectral_clustering(normal_data, 2)( `" _$ j3 q5 y/ d# G" D+ v( N
    . `" G2 I" z) u6 D
    # 原数据
    ; q: l& Q3 ]. `& |; Ffig, (ax0, ax1) = plt.subplots(ncols=2)
    5 @' B  g1 E5 m! F3 `2 Hax0.scatter(normal_data[:, 0], normal_data[:, 1], c='black')
    4 u% L2 J4 b1 b) a9 }: u7 Max0.set_title('raw data')  X. P; {8 w, J. J
    # 谱聚类结果7 o0 ]* `, I3 j" U
    ax1.scatter(normal_data[:, 0], normal_data[:, 1], c=labels)2 x" J9 |! `- R( J( h( W8 a
    ax1.set_title('Spectral Clustering')$ T$ F' L  K/ @2 D: T

    - P- ~& q5 U8 U$ O7 T" eplt.show()* B/ c( H" X4 f0 t
    : Y! M& D" t4 w: b. H
    1
    ) q0 z: w& ]' {& l" }3 C2
    * d/ o# s; T5 K! U$ s6 g3( q0 N: Q. x" |( k* ?
    47 F* U5 d: u1 E6 D& d
    5! N4 t/ e- p+ I
    6# p  n0 A8 g9 r- I" E' {
    7
    . x. A' x6 R' X86 s1 D) Z0 r* q+ n
    9# [6 T' Z) R  k1 k
    10
    # L" g2 b3 q  K2 Q11
    1 H, n5 [; G4 d' u; Q! @9 l7 L0 g12
    1 {; |$ G5 L: T! y13
    * @/ C: p# V1 {" a  V7 W146 C4 x% K9 \' `" x
    15
    ! R" k$ k" [# `) D167 Z& u3 [( G2 O( A: r
    178 t6 l, h. m+ s
    18: D: ~  O& B$ p  ~
    19! d7 G6 m4 r; Y, `( `
    206 J6 m1 i7 n9 S! e8 ^' f, @9 ?& y; ^
    21# ~% l6 @$ P4 s; b' U6 Y/ w! D3 P
    22
    % d9 J; O; i3 p8 v6 j23
    ( O" H9 o# A2 d! o5 z24
    3 L: h) L0 ?2 M% X' Y25
    ) d- Q& o3 \" |* f+ H26
    * W% Y3 ]. S  v8 s+ C( U$ L; L27
    ) `" Z" C0 Q3 M& a# Q28
    * ]/ y4 W3 Y9 u$ R294 v7 y$ n5 a3 Z" b6 [+ R7 }" ~0 n' k
    302 j  p) f* B6 b0 M4 i
    31; b- J7 e. B7 q6 a9 j) N
    32
    3 Q, b5 S/ O/ ^  B33
    / d7 k9 u  E. o) E& ~0 r347 L) A" j7 D% U
    35
    6 x+ h9 Z7 W  }6 R$ r36& h' h$ t8 c; r4 |7 q! q
    37+ ^- z6 D* o) @2 V+ j- r1 D$ W
    382 E7 F5 `% o+ d6 J7 N3 r/ B$ y
    391 r% U! j1 {- p; _7 L/ i0 Y- I& }
    40
    ' T% w: D* Z$ Q0 n+ B/ Q: O+ i  K( f41+ m# ]- @& P7 G( ^2 V; u6 T: l
    42
    " c# n( u( I, C6 \! }7 F0 U: A433 |5 r' m  `/ O
    44
    * k8 h1 I0 Y/ x' u& |45
    : j+ b1 d5 E9 B3 y) h2 g46* w+ A  F3 X3 M; g2 }
    47
    , Y8 ~- w' f- B1 b; [5 g48
    & [$ ]4 p1 a( Y' D, H49% O" W5 F- W* ?
    50  Q1 L1 ?& h. R, x2 h2 O3 X- G
    516 B+ {) m  u" s& A& H
    52
    * z5 r% F7 P  {  G' E5 @537 X* O* r4 K) Y* F& v; F" q. ~
    54' J# V  Z4 l$ y# c6 }5 v, C
    55
    1 h% V$ g0 B  ^6 g- {2 [+ `566 b( u0 b2 V; b+ y/ w/ E$ [
    571 i: [: _$ U5 T3 h9 t+ H, D. n) u
    58( }- n; q$ V. ?3 ^7 @3 B
    59) L  v2 M  f  g/ b! u( n) M
    60
    9 Z8 K/ W: R! g7 S& U61! {, r% Q) m$ y
    62. \0 t5 f" b, m3 {( M" v
    63, g9 T2 R: T( G, t7 V0 }, i3 J
    64
    * U- s2 N0 w; G$ `0 b- N65) U( ]. ^( E( m! F. C; W
    661 y2 f0 t/ A! ]: ?
    673 F: c' l( y1 j, G7 v
    68
    $ K, p" V  f: V# }+ f6 c69
    : y9 W6 G  _" H: n% n! ~0 m70
    3 s* I+ k8 j/ [  ^# a* r71- t: @) F3 j: j
    72& y) l9 b! O' R3 k) a. R
    73
    * t+ s# ^6 [. t7 F1 x  U74' D4 ?3 f4 u0 I+ A! N
    75
    3 a) {* ^5 @8 ~: y76
    + G# T- B% o- y3 r6 C0 G77
    3 g9 F. J5 x6 h" m( J% M78
    " ]+ K- _! n5 R- q/ @, W79
    : k* W3 z1 g+ |  _# c" \802 x+ u* s& ^2 Z4 f' c
    81
    + K; n1 s& P9 ~+ [" e82
    8 s2 F) N$ B5 e; @% p  O83
    . l5 [7 ?/ {8 N/ \# J846 d: q1 k. p& c
    85( Q/ J$ R5 p* o3 H3 G
    86
    5 f" e* I+ L# p4 d. F87
    $ |9 u$ d6 [) g88
    ' l' k" L' g9 V! f; M2 {891 y# k1 k" c" H2 H+ D) F- E2 w* G' U
    90
    ) C8 N! L1 m2 }$ F; J91% \5 ?" d% |) ]9 Z/ D- @; }) e9 Y
    923 _2 q. C/ ~, c3 T3 o' ~7 F" ]( a
    93% s8 H, C! r" f+ @4 W( t3 E5 R
    94! b- J" Q" p* ~! c# X
    95
    5 d) y- O& ]: v" S! g7 G6 K96
    3 _0 G: `7 e% X0 Y/ d0 s8 j97
    ! W+ `+ O, M3 k7 ~8 o& o, T' `98
    + m9 w- l/ a8 q, C6 ^1 O99
    9 X6 m; u  c- Y! T100
    4 c5 Y* M& q1 \1011 l+ d5 y, m3 W4 u# y" `1 a
    102
    - A$ I# E& g, U) L. r1037 d+ w  n& A6 n
    (高斯核函数)
    ; A9 i7 }- G' `# S+ ^5 ~
    " G% Z) m4 R& o
      S9 I% B; `' Z7 h( S(K邻近法): k$ j: ], r5 K5 G
    / k. F7 r2 r- _& V" V2 `0 X4 R4 {( r
    ) T7 x. W1 S1 i8 I
    四:谱聚类算法优缺点& {; t. Z3 d: |' y) q+ A
    (1)优点4 g% g# G. F: I* y: r5 _
    谱聚类只需要数据之间的相似度矩阵,所以对于稀疏数据的聚类很有效# w, k: f* D. j8 `$ h
    使用了降维,因此处理高纬数据聚类时复杂度要明显低于传统聚类算法& k& @, L6 z4 V6 w. a
    谱聚类算法建立在谱图理论基础上,与传统聚类算法相比,它具有能在任意形状的样本空间上聚类且收敛于全局最优解5 Z5 D/ r/ ?! @( H- a5 R
    (2)缺点
    2 t( t6 h1 U1 q# H如果最终聚类的维度非常高,则由于降维的幅度不够,导致算法的运行速度和最后效果都不是很好
    ) |3 n1 H8 C# W( H, C聚类效果依赖于相似度矩阵,所以不同的相似度矩阵得到的最终聚类效果大不同相同" h+ F5 m) H1 L
    ————————————————
    ' w, x2 s( i$ a# t+ V: m, I: ^, l& G版权声明:本文为CSDN博主「快乐江湖」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    4 w, s- K( O) }* z3 m' z原文链接:https://blog.csdn.net/qq_39183034/article/details/126747494: q9 L' L; X1 W# s/ q+ L  s( r

    + L6 m4 Z( ~# a2 _3 L
    ( x2 a$ Y# }* ^) V" f/ z
    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-7-31 04:45 , Processed in 0.648748 second(s), 50 queries .

    回顶部