QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2946|回复: 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
    【数据聚类】第八章第二节:谱聚类算法之切图聚类、算法流程及其实现
    " U9 ]! K# E3 e$ v' `7 I- l1 m$ V. r9 ?+ p/ x, h" {
    本文部分内容源自刘建平博客,在此基础上进行总结拓展
    5 ?8 k8 F) w/ `8 \2 S4 `
    0 k0 m" p' \/ v+ Q6 n原文链接
    # u2 @2 l& A6 P9 P) Q, o文章目录. I8 s! r/ L) \% m' r+ G& d
    一:谱聚类与图划分
    9 W' J! {& g* n0 w(1)比例割
    , r6 t! Y; c  n' z(2)规范割(常用)
    ! N7 h+ {3 \+ O( p6 z+ ]二:谱聚类算法流程
    # I  x: E1 D4 w5 A- ^9 h! D6 {三:Python实现
    * e9 F1 y# N" y四:谱聚类算法优缺点! @: v8 J% o% S! L$ }- _9 y8 {$ P
    (1)优点
    % y0 h+ F; D: g. a(2)缺点
    1 a! H: K, E9 ~/ z一:谱聚类与图划分
    4 I/ \- T7 q0 X2 d无向图切图:谱聚类算法根据数据点之间的相似度将数据点划分到不同簇中,因此将数据点映射到无向图之后,可以转化为图划分的问题。对于无向图G GG,切图的目标是将图G ( V , E ) G(V,E)G(V,E)切分成互相无连接k kk个子图,其中# s6 \6 G% F2 x
    : R. n! l9 ^! P: w* j
    每个子图点的集合为{ A 1 , A 2 , . . . , A k } \{A_{1},A_{2},...,A_{k}\}{A 3 Q( K0 [/ v( I% Z5 F: h' I
    1
    # B2 A6 L$ z5 O" c7 \4 Y& f5 r2 _0 `. m, l6 y( B& @
    ,A
    4 B. n4 L  E- \/ V2+ p8 x: w. ~% S. E# m
    0 r* G1 k, X$ C2 [1 L2 u
    ,...,A
    3 E1 K1 v% a9 M$ G7 m% T$ Vk  p/ E+ W1 x* J# k# F- _: f

    ( d6 M0 ], Y: y },且满足A i ∩ A j = ∅ A_{i}\cap A_{j}=\emptyA
    1 C; N8 k5 A( ui0 y- V  w/ J$ W

    3 m( |9 N8 R; I  Q, i& P ∩A
    3 ~# Z4 M) E1 E$ X* t  m" yj
    $ I# m, j3 K8 A; o1 B, n. a5 [4 `) ^" T/ z) E& z& `3 m/ d4 @, m
    =∅、A 1 ∪ A 2 ∪ . . . ∪ A k = V A_{1}\cup A_{2}\cup ... \cup A_{k}=VA
      S4 V( l" P2 ~( V: f  z1
    8 d$ D# }5 Z5 b; d( m
    $ ]3 s( f; I" F$ m% _ ∪A . R5 P+ E$ p) f- w/ g5 m
    2( ]0 [( X5 b" F7 w& {% t
    - r' [( C& P# S5 k
    ∪...∪A
    9 @3 [, N  ^% n3 ]- Z- gk
    5 J- h! B) `6 P0 z& V, V1 p; w
    0 c- t. s! \: Q0 v+ L =V$ u/ D$ X2 X4 v! j$ N6 p1 _
    对于任意两个子图点的集合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)=
    & ?8 A; ]9 ~$ H. Z5 `0 N! ri∈A,j∈B
    - ~7 [* i( [/ E0 O8 K! H% Y; `' {& S( z
    7 a! x$ R2 A  a6 V- x# Q' A1 x* T
    w ) Z' U9 j1 `  @/ J  Y0 e# `) M
    ij' w0 p: ~/ a$ u8 S: k* A0 q

    # L$ ~" W7 T- V$ a4 R0 W! |" `, u1 [( j- `# D& m
    对于k kk个子图点的集合{ A 1 , A 2 , . . . , A k } \{A_{1},A_{2},...,A_{k}\}{A ( E/ w8 i. j# B: E& v
    1
    # k6 {2 w* ]6 y% j5 R7 j8 }
    1 T+ i: l8 R8 @: U+ U( { ,A
    7 m! b: ~- |4 z3 O. \/ w* u20 c# v7 ]( D3 o# Y* O8 ^3 G# i

    3 ?: E/ n3 Q: I: v: c. p ,...,A
    / s1 _, ~' [5 Sk
    6 x- W. U% C! q, S% A; G$ ]& i) g0 E* C. I) Q( D
    },定义切图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 " m. P" v& p) D' z, @
    19 t6 E, R) ?- ~! B, R% h$ p  _

    . V7 `8 M; S# Z0 s: @3 p ,A & q% p  n6 l9 a% p
    2
    ; g1 r9 ^2 v, W0 d3 A  t' l7 [" u& H1 H/ F" P% f: }
    ,...,A
    % L9 q- S5 |* E+ t- I5 @k; R' x2 Y2 M0 e2 f" V3 h  }1 a& \. ^
    : ^/ Y9 Y* a: K# d
    )=
    / p9 u! z7 }( X, S. M8 x5 l* Y2
    0 D. G, M4 o! q) G, t5 [14 Z3 ~3 p3 _* U

    1 m9 x6 G4 X' U
    $ Z8 c( f( J4 N$ t- T$ Q0 S0 I8 Qi=1# v. A" a. n' m' p; Q' \

    ! w/ ^  t1 A: Zk
    + \% ~7 J: V  Z" D# h; G% L+ ~3 g; E- B
    W(A
    & v& l. e) \3 U1 pi
    " r/ f5 S$ q" q3 C; q' L9 \# ^5 G- c( [
    , ) c; k) t+ S" S! b+ M4 w+ u
    A
    - l% ~& R. B/ G$ \+ h. Mˉ
    6 {. a' q3 k, X% h# x5 P3 _! D
    2 @2 O8 r7 O3 j+ P$ a, ?i
    * u8 ~* m5 P* j" F$ Y/ k5 u: V9 k: b- \/ ?: e
    ) (其中A ˉ i \bar A_{i}
    6 k$ _' U. s5 |# K" {5 f& q8 YA
    6 B7 s2 X+ }' e) [# Bˉ
    * b2 o8 w$ E+ I: I- i9 ^) W; K
    i3 }: M' Z" K; {/ U' j# f5 U
    ' l- A6 ]; R$ T$ K
    为A i A_{i}A & J" O) k8 T9 K: f3 j
    i
    ; G/ |- ^; J/ F& b' G& b' A  Q  ]) y& k8 c7 C
    的补集)( v' d* X3 |. a& [+ 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 , J5 k" G5 q) Z; F: u
    1
    + |+ @3 S2 m$ _) W, p5 M" R4 P. n# z- m8 R" o& z# {8 |
    ,A , m* ]" Q0 `# R; _# y. s. k1 I
    2; K% N, L7 |5 \/ D- M; R% I" ?

    + S* k4 N4 O" V; K ,...,A 0 O5 }) ?0 Y* j' _9 [6 p, B7 @9 J
    k) ]  v4 P2 O( Z% K/ Y

    6 t7 t6 ]: l4 [: e5 d. e )=
    ! K8 [3 j/ n- u' P29 d- J$ v; S7 t
    1
    + d4 _* u* _' C: y) C$ j' X/ p, d, ~+ V# ~8 P9 W

    4 Z' k6 o# R! h9 `0 ri=17 k0 w" L; t" Q1 g; v' F$ l

    ) J% k* V+ a2 O8 ^. @k
    / {; i$ c' b3 B; V5 k) _& m7 t$ b0 u; ]  p  B1 v4 Y- c$ a
    W(A
    9 m% l  [; @1 [: ui
    ' e# l4 M1 u; A( i; B0 L' U, b* ~, Y  k6 Y4 j. |" x/ a7 n8 ?5 E
    , ' I% E5 d3 Z2 v: p8 ~5 V* l: @
    A0 X+ l7 v, O, ^4 U
    ˉ# ]1 J1 _: b6 E# l

    4 l7 E( e# p# m  w% ri
    5 u1 P2 H& d2 }) h7 S9 [  Y
    2 ^! \- M( R% W) w0 W8 u! k )在划分子图时并没有考虑每个子图中节点的个数。所以在某些情况下,最小化c u t ( A 1 , A 2 , . . . , A k ) cut(A_{1},A_{2},...,A_{k})cut(A
      Z4 y) `& G% u4 Z+ j$ D! c6 ]1
    ! \; S+ i- P1 h
    + t! ^% B( X7 S* \ ,A
    5 N6 a* [  d5 n% E2 m27 A3 x* ~8 i- @

    + T8 B( p- E1 y: H3 J ,...,A : J9 |; B. b! @! U3 A+ g
    k
    5 C- @. n+ I- k5 W& M; }! ?2 y: @
    " V7 k0 \$ v' q9 R' K )可能会把一个数据点或是很少数据点看做一个子图,导致子图划分结果不平衡
    ' N: S# Y) Y8 p
    . b; {, A$ L+ O& z: \5 M( e4 I7 G例如下图,选择一个权重最小的边缘的点,比如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 ) x0 b# i+ g% S6 c
    1
    4 h- P1 }; B- o1 S( ^7 W  \
    ! Q( C& x' D" B' K2 S ,A . c9 b9 J& C8 O+ u. J( k
    2
    % Z! ^0 a0 D0 H- s  \
    2 j1 I( E3 l/ ^& n ,...,A
    5 }# r% ]8 a( m9 b( ^7 w3 ok4 K0 t4 _$ y3 D0 q3 T

      q) ^3 V& a6 Z )但是却不是最优的切图
    0 Q9 @) v' }& u) c3 K: p3 `; [% e: {4 L' I6 n: d/ m
    为了解决这个问题,会引入一些正则化方法。最常用的两种方法为比例割和规范割
      M3 u& Z% m2 d/ I
    & p+ [" S" W4 X7 R7 ^比例割: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 7 `1 |) g/ O0 ~# b8 N  Q
    1, V; g4 f8 H3 A5 G# H" u2 x$ W! o
    : }. Q) q8 T- Y3 _# u
    ,A ' U* x  O& z6 W4 [
    2" @" |, p$ K* y* e/ j, k8 F

    " O4 X3 f$ Y1 n, E ,...,A
    + Y4 u1 A4 U$ a- yk
      N" C5 E, T! N9 ~3 U
    1 R, Z5 a4 L9 g0 V" n* C# {8 i )=
    3 r8 Q! Q  p: N' B4 m2
    6 i! t) Y6 t, s1
    0 a# ~7 \% r3 N1 X& y2 Y) O8 @& m( T) z0 y0 n4 e
    : H1 D$ b2 a( K" r- M9 d
    i=1* d" ^' i" k' u3 C& G3 U
    & d8 T5 e5 [2 e6 z0 f
    k
    : X: G$ @$ v$ J' J& Z7 U/ r! [
    8 \, ]4 Y. q5 ]. D3 Z
    9 o- w. b1 B  J( A  n9 O8 n∣A + I. i. I+ Z$ S0 ~& [) K1 A$ M4 M
    i
    5 G5 }) }4 }& X5 u, u
    3 b1 M0 P  K/ y% o( B/ v+ w$ F
    7 w$ a* G6 V7 d  yW(A
    # ~- U2 S4 H# l2 J/ g$ {- I- qi. [5 N# H. l% @# K$ w* d

    ! \& Y  I% N9 [/ H, T , 7 {) e! Q/ G! k# ]
    A
    0 S. G' A9 M. e6 k+ xˉ% [! }& V; `2 G( h* i( z

    + Y$ \4 n1 J/ k: Oi
    + S4 V% L0 ]) q% f6 t/ w
    + l8 o8 L$ n' x7 b6 E! r* X) F/ v )
    " H; Q; D; ^0 d" A7 ^* N* Q- g) k7 \! J, e6 u1 z/ I/ a
    $ c! `+ W7 J( x8 X9 d8 R0 k8 t
    规范割: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   ~! i+ a$ H9 }% }( a: N" o  N9 D% {
    1
    * E) T4 h, U7 L5 Q$ n/ b- s4 A
    , `. l9 Q" m' }1 J& K# b% e ,A . t: b+ v" Y: x* B# Q3 R3 f
    2$ z! L: B6 `' x+ I; p- S
    : O# G8 D6 v0 s' i# H
    ,...,A 4 r0 _9 b+ J9 Y+ t
    k( ~+ F0 R7 s" T4 D3 C# E

    9 v. D4 x3 r: |) D$ z9 N )=
    & t% ~) L: N, B: Y2
    # B# p1 b; N  \4 j' ]1& v7 d* ]; P) Y! O8 O( p2 K3 T
    0 j$ N) S" A  x- M

    ( l6 f6 o6 z- Mi=1
    ; h3 V8 Z2 t! A, s+ J
    ) P; @- c  V" O+ g- Z+ ~% o) ck
    $ L" N" R% @; h7 p, E5 p
    $ W) L: ^. n# v2 f
    # v# E& G6 R4 `, o  W, M8 A1 M3 Ivol(A $ j1 g6 r; _5 B
    i! r  d: {" I7 D& u

    1 Q+ o% S+ K1 f9 E: J+ W& a0 W7 Z* ~ )
    0 c. F, v/ I! i" c% k8 j; UW(A
    - S0 O) l0 U" F% d9 Y5 ^i0 G; C( q5 i$ _6 J* k& p5 P

    & I" z* J% s! R  T$ s, a , ' |! O# q; M' {+ Q
    A
    ; V" [- A! ?9 l# N9 Qˉ
    % h2 b9 b  V8 w8 m
    . ]; A* ^7 ^4 P$ t& {i1 k$ w  |3 y- e3 E

    & M4 K0 {- P) ~4 U7 i9 R1 r. } ). I4 O* A! g/ P- C4 j% W
    ( f) S1 I& Z/ U' C1 @1 B- p( ~6 B
    ; L4 b+ X1 {; r( r  B
    (1)比例割
    3 G( J& _0 V1 v' D0 {引入指示向量(点击可查看指示向量定义)h j ∈ { h 1 , h 2 , . . . , h k } h_{j}\in\{h_{1},h_{2},...,h_{k}\}h ( T8 g4 K* S7 g% v/ i; w
    j
    0 g4 k; {+ V# L9 E, G6 }' ^$ n, H: r
    7 w! |, I( y8 l3 C$ }$ u% S$ `( W ∈{h
    ( ]4 z, A  b1 O% ?; }# [1
    * @: E$ ~& Z# e+ {8 b  v& F
    / \! s# I) p/ Q% g ,h 4 m1 k) Z+ z0 R+ p
    2; P$ E, e  P/ b' K' K0 m; }
    6 @' e0 O: V! A; v
    ,...,h ) B) s. t1 |1 G
    k
    3 }& J7 A& g( @# L2 }9 J0 f+ s6 R% D- V+ U0 {
    },j = 1 , 2 , . . . , k j=1,2,...,kj=1,2,...,k。对于任意一个向量h j h_{j}h   t, F$ K- g+ W5 U
    j9 X3 ^  d5 M/ o4 g* w0 O2 }

    + Z5 ?- {* t0 k8 f9 c ,它是一个n nn维向量(n nn表示样本数),定义h i j h_{ij}h 9 n  ~; s1 x5 w' T4 I' y
    ij+ V9 ^" X& y" a$ [1 K8 G1 A. B
    $ G4 R4 E8 f$ j- g1 [) F
    如下
    ) s8 _' j9 W7 J3 X) X6 @% N  [5 Y3 t( ^& S8 v4 B. K5 |
    h i j = { 0 , v i ∉ A j ∣ A j ∣ , v i ∈ A j h_{ij}=0 I+ K  j+ ?+ K3 I3 b0 A& s
    {0,vi∉Aj|Aj|−−−√,vi∈Aj
    8 ?# H( A  x, A' R{0,vi∉Aj|Aj|,vi∈Aj' X5 S' c' c, ^+ z! z
    h * g0 a: k; X/ ]( s% ~+ S/ G
    ij
    , g: U; |2 c1 E( G
    % |0 F, ?7 t& Z$ i" ~& c: H! v. s ={
    ! a2 s" u. W7 S* Q( w/ ?# M0,v
    5 `1 p6 p5 K4 f5 n& x, l% a3 Si
    4 U0 n2 }, @! A7 i# N
    & Y+ U0 w2 e* Z
    : _# [; b+ k+ m1 U! j6 R0 R/
    4 c) `$ K9 |" G4 SA
    5 H' G6 I" V  U" `( tj4 A' z9 Q4 l$ w1 k# D! a, i
    , V6 J5 ]; _0 M2 J
    % w% h- U. Y0 C! B
    ∣A   }9 J! t6 S2 `& O3 R
    j+ @/ M2 S& B. l" P( v% j/ ~' B2 ^
    1 t- U  P$ t# A; u; t

    3 K# a2 p( w$ Q* d9 b4 H- ^6 B
    ' ?4 Y& v. f) n! E ,v * x  ]% z) X; X; f7 g1 V& W
    i; x: `) [9 l/ T

    9 m/ x- [& [. R ∈A
    : \: \/ U) }8 ]6 tj# ?7 g( V! `7 V9 G% x! k

    0 J/ G0 X) [' x- p2 u% w" m
    6 o$ n3 k. o) Z/ }+ \0 Q
    ' [& Q& F1 G% {2 M$ J! ?& G
    8 m# k7 D( w% h* `* |$ N- B+ H* {0 f6 r
    于是,对于h i T L h i h_{i}^{T}Lh_{i}h * C" `, v- |2 C; D
    i
    ; ]3 W) E% p. G6 q4 g+ RT
    & a, V8 V' q% {- B/ R
    ' y/ i2 W# R# |( Q4 [; u/ X Lh
    / M9 ]& {* @1 K" K0 |: K3 }. {i
    ! X: d; q. \" i& C: F& {
    1 t, O% M1 }, B1 }$ z% d ,根据拉普拉斯矩阵性质可知
    6 X( D. A& ?: E- @
    : z3 ]$ K5 r( Z$ d3 d7 p6 \对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f 3 a  c3 ~9 ~) p8 i" k* Z% {. R
    1  Y8 v5 p4 |6 e( Q7 g' U

    8 t3 O- ?, r3 f" P: j" N ,...,f
    . }  ?- T# l9 T8 `/ r' rn6 f- [' k. `4 o4 [1 j

    : @1 H6 s& n! E4 `) Z9 r )
    1 ~% j  m; E8 i! F# n: LT9 [( d: O& q. K- I6 v1 S
    ∈R " w$ l$ ]5 M: ?1 R9 I
    n
    : P" a0 K4 u! l/ v6 e ,有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
    : T) ~$ s  i  @/ l8 XT
    8 C8 {; O/ o; X5 |# Y- [1 J6 O: k Lf=
    3 S& @& M0 a$ t" V2' e" ^8 m! w' w5 [( k1 S
    1- }( x- K: [$ H- S: r5 b
    - Z* ^) t; s0 |& {$ b( k

    - A8 Z' V3 B! a% ?! N2 W/ j% H. }i,j=1
    # `4 e, f5 i4 B6 S+ e0 w7 V! T1 Q" L; I. v! }( C& C. X
    n
    - m. i. A  D; y# w' H  K+ D- ]% E! m7 [: [/ _6 D/ y  K, x+ ]- H* u  f
    w 9 B9 F' ~% l- @
    ij6 A2 |9 B0 R9 w
    0 h, h- {) Y3 p* }4 G' U
    (f 7 F& b. v8 f4 I1 D& Y  x, J; I$ q
    i& p- X' P% a, R& c5 D0 o# W% O
    + l' L" u0 q& _7 c% c$ Y
    −f 6 A9 e# f1 E4 d+ C  U. h. _: ]6 L
    j
    / T- S' P" s& Z) y6 ^. l2 A  i* p$ p8 M/ ?% \# c
    ) " e9 b) k; ^" C, I
    2
    & Z; a& Q5 y# Q; m( e" l8 U# [( s# F# w2 o
    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}|}, Z) F( B# \" ^9 h2 [
    h . G  T4 V* N1 g8 h3 W; s: `
    i
    # P; C/ j' \8 o. z/ l: y, V! oT+ a( z# j& Z4 C4 y5 P$ D5 A

    . \6 v( u% j8 d+ d& B, h Lh
    . [" I8 q$ J" }- [i% Z3 m+ Z" Y& y4 c

    1 v' j/ q* c- {$ V  N( p1 v% j, Z =
    4 ]2 {. f* m8 F' K! }! ]4 g) o! ^2/ v: i7 }  k/ P: a! R0 t/ l
    1
    + z/ W. n5 G! c4 x
    ' F/ W& U' Y6 [5 ]8 s% G$ o1 h% r* D
    m=1
      A1 T% y) P" S. Q
    ; O5 g$ k* i) j5 H% [4 v! B
    % d- W4 w* {. Y- O$ _7 }: l' v' S' |" w" f2 S9 S9 m
    n=1+ T5 u. A/ P4 \- B) L, Q/ N
    + U& p! U1 I; U5 Z% K% J. O/ [* d8 p

    ( G: j2 N- r0 k w 8 K0 U5 w; g9 K3 M. m
    mn
    - h# T0 ?! j  @; d+ y- I3 f% A
    % Y& h" S8 y/ ^2 K (h 7 ?( M, U+ q1 V# v& q
    im
    ' i& m- f, n8 a9 g
    , P" d% q1 j; U7 Y8 x* V −h : r* v+ c7 y& I. a$ x  f& O
    in
    0 p" d- w7 }9 T# I0 b- m: y; Z% x/ P3 `
      V$ E% I: H. k )
    8 }' o, s/ e. }5 C2
    , ?5 H$ ~) t4 n7 T& a- g& i' j =
    ; W& k$ C) I9 W; G3 x& x' p+ D2 E∣A
    ' Z* h  ?" F- G' Gi
    . k$ w- H6 L3 @
    " t; [5 Y8 V  [& ~  H
    3 d, o4 W0 n0 ?, H" mcut(A " o" h8 G0 G" u
    i
    ; _% t- u0 I  e6 \% @8 }7 m! ]  N4 Z, y+ {5 V7 Y0 C
    , : U1 ]9 L/ m  y0 A9 z( @% P* R
    A. q" u6 c6 ]9 Y
    ˉ! ]) a# l: a& N1 Q: @
    9 e/ u" n( Y4 s& \
    i
    ; L! L# {" o% N) ?3 Z6 W6 i. \  y) J9 O' E% X& O/ t% I/ w$ [5 g' ^
    )# O3 y. F& }  t
    . S# L; n' _/ q# t% P3 O

    0 [7 ?: i/ \7 N& m+ N: [* V" S: T, o7 }+ V
    严格证明过程请看刘建平博客:链接
    6 G' j! b7 D* T- |可以看到,对于某一个子图i ii,R a t i o n C u t RationCutRationCut就对应于h i T L h i h_{i}^{T}Lh_{i}h 0 R% s3 x1 k2 W
    i
    2 l2 v* _. G6 }T! j! R( r& @, w, t3 P- [

    0 ]2 s6 O* u1 n- J( n) ^' { Lh 5 b4 k5 _" n( C1 i$ r
    i' @1 N7 v( d4 [9 [0 Y2 W7 ]

    # u* J8 P3 c+ n; R9 s) Y6 F5 p ,那么对于k kk个子图( n4 K. q& v! w% d/ \6 r
    + p- m4 K" y# P
    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)
    4 U) F- W& o8 U# @! gRatioCut(A
    ; {: s; b: K2 {17 }# Q* i6 s  m5 N

    ) d( U& C; L+ s3 G ,A
    ' L& I5 r0 e/ s1 D( r5 I! F27 M0 w0 y/ }( m6 q

    + x9 _8 v# r, M* ?$ C  u ,...,A
    # w7 m! o+ i: \: e  T, d( R' B  Z8 fk
    + N/ `* h. U- p$ p0 o+ X, j
    $ o8 |$ r/ D7 X8 o# }  @9 M )=
    9 }/ E; e! T& u& N4 k" B8 @) S& hi=1
    # H( e5 o" P8 L  I
    . [0 p2 d1 W/ Q) ^8 dk
    : j- ]0 ~, x2 V1 A% \' A8 K% U7 f, i
    h 9 m/ y* H$ X: O6 J$ f; e- ~
    i
    / s9 P* Q0 S, j  U1 K$ {! `T
    1 E1 T) n  z( g( h) d& R/ p$ S( x
    1 n$ J: M' H2 l+ `3 r4 U  h Lh
    - G2 U0 v- @6 h. {) i- [2 mi# r; z* ]: Q. l& s, S
    & O7 F& h, s. u0 y8 K. P: m" U
    = # C& \4 w/ e0 K$ ]; o2 ^# [
    i=13 t5 X2 Y5 i5 y9 P, o
    + e. H. e1 C) O! y* M+ F
    k
    6 B- }* k4 U" S5 x2 D3 f8 v9 M, }. k$ Q6 q, I- P7 r( ~
    (H
    ' S. Q; q: P6 }0 V7 ^T+ |' e* e; |/ a: g$ V+ I& d! k* p1 w
    LH)
    9 z8 w/ \" m4 e5 m0 Q  hii$ ~* A9 [6 X  O2 `4 _6 z( R
    ! e6 t4 O7 k& y& Y
    =tr(H
    7 V- G1 E1 j% a' V1 k, WT# P  r6 S) [* p" b
    LH)+ q) F: |6 ^0 k" F  _- p/ ~% ]% t
    ' K9 k. P8 G9 y0 p- I% U* J$ I6 p
    因此,R a t i o n C u t RationCutRationCut切图本质就是最小化t r ( H T L H ) tr(H^{T}LH)tr(H 4 t& v* S6 o) `5 A8 Q. R
    T! X" o  t0 O. z+ ~; M! V; d* M
    LH)。又因为H T H = I H^{T}H=IH 7 ^% o7 p; W* G) H( r" K# f
    T
    . I  g. j5 H0 q& w$ p3 W H=I(单位矩阵),则切图优化目标为+ |7 z0 H( z, A$ _1 R6 ~% m$ T, j

    6 y9 r3 E+ ^; B' ga 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
    . Y& c8 z+ a& U: XH3 w2 Z+ {) b2 ]0 h4 x
    argmin
    # F' j* i! Y" {' Z
    8 ^. [! S6 E( H' N+ B' s; [% |9 H. }* Y+ v& Q
    ' w7 J' S. E- g9 o
    tr(H
    , }' t+ S5 @+ r# @( x* p0 OT
    2 S7 l& V6 z, _7 [/ N( a% l0 v0 { LH)s.t.H
    # O0 F8 @* v+ x" M: D6 bT, B4 @1 }% D4 u5 e! u7 ?* n
    H=I  [* v: X" R) A0 [& C" z  o

    9 a7 h9 E: K; u) c, R% R对于优化目标t r ( H t L H ) tr(H^{t}LH)tr(H
    " e$ g9 z; T; \+ H7 Q) j/ `; ?t5 Z; u5 @+ [" t/ B( N9 W: l. `4 h
    LH)中的每一个优化子目标h i T L h i h_{i}^{T}Lh_{i}h
    1 h9 K! E# {, F9 e6 D. }$ T6 f; D& {i( }: a2 S6 o& l6 W; X2 H
    T& {1 Q' k2 m7 q4 z* ~! o

    3 M; {% A/ l% {# r. [' |, p% [( y Lh
    + S0 ?5 C- a0 w  \" M2 b0 ]/ Ri
      M; l4 W+ X4 t1 p0 R6 U/ r% S2 J( _; d- [
    ,其中的h hh是单位正交基,L LL为对称矩阵,所以此时h i T L h i h_{i}^{T}Lh_{i}h ' {; N9 C6 O% \7 n" _3 y
    i
    ' Y8 X0 _' O2 `) [: {T
    , E2 y* F6 m. ^# f1 A" B, }/ c- B3 S; b+ R- A
    Lh   z. x; P: H! p8 Z4 c; P7 y
    i
    % _2 N* }" f' M8 K' _. V7 e9 R9 n2 d9 @
    的最大值即为L LL的最大特征值、最小值即为L LL的最小特征值。而在谱聚类中,我们的目标就是要找到目标的最小特征值,得到对应特征值向量,此时切图效果最佳。所以对于h i T L h i h_{i}^{T}Lh_{i}h
    ! A+ B! M& h% k% m" Yi
    4 \, T7 p7 v) w) |! S! r: [: ?1 HT! }/ ~, u' X2 s9 E1 `( Y) R9 w
    5 j  m! [- }% X: H3 a% N7 }
    Lh : e: T8 h; j! F) k# [- }
    i
    ; D" k8 t0 l5 v- e) u0 a# Y) D' Y9 |* |1 B
    ,目标就是找到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
    5 [* ]  t% N( Q2 ]t
    + s  F0 t- ^4 }- l% Y! y/ K LH)= 3 I+ D" X) @* _$ [$ Q
    i=1
    & ]* D+ W1 L, S2 m% `
    + T. u8 y: H" E& |k( N( G2 U5 E) w3 y! s. S

    ( l/ i  g8 r9 t- ]6 e h $ }% j6 s4 ~, x3 V4 h% J/ }: g8 c" v
    i8 x9 Z5 `' G( ~( l1 W) R3 J
    T
    # [: I4 V9 }( V
    0 y6 Q4 m' i/ }! R/ c/ C Lh
    ( x' X0 i. c) \* P) qi
    7 T" e( i& i( Y( n+ @% j% M" F! E* C9 j: X
    ,则目标就是要找到k kk个最小的特征值, V2 p8 E; {# y$ @+ L$ I
    : `4 p1 f$ v: F) f9 s2 c
    因此,通过找到L LL的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特特征向量组成一个n nn×k kk维矩阵,也即H HH。一般需要对矩阵H HH按行做标准化,如下- `) S5 t  x7 b2 Y( _; V: i5 O7 ]  v

    " n# u/ U" H3 ]" c$ U; _# K! m一般来说,k kk远小于n nn,也就说进行了降维
    / O' b8 P# h; ?7 E2 y% Uh 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}}}
    2 x, N# k1 o3 N/ a9 w; r  B( |h
    & j* Y& P! a  g$ k3 Nij
    5 f- d2 c( N% n) \1 z! m
    ) I* s" f: h" r. j: N# k  L* K
    6 D' k" d. A( D2 i =
    , m* ~. }0 P: D; ~% F: V8 }4 v( 5 ?& V- f# z' `$ X! ?3 K
    t=12 G' t" ~5 t& ~; g( v7 U- m  U+ d; c
    % M! w/ Z* M( F9 U' e( z
    k
    7 M  e5 h) R7 f# W3 L4 @
    $ n9 Q/ Y7 b, ? h : ?1 v! x/ W' J( V- @1 s
    it- [& R; K9 {  i  o
    23 J4 s) d6 j7 C; n2 a
    ( O" k" |6 j( t6 j- ?0 q+ b. r$ E8 Q
    )
    0 t9 z9 M- D+ s2
    % Z' X0 O6 }# z9 ^; M& }1+ {' \7 V: [. v! U; X6 v
    - b4 _; ~+ l; |" S- C. G

    0 u$ L# t* T8 X8 J4 e$ R( X8 ^7 J, v) w. p$ t8 S
    h
    ; c- D/ Y+ M/ j9 Y8 f: Gij
    ' |: ^4 d" v0 F2 r# n3 z$ ~8 y  p( {% ?. K( e
    : ~. U/ y1 c2 S1 _+ @9 `

    0 C) g3 J7 w0 {3 Y7 ~7 s" H
    " q/ ?/ E, g( j' F9 w: E1 {7 |5 X1 s
    这里需要注意,降维后导致得到的指示向量h hh对应的H HH现在并不能完全指示各样本的归属,因此一般在得到n × k n×kn×k维的矩阵H HH后还需要对每一行进行一次传统的聚类,比如使用K-Means聚类, r0 {. C1 ^( c7 `1 ?+ K% [- Q; y

    + c$ y5 w& h3 P- o! B. H- |(2)规范割(常用)) e  n) `$ [* F6 l5 d
    规范割和比例割类似,只是把比例割的分母∣ A i ∣ |A_{i}|∣A
    . x/ Q. l7 X4 M& d4 I6 |2 \; ?i
    * e8 h1 N: B) W
    3 z2 O- Q0 J7 u8 {. S ∣换成了v o l ( A i ) vol(A_{i})vol(A
    + x# ~% H1 R! o8 o+ O$ ei3 z! N  A' N% Q, [+ K6 K
    / U4 e9 A, `* z, @: W
    ),定义指示向量h i j h_{ij}h + J. c8 k8 E2 `! ]& n3 z7 y
    ij
    ' N8 M! ]7 \  m! J9 `* T
    : r) |& W5 k2 h" R: `9 d& g 如下" X2 J, b8 {0 R/ `; Q

    3 s* z$ B* ^2 C, R. d" l8 uh i j = { 0 , v i ∉ A j v o l ( A i ) , v i ∈ A j h_{ij}=  y+ n* E1 z2 w$ M4 ?
    {0,vi∉Ajvol(Ai)−−−−−−√,vi∈Aj
    * k( L* g; H8 |! J% @* n{0,vi∉Ajvol(Ai),vi∈Aj
    5 U# M# ?" L$ T, \8 J4 xh 1 C% u& k5 O& S# ]
    ij
    : h/ Y" X2 a+ r" d7 e
    5 u8 `' G8 l. C ={
    5 Z' T7 P0 J* ]0,v % f& ^: @" U! O
    i3 d+ y3 R( T8 n2 j

    & ?0 {0 N# u+ Q* _: Q/ l. X
    9 p2 @  @* _# f8 o- u* D9 n1 F/0 i" F. X9 `5 v, q! K
    A
    6 X% |' d, H, W$ G: hj* Y  b) G3 }% V( `9 ]8 r" a3 u
    , C# A5 K7 A: }) h4 s- j  D
    " G4 P; Y/ [& T& x" r8 b9 ]
    vol(A
    * x7 q; r9 u# Vi/ t; y2 e2 _2 v

    - q! |. J2 n1 @8 g6 E$ f7 U, A% d ): b: A* p7 E+ \  U# B3 R4 e- y
    0 U+ q- p3 Z% }) P' _8 R! N
    ,v
    + r# O! g# O' X: N& L' ^$ A1 H6 wi
    * \1 J3 y* |* F/ ~: G( x  O( L& x
    8 f+ X& Y* }) e" l3 g$ H ∈A 6 l$ q- _+ D8 S& b2 t2 I
    j
    ; r) O/ w% h; U. }' D0 F/ v
    3 j5 F9 i8 Z8 O& d! f5 Y0 U/ J0 j- w. ?8 W

    / x2 |+ a" o- [% |) d8 u
    , \( }, `/ b+ q1 B! e- G  h
    4 D" {( P: X" Y) a2 ]" o于是,对于h i T L h i h_{i}^{T}Lh_{i}h 3 |9 b* O- q: ?' B+ U. ~. U6 E
    i
    " S9 l3 _1 k( c- }T
    4 o. g4 {: J0 u9 Y; g, w4 V4 v. W% c
    ( k' V1 l9 D/ h- [, a% j Lh 4 }4 g- a- M! r6 f6 h* F1 g. W7 h
    i
    5 D( d+ X( v5 v" H, w+ u4 X  `+ n' u
    ,根据拉普拉斯矩阵性质可知
    * a4 C; f1 X; j7 Z0 [' L; d% E5 R5 ?" v$ m+ }- E, q- Y8 P
    对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f
    , z2 |! r: y$ A. y  f% G( W. G$ b1
    5 b* A: ?$ x6 H: C' W% Z1 C# |# }4 V
    ,...,f 1 L$ s, {  I1 o: l
    n
    0 m% j- J& o0 b2 V3 f1 S, p$ s5 ]- R% v7 t/ D# w4 ~' ^
    ) " d7 d( |& p$ \5 V: B- M8 _7 l/ ^
    T
    6 I/ I& l2 _1 r6 C( c' F ∈R
    0 |7 Q: f# B* _+ g4 @n
    # r9 H' D* e/ {; i2 T: x ,有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 % }9 f% y& E! Z7 Y4 O7 p3 @6 p
    T
    . H$ c. m3 y0 `5 L4 y) R+ ] Lf=
    . O# w" e9 u, |1 ^2
    1 u8 X- R+ H( p" x7 ]: G1
    ' T$ E+ j# l* Z! \* r" u' y
    ( l( ~8 [8 G1 ?' n1 R% D7 k4 U. A! y# U6 W3 W( \
    i,j=1
    ) ~* c7 o4 K3 I8 g" y+ v1 J/ D0 p8 }- g; X7 R
    n
    * j' ~6 Z0 o5 a9 v' e
    - A3 m( j3 A6 v, ~$ @ w ! {; r$ v* x8 k
    ij
    + e# G( s% m; y% F' `0 a& `0 d8 a( q* y% F- k
    (f , W& y6 Z& n# ^( ]" X
    i
    $ D! m3 W  D4 ]0 N0 Z( M
    4 l  L; T9 T( J. Z −f
    8 ?# q7 t3 G" L7 Kj
    & }% C3 T/ b, K4 Y7 Q5 R# d+ l% l2 z, l
    )
    & }% l: [3 a* Q( J- M. Z2
    ) i) U2 g2 n/ B% h* G+ Z$ y9 K8 t4 d3 I( g; ?, h; H
    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})}5 z& R- k( b" m' h% |% g" d
    h   @" n8 d5 ^) q1 n* N
    i5 ~; F; P! N0 r- B
    T
    ! e& @$ L. ]% X( P
    $ U7 H$ ?1 u4 F% n" Z- m Lh ; G1 X# ^0 Y& @! E2 h  j# n
    i
    5 ?6 q, L5 X/ `6 E! Z& r4 ^7 N
    # P- n3 `' ?# j: O5 |0 r# u = 5 w/ {1 _+ n$ P/ R' p0 M5 y: C
    2# l* x5 |- P4 A+ ?) G' ^' `# ?( N
    1. N& }) b& _, Q' H/ H/ Z
    % t7 _8 v% }# E) y

    , E1 {, l! \  k1 a$ [m=1
    2 a) n" E9 k; r# o
    2 ^0 V- z. H# e8 x$ s/ U0 V  _8 T; ?2 q% n. h# ?: ~
    # R  M# @: s! v9 J' t! d2 E
    n=1
    0 n5 ?4 w3 D% Q  C- p
    * t6 Q' G. C) |. x3 }! D2 V$ J+ m% G/ H3 [: K8 J5 ^
    w * N0 I, ^! U& p/ H2 ~" [3 G
    mn1 q8 B0 F' M$ z! C% \
    + [9 C2 A2 \: P. ?# X6 W
    (h
    # a$ Q7 H1 M) K" R  o. G- bim1 O3 ?8 D8 A1 r5 `7 T7 h
    * b! B; R2 B5 n
    −h
    3 p& e3 q# ^! }) Qin7 k) y" y; j: N9 r+ a
    * k, ]' `  ^* e% Q6 Q) D
    )
    9 J" V7 P# u. r+ @2
      q& V0 J* I0 l' r = - N" I% H9 A) G5 B) z3 M
    vol(A
    " b& v& w3 G6 Q7 T! l' h- d0 ui' B: h# s+ f( Z3 K4 l
    ) I. M( W1 x3 a" a" Q/ ^  o
    )
    0 `! A- P. \* A2 \/ r8 g0 S% Icut(A
    5 n6 K& e6 U: O$ V( N8 B7 Zi
    3 r5 N7 f% M* M; [& k
    ( {) I7 z2 b: E , - ~. S* ?0 H$ W, o& j( [' ^, j
    A
    4 p4 r8 z* U2 n% L9 D& ~ˉ
    ' F" G5 G$ k3 z3 K. t# ?- W5 g+ L/ c$ w9 d, D, H4 v
    i
    ( i/ @7 Z1 w3 Y# U' T3 F; W
    " X# [, f' n6 P, ~2 A )
    - [9 W6 z+ F! o$ C2 G5 ?6 _/ {7 S
    9 O4 ^. r; q6 L; E) Z. ^$ O; }+ t( [! B3 x; i/ A
    # ^5 F9 w3 V( T* a. a- w
    严格证明过程请看刘建平博客:链接
    8 s# Q2 X" c" P7 K可以看到,对于某一个子图i ii,R a t i o n C u t RationCutRationCut就对应于h i T L h i h_{i}^{T}Lh_{i}h
    " t% H) s7 I2 j) h( z. F( w) n1 [i9 i1 u8 e' {7 s- O. t' I  T
    T2 v* I* \: m. J, c4 Y! d

    4 M) }4 O! |* O' k9 ?! ` Lh
    8 D$ o1 I/ w0 Q2 H; [i
    # N7 w1 C6 \9 C) P) n
    9 o* U* R0 B% d/ H1 \4 D ,那么对于k kk个子图
    ! @% |3 N" v- s1 t% [) W7 K/ v. ^
    3 j& Q# M0 S1 G; SN 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)8 _% y8 u& s4 E- w
    NCut(A 7 Z& u6 q& n8 G( w
    1
    # I8 v1 D( d6 M3 H, z3 U4 t8 b" f' A& k3 y
      C# \7 u* K3 U3 V ,A
    " G- q9 |9 e, t& @4 f' j9 ~# r; [0 F1 l2
    - E. A* G9 x( b, g, `
    ' I/ L. [+ V) |4 R ,...,A
    : N  |1 c$ d* F; i8 n9 R+ uk& p2 F" @1 _! R# R  z

    & E3 z# p# Z6 c1 a )=
    0 `* z6 Y" [' p4 Xi=1
    / H, h) H& Y" E; j: h$ X9 k7 P' c
    ; I, L5 X' I9 e! S6 d' |  \k$ {9 Y% c4 O" y% ^2 }

    4 F9 r2 J9 Q& E h
    # E. m0 r; e9 wi+ H& M( q: d5 E2 Y
    T& I& E$ K+ S( l' l. K7 e5 w, H

    + N" W* D  Y5 @- ?' I/ S! [! \ Lh ; e" e! @* _, x1 `
    i) D( Y+ w" W, a! h1 C* R

    2 C$ P. @0 y3 J* q4 c = 2 O4 u5 O+ S' }- U( A3 w+ R  Z1 G4 _
    i=1# ^8 p& b0 j6 M

    6 H( z$ R6 O1 s& X+ D; Qk
    $ O/ U9 Y: o/ N* R, t: [+ s0 t- G- H. e; w
    (H
    1 ], O( |2 \, vT
    - O/ J' g3 ~0 D% { LH) 6 u8 ~! }2 o- X; t" d6 Y( j6 y  s4 h
    ii; n* k0 w# D! g5 S( y
    , Z" }- ]0 Q/ M
    =tr(H
    7 z5 {( @: t  Q0 `  c" U0 rT* b* P& a, t4 \% C4 h2 ?6 f
    LH)
      F2 b$ ~! }  F
    + h  m$ j' Q  Z2 N/ [但此时H T H ≠ I H^{T}H \not=IH $ m( ~4 u$ F  y# t- i
    T. s- I' f* @/ F% Y6 m0 R. K+ k
    H5 P1 ~, r6 ^! S1 V5 S

    / w1 `, ~/ P5 S  Q. G% o6 ~0 j$ _4 q=I,而是H T D H = I H^{T}DH =IH
    $ A6 H( z7 @- h$ F9 s* x2 LT
    " i$ H% G& A: {0 k, f DH=I5 b7 W* ~0 S& [2 z: N' l
    + l8 M& |' s6 v. U1 O* [
    这是因为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 # Q7 C- `% ~( r) m
    i
    / i" U, x. j, ?3 e( @T
    & z, R3 d6 q4 T% l
    0 r+ f0 |6 G' m# Y Dh
    ' i. s6 `2 q5 b1 i1 ui
    - v& P% R& I" K, z; R: }6 T+ S1 [# P) O, |+ B
    =
    ! s/ P  w! C" A7 s- {$ Tj=1/ }; E0 W2 S* \7 b8 w1 {$ l

    $ i- O4 k7 V: i- H! v) ~# `5 \n
    6 ]( w1 q$ q" J- X" Z4 V! O! o
    7 E1 [6 v2 ~9 j3 Z5 n' F- B' E h
    ! i& T* G8 [+ v7 i7 Y0 [( O3 ]2 H  [ij
    8 [; W) F- T$ r; b/ ?5 U21 }$ T* v0 y9 ~) }4 Q
    " l, Q# Y# E4 \; J5 ]4 |7 Z
    d
    ; ~) I, S) f5 n# k1 Ej
    & J- M$ F- |6 }- }+ ?/ {: {+ `8 `
    = * \1 `8 w, O7 [# c# z
    vol(A ' V* G& [% n& E
    i3 `7 e0 }! k2 J7 Z

    / V1 y* h* ?) \" M7 b+ U. y )
    6 |+ o) n; g3 \& ?: ^1
    ( K2 }- {4 Z8 L% u$ D' N
    2 J4 n% Z8 n/ \3 G% }$ |
    7 l& Z2 V1 t( g. F% q4 Y5 v2 Nj∈A
    " A/ \+ S2 [* H2 Si; Q8 J# _) h! D# a9 m( Z
    ' t8 A& j9 t* ?# c0 h' F1 M' }8 @
      {) }" \. `9 B

    & y3 t5 K; y; n& `7 p% q2 L
    3 E& t0 |$ U% N/ f d ( h# E+ P+ [+ O( X; H
    j, [( d- H0 E9 K7 M
      l# m2 i4 ^& \+ b
    = 4 B) d( Y6 ~9 H
    vol(A
    # f" K. c9 h, B$ Di
    ! J) `& d! r6 S7 y  ~4 B# D, o0 x6 M7 P/ ]- c9 E! l5 W
    )
    $ k. P& h7 U6 }# x  }/ s1
    ( v6 n6 t& ~0 b8 V
    / Z) ]# f# _# M vol(A
    ( O3 ~7 [( S/ a7 X* ei
      x- ~1 s" T. i0 z
    3 @, A! a7 v3 r" k" A )=1; U) `4 z, u8 b8 P8 ^
    因此,此时切图优化目标为. I' R8 [1 O7 V+ l: x
    & V! \% H( H2 m% v. P; f- i+ U
    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+ p2 H6 S9 W% F' x
    H
    5 x9 V' F+ D$ i& Oargmin! s" x% g2 `3 V6 L# C
    / n  a# r0 I: c* @1 I0 ^
    / B/ c, M( u9 J" o% s' t
    4 b( t" V+ W5 H4 @8 J+ W! n
    tr(H 5 u0 w$ ?8 |4 w' i: j0 Z- y! T
    T
    + N3 Z2 b9 X4 z  t7 t% t7 X LH)s.t.H
    & F5 T; d: y9 ^9 F* mT- X+ l. D1 }! n9 ^' J* @
    DH=I
    : S5 N8 }$ Y4 V0 r: B9 K
    ! f4 C* G; V# p6 o1 H4 }( @但是现在矩阵H HH中的指示向量h hh并不是标准正交基,所以需要对H HH做一定转换。令H = D − 1 2 F H=D^{-\frac{1}{2}}FH=D , y& L5 L6 N, d0 {1 L5 C2 K

      z% j; f+ r- j# T; r23 ?8 I' {  K8 ?8 D
    1" y1 d( H  J4 [
    1 n9 `! @; w( g  A! J" @6 `
    ; e- {0 T* p/ V" r* L3 L2 M# t
    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
    , j1 {1 v; _& ]T
    / @. w0 l- `2 A8 w: |4 q: ^8 l LH=F
    4 T" J0 ~. [# m3 W) [T" f/ r; |; }% ?& M" b9 N" T$ ?
    D
    7 i/ g; P: x$ u+ Z# K3 {+ S9 H7 i  f- a  v# k- s3 b
    2
    5 \6 f) B% P' I  I* E1 ?; `1' _) d/ j0 w1 d5 H
    ) n& I# X3 ~* U
    % N, q+ L8 \# s: g% m  R* z
    LD
      p' F( A3 Y2 E, }
    + u& d0 r! r! l( f1 ~26 q( g7 ^5 h, K% }1 f
    1( f7 }0 D! T) T0 R: ]" F
    8 n: B# p( v- L& K# ~) h
    * e+ E8 R1 _' f3 f8 b; a
    F、H T D H = F T F = I H^{T}DH=F^{T}F=IH " [" c0 P2 k: m; C; e
    T# ?  m& Z" C, D5 K! Q% r7 W: I4 y
    DH=F
    ) L/ W7 l; D1 W+ LT: C5 u- J  v2 r7 U7 E
    F=I,于是优化目标变更为4 O2 _) t0 S) r
    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=I4 v+ A* T% U  u$ v: j7 i8 Y7 j
    F; p, Y1 @0 q% S3 M) \/ g
    argmin" h7 L( k% Y1 D4 @/ Q6 k

    3 c( p3 y0 A7 b1 l1 `0 u9 W6 h' h7 P$ K2 _

    / y$ U2 I# n* p. F& U5 \) B( | tr(F
      t3 t' J/ A: LT
    : F/ @+ X5 [. F( t D
    2 ], t' Q4 r! W; \9 T0 a8 A( @, O& l/ S4 W7 m1 n* i0 M9 e
    25 d) v' ]" q! Y6 n) L; m
    1
    8 |; H, z7 U& ^6 c, |5 N' a+ W4 ^" ^" m( W/ c
    " j* o4 W+ r( @! `3 O- u
    LD
    ; a( Z/ E8 }( B5 S; [& L' ]
    1 P. P( b& k" @( f27 E' h6 b/ O5 T  |/ o; J5 a
    16 x$ ?4 Z' h$ M9 Q. x/ w

    4 o2 ?8 U& ~1 E; V1 j% [) \0 t8 r- o
    F)s.t.F & |0 i/ w8 U) @+ Y
    T& {3 W! h4 Z. x: N0 a* _6 B
    F=I
    6 v0 \2 U3 C) z) L9 o# \* F. Z% n% B+ P- d3 J  s
    现在,和比例割一样,通过找到D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
    ! s2 \/ X8 c) o, w; M- W5 Y9 r& `, }0 z3 C( i+ `! p
    26 J* f* d/ B1 u+ X  s- _+ _) O
    1/ J8 l+ l' C  E5 m+ ^2 e
    ! ?$ t3 ^' L. \/ L" P) j  N/ n5 S
    3 O: j9 l3 P( F2 j1 Z
    LD
    " J3 V- D: \, W9 F+ b& I& V, }5 b% w" N: Q
    2
    . d5 }- |7 O0 E! t6 D. o" J16 A7 a+ Q2 U" o8 A" c
    : w, {* @+ m4 n* L" M
    7 [6 D! T  _* X  E
    (就是之前的L LL)的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特征向量组成一个n nn×k kk维矩阵,也即F FF,最后对F FF进行传统聚类
    7 D, _* X- S& D: V5 l. B
    . ^  q/ W3 C9 o& z- F0 U1 ]一般来说,D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D , U& B7 ~  {$ r2 [4 t/ \3 [

    ; H2 Z1 c/ p" r$ |' ?* Y1 }: l: ^2
    ! C7 P) V9 e2 W0 ~7 a1* p6 D$ D& r0 l0 S$ e( Y8 H" D

    ; Y$ m0 J' `1 P& l. }- f
    8 q, X& o5 v$ W# A: ^7 t" }- P' \% D LD 2 K) `7 F1 ?. K
    4 P1 S* q: S+ I9 f
    2/ A8 v# R/ b; j
    1
    + a, T7 O, R2 n. T6 s6 ^4 T) A6 {: b% @/ z+ H/ g! U

    1 t) c' v* g: {) U: F 相当于对L LL做了一次标准化,也即L i j d i ∗ d j \frac{L_{ij}}{\sqrt{d_{i}*d_{j}}} 6 ~" i* Z' `) \# h1 M
    d : n: U$ @% b3 v* I6 I/ _9 e( x& n) W. _
    i
    / R4 i: y4 ?+ U2 l/ ?1 i) G
    & R9 \6 B- s. m" E+ B+ L ∗d ! g) l7 G2 G* W
    j
    / f% L" ^" I+ }" G; ]
    5 K" [6 `1 q# E8 z* N: z
    ; B* N6 C3 b0 Y* M! O
    ( H) ?' y! L0 n, E0 @9 M
    1 `3 F) U( E+ o; `" g( U% F" yL
    $ ^6 M$ V8 ]% C, Sij( B+ P) h4 M) z. q; t# o
    ; c( \) S  c* ~2 E6 B, L

    5 q0 R: y7 v  t: u0 L
    ' F: m- i$ ^  h% O8 q8 u! w( L
    8 M' V) w7 ~" X& y7 E二:谱聚类算法流程
    9 W# ]6 G+ |! \  X( E! d5 i% p给定数据集D = { x 1 , x 2 , . . . , x n } D=\{x_{1}, x_{2}, ... , x_{n}\}D={x
    2 Q/ b- Q7 S0 f* ~5 }0 Y, T1
    0 Q, Q$ Z8 O* [8 @4 G
    5 h' T, E- B' x  @2 G8 z: S; D ,x
    " ~9 [$ e* a7 w" ]& Z' R2
    + d9 F9 `0 M+ q7 E6 V
    8 X- K# l& u6 V+ g ,...,x
    - v# ^: A+ `+ C3 l& v# pn; i- x) [1 R% @  O/ x) a- @

    * R3 f) u* x. Z/ X0 w7 Q }; K) o; o" k8 a! g" h

    # O% `# J4 |3 R. N" T根据输入的相似矩阵生成方式(一般为高斯核函数)构建相似矩阵S SS(AffinityMatrix)+ d$ Z" C- |' `3 T5 b/ R
    根据相似矩阵S SS构建邻接矩阵W WW,再构建度矩阵D DD2 N- q* g$ i7 f  J6 w) T" f" a9 [
    计算拉普拉斯矩阵L = D − W L=D-WL=D−W
    * p" J9 v5 U% D  i得到标准化后的拉普拉斯矩阵D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
    # `9 m  J& V: ]4 e* c8 ^1 J' z$ Z" E' J1 i
    25 {, T9 x' R/ {6 G2 P* t% d; T
    1
    * ~6 U2 \1 f& k/ b0 L7 V1 c
    : d  U/ `/ {' [+ a
    ' ~! D' Z0 j/ \" u) u+ K LD
    : o: k; @1 m) D6 M1 E# o. J. T  k
    3 S5 x1 }1 F6 k' T% u2
    6 p. N! @. l& w; H! `16 R7 H8 q' |( _. K$ U! K
    ! H; B/ }. O. ?) u' J$ b  b& b

    1 |; t. t8 j4 W, _9 a$ _0 [+ {
    7 K: ~' i$ s' c$ S计算D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D & J& ?6 Z: M! l/ Q4 e
    ) m3 A# _" t  V* _- T4 j, H2 j
    2
    + l: w0 o* o5 R) Z$ n" ]2 h1) y# E/ _3 h5 ^) J

    : W! a0 h, |2 |5 b1 k
    ! ]4 a5 P+ t- C8 r1 b, y0 ? LD
    8 _9 b9 ^5 V, N% q% b$ x0 k
    4 `/ J) s( z6 N2 M( w2
    ( u  ~. A7 k0 A  F7 z+ [' e* C1
    ; Y+ d2 H9 I" v/ k4 \
    & B0 ^, {6 F9 d' w0 s$ S7 I+ T0 i1 \
    最小的k kk个特征值对应的特征向量f ff
    + @: }8 N9 Q# a6 G: H2 D将特征向量f ff组成矩阵并按行标准化,最终组成n nn×k kk维的特征矩阵F FF
    2 f& N: c1 l* d" l2 ?F FF中每一行作为一个k kk维的样本,共n nn个样本,采用某种聚类方法进行聚类,假设聚类维数为k 、 k^{、}k ' Q) W; l( H  y2 k
    / H7 Y$ `% Z3 y. e& ~
    8 Y" {7 }4 u$ B4 |! g7 z
    得到簇划分C( c 1 , c 2 , . . . , c k 、 ) (c_{1}, c_{2}, ... , c_{k^{、}})(c
    - a$ E, n; I" Q, f1
    # k( Y/ O5 @" L2 _* ~2 ]6 W) d# ?% z! F
    ,c 9 x/ I9 j/ v& k4 }5 g8 x
    27 n% f) G/ y  [% c4 `+ i
    ( I8 R3 d. f1 z; e) J
    ,...,c 0 X; `% X2 D& w6 f: L( r
    k % Q/ Q" R; r+ l$ Y8 o6 J
    # I5 Q6 u+ w& z+ h; f

      C6 o, H9 s! o" W( s( Q
    ( G- r/ t  c6 {; w )) K; `9 V  `& N
    三:Python实现
    2 y1 H5 Y7 W* b" a* Zimport matplotlib.pyplot as plt
    8 F  i5 w& s, [# d! W( ?5 w1 y3 ^1 Jimport numpy as np
    5 R9 u8 B- R: gimport pandas as pd
    . |$ Q' R' T+ W# k8 bfrom sklearn.cluster import KMeans& ~7 W! {. }1 v! g* S
    from sklearn.metrics.pairwise import rbf_kernel
    7 n& t% P1 j, E. N/ `from sklearn.datasets import make_blobs
    % P5 a, n" z) R, d+ g$ xfrom sklearn.preprocessing import normalize3 y- v7 E: c9 x& F' Z

    % a, w+ M$ R0 m1 y- ldef get_affinity_matrix(data_set):
    . _! f2 E( V/ i; c7 T- K    #  利用高斯核函数计算相似矩阵(全连接)
    3 g/ a7 Q: W; e$ k3 m6 t    rbf = rbf_kernel(data_set)
    # L  i4 o: |9 p. Y- o3 }    for i in range(len(rbf)):
    : w+ a7 w$ a! i4 R        rbf[i, i] = 0
    $ v& _, u- ?# u/ P" P0 F/ X    return rbf/ Q1 v* e0 U. ?: W& H
    ! h$ n1 s& ~. `) Q" H
    # D' E# U8 Q1 D) c; m5 p- P0 \
    def distance(x1, x2):
    ! I' Z+ T4 l  [7 B  T    """- F; V3 g7 w& g1 l3 g
        获得两个样本点之间的距离3 ^; ], H2 b1 ?3 O3 V! ^
        :param x1: 样本点1
    7 w( f& p* ?% ^, }    :param x2: 样本点2) W" S. }, H8 v
        :return:
    5 F, z7 E, v' m7 t$ ^    """8 O. O# R, |* L4 L
        dist = np.sqrt(np.power(x1-x2,2).sum())
    ' v( Q+ a8 G- x    return dist
    4 z4 H4 ~) N! f; M: [9 }% q6 Y6 W  w$ m3 X
    def get_dist_matrix(data):9 H. k1 I& B8 d; z" D
        """# Y3 g) e  f8 r# Y; F$ L4 @
        获取距离矩阵8 J1 B) u" U. ^* G8 K$ Z
        :param data: 样本集合
    - T( c4 G; n, x# f2 ^" `    :return: 距离矩阵
    ! d1 n( u9 f7 \$ p# O, Z( T    """) ^4 T! ?% a6 A6 ?
        n = len(data)  #样本总数3 _" j# B4 r. D* }3 D( q3 V
        dist_matrix = np.zeros((n, n)) # 初始化邻接矩阵为n×n的全0矩阵- t4 a/ |5 W; D
        for i in range(n):
    ( a" Y% y9 c0 ?7 t        for j in range(i+1, n):
    , v. Q2 [6 z$ g' K& I4 ^3 o8 ]# J            dist_matrix[j] = dist_matrix[j] = distance(data, data[j])
    4 x. P- Z  H( X8 D. [( U    return dist_matrix
    , T3 j8 [8 j0 F3 n; `+ l: R
    ' t$ E! D  [( W7 Q$ Vdef get_W(data, k):6 F0 j% x5 O; N" q
        # 获取邻接矩阵(K邻近法)
    " D8 Y6 f. V6 K2 v3 |. r    n = len(data)
    ( u+ `0 H$ I: W2 k    dist_matrix = get_dist_matrix(data)
    - s4 s# f5 G7 U% Z) x    W = np.zeros((n, n))+ ~, }1 K1 Y6 g- {; A
        for idx, item in enumerate(dist_matrix):9 h6 o  Y! P9 J
            idx_array = np.argsort(item)  # 每一行距离列表进行排序,得到对应的索引列表
    8 b# H  g# C6 O* m& @) [        W[idx][idx_array[1:k+1]] = 18 w1 ]& H7 A' w! U$ r
        transpW =np.transpose(W)
    3 B* z7 B) C- x, i) Q) n    return (W+transpW)/2
    & }; q) q$ N$ h3 I' }6 C4 E$ _8 y. D4 @! s
    def spectral_clustering(data_set, k):2 K. t, K' j9 }. s) q4 A
        # 利用相似矩阵S得到邻接矩阵W
    , D% q/ X; r) u' e: R    W = get_affinity_matrix(data_set)  #高斯核函数(全连接法)7 x+ x" c- ~! B" c! f! g7 H
        #  W = get_W(data_set, k)  # K邻近法2 D5 Q* r0 e2 R! R. Z' Q$ B
    ! W6 |1 P9 r  H" n
        # 计算度矩阵D,并得到矩阵D的1/2次方的逆矩阵(便于计算拉普拉斯矩阵)
    * Z) \$ y. D2 H+ B8 b    D_inv = np.diag(np.power(np.sum(W, axis=1), -0.5))
    6 Z4 v1 y7 L' F2 Q8 l* T+ d( _6 w
    , j0 j7 J7 s/ O! j" D2 W    # 计算拉普拉斯矩阵L=D-W
    / m  f* x4 z% E2 X    # 标准化拉普拉斯矩阵l = D_inv*L*D_inv=I-D_inv*W*D_inv
    4 q: v3 ^* L! ~2 I  s    L = np.eye(len(data_set)) - np.dot(np.dot(D_inv, W), D_inv)
    ' r1 C+ `1 t9 ^( @; a4 p# P1 Y1 _. f( d8 d. J& n8 N
        # 得到特征值和特征向量# b/ F1 M' X# R( Y2 O. g2 l
        eigvals, eigvecs = np.linalg.eig(L)7 e- ~9 e" j+ h% C1 ~

    9 @- y8 {! `# F) ~' W# L- C7 w& @' n    # 找到前k个最小的特征值(索引)
    ( j4 P$ S9 f# z/ `2 n5 n    k_smallest_eigvals_index = np.argsort(eigvals)[:k]( t1 X/ H' x  A( p
    / ~6 K& G' W, a
        # 取出这k小特征值对应的特征向量,并正则化8 w9 f( }9 }" @1 v: F
        k_smallest_eigvecs = normalize(eigvecs[:, k_smallest_eigvals_index])
    . l" g# f0 C+ P- @
    6 a" V9 f9 T$ V$ `) r# ^6 a; c    # 使用K_Means聚类
    * A& i2 T$ j4 m0 }) P3 }    return KMeans(n_clusters=k).fit_predict(k_smallest_eigvecs)
    # K! @% m" E. _- \/ D
    # @% b) b* J" w& ]# X! S) B1 @7 i' E& X0 m
    raw_data = pd.read_csv(r'E:\Postgraduate\Dataset\jain.csv', header=None)
    4 v+ t/ G4 R% y8 Uraw_data.columns = ['X', 'Y']
    : O; f# x: ?/ Q# F$ r5 |" `x_axis = 'X'
    $ X+ m2 z/ a' Ty_axis = 'Y'
    ) y! `4 g" k5 [$ K0 p0 }: Z( r) m9 T. B7 R3 C( E5 b+ j7 W9 K
    examples_num = raw_data.shape[0]6 P/ }. r) H) i1 l
    train_data = raw_data[[x_axis, y_axis]].values.reshape(examples_num, 2)
    " z: x+ q5 t( N5 W2 D
    6 j) C% a' l! \! H4 p! L: _
    ) x8 l# T4 t: f4 i% G) ?" i6 pmin_vals = train_data.min(0)
    ( q4 `5 r- F+ Y7 vmax_vals = train_data.max(0)& E% J5 r4 h1 W+ c0 h
    ranges = max_vals - min_vals
    8 Q" z7 T0 e2 h* o# k# cnormal_data = np.zeros(np.shape(train_data))6 x, h! R: d6 J+ P9 E. L9 g& S/ u
    nums = train_data.shape[0]
    6 Z* T. |9 ?5 E' ?( M4 ]normal_data = train_data - np.tile(min_vals, (nums, 1))( r5 A3 j3 Z5 N2 D/ i
    normal_data = normal_data / np.tile(ranges, (nums, 1))
    5 g  I/ M0 t% s$ h% Z7 L0 I. @$ M) _, x" l6 {
    labels = spectral_clustering(normal_data, 2), M+ x: L; f0 Z4 P( v, U) V7 }0 U
    ! i& t$ O* ~; f- d6 g6 e
    # 原数据
      O3 k' V$ [/ R" ffig, (ax0, ax1) = plt.subplots(ncols=2); I( J- U' A+ @! M4 U
    ax0.scatter(normal_data[:, 0], normal_data[:, 1], c='black')
    - i# h4 V# x$ M# nax0.set_title('raw data')+ H* [$ o! U6 X5 q6 p
    # 谱聚类结果8 I4 C# M7 ?: j" X: [6 ?, G' l
    ax1.scatter(normal_data[:, 0], normal_data[:, 1], c=labels)
    - Z9 {  I% `" c: N5 ?  k- e$ U* eax1.set_title('Spectral Clustering')7 k2 b* z! v# e: S# \

    3 t' k! f+ v; q( G; W4 h1 m; V9 Pplt.show()( Z5 f1 v6 m9 o7 }* v, o) U) }
    8 P5 J) t5 [0 M" ]
    17 T) P4 X5 U. m
    2
    4 m: ?( r5 \( n3
    . p% T9 o) Z2 X! w; R' V9 m% n% H47 n' G8 ?% U8 e5 z2 b# g" S
    5% t3 ]: H# P+ m8 F, b
    60 G! E7 a4 X3 {8 f
    72 g$ u7 D4 t' ?# s. W/ I
    8* k. M6 M4 S9 }
    9: f( A! ^( c$ h/ i) O( N8 q0 I. t
    10( A( G; [/ ?/ Z1 M2 r
    11% y- v8 S7 r% `! c( f/ |
    12
    2 X1 V- s8 T6 ]: e13
    % R. m8 C% X! k# K; E# @14' M3 s8 o* F+ H; ]" W% n
    15! w8 C% f: K7 `! p# x9 f' d
    16
    1 ]8 \8 T) }' v4 d/ m  _5 z) s$ B3 o0 x17
    : S$ z+ R4 d! \/ S! D, B6 ^) c18
    # N2 j( T- |2 a* |1 ~198 Z: c0 ~  W4 q
    20
      o$ o- T, R6 }% E216 [7 ~  {, r7 d
    224 P: u' A: {3 r9 _: L9 n
    23
    3 u: l5 w; F/ o7 [4 l246 U5 O" B" h8 C( f4 s. Z" X
    25
    7 A  l) |/ a7 T5 a6 H. R4 u& R26
    . w8 m/ _8 O  e274 V" }. T/ e. ^4 F# }
    28
    4 @. U( |" @$ D0 k# `. K; D295 B( x  E& ]6 H* T
    308 n! s' t3 J$ y3 M
    31
    - z; u2 A$ G. f+ l5 {32
    ' U! k0 ?1 P& q( k1 }# X8 q) }7 A8 T339 O& Q4 P' G# ^" }
    34# n0 ~. y2 s5 H- O" M) X0 L
    35% P7 }1 O* B7 P% b  g3 E
    36
    ) g! n9 \; ~2 [. b37
    5 o, b' o' o+ o9 I38
    ( {: t2 y, C7 T, I: }4 R6 _4 t397 s/ E- |+ q4 @! O
    40
    % m! x( X, }0 J: t41) G* R5 D& V: c- H! x# p1 @/ I
    420 x: O3 O' f3 T3 S3 \
    43
    , C# Y) t7 d. L7 w6 n' M44) Q) e4 S5 m2 o, G
    454 B3 W' ]1 e' i4 d; _0 K
    46
    / `* ~; U+ E. X  X+ Y47
    % l% I& b2 H! s6 P48
    2 R/ F: [+ p8 [8 `8 C! f7 H49
    . d. \) S* Y# Y% ]50* ^* j+ ^. v. X* n
    515 }, q+ A& v, q) T3 B( O+ K/ x
    52
    1 `1 W% u$ K5 e  E+ E7 m53' c' l9 ~6 h8 q
    54! H; P" h3 U8 s3 C+ H
    55
      C/ ~- L+ B6 ^- k! d* c565 M7 J/ Z+ _* {9 R9 r
    57+ W: N. X+ C( g. k  O$ }
    58" @" d# ?+ n& g- l: R$ Q
    591 U4 e! z+ X+ a3 z) C3 C# @
    60
    / G: v  }1 ^* k% S1 U1 b61
    1 Q1 c* P& ~+ ?2 H62
    7 J1 J9 z) F: b/ a9 L632 N/ J* B$ ?0 t4 q9 F
    64
    ) @4 S* S/ L1 n* a65
    4 v4 N/ U4 D# i, |. i66: v* @0 Y7 |5 d% f" m
    67
    - z8 D" ^/ ~/ n3 O$ T* G( N68
    1 Y7 ], ]" E3 @- x) v2 }69
    % h0 R* X. k8 D. |3 P% e70
    8 @! a. @  l* ~% S, l* B71
    8 M! V$ ]0 h- _! n5 j7 [724 m* S' I) m7 I2 E% j3 E; F
    73% {, y9 l2 S+ O  _. N: n$ G% X
    74' [8 @  H6 g# S; `% G& {1 \
    75
    2 C( s0 x+ c* A9 d. N76
    , S6 U, m; f! K) a6 J0 S9 G77' r  H! c- |+ i- ?: T6 [8 d' \. }
    78' U" D$ s1 o# S7 b9 x
    79
    - V: l  |; d7 S" Q. s80
    " C0 T! n8 ?+ x2 S0 _: Z5 z81, t8 N6 `% R8 b5 ~/ r( S
    82
      s  x. C( V) `% N83
    + Z/ ^) X. M: D84
    6 H/ o" W6 }9 G8 X( G5 y' c85/ A% F) M' |% N( F/ |
    86; l' h  R# Z" v% E2 A0 S6 a2 d
    87, H3 @/ a! Y- |
    88
    3 V  y  G4 ^& \& Q! [1 N4 @89
    0 Y9 Z4 h9 u% u; y" O9 Q. f' }! j90: s# Q6 w3 [# @
    91
      p! m* d+ n% Z6 v92
    & c5 e3 g' Q0 K93
    # V$ \5 M6 _# ?% ^, O8 O9 J94
    % S: ~( s" ?$ r) {& M: V95" i, w' [5 q# \. a
    96
    & m/ p! r* [* Z& `' ^97- e7 s1 D+ u  z+ \
    98- j) c) b, [4 s8 B2 Z, ?
    99! _$ F8 s9 N1 C; t+ y$ |' q' E- c
    100
    6 s! x* K9 @, X0 y% E- y101
    % j' A5 x. n2 k2 b2 v: n102
    ; R" M: D/ m0 v6 w9 V/ N; m, j& H103: Y7 b* `0 ?$ J# B
    (高斯核函数)
    " {5 V1 K( Z+ Y' s# Q, ~$ l" S" w& V) ]+ E0 J1 G7 h. C- v5 i! R8 U  o  p
    : h' c+ a" X. j& a. C. w$ z1 y$ ^
    (K邻近法)
      H! p. [4 F0 I: i, y0 E
    * y+ n6 d! [/ I' K+ j
    ) O- [& p! J: [. X四:谱聚类算法优缺点2 ^5 Y$ O7 J# c7 u. I7 p3 Z$ O1 n
    (1)优点) b' }8 |+ O  [
    谱聚类只需要数据之间的相似度矩阵,所以对于稀疏数据的聚类很有效
    + S# v" k$ ?3 `6 ~% w% j# d使用了降维,因此处理高纬数据聚类时复杂度要明显低于传统聚类算法9 k. V( L3 a. c4 y
    谱聚类算法建立在谱图理论基础上,与传统聚类算法相比,它具有能在任意形状的样本空间上聚类且收敛于全局最优解5 c5 n1 A7 d, D2 Q8 v7 w0 u
    (2)缺点
    % O5 a- j0 L! K' ?如果最终聚类的维度非常高,则由于降维的幅度不够,导致算法的运行速度和最后效果都不是很好
    ! \: _4 \/ [& X3 T' \3 ?0 G聚类效果依赖于相似度矩阵,所以不同的相似度矩阵得到的最终聚类效果大不同相同
    * p1 V+ w( D: f————————————————/ D; C% x8 z/ Q  }2 j1 r
    版权声明:本文为CSDN博主「快乐江湖」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。+ i9 Z1 m) E- Z/ d; `" r
    原文链接:https://blog.csdn.net/qq_39183034/article/details/126747494
    2 c% N& b3 Y+ `3 w" x( ^
    4 a# m  f  D; q( O3 x6 g  j. E% [
      o) F/ u/ ~% ?6 p* l4 x
    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-4-14 01:51 , Processed in 0.379720 second(s), 51 queries .

    回顶部