QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2999|回复: 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
    【数据聚类】第八章第二节:谱聚类算法之切图聚类、算法流程及其实现
    , G" E3 I/ J4 T& s. K5 z7 h2 @6 l& M1 o+ S5 I9 m8 ~1 r
    本文部分内容源自刘建平博客,在此基础上进行总结拓展2 x" k8 U. l6 ~& ^! w/ d3 Z
    0 i& l" V$ M0 B6 B
    原文链接5 H* f: G! f) M. o& o8 l- B
    文章目录
    + c1 }( y9 S! h9 [( K一:谱聚类与图划分% V- I' |  `4 z
    (1)比例割
    3 R1 O9 U+ ^( A) ^(2)规范割(常用)% O% x. v9 ~$ U$ W' b
    二:谱聚类算法流程
    7 d( Y, O! |7 O  a! N三:Python实现: `' N% ^  g' h; o. n* }
    四:谱聚类算法优缺点) }2 U. s0 }$ H1 F
    (1)优点
    ) J$ _5 l: M# h* e; @0 R0 C5 [) ~' `(2)缺点
    0 ]" K" I! ?7 K: ^" D一:谱聚类与图划分" B2 j% S/ [8 y* f# T* ~! R
    无向图切图:谱聚类算法根据数据点之间的相似度将数据点划分到不同簇中,因此将数据点映射到无向图之后,可以转化为图划分的问题。对于无向图G GG,切图的目标是将图G ( V , E ) G(V,E)G(V,E)切分成互相无连接k kk个子图,其中% N# Z3 v1 \! B; B3 |
    " V+ g6 Y2 ^4 P; C; u8 C
    每个子图点的集合为{ A 1 , A 2 , . . . , A k } \{A_{1},A_{2},...,A_{k}\}{A
    9 d  a4 f, ~3 _5 K1, ~7 J9 M& m8 f  Q, D* u% z

    - z2 x6 B- |2 l ,A 6 y2 [( @( M+ c  N  |
    2% r- F  F1 L) ?6 N+ b" m" @

    , N! B* K5 Z" \' }, j8 _: Y$ m5 m- e ,...,A ! J  \. k/ g* }: v2 k) r6 G( U4 p# l
    k3 T1 [! J1 L2 h; |, a4 S8 m2 |

    / h. N0 [1 N9 {6 |8 g },且满足A i ∩ A j = ∅ A_{i}\cap A_{j}=\emptyA ; z1 c$ {1 d7 l. C# M
    i
    1 |9 B4 o3 c; ?5 M2 x& p) t; W5 X/ D6 R. I
    ∩A % Q. K0 j. Y9 j$ v; z8 [
    j
    6 ]* w3 C; i. x" e) j
    : ]4 N" v' U) r; e1 b7 A =∅、A 1 ∪ A 2 ∪ . . . ∪ A k = V A_{1}\cup A_{2}\cup ... \cup A_{k}=VA   J; A2 U* W- N6 z9 M8 P" A
    14 K. ]: [$ Y4 V
    4 t! }- P+ n1 ~$ g4 o8 O& H
    ∪A
    7 |* l4 r& l6 G" F* n' ^2; H: q) E) S' o& \3 @- P/ x- N

    4 o. s' C" i& v8 r7 A5 _/ G7 I; h ∪...∪A : E5 h2 l  s7 t" p4 b6 |5 u5 U( s
    k
    " K6 @; f: F0 a. J* i5 N3 [2 m- P7 d
    =V
    3 B0 j1 }- |3 y7 G对于任意两个子图点的集合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)=
    # G4 _) X, Z1 q5 \! C8 R( M% zi∈A,j∈B
    2 J; F  @+ o7 G$ G3 C) f
    % N  k1 N" D& X" [
    " G9 d: J! N. D9 V' k1 m( H w 5 o8 \' X) {5 i: u' F
    ij8 ~( r' R" o4 K$ M0 p! I" ]

    : i8 ]  H# v( ?% V( z  }- O, y: @# I% O9 K9 T2 b2 T
    对于k kk个子图点的集合{ A 1 , A 2 , . . . , A k } \{A_{1},A_{2},...,A_{k}\}{A - s/ D8 Z4 {, y
    13 W( r2 X2 y1 r/ H5 _

    0 T9 r) ^* y8 t3 P ,A 2 o% k1 Q1 I$ b3 V( r% h
    2
    8 ~$ G; r. ]  u" A
    / _0 W/ n. _! C ,...,A . A& n. i$ K7 e" k
    k
    8 Q9 m# f5 O* k
    - z: a' t% O) W: I },定义切图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
    & b# W% d, j0 d% w! m$ w  ?14 n$ y4 o; a7 P1 y# B
    1 i1 V& ]1 ?  I' Y! O
    ,A ( C- d$ a- C& e. p  t1 v
    2
    % y+ m% H+ M6 h0 D  t0 b2 P+ ?# ]
    ,...,A ! _1 u  v7 _  @0 S
    k
    ; T2 v- C9 q7 c6 O# \" R
    ) v- A, I' G& S% T6 s+ C )= " w1 Z9 y; w0 }  @/ n, Q* N
    24 ?% o- c2 ~, T8 }& _  q
    12 t0 I5 ~. h* T5 t# J, X" ~

    1 N% D& Y+ `0 p+ r* L6 i  z% B, G# d6 c. x/ M& f0 ~
    i=1
    ) L( T2 L$ ^! Y( U4 j5 a4 Y5 o2 s! Y0 A+ \
    k
    " n* A" N& Y% w6 W6 ~: _/ B
    - R2 r; J& I2 v3 g W(A % X) d: J! _2 I' k6 k$ k& Z
    i
    # W' g- V9 i+ U$ [# I/ Q4 U
    ! h  _1 U9 s- s/ ?: H, Z" r ,
    # h* b2 V& s; n8 k; Z5 |A
    , S- m+ F: F& o# ~1 uˉ& [' g3 @6 ~- H5 `1 `, o

    % Q3 X4 i7 C+ Vi
    , \; I. t2 h- ~# x( s. k- G5 H6 J6 D  W6 Z
    ) (其中A ˉ i \bar A_{i}
    7 _6 b) V! ?# bA7 q# m9 J6 J& G6 Y+ n* J
    ˉ* Y9 x5 F  h, T- i4 P9 [5 x/ H

    2 q2 a7 M, x3 o, N. K( {6 m/ qi6 a$ K& s& x* S; l0 b) q. Z
    3 `6 U  A3 A( j
    为A i A_{i}A
    0 W1 c/ e7 C9 w# L6 V0 Mi
    2 S3 A! `* R- W3 y& D. H. C& S; [; d% I6 ^
    的补集)% v4 ~- ]) S+ v% ]& H
    可以看出,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 4 D6 j) o( ]: B, N# Z9 g
    10 P/ {" H' Q" S

    % s  s0 Q- y) F; R# g/ Q ,A & i1 N, p6 x1 B8 d1 t
    2
    * D& Q4 M" {; b/ i; S* e6 S8 z
    $ h* O8 S, x; h# g4 K" t2 b ,...,A 9 }! \" t: G9 i
    k" E2 Y( q0 T5 _
    1 x3 D) U  Q1 Y' u/ D1 w
    )= 0 n2 i& @3 ?/ M+ E* Y
    25 T/ d4 w* u; `: t$ W
    1
    ' r% f7 D3 k3 E4 T5 E: A
    & n0 V% u8 ~+ i2 g- J/ x
    3 ~& _  P8 l, Z# o8 F9 q4 F. w4 k1 Ei=1) k- o' w3 X8 `7 p' r* ?2 ^' r2 j

    $ q' [. m3 N  N% Pk
    ) Y/ d2 ~3 ?! f2 B' d
    ' ]$ E4 I8 u& s W(A / l' U: e. o8 B* d& x) b
    i- c7 A$ {/ Q6 r% S, s; f- F

    . j' q- H: c4 d9 J4 B9 L+ j- H0 d ,
    ) e5 a" T  ~& @0 [; L' ~& d8 aA
    7 F) V7 t: Y8 k+ j" f2 g* f  Xˉ
      C, P7 A7 S! O
    , r4 U2 r" K$ N. Pi
    + m! X3 E0 C( I% w8 Y# M* N4 E5 s+ p$ ^* D. \# H
    )在划分子图时并没有考虑每个子图中节点的个数。所以在某些情况下,最小化c u t ( A 1 , A 2 , . . . , A k ) cut(A_{1},A_{2},...,A_{k})cut(A
    0 D- p6 W0 o2 w1 P: i1
      {- n$ w* \& J$ a0 S% U: P. c% ?" @! M, B5 @3 D  K& V  [( M/ V' U8 t
    ,A
    - L4 _) J& t  k% r1 k2! Y$ E0 |  I. L( t% a

    3 X- V6 U$ i5 c4 c9 \3 N4 y$ b& \ ,...,A
    2 @+ ~# F8 Y" F1 s- D1 O$ ?k
    1 c( r8 W' e! ^. j+ \* L& g: f  C( r" _1 _, B
    )可能会把一个数据点或是很少数据点看做一个子图,导致子图划分结果不平衡' z" ~; G( G% T  W2 x$ a$ B
    ; H) C3 W5 @& J9 ~9 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
    ! e% F! @: c1 P+ `& \' X16 f8 X+ J3 e+ K2 F$ F1 g  T7 I4 j( w

    1 {4 T' ?& \2 j) e ,A
    . ^+ N% P. O. }0 G2
    ; l9 g9 I; D( U1 ?( l$ A' r& N+ ?2 X$ F- w, ~
    ,...,A
    : m/ W$ i/ `& f  ^4 G: H0 kk2 Q! u; Y( h5 X! R! V
    % R4 B3 m" p7 {' r
    )但是却不是最优的切图
    0 a7 Y/ Y0 {4 G0 J
    $ A/ s5 R' |& M5 i+ H/ V为了解决这个问题,会引入一些正则化方法。最常用的两种方法为比例割和规范割: |. y& U4 P' o6 B
    3 G' l) Z! S& A9 g/ b3 k
    比例割: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
    0 _) [& b' S% k9 @19 ^! Z  B/ T9 e4 y( N4 c
    $ Z  Z- l/ [8 S8 i  Z% J, m
    ,A 7 J0 ^  }8 W8 g9 K4 N+ z& e
    2
    , f; x0 `$ H  u  E: K8 h
    0 C2 J4 P5 g  o0 T* d$ `# a ,...,A
    * P: ~" P9 Q" Fk
    1 v1 z7 s# S8 p6 l  J
    1 C" e% g4 Q& q: A/ ~3 O' f: d )=
      W  o+ C) v/ s9 Q" R* _0 F2
    ( }7 l- t( X1 V" S4 I1
    + J! m0 P* p5 Y# v% D7 K8 t( n" `) K
    / M" Z/ A. v! ^! e7 S6 i$ ]* `1 t# D" h( h
    i=1
    ! @7 J5 Q" E* j- ^
      o9 J0 E; Z9 c! c* [k- [* n; O% v& J5 X! ^4 L

    / j1 C/ h( T2 x; Y; u1 |( _
    : f# C0 o" m$ B4 g  ?$ @∣A ) \6 h# B- h4 a( l7 j, f
    i
    1 C. v/ W8 F# `
    6 o: O: x& d" i, }$ J4 G3 m4 u+ x+ b: e* S) d2 \
    W(A
    , O! p7 ~" O, }5 P7 [7 Y/ fi
    ' \; j5 B; `" j) w$ e1 v
    6 M7 v  Q  r% `# f% A , & Y% }* y( {9 y
    A; g. U" ]- g  R  {3 x% u5 h0 X
    ˉ8 ~3 e5 s2 O" b2 e, t3 ^! w

    - T' G! j3 `) Q" z% `' ?, }i
    9 E0 {: J& v; ?9 V1 z  q
    , y0 p% u, i& f8 D: h( H% H )
    8 C& G% t$ E: g  A" g+ J7 M6 F4 U1 L
    8 [1 T) D7 r# G/ H. [" Y0 h7 t. U0 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 ' O$ L% P$ R4 B3 ~& A8 w
    1* H! a+ l; H/ f/ B1 Q1 M) }

    ) n! B4 ~% K3 C ,A
    3 |" L3 \- n: b' X* k2
    , s0 P3 T( Q- U" @5 R6 W. F9 w" u+ o5 d$ I: W/ p
    ,...,A
    " r9 L$ l8 ^. I5 w3 p, X( w1 Ek' v! A8 P- C5 ]7 P7 k& j- \

    1 L! Z8 J3 R+ e. d0 g1 v: ^ )=
    0 U0 {2 {6 Z( ^$ Y8 t2 Z2# B8 c" w, Z$ e3 b) h. v
    1
    % }7 f  X; W0 O' d
      _- e5 i& [- H. {9 Q: I  e! x6 g' p* j6 q1 A5 I
    i=16 |+ ^4 l) h1 e# J) z; _
    4 g! r& g0 E2 A9 b. R0 z3 o
    k0 p1 }+ _4 p6 u

    6 ?8 J; u+ E) |6 S$ z. A0 Y- j
    1 C1 {+ ^. c+ `: ^# zvol(A ' Z2 N2 f' i5 n: e: j
    i
    $ G' A& K+ ~3 m& u, v9 h1 h1 a- N+ a" \
    )1 b6 M( v. n7 Y6 M+ g
    W(A % _1 {& p- I# g, k, z) {( H4 N
    i
    $ C' o* i; `* H# I0 V3 W* R0 f6 _% q' S$ r7 W
    ,
    . {& w  B' k) z* }# Q" rA
    8 p, Z5 O2 O: E  Z9 gˉ0 d# A$ x. x* X8 C" y( s4 P: B( `

    ; b7 S; U8 z" ^% S0 k* zi1 O" R3 L+ Q# _* X
    3 T  N* \2 ?. Y3 s6 _
    )
    , F& Z, [) y! k* v9 y' N
    / A7 k" D  H4 `$ e
    ( n- p. o- a: k3 [(1)比例割- I2 ?! j, d) b) g7 F, a; i# N
    引入指示向量(点击可查看指示向量定义)h j ∈ { h 1 , h 2 , . . . , h k } h_{j}\in\{h_{1},h_{2},...,h_{k}\}h # T, `) H7 }" k' K
    j
    ) F7 ^' }+ i7 \; J  M$ M( C! |  m' V- \6 b9 x
    ∈{h
    9 f6 o, k% c8 X3 k16 b# g+ N+ S, Y. T
    1 f! m, x# S% ^' V: T9 Z: k
    ,h 2 i/ Z0 }8 M3 X& C: l6 L6 f+ g
    2
    % q9 \9 C: Z$ w% o2 p) L2 [+ f$ _; B
    ,...,h
    2 A( o# M5 F# }. [' ]/ p* ^k
    4 W2 w; m! H  o! g( c
      G, y" ^' h6 @+ |0 w },j = 1 , 2 , . . . , k j=1,2,...,kj=1,2,...,k。对于任意一个向量h j h_{j}h
    2 c* G) S( }8 j6 ~3 k* F7 ]' Rj
    - c$ v) o  j! P/ O# O9 ~
    / c" ~" }1 S* B ,它是一个n nn维向量(n nn表示样本数),定义h i j h_{ij}h
    + v" J: y, S) uij  j. Q* v. G$ O# V
    2 F$ k8 a+ |& u4 m) w% ]
    如下; N9 q, W+ g: U* ]7 v

    * H. H$ @% i7 t2 Ah i j = { 0 , v i ∉ A j ∣ A j ∣ , v i ∈ A j h_{ij}=
    " u; ?, B3 N" E- p+ m{0,vi∉Aj|Aj|−−−√,vi∈Aj
    ' H1 A4 F$ D2 x3 C7 d& W5 Z{0,vi∉Aj|Aj|,vi∈Aj
    : }/ e! S& E8 X0 Yh
    ! S. x0 k1 w4 hij5 s7 L* P- f/ l" U/ b

    4 {( h7 {% s" x5 a0 I. S  T# ~% K ={
    2 |+ O+ B9 k  K! I( V8 H0,v
    - N. C4 b- U+ D4 s; z8 R: Ai
    9 O/ ^' }# z+ [, H# @9 }1 {2 D5 ?2 ]/ M$ w1 H
    / T/ ?  |0 v0 B' n) `/ _. _
    /
    # b# |/ Z+ \7 y# k# ^A
    . d$ D9 x' f9 L* Lj$ C' C+ N) B' t2 B9 y% C9 f

    + i9 \+ E, P/ B. N3 ?$ N* k* c# J. ^( |( x1 _1 O% a- j* H
    ∣A
    - ]- c8 e* R1 c/ u- Jj
    ; D4 X4 i# V4 S3 |& b. {) }
    : ^0 K( J8 f9 y' O0 _! ^& K2 Y5 x3 C+ z& ?& l

    4 p. l  S, m1 M! Z6 y5 B ,v 6 f+ `( z0 v# [
    i! S1 b2 A6 o. w$ }2 V
    7 R+ I4 U: N0 g2 h  K& G; I
    ∈A 0 b& D! I+ w3 S1 \, [. R
    j+ D/ |9 l; \% d
    ! u5 L, D2 C$ u$ Z& o/ s
    ! r$ M; }5 n5 {. G- u8 K% y; I

    8 O, K& _# w" k3 e1 b9 Q% w$ J: t& y4 i/ C
    6 Q/ J) c/ _) S1 x% X, Q
    于是,对于h i T L h i h_{i}^{T}Lh_{i}h
    % J/ k2 Y" d2 D5 M; \8 ?i4 t$ @/ `2 ?% q' k+ @0 D
    T
    - U' ^9 d# |% D8 {& [- F; A4 R* r& ]' |: _
    Lh 1 }2 C& C& `. C. j
    i
    - X2 n/ z. d+ H7 p9 x8 ~3 B* l! }! U. a( N' I+ u& a( L
    ,根据拉普拉斯矩阵性质可知
    ! P3 y0 n1 W# k
    ! W+ E7 b/ c. n( I, |+ z对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f
    % h2 D! G) D5 [% a& Z1
    5 n! Q, j8 O4 C4 T" R& |6 i: H' W7 l0 L0 j$ s6 L
    ,...,f + J& {) o1 q; [+ g7 e1 y/ ]
    n4 x; Z( ?+ r2 L( x( Z9 E
    ; \: B8 b+ f( x3 g! Z5 T  j
    ) ) p' O) p# h$ T. n& w
    T
    1 B7 j& l) e% {. q  m  `+ F ∈R 0 I% w3 t7 }  L5 }7 E/ N* H
    n( S3 V7 l0 ~! l# A) d
    ,有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
    3 V+ z' ^8 ]. N, {6 ST
    ( x: \0 \& }' B4 R" x Lf= - A( F# S$ T$ q. b6 A% B' ~
    2" o8 T4 N1 _7 ~1 @- H- \, ]+ @
    1
    ; d3 C  X5 O2 y- E% L
    7 a% {6 C, L. I6 y6 V* W8 }
    7 M# l! U$ {, y" ci,j=1$ I+ [3 \9 c# A: q
    ) b$ r0 e) j3 |- U, Z
    n, I& y% n" }# s/ U/ s* W

    ) ]# z2 Q7 [0 I- a w ! p3 T0 d8 R+ v& C  X
    ij
    ) E' Z  l& ^$ n% C
    % J  Z! ~- A3 X (f ( F/ X5 w" L$ y
    i# T3 R( Z1 k  h/ q( P, x  y
    ) W* Q, ]* `  f
    −f
    + o& N1 _1 k/ uj
    - x8 N$ c) R5 H. p7 Z7 v) w4 o+ Z& z5 ~/ C6 \4 w# h
    )
    : c! D7 y: h; X) h6 s$ o2
    $ i* a6 Y! X$ y, [* n; }' a+ x; {( ~$ n5 }$ b2 e4 x; M
    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}|}
    # A1 O9 t& q. T; Q) e4 Uh
    ! H3 }0 e, B2 ?, ^% o3 Z8 N% J" ei
    9 S: o/ I# \5 Q3 U: Y' N- c7 pT$ s. k+ A" ~. x1 t

    3 i6 H% S# N5 D5 z0 F- o Lh ( |$ u. U) I% }8 e. ]3 D
    i
    . m" f9 q5 W% E, [' I( z9 T2 ~' J7 w$ _, P- T0 Y
    =
    ) e- k3 j7 j9 x2/ U7 i, }( o; R: p. T
    1
    ; [( O7 Y+ ^! U3 C* y. d( W. }  |2 W; z$ p/ y1 n0 k  m

    ) G, f/ k8 G$ d8 Hm=1
    ) D- s# m- R5 h/ M& [
    8 p# N6 ?# `$ P, }1 E8 Q" _/ ~) x1 J, r

    1 L% I4 w. c& a" Yn=1* w6 S  G* g6 l) _" X. u& ]8 C

    : l! d; P# Z8 V, b& `1 ?1 t* I  n% d8 f% T8 j3 F: P# w4 o
    w
    8 b6 s/ n! Q/ Zmn* e# e+ h4 M& J3 S  D; c

    9 w( w, D- Q1 ^: O$ [ (h . L% s% d- n" y' D
    im
    9 E! w2 M" `3 n0 @0 z# h$ @
    3 T3 d1 X4 G1 Z  L& @ −h - `! |& u; Y. B. y
    in2 L9 T# H( T1 d' S( D

    ! H3 Y8 x8 ^( A$ X8 \4 F5 [6 y8 O ) : r  y) X' d+ A3 u
    2" ^5 M" E$ x' L; L
    = * J! r, j1 i' F
    ∣A
    * K# i. T2 f- C; k! |6 Gi0 B' c- p0 q" F3 _' v9 c

    0 c+ G. I& a2 m" C, i9 m5 o: |( {6 y  ]9 H0 [+ j' g
    cut(A ' P9 Y* _# D; K/ @. d& v
    i5 E/ O& d$ D% L4 \
    : Y6 `1 ~" J; O* E9 [5 `& i. V% A' m% h
    ,
    : |& i! S! l% l, ]A! i/ z; D5 [" ?& v8 a  G
    ˉ4 }! E6 f; c$ _: {" T3 v

    0 }$ w2 g* K: s$ H0 ^( ]- e: J6 ei7 H; Y4 x' c" L$ x
    # ]( [! G9 r! W/ b
    )
      ]4 p$ w. Y1 o2 S' e+ p1 `, A4 S: K( N7 M2 a) b; \7 O4 w" ?0 _9 Q

    4 }* p% N& a9 M1 Q* S. k" F9 T! F3 l8 J; L5 `# V+ I
    严格证明过程请看刘建平博客:链接
    . L9 g0 S, {" R& W( _$ u可以看到,对于某一个子图i ii,R a t i o n C u t RationCutRationCut就对应于h i T L h i h_{i}^{T}Lh_{i}h . E' @. z( |- Z2 B$ H/ F) Y
    i
    ( L  U& i5 S' Z- e0 IT
    ( F/ ]; k' A. x. s' O/ g2 ^6 j" w$ r
    0 A) Z5 c2 G$ J Lh 1 o/ p$ z3 V- H) C5 p
    i$ ^& W' a/ i# p$ C% Z% M1 b  X  B

    0 m/ z$ S5 ^& Y" A! B# b3 l/ `+ M: v  \ ,那么对于k kk个子图
    9 R3 {6 @$ F- o. ]4 Y6 j5 {( N
    3 z5 z1 V) D4 t/ FR 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)7 _7 K/ B; j( g3 q
    RatioCut(A
      t* \6 ^: c; ?3 c! ^8 s$ @% p9 T) ]1
    5 [! |$ j% n# O: j6 p; A9 A! {2 D' c* q
    ,A 8 y) t: J9 W9 F8 X: _  g
    24 K. p4 h7 u9 n$ r0 G

    ' h- l. ~6 v  n4 N/ ?5 D! `5 q ,...,A 3 t2 M. ]7 b- }+ R8 v
    k
    ' p1 T$ ^( q7 |% I' x# k" Z' A
    ' t: F: c7 m% Y6 H* L  T )= : }" j: F$ \, B4 B% I6 y) P
    i=1
    . D% w$ H7 ^7 C* a, i, ~) D1 M' z3 j0 r
    k
    + S+ Y( ]' X5 O  F3 X' Y+ \/ F
    : c1 r; ~! }/ _- r% Y h - L: G, H3 M4 u# \* ?
    i
    ! y( z5 o7 N) o  Q+ A$ jT3 L. ?. t6 r; v% V3 g
    : t* ~9 M2 `+ u  q' u, Z3 x5 g
    Lh
    4 g' S) P3 y* t2 ^i
    5 B) x! }# e, t/ ]3 O8 K2 H% P' e: P% q) o
    =
    - r* V. L9 ]. \. j: d+ c( }* |1 Ii=1. i* A6 S3 z# [+ K$ U
    7 \3 I2 J" F$ b* |9 Y) _& h
    k
    " x' W$ d8 L4 J! i
    : \5 b! j; E& c3 t  j (H $ }% e$ c$ B% u; W* J! Y8 o
    T
    " v1 t5 e5 M; u9 h+ H/ K LH) $ D1 Y0 q. f( @/ ^, u" S) l. u
    ii
    ( r5 d# c8 j5 k) a
    ) y5 G7 h4 M; C. E& N6 |4 I =tr(H
    $ b3 k' e5 `  {0 k0 Y1 U) JT
    ( X! k1 o1 d( o& O/ E LH); n' E( R. Q' w4 |4 Z
    - T  A4 o0 I3 e8 y
    因此,R a t i o n C u t RationCutRationCut切图本质就是最小化t r ( H T L H ) tr(H^{T}LH)tr(H 4 W1 |$ q: \" T& L8 V$ N- Y
    T1 w3 E( X+ b8 K, |- G% Y( ^
    LH)。又因为H T H = I H^{T}H=IH
    4 ]! |& B1 h' N. eT
    4 Z4 k. H3 W; L4 H" D# Q% X( ? H=I(单位矩阵),则切图优化目标为
    5 J9 n8 T' H+ p8 A+ k* A$ g1 ]
    / D6 r8 `0 d% |$ j3 Z5 ya 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$ N9 A0 A4 X; \% O
    H
    . V7 ~% e8 w( u- E2 a) q; L$ I6 {argmin" ]* }$ a) u9 E- A: ~0 |
    1 `3 k) o& m- }: u) ?& [
    : ~5 ^( V/ S! V

    4 [% l. F+ v8 Q( E) D0 [ tr(H # J+ ?* C. L' d! H& L9 H* w, B
    T
    % Q0 D( T* c* y LH)s.t.H
    / s5 V$ D8 X( ~0 f, RT
    ( C8 {3 F$ i6 a& n" h3 u( A H=I
    2 f% z) Z# O6 E* Z; h2 J3 k7 r0 l3 d! U  J7 O. T5 b$ m
    对于优化目标t r ( H t L H ) tr(H^{t}LH)tr(H & G' w  u# B  t9 {6 {) {
    t* e+ u2 W. |! N+ k5 b- j; H
    LH)中的每一个优化子目标h i T L h i h_{i}^{T}Lh_{i}h
    ( c9 c* m4 v8 K: G+ |' `  v, qi* I8 `  f9 ]9 l  {  [* a
    T
    % n8 g* b5 C4 Q$ j
    9 Q; }! u: D1 P" Q- @) U Lh   F; P( }, F$ _4 |
    i
    - }. u; ~0 e7 ^0 A
    ; m0 R/ `3 P& v  E) g- F! q ,其中的h hh是单位正交基,L LL为对称矩阵,所以此时h i T L h i h_{i}^{T}Lh_{i}h
    , Z# [2 A7 R) z; T( Z- Hi
    9 \+ p0 `1 J: _; JT
    9 K9 `! ^( o& l9 l. M( y
    8 ?2 ]8 z. K. z; I Lh
    : Z8 O7 \0 n# {/ I5 d8 |i
    + h( R2 K( N& z5 L) v9 V. s
    9 M! P9 _  @3 ]& x& K  X 的最大值即为L LL的最大特征值、最小值即为L LL的最小特征值。而在谱聚类中,我们的目标就是要找到目标的最小特征值,得到对应特征值向量,此时切图效果最佳。所以对于h i T L h i h_{i}^{T}Lh_{i}h
    7 y: Q' ^& N) B% \6 u( ~" bi* G% f9 H7 C. D$ r% Y
    T
    5 O6 G5 W# o. x' l6 R" J
    5 S( n: h8 m2 c% |  {/ C Lh
    2 q" H2 O4 o2 ^+ ?* K- Ki
    + W& U4 X8 r$ u# N8 w8 w- e' `5 p) U% ^5 v' d7 c2 o: T& ]
    ,目标就是找到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 / ^1 ?; `/ X, P3 U
    t
    : q  p  H& ]  g0 J) o LH)= 0 |7 I' y4 q$ w( p. N) {
    i=15 A" w0 J- W" g4 T, Q+ S& Q

    5 o, C$ _, ?; `/ lk+ ]1 ^" E0 ?( R& u. ^! u$ Z8 v- @
    + \9 A3 l( c1 V8 V/ p4 O% C' b0 K
    h ' [# P- m) Q1 j
    i
    ; |( E# c" d) q  GT
    , @) ?0 K7 x& C. U! p% W
    * u. [1 ?3 K, b' n9 B: S Lh
    # h+ |  e2 \) o# V9 R; qi1 a7 u3 A2 E" s' {

    3 E! o% A& k6 y) _# W  h ,则目标就是要找到k kk个最小的特征值! q# o, o: g8 E  J1 S9 V
    7 I! z1 h7 [4 B
    因此,通过找到L LL的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特特征向量组成一个n nn×k kk维矩阵,也即H HH。一般需要对矩阵H HH按行做标准化,如下* c1 V0 ?; L( V
    : Y/ i$ |- Y' x! g
    一般来说,k kk远小于n nn,也就说进行了降维- [: E3 i; v0 b. }) c  G
    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}}}1 G* `5 B: b* j8 z5 M* ?
    h ( e: I4 o* Y6 y  D; U0 a; ~
    ij+ F5 I) j$ ]1 Y0 y) x1 d. X
    2 A5 V9 K" p( B0 r" @

    , t5 k; Y# \3 _5 p0 m1 q =
    ! g' D+ y$ s( t$ ^(
    ( \2 o. |/ V0 _( ft=18 x7 `" g7 d9 V
    ) `5 t; b2 W/ f% e
    k( r( H! U( }# l$ U' @7 y7 X

    2 M7 {( T8 J/ A# }3 }- @1 e h
    ) m) A% D2 g5 ?! a# E4 B. `it' G% m3 W, p$ o$ I! ~! }
    2
    2 V5 F0 Q( v. G6 C& _, j# N( A3 Z$ N1 s9 q. m+ ~2 U
    )
    5 f, L, d4 ]! d+ x$ n8 J2
    1 H9 L" _( m6 J" |$ r1* e0 I0 ]: g$ T6 W

    * h8 L( k2 r- Q3 _( p" F3 p; {4 g4 t: h) B' V0 p
    % j3 a  K) u+ O0 R; P) A+ ?  ^
    h . v5 S6 S, B, H
    ij  ?+ W, a2 \( k6 L) B7 W1 m: a

    ' s4 }* ~" W" o: ~, ]+ B
    : K) w, p2 L/ B" ~/ \; `' E, G6 R
    - \; y: R& E8 @" \  I. R& O0 |. @4 Z; `
    ; _5 H: x. R  K/ i2 K9 _. U
    这里需要注意,降维后导致得到的指示向量h hh对应的H HH现在并不能完全指示各样本的归属,因此一般在得到n × k n×kn×k维的矩阵H HH后还需要对每一行进行一次传统的聚类,比如使用K-Means聚类5 x0 y! y$ n" R/ u* h9 W7 H4 r

    7 U9 H8 r2 D( k$ ~0 L(2)规范割(常用)
    2 h; U; q" z6 F: C3 A规范割和比例割类似,只是把比例割的分母∣ A i ∣ |A_{i}|∣A
    2 g1 j+ |" @4 ~, B1 Z1 ~, S7 N  G1 A4 X2 Yi
    ) p$ |0 l. J# a: d' r8 f" z* j4 Y6 j% B7 J/ r& R- R0 l
    ∣换成了v o l ( A i ) vol(A_{i})vol(A
    * A% v; a9 ^4 A, }7 E& I9 Ji
    4 s- L( ]% R: b: @( Z
    * K: T$ l( d* r# l: {8 p! b ),定义指示向量h i j h_{ij}h & [5 k' Q" g: z! L
    ij
    , [# p: z8 R1 n, P+ _4 q6 m$ {4 A6 b/ G/ K, f5 W
    如下
    1 ]' s- N" d# B! V- p! A+ l2 V: d  e$ i0 A: N1 ]
    h i j = { 0 , v i ∉ A j v o l ( A i ) , v i ∈ A j h_{ij}=  z# x8 v$ c: r" r
    {0,vi∉Ajvol(Ai)−−−−−−√,vi∈Aj
    " u$ C* w( W- N, F, A1 R: w{0,vi∉Ajvol(Ai),vi∈Aj
    : C  p, i/ A6 m' e5 Sh : ], f" f5 d2 ~: [! S& z
    ij- D; ^5 n. q: M& f# `" I6 l. M+ ?

    : ^" C$ p" q. ^$ q' o$ f8 U ={
    9 H, M4 W8 _6 S6 T& j( o0,v
    , _2 u; g8 B. T! G9 F, Ci7 ~% @; v. H) r  h/ h% n
    " d4 a- l$ n' Z: A; _# [2 X/ |% n
    1 |7 J+ W+ U+ d' ?$ o4 x
    /; a- l" N! A) |7 c; K+ p
    A $ C( d$ g" G! n8 w
    j9 J( N/ C9 D/ O6 A

    , O3 x5 |, {* I, _, K1 l
    ' a! n3 i, l, Z0 Y- hvol(A
    & Y, g. Q/ V. i0 M; Q% j2 li; a, n( Y+ c( v0 [3 O* C
    ; Z  }; M  z9 j: t: E- e- C
    )
    5 x- D( m& \! d8 E) `
    3 ~7 F$ V1 S- K ,v
    , V$ U6 L5 y) {. {. h3 O6 Di
    ! J+ a! S( ^  D1 q6 O6 b
    4 ~+ f6 x* i% w8 U ∈A
    ; @) w  G1 B1 b# E5 [0 I" O6 _j1 T  Z3 f/ w: _! |, J& B1 R

    % H/ a, t! i& s( F1 r! W7 x/ r- L) ^" c' k

    8 V3 a, a1 E! u8 b$ t/ k1 f; G

    + u2 q  N0 N' q于是,对于h i T L h i h_{i}^{T}Lh_{i}h ' l0 w: q; `4 t8 D6 K5 l
    i
    , U. o. V8 X& R% }: a' HT) Y( i$ ]# M! ]3 ]5 l

    " A4 s, ?' ^- ` Lh
    ! Y% B7 X( i) v- x" M1 u' |0 \i) @0 W: k: a  H( j/ d0 {( a# y
    ( l# z" @! e$ s' n) L2 s; n8 b
    ,根据拉普拉斯矩阵性质可知
    2 Y2 i5 r, L+ m
    ( k- ^4 K- o2 L6 y" F对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f
    5 n& w/ ^1 l, U; s- }* }/ @$ e  R15 A7 D; R& X! L1 F# m
    9 l' B' n+ }* o' K4 N  A
    ,...,f 8 }' O0 n$ ^8 U9 d
    n' g9 _# l$ X9 D6 z

    * S) \3 _7 \$ g  g8 E# f )
    ; W/ n9 f3 I- b) P0 J8 e: pT
    * a/ w7 ^) D9 J, R; s, g; j4 B( u ∈R ' a6 J# S) k0 N/ }7 q9 u
    n$ @( `& x# `$ w- D  G
    ,有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
    3 w6 Z+ [# t( ~- }# uT
    3 r# Z8 b! E  @% {) ?' g2 j Lf=
    1 [5 J, U& X; G, M2
    7 j- Z2 `8 R2 J, ^' n; v6 e  L1
    : H! P' g6 V- M' g( S% Y& p; q$ u/ H8 {' Z+ q7 H. D  o& E" d2 u; D
    0 D; e0 K. i3 C% y$ d
    i,j=1
    2 M# c# Z' S9 t  B( w+ H  I. r  ]- H
    * d/ ?: x1 l" }0 J- r1 Tn/ h8 L! U4 u  X* \' c

    0 l8 W- i5 s9 |9 p4 k# A w / y0 K% `) G: j/ X, w
    ij
    ; g% \1 V: C; I1 `2 O% O1 Q7 L5 c% N4 M& Q6 t
    (f
    " c6 \* v) R' {  G& Wi
    8 p! w! w7 K3 _& y; H4 C4 T+ x1 j. p) _2 R6 e
    −f
    3 _* `, ]  g2 G2 M' T0 e3 Tj  R. c. J+ R) u1 `

    . z5 H; C1 u( a0 P( _2 S ) ! c; E2 s# |, n7 P$ x
    2( S2 Y% ]  Y; o6 t$ p. h
      g. l/ F$ W! k1 }
    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})}4 v; H% U: B8 o# O
    h * n5 D9 p! J$ ]/ w& P. P/ ~8 k
    i: a. Q. W- m  Z; D) e
    T
    " I7 P& d! k- g. y
    3 h0 m# Z& k; S- ^# c1 b Lh
    ; J1 b* s& `7 k" Ui
    5 e$ D2 Y2 }, U( j1 L1 P$ R* P$ D! D$ }! }
    =
    # ]1 ]6 Z; k6 z7 v/ G+ p- z0 Y5 l2) T' T% _+ E7 d( V  M3 j& R/ W8 i, }
    1
    # v# X3 i) P" K& \. J4 ?3 u0 D  E% w/ [2 I; v

    + L' S7 i/ i6 u- [- `& om=1# M; x7 P' S$ T: a
    $ l* m5 F# _1 Y
    % ^  k0 o0 A) w

    + i' }: s/ U% f; C3 Bn=1
    / [/ ?# V4 ^5 H# T1 ]& a1 m9 K1 z( W4 d! s% s3 X& V
    8 c. L5 Q# |6 ]
    w
    / E; T# w" d# _, w; ?mn$ |% E, j+ S7 ^; Z" S: P3 y/ u

    2 k# R( j/ a, X( ?1 p0 u( C6 L+ _9 M (h
      B& y5 g% j7 Wim
    ) n9 ^, i/ v" w: a9 E
      M% u; u4 n- x- X# q) h −h * V: ^5 h# c+ t+ H6 p
    in
    & K7 [1 D" l  P4 D6 C: \- o5 b8 Q6 k( ~3 t. W( ?
    )
    $ D( z6 ?  ~5 z; P; c& G0 W% ?2
    ) f( |" U8 N9 h  W = ) Q4 |; Z" B4 \8 l9 \& z% L" K
    vol(A
    - u/ u* w4 v+ `& p6 Ei0 e0 A& t, I# j0 W* R* T5 M$ G8 _

    . c( Y) Z: F& i4 c& {! S )
    3 C3 K6 D: ?% {6 N& C, k( A: Kcut(A : A% B1 ~" j( ?2 [2 Q. V- {
    i
    - N5 ^  v) k/ T$ H! M! {* T) Z* I4 o4 q1 b, a* p% b
    ,
    3 H( r1 h1 O0 D3 ?% m4 I% q' {* VA4 K" [8 X4 v: D' b3 g
    ˉ7 l7 T0 I9 N2 t$ s
    4 D9 o) }% k. O. w, {
    i
    . \. [1 d1 }3 F- {- i  |" `$ N: \! `- g- ?5 p* R
    )
    * B4 p' S' s! v( J3 l" p9 q9 K' o# T) e* M8 V4 f% j, r/ Y
    8 K8 k" r/ j, a) t3 B6 p/ e- b3 I0 j. \
    * h) x! i9 J( \2 |' N) l* G$ t2 P1 z
    严格证明过程请看刘建平博客:链接$ N+ y! R1 |* Q5 [/ X
    可以看到,对于某一个子图i ii,R a t i o n C u t RationCutRationCut就对应于h i T L h i h_{i}^{T}Lh_{i}h ) ]! L. `5 P6 {' T
    i9 h$ g! G8 N8 }7 V9 R9 A( g- m5 `
    T
    8 E( ^" u1 Y* B6 r+ f# f/ d! S$ m& s% Q, {! h6 w, r. s* G: M
    Lh ; @% d- g) J  e- l! p8 _8 Y4 S
    i( B9 L* h% `) k* Z$ W7 Z4 V
    # d; Z, t" y% w! C0 T" T
    ,那么对于k kk个子图' b4 R& R' V. {  ~6 s

    # C" I' u  M$ s6 z' R( c0 g  MN 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)
    5 {/ Q" i1 ?: m; o4 @8 KNCut(A 4 M4 R6 M' r* Y  c- [1 p6 i2 l8 ?0 k* Z
    1& J& M. f% J- w/ Z; ]

    , R+ [- U& u) y( w9 j7 ] ,A
    % i/ F! }$ s/ Q% s$ B, p5 m3 T2
    ) _' y$ N6 r) m# b3 h- c1 K
    0 ?3 f8 z) Q7 y3 `2 D' Y0 k9 y0 ? ,...,A 5 a2 }" B" I1 x  S1 G; k
    k6 `2 }; J0 G, D- ?9 n8 _2 p( U- J

    5 n7 M; i4 M, S+ G' `+ i+ A )= + \- p/ j! @: M
    i=15 a, B, L& q+ V4 {& [2 e' C$ c
    . a: d  v) q9 n/ R% Y+ k
    k. p& p0 p5 |9 Y# M) W1 ]2 I/ [0 Q$ D

    5 t% h" Q0 [9 b; d h ) T* j1 p! d. |& `. X. f/ \0 A
    i8 ?9 F& ?/ s  Z; R
    T
      f& \. Y, H0 e- z
    7 q$ n0 r6 o: B( Q) `* k) d Lh 4 R$ ^' w0 O* W8 D/ l( |
    i( j, L1 b% o# _6 l

    9 Y- Y( O" G# K: c  D+ x$ O = 3 d( X  Q  B& s6 w6 Q3 u( I$ {
    i=1, {4 P; E: ]* R6 J# c6 ~

    ( U$ }6 h- U9 z7 J! v, R7 N$ Ok
    6 V  {( {& r0 C! N8 K+ D( F( C" [  Y( U3 f% @
    (H 6 B/ Q1 |: a/ g6 ^. t3 Y4 v
    T. }! M- ~6 d4 F" ^, k; @; a1 j4 T
    LH) 1 |: W" C6 w& Q$ c2 j  n  R
    ii
    ( m! Q1 b" Z! |0 K( y
    7 p- ]2 Q9 N, G( o) i, { =tr(H
    : m  ~/ H" }6 y% m  ?* }+ pT
    9 e: ~1 T9 k; n8 X* r LH)
    " v, ^% {( O3 }, k( c( ~  \
    $ b8 l8 o  ~- h' k2 d( S- u但此时H T H ≠ I H^{T}H \not=IH
    & I" C# i( r0 r- W( j0 g3 oT, ?* H6 M; P7 ~0 d  L
    H
    ! H6 W; g% v, J* n" O: K% C7 ]$ j, Q; z$ p' ~6 f0 d3 _( ?9 j
    =I,而是H T D H = I H^{T}DH =IH ) K, N8 T8 m) P( V, F4 x6 o( s% b
    T+ a- ]4 L, m7 e8 T5 X
    DH=I5 N9 S2 u# l; S
    ) z! p1 g9 {% {: \
    这是因为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 0 o) ~9 W* J! s" N5 N# [8 }; B
    i
    ( q; l( d5 j" s+ U1 V# p/ kT
    9 F  b! j1 I: G6 e4 S9 p! w* q- m* @. U% U* R1 Q) K
    Dh ) J( o# x5 t% b+ r+ Q
    i" V! P6 _. T" c& G4 z3 H

    ) {# X1 _: Q3 o* a! w =
    + x/ `8 L# |* s0 l6 [. Rj=1
    ! m8 p1 h7 B; G+ W% j. D1 ~$ H: m: C* F# P6 F6 q
    n, }5 X% s$ X) n6 B3 w- }. @& m2 k

    9 e  H* N/ O% I" @+ Q h # P# `2 c5 k, P9 h- {2 l. d" Q% o
    ij
    0 ?: ]5 e% |/ {+ T! n- V' S2$ \! Q. b. p. e* C/ j" G3 R
    2 }* W  Z' v3 l, l1 {2 @) L7 ]
    d
    2 ^3 l6 P/ y/ U; f4 mj' O( r- t. q! E7 Z0 p

    2 R& v: V, d& I9 x! H =
    ; ?: P4 p* l; `vol(A , u) u* J0 H$ s' b2 t& _) }5 x7 x
    i1 z, r0 ?8 H; `# c

    ) t* c. l4 s/ w2 e5 G2 q )
    8 Y! e6 V( ]& C1 Y/ F* v/ _* F17 L1 F# u' W+ E  q3 W; j
    5 u- u0 u4 R$ j* F) |. q  f: F9 E; ?/ ^
    / L& }" m& L8 j; m% o
    j∈A
    % G8 S7 G$ b$ I7 Z" w/ zi
    - k( z( Q* c2 v: C& J% Q+ V
    1 \: z2 }: A, y# S$ Y  ]3 s: B4 K# c( q- A" Q
    7 d1 e, c* J: p" M/ L

    4 v5 V" f( u/ ^$ l* ^ d
    $ Z2 y/ N% o% e; S, |% K4 Hj
    2 _7 x1 q  }& |3 O# W
    $ V6 l6 a, x" s% p1 ? = 6 K  {, W9 F# j( P3 n1 M: j
    vol(A
    & l; E8 |0 t3 o* Di: w4 a) U9 T8 i3 A* `2 E8 X

    " H/ g' c9 H" Q )6 c. w( Y/ I9 b$ G" Q. V1 k
    1
    * g0 Q2 y  K0 x% x. M/ o9 G( e6 ?* {; j8 c5 g& b9 ]
    vol(A : s9 A1 N: \3 [& l: [$ z
    i
    7 I" K  n0 w& J: z1 \! o' O$ d( e
    )=1# k; f' l, W5 [( X/ P; }! q
    因此,此时切图优化目标为9 o# w* P+ h  s: i) X: p, ^+ M; O5 {

    : l7 g' I, D1 t& O- Pa 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 y" j- {! T6 g# C' aH
    $ o* O7 X( Y/ Q( }) Pargmin
    ( n1 J, t2 B; ?( D, z, H! p2 ^* J4 H
    , |6 ?4 e( |# ?& f- L: x! n5 `

    8 \; D  S, ?4 A  |2 P tr(H ' V* L' a" s% b, V
    T' c5 B# m/ L% N* M. A$ H
    LH)s.t.H 8 d( U' q, q) F. x1 _. N
    T
    ; L( X9 g  ?( h' e DH=I6 K; O) ~5 O/ w) n5 A$ c7 X0 A, t/ _
    , \8 K0 R+ B& Q8 O# C: e  }
    但是现在矩阵H HH中的指示向量h hh并不是标准正交基,所以需要对H HH做一定转换。令H = D − 1 2 F H=D^{-\frac{1}{2}}FH=D
    % X" Y9 z3 Y1 N) x( i2 z* @3 ]; z; g7 z0 G
    2$ E8 T$ D7 G/ }0 _1 j% S2 j8 ?
    1
    ; O( U7 f4 M( ?! _: g0 s
    ; z3 L' M( p! d
    9 P( l% f% [7 ?5 y 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' q0 ~+ S9 K% A5 i4 rT
    . Q5 {& P* B8 h3 ` LH=F ( f, F% X8 X2 e' N
    T9 F. F( n( ]/ N2 H) m5 ]/ S5 {. F
    D 1 k8 t  Z: K; h0 x- e* X- q' M6 A6 u

    $ {6 u, V/ W1 W: _0 S2
    . c$ k& }- u: l' E* D% ^* ^: Q19 z6 a3 t2 z+ L7 e' A# }& f
    1 Z5 K& Y4 q4 O" N3 ~& q

    ! P; I* n/ F3 W8 O( L LD   k' D6 `2 ]2 _- ~

    . ~/ h: R: u6 H& m& R3 U7 t2; z+ b, b6 \( H. z
    1' q1 U% W$ }2 A
    2 D7 }; X8 B8 j3 ~$ Z% Y

    # `8 m5 r3 K# E4 u( S* { F、H T D H = F T F = I H^{T}DH=F^{T}F=IH 2 F" u/ i! n* k# G
    T4 n1 D4 t3 D6 f7 l" d* _! q  T0 C8 M
    DH=F 6 O5 \( c; _2 n" b  P6 y
    T) \  e5 M* p: g( S, C6 f) [1 x
    F=I,于是优化目标变更为
    ' j7 h% p0 `7 La 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=I7 m/ c4 ^+ U- U, Q4 [
    F
    / `- {* b% Z6 X& r% E6 I0 Vargmin. d0 T  j9 R5 h* P' L" B

    1 j. r' F" K) }' ^7 J9 s" Z" S8 H( o- n; g' M
    ' Z# S- _$ [4 r2 k1 y+ d% W
    tr(F
    2 h# E/ \6 O& b3 B2 e2 T+ S# H7 ~T
    ) f8 |' v9 d+ u9 T D ! x" p% C+ J% q* G0 C* O

    / ?, @% @: G1 u$ y9 x2 \2) ]; L, w; {: l) L3 C
    1
    ' X; c6 i( {* S% i' }. d% |3 w9 L: P( |. Y5 T" O

    7 v3 x1 q; E: d' Q LD 1 I" t# x/ v' @7 `# Z% T+ Y
    3 m0 Q/ R' C& _" i' G5 F
    2, u' I( d4 X: j- C8 D
    1; b1 R- U4 w9 c
    ! V  m: Z) X2 X% Z3 _
    / I) J7 t; ]1 b3 y- x; p) x
    F)s.t.F " `4 e1 }2 j3 n4 K5 X) e8 X% K8 H
    T
    : C- I- w8 A, m, r F=I% p8 F5 D+ @( F* h
      ~" \' J, x- G! h
    现在,和比例割一样,通过找到D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D 1 Q9 N9 Q4 b" J" k$ B

    7 F3 S" W% Y9 w- t5 B8 k( T2, V! d$ w# t  T/ H7 K9 ~" D
    1
    & k2 u4 d4 B6 {. I0 R
    ' j# W4 s) o0 g- r0 E5 @. y4 i  Q! ?: X* b
    LD
    9 u2 I5 ?6 \! b* b/ |1 V5 c1 {- }6 h& X( z% M2 O8 p; o* x: ]
    2
    - G, X, r  M& S7 M! o1: _- d2 K, {5 s+ G# X
    7 f- k" [/ H; Z7 N; K! o4 J- x: T

    # q0 D  [4 a4 m1 M# z (就是之前的L LL)的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特征向量组成一个n nn×k kk维矩阵,也即F FF,最后对F FF进行传统聚类+ t9 F% a* x$ d' @
    % d8 k' @$ S9 Y  l0 w
    一般来说,D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
    0 B" g3 y( D3 P. V0 L; R3 x5 g/ l- R/ c' t
    2
    " E" y, C; n; M) A3 `- U! P0 N' B1. |, j" C3 `# \* m
    ) \* G& b: ^; n" H
    . [7 s0 s8 P' x0 H
    LD " y, C6 ]% X+ v/ r$ f) Q& f

    3 Q+ u0 Z. N- k$ F& X2
    + @' H# `  K: {; m8 x/ b, ?1  f8 l& o4 e% u. Z
    / ]6 u: K( H; F. t5 t

    , k0 v# O, N& ~# F. o4 k3 v 相当于对L LL做了一次标准化,也即L i j d i ∗ d j \frac{L_{ij}}{\sqrt{d_{i}*d_{j}}}
    2 d8 T2 a2 g9 _9 n' b" l3 H  q" Xd
    , `  }( j# G" _+ |' y9 z/ b% ]9 ai
    # [* N5 d' S9 R& h; _6 d% P4 c, }9 y  H* Q
    ∗d
    0 x0 `0 N# a; G5 C' ?- fj
    2 r7 l! s$ D- ?% j% S2 q- [; ~6 {
    1 h. I" @; ]/ l
    0 X5 E6 S; M9 o2 J# u
    5 T4 }0 p& h" k( S- ^8 F: ?3 ]5 E7 B/ s" O
    L
    . x0 n' d- U: c# C; u/ yij( S& t0 o4 Q+ u* I. m! F1 \

      y% K- x; c$ T( _
    : e) E3 X  s1 \& c9 m
      G1 y( c8 r3 W" S. p0 _& B: s7 v% V
    二:谱聚类算法流程
    9 [' ?6 ?! J1 R, y2 a给定数据集D = { x 1 , x 2 , . . . , x n } D=\{x_{1}, x_{2}, ... , x_{n}\}D={x
    ( W: E4 y: e7 q# t  |5 D1 U12 Y; R2 `- e$ t- t+ k
    4 s6 i1 _! I! ]
    ,x * |" _! b+ `: M3 U9 D0 ]
    24 L* Y% p" ^! K) t/ t. E4 J8 p

    2 S9 B+ t( U9 I" l  B+ w9 N ,...,x
    ! y: Y0 a8 q- n' Z" C2 G7 qn
    1 j6 k7 U3 J8 n. S$ E" F. f
    % W: `5 q  A4 g4 e; @ }. i: G* e9 Q( w! l8 r
    6 i2 L7 V3 h' j% L
    根据输入的相似矩阵生成方式(一般为高斯核函数)构建相似矩阵S SS(AffinityMatrix)# l6 z  S! r7 a7 @
    根据相似矩阵S SS构建邻接矩阵W WW,再构建度矩阵D DD
    5 D( j$ c- d& U6 L' O/ [1 G计算拉普拉斯矩阵L = D − W L=D-WL=D−W
    % l: d! f5 O8 ~, {: o; l得到标准化后的拉普拉斯矩阵D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D % ^  t* {9 z, U, w+ N; i
    4 O* e! G2 ^1 O3 {& E, Q
    2" V" V# X3 C7 f% Y
    15 t' n: E# y7 u& `7 }+ c. I/ y

    " r+ ~" P( _; n3 n; p* Q
    : z$ u: J' z' ~3 E9 i LD 4 F" E) E2 i6 ?2 M3 ~: \' k
      h, t: L: s9 ~; D" O: v& [2 Q
    2
    # A: k/ \, q4 t2 a# X1
    7 N9 k# F! M% K- b7 S8 A6 {' h0 ?" T

    ) k4 ]2 n- ]' c& `1 T+ @3 b$ S' ?4 [" b0 P5 w: t
    计算D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
    2 o" b. r% e8 O# N3 x. |$ z0 |8 Y
    # R% u% D: s6 L9 _# }2; O0 D, {  ^: q) |
    1
    # k6 V- h7 G8 \9 z  ^" L& M
    " V; E4 Z, X5 [; E7 P0 G. j% @0 Z$ B% N+ d! b" S9 B
    LD
    : W7 p; s7 [( {8 u3 C
    $ k9 G6 R3 g$ B! _. j: {4 u" Y/ }; L2: y2 |, [" G2 q, ]
    1
    ; D% w! k& X/ e* v; \8 ~; B  k- H9 d  w0 ?" l( E

    2 B( n2 ]5 B/ B% ~$ n 最小的k kk个特征值对应的特征向量f ff: i2 Q& O& Q) w. ^+ r; J- s
    将特征向量f ff组成矩阵并按行标准化,最终组成n nn×k kk维的特征矩阵F FF
      _' l; D* \. |F FF中每一行作为一个k kk维的样本,共n nn个样本,采用某种聚类方法进行聚类,假设聚类维数为k 、 k^{、}k ) N6 F% q* L' `0 y, u0 k6 V, p4 R
    1 V$ K9 ~4 `) M7 J

    # i. {2 t- c) {6 F/ Z0 L得到簇划分C( c 1 , c 2 , . . . , c k 、 ) (c_{1}, c_{2}, ... , c_{k^{、}})(c
    2 l/ L6 n# }1 n/ A% C/ l; h/ O% t1
    : f. D9 |/ F" \$ o$ E/ o' m+ I' K: h& W0 P+ K' X8 I+ D
    ,c & D1 E4 ~. G* U  b
    2. L# Q# U, p4 @+ h$ P4 R

    $ }' N" O6 \; U8 T- k+ _/ L6 C ,...,c : I& N" P& F% h; |4 y( g
    k
    0 o+ [  j$ p# M- L3 P0 |7 j$ j( f+ k/ C' s+ u* }- Y

    ) n$ y+ N: t9 t4 {+ f$ L, F% X% n) |7 R. J* N9 E/ c- I
    )
    1 O8 i, H8 N& W9 `8 [, [( \三:Python实现
    " Q/ ^0 _# L* Z1 p" z% simport matplotlib.pyplot as plt
    . k* Q1 {. r0 O, I$ c& ~( i- Simport numpy as np
      m$ _! K: l4 p' ^9 X6 f9 {import pandas as pd# n, a' o- U8 z$ C; z" w) v* f
    from sklearn.cluster import KMeans
    6 w( m/ _# R: {( Sfrom sklearn.metrics.pairwise import rbf_kernel
    - J) k3 _3 s( ]; h+ [' Y  ofrom sklearn.datasets import make_blobs
    # m9 {. W% I" t$ e: k" ffrom sklearn.preprocessing import normalize0 T& R6 I: h* g6 U4 K

    , z4 F" |, e  Y" Y7 m7 ndef get_affinity_matrix(data_set):8 A$ h* u  {8 k9 V  {
        #  利用高斯核函数计算相似矩阵(全连接)4 o- i, K; c& e& S2 J4 _( f
        rbf = rbf_kernel(data_set)
    4 u+ K" c  U% `3 b    for i in range(len(rbf)):
    5 z7 @) i4 ~$ ~) z% ]        rbf[i, i] = 0( @& p0 v: z  E7 h7 T1 g) p) z2 G! M
        return rbf
    ; L- v  |0 A6 l/ Y1 m& A/ C, W& X) s, S- B: a$ H  G( Z

    * _6 X$ J: W. w) O* ?. }8 Z$ Gdef distance(x1, x2):9 G; ^2 C8 a* b
        """
    * m( m/ v0 }2 A+ {& Y' N    获得两个样本点之间的距离+ K) w. z2 u4 Z# I0 L# V& ]% r
        :param x1: 样本点1
    : P) S: \( V) f" C    :param x2: 样本点2% M$ j. s2 N4 y5 o
        :return:( ?' T1 J0 A& R, I, o2 ^
        """
    & T5 c* [9 I7 ~$ B/ A; f8 t+ U    dist = np.sqrt(np.power(x1-x2,2).sum())' H; r( c' w5 b& b3 g
        return dist2 E& @" ^* H* W' ~: L

    ; r6 z/ X4 Z1 k+ {. h7 I" S6 h5 P% Pdef get_dist_matrix(data):3 a% r+ t/ j% D/ Q: s. }
        """
    , q% Q! v( M4 H; {8 X" U    获取距离矩阵
    / Z4 M: f# I: {9 x7 K1 Y8 g    :param data: 样本集合
    , E) H) I% Q7 T# i. r( h: i# b    :return: 距离矩阵) [0 c+ G' y' k; O% n# S# y
        """! N2 ?1 z" T3 h, s
        n = len(data)  #样本总数0 q2 A, X( h1 `0 @
        dist_matrix = np.zeros((n, n)) # 初始化邻接矩阵为n×n的全0矩阵
    ) }8 Y" f2 a% @% W- r1 c5 B+ l2 H0 R    for i in range(n):! [8 H1 J" Q& w( i- D% G* P( \' i
            for j in range(i+1, n):8 P. r3 {% n+ S& r$ P
                dist_matrix[j] = dist_matrix[j] = distance(data, data[j])
    9 M% ~, ~; P' R! z* r2 G    return dist_matrix
    + `/ v8 V3 @3 {# b; W; e9 Q8 }6 L3 W9 i$ H2 U; X& W
    def get_W(data, k):
    6 m5 T$ T1 \/ n1 y    # 获取邻接矩阵(K邻近法)
    4 ^7 O9 F: A6 `  _+ K  g  J7 f    n = len(data)2 L8 E# V2 x9 l; D* a' s% W
        dist_matrix = get_dist_matrix(data)4 K/ C6 Z: ^; y) O: w' y
        W = np.zeros((n, n))
    & h+ B, ~) F, w* |: P/ a; }! y    for idx, item in enumerate(dist_matrix):5 s! W. z% A! I# T
            idx_array = np.argsort(item)  # 每一行距离列表进行排序,得到对应的索引列表  B' E# u  P, a1 V1 }
            W[idx][idx_array[1:k+1]] = 1
    * d8 ?' z+ g2 S$ P    transpW =np.transpose(W)3 W- p# z: i; j8 K- l
        return (W+transpW)/2+ F! a, M" \. \9 [- E' y
    6 E7 h4 z( C4 E3 Y
    def spectral_clustering(data_set, k):
    2 t  q% A4 b# o  ?    # 利用相似矩阵S得到邻接矩阵W
    8 C8 I( C( ^  i$ H  {6 ^    W = get_affinity_matrix(data_set)  #高斯核函数(全连接法)
    ! X6 w* L  \9 E( q9 J; R9 d    #  W = get_W(data_set, k)  # K邻近法. A7 Z5 Y  j! c  E0 K) C

    - d$ p  W" h2 W% u+ b, G' I    # 计算度矩阵D,并得到矩阵D的1/2次方的逆矩阵(便于计算拉普拉斯矩阵)
    ! W% L% ^) P( K  |& u2 `' t  ~    D_inv = np.diag(np.power(np.sum(W, axis=1), -0.5))/ c4 {4 G: a+ \- _2 F% p
    4 q8 e( ]9 T1 T
        # 计算拉普拉斯矩阵L=D-W
    6 Y1 e0 \' M8 c" D  J6 F    # 标准化拉普拉斯矩阵l = D_inv*L*D_inv=I-D_inv*W*D_inv, E( v/ x6 g) r
        L = np.eye(len(data_set)) - np.dot(np.dot(D_inv, W), D_inv)# U6 S5 F$ ^! C* J

    0 o$ [5 h/ X% J1 O9 m    # 得到特征值和特征向量
    ( \+ X. K2 i6 f3 s    eigvals, eigvecs = np.linalg.eig(L)9 X  [9 s2 W3 A' h; c
    9 S; @! o% H& k* x: z( B4 B
        # 找到前k个最小的特征值(索引); g. |6 \7 u* v5 }
        k_smallest_eigvals_index = np.argsort(eigvals)[:k]7 `; y2 j; v6 o# U
    + @; {) P  g- G& x8 \
        # 取出这k小特征值对应的特征向量,并正则化
    % e" ~, E: F6 m* g+ p6 C    k_smallest_eigvecs = normalize(eigvecs[:, k_smallest_eigvals_index])
    $ c. A# |# Z4 r* U  S* \% h: i  p" o; x7 S9 U( h
        # 使用K_Means聚类
    3 n. A" s! h/ B2 Y  T6 d    return KMeans(n_clusters=k).fit_predict(k_smallest_eigvecs)- w" u: H) t+ a# |3 o( r' \
    5 B6 Z6 n- k( r
    . g" A0 @0 A( q7 K# o0 w& }* u
    raw_data = pd.read_csv(r'E:\Postgraduate\Dataset\jain.csv', header=None)) F8 R& R7 S( M/ }
    raw_data.columns = ['X', 'Y']
    % e" a- K, y- x& @9 v( hx_axis = 'X'8 |1 ~9 |9 J, n- |5 o
    y_axis = 'Y'' E$ Z& i1 o' y: e& C4 d, V' f

    ! o$ ^& s! F7 k8 D$ F- Eexamples_num = raw_data.shape[0]
      o* z3 Z3 q: D6 X  ?- rtrain_data = raw_data[[x_axis, y_axis]].values.reshape(examples_num, 2)! }, ~( `9 U/ J9 i, n+ _3 }3 S' [
    # c& V; p- Z" Y7 y1 L! b% G) K

    7 Z7 ^" p: l$ ~! i) ]8 k- Emin_vals = train_data.min(0)5 X* U; X  @3 w/ q0 i1 d
    max_vals = train_data.max(0)* |1 L" e/ a* G) u. e
    ranges = max_vals - min_vals8 ?' r7 Y- j6 A; d
    normal_data = np.zeros(np.shape(train_data))1 N/ @& g. J, L4 }+ A" Q
    nums = train_data.shape[0]" \4 `) ^1 n9 D5 p$ Q; I- ]. l
    normal_data = train_data - np.tile(min_vals, (nums, 1))
    2 M5 E2 f6 F, Dnormal_data = normal_data / np.tile(ranges, (nums, 1))
    + n/ c8 [, m' I: N) R3 `; Q
    , H8 o& l& ?8 X; _* Slabels = spectral_clustering(normal_data, 2)
    3 r$ P+ \* d5 [; g% V* Y3 d6 C, U. l& y/ {( i* C
    # 原数据
    6 z$ ^' {# }& A0 _$ Q; t( z" ufig, (ax0, ax1) = plt.subplots(ncols=2)
    8 x; S! Z: H- @, j+ qax0.scatter(normal_data[:, 0], normal_data[:, 1], c='black')3 Z# R, C" k4 S7 E% {
    ax0.set_title('raw data')
    ) K3 k* r- i  e+ j/ K6 P# 谱聚类结果
    7 H' R) B7 c1 b0 e: d+ nax1.scatter(normal_data[:, 0], normal_data[:, 1], c=labels)! N% [' T% b3 c3 f
    ax1.set_title('Spectral Clustering')
    0 u; v' X' N5 i+ [6 a+ R! b3 d0 W, o/ r  C0 u2 X- U- C
    plt.show()
    - t+ v6 I. s3 y' Q  Q2 Y$ A& }  x$ R7 V
    10 Z: e/ ?& _1 p# }  E3 s7 P8 |, ]
    2# v: Q- Z) N# o0 Q
    34 R7 m) p5 v4 s) f6 F
    4
    - O, k3 u( C7 A+ u5$ G8 I, l! t; a1 k/ z* V
    63 c- w, W. x0 m' Y4 H; K
    7
    ) }6 a2 v: y$ ^/ P5 f1 f8
    ! U1 \8 e7 D! v) m& u9
    / O! W$ u7 |6 O$ ~8 |4 p10
    ' L' R3 F) [1 u# F  A7 j11
    5 c& ~& R  d7 {& O2 F12
    % F. O& j+ w( G9 ^13
    " K& o7 u; ?# Z  q9 m" t# w14
    ' b+ n$ ]( u& D/ M, q( b9 m# F$ f158 x  Y# }4 a2 ], M- R
    16
    3 m# N# L9 [0 V9 P17
    ! y- o  v# H0 {+ G" s  ^8 k18) c0 D) i& i* m: D* ~
    19
    : L# @( x$ l3 p2 m20$ s: p1 q# o: k' r
    21/ E! W% u8 D& F/ _0 E
    224 H& S% p& c! K2 v3 X
    23
    4 S- n5 G1 W+ s24
    " B1 f) A4 l3 G- [+ l, k25
    $ ]" a! X0 w  A$ A26
    & h4 P, |( c0 [7 D27: ~" j" Y, ~& D6 t
    28% o* s% x; _( n0 d$ t3 \
    296 W$ U$ m2 f8 ]
    30
    " T8 u: Y" M3 t5 r; H( T31
    & z6 a8 J4 c5 A0 [+ a329 s3 f  h$ X5 H" }7 \/ B4 I
    33
    0 c. i# q3 c" d3 W9 `34
    1 l  J7 X7 S" b0 X/ E6 B+ Z+ \2 A- a356 Y& A' T4 D, f/ C; o
    36) H" Q9 d% q/ l  P6 I' v+ ]' j7 ]
    37
    5 Z6 N. V7 p' \- c38/ X7 l* D1 g- e
    39. x, M" E" I. f2 E: j; z
    40
    ! }! }( L9 Y( F. t( b9 y' m+ k410 [' ~* L7 |2 @& u. g
    422 P) q' k. L; J( X4 N
    43
      s- R; o/ K# D0 T: a6 f44
    " p; y( t$ X* Y; r. Y. O5 s! Z4 ]45
    - B4 N  [* _) q+ E# ^# Y46; V' K1 L, k5 Q% z! ^9 `5 S3 i
    47
    8 @# j7 s! ?: ^3 M8 M( g* k48( Z3 P, c8 F. i: C- X: v
    496 z+ }5 C; V  C4 ^: x) U1 h' e
    50
    1 L. ?% Y$ u! n' s51  `3 n/ z) L0 k
    52
    3 B+ i7 I9 R" f. }0 V: H* E" g' e2 A, z53
    * g  n& O+ P& m1 b9 t; ?: @7 L54
    - C: |1 z5 A: }4 J( Z55
    $ r5 T/ c8 }. x  D7 e565 M* Z( I$ X& k
    57. }4 ^* O  B! n
    58. s# |. x. y! i* @9 L+ ]! A, a
    59
    - \2 P) \6 E. g3 x1 z; {2 l( [608 r8 k+ B7 D) ^- @' ~. G6 W
    61
    1 p* L5 s+ W5 ]. B' {) ^7 Z62
    4 N( W' m* W! i. ]" U1 g63; G8 I. r; [4 P# l( d4 L( D1 C
    64
    6 M% A9 F* l- A5 h; s- Q65
    + j1 G8 T6 z+ E8 e! c* g; [! Z% W666 I' `4 [& G$ Y' x1 R' {3 b6 ~% T
    67
      s6 C; e+ d: n$ R; z68
    - b% ?5 g0 z" r, J69
    3 d2 ~9 K5 J9 X2 a, I, S, E70
    ) e! w" h. q0 v1 M717 g1 Y( n8 c* |7 \! n
    72
    0 C; n, o. c; V( t- N9 \73
    / d( y- q! D" O3 E" W) ?74
    " A' U( J3 N$ r. o% {$ A3 A1 o0 }, N75
    ' K, H! Q  B8 w  e76
    . N6 j( n1 T# p- E( e0 I77
    $ V9 T" d- k* b6 J78) x% K, t  f) n9 H% T/ i
    79; z! x. _! i- u$ {. f! v. F' E
    80# U6 ~3 [3 ^1 D( N( g. M
    81
    : q6 d( \' q  k- j( V" c' f82
    " S0 i  K7 @; I4 S5 t1 D' s83; ^7 \9 d2 a+ R; g
    84
    7 G$ _+ u3 D1 o4 a! U+ W$ }0 W- T85: G* Z% ?7 K% |
    86; f# Z, x: c" \1 L  g! G2 q
    87
    / K3 L% x% N) n. [885 s4 i$ I3 F/ ?: b8 q
    890 i# ]" l* X$ q3 Q" M1 ^1 o9 E
    90
    9 ?/ g' o# `. H3 ~! u& o91
    / G6 [7 Z- g. n7 {- Z( u9 J92& ]3 C5 Y1 H4 B
    933 I# |; ^  L) t* I0 \1 _
    94
      m0 J; \/ k1 a0 U95
    + ~& j0 U; n0 E) X8 h" `& J96
    . N2 e; S, x, l9 C) [8 J97
    . `" n6 S' k& i: c: z989 K! w) c3 T8 l. O" e
    99
    + j4 A( V3 z3 {( i100% s  V0 D3 P! d* \# ~1 ?
    1019 W  W2 T4 F8 T
    1023 E  a* l! n5 k# r. c2 H
    103
      f: W* p) q! R3 |(高斯核函数)
    ( n, |3 U9 G4 D9 y, d
    $ a2 U" x6 {! v# ^% D6 z' e' C/ f  y3 j# Z2 j2 y- Y
    (K邻近法)
    / i6 |7 i8 X% H  B  p$ l
    5 r; r9 k* J6 F
    + \. q* F0 a* J0 U$ R/ k# {四:谱聚类算法优缺点
    ( j/ `( I& k  B3 p* R5 e3 a(1)优点0 Z9 I! w% Q2 L, n7 s
    谱聚类只需要数据之间的相似度矩阵,所以对于稀疏数据的聚类很有效
    ( U& j7 g' t- \" d使用了降维,因此处理高纬数据聚类时复杂度要明显低于传统聚类算法
    ) @/ }( }/ d) w4 X9 h谱聚类算法建立在谱图理论基础上,与传统聚类算法相比,它具有能在任意形状的样本空间上聚类且收敛于全局最优解; \' W; ?4 p  T# O! c) w
    (2)缺点
    % N) m% V4 {: S如果最终聚类的维度非常高,则由于降维的幅度不够,导致算法的运行速度和最后效果都不是很好( _  C6 s" k8 d1 N4 K* q3 T0 W3 \) H
    聚类效果依赖于相似度矩阵,所以不同的相似度矩阵得到的最终聚类效果大不同相同5 X& b* I1 E+ W0 |! R5 ~
    ————————————————
    / f" Y1 G! ?1 c; Z4 W, N3 n) V* s1 |版权声明:本文为CSDN博主「快乐江湖」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    9 O" A" @( b! j0 y) A4 D原文链接:https://blog.csdn.net/qq_39183034/article/details/126747494' {9 ~7 l- e% @" C, m. b

    . i9 M; T9 a, l8 W4 V" x8 _6 ~  ~/ f2 d; O
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-6-10 23:37 , Processed in 0.475757 second(s), 50 queries .

    回顶部