QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2947|回复: 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
    【数据聚类】第八章第二节:谱聚类算法之切图聚类、算法流程及其实现
    / r, \: P. K! q9 k3 k% ~) z1 T* U
    2 \- [3 R9 ~: n% u) E8 p; x本文部分内容源自刘建平博客,在此基础上进行总结拓展6 t+ f  ^0 ^2 J0 l6 P; V; _& b2 l# N
    ( x& W- g4 c# O5 w7 _/ k) M
    原文链接+ P9 ^5 r' c6 m  f' [5 a
    文章目录
    / f" A. S1 u5 t1 e5 ^% d' O5 y$ Y一:谱聚类与图划分' }# n  A6 _( J: e7 }
    (1)比例割: K# L8 X# N) F
    (2)规范割(常用)
    % j7 F* K! l; F$ j, i二:谱聚类算法流程
    . W2 Z# c* [6 y, U三:Python实现
    * \( M" U( n5 ]4 q7 ^, X8 @四:谱聚类算法优缺点3 `; b5 ~& Z' j* K6 r( o
    (1)优点- f9 O' E# T9 I. @/ F4 q% |. U) H4 H
    (2)缺点
    0 O) w: N% G  K+ F; [0 y7 H6 i一:谱聚类与图划分
    3 [% j2 y* [& Y8 u7 p无向图切图:谱聚类算法根据数据点之间的相似度将数据点划分到不同簇中,因此将数据点映射到无向图之后,可以转化为图划分的问题。对于无向图G GG,切图的目标是将图G ( V , E ) G(V,E)G(V,E)切分成互相无连接k kk个子图,其中) L# T9 f, F: w
      W8 H. f2 n' j
    每个子图点的集合为{ A 1 , A 2 , . . . , A k } \{A_{1},A_{2},...,A_{k}\}{A 8 o* |/ J+ l! `0 |/ D, U
    1* A# F% W/ B  i+ G2 @

    7 Q6 R; ^# n0 |# q/ Y1 C6 w# I* ~ ,A . r: U! E' \+ f+ t0 O% [
    2
    % k# E" m! l- o# C8 [
    . U7 Y# l' i1 z' k ,...,A
    ( ^; d, f0 E& l* rk% e" Q/ J1 Z3 B; B0 g: W- R( }, B! U+ ^
    : N2 p7 s3 c% `% u7 u, y" f+ w
    },且满足A i ∩ A j = ∅ A_{i}\cap A_{j}=\emptyA
    + J' D! T; r& b9 x# n4 ]i
    - a- b, v. W9 E1 ^! x( n; X, ^+ \, a- e; E3 N5 a0 p! F
    ∩A
    5 o/ \4 g( ]$ U8 F" Fj
    9 E/ |! C+ X6 y+ R- \4 R
    ' R' U5 D  i; W& Y' P =∅、A 1 ∪ A 2 ∪ . . . ∪ A k = V A_{1}\cup A_{2}\cup ... \cup A_{k}=VA
    : y( r- X3 U% C- R4 ~1' t% B: q4 O& ]& \( n: E8 ?0 ^7 s

      f1 o. H. |) ]# }, X ∪A . B- u7 G1 B" w' i! \4 H, @
    2
    & z* a: s( Q( }: Z4 z3 P5 U( v3 j! o  M0 u
    ∪...∪A , e1 [% k# t2 o) N  D
    k
    ' T$ t/ z2 n& H8 P! n$ S1 Q0 ]! p: K  z1 I3 X! Z  l! H
    =V! ?! Y3 ~6 `+ ]
    对于任意两个子图点的集合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 a9 C' `7 p8 T/ E. h) o, D4 W2 v2 Ji∈A,j∈B: ]. `, {2 O( y! M- H, s+ N

    8 m: {- w7 |; x, s: J+ C& n* [: p! }# P
    w
    & d( [+ Z) U5 r, `ij
    * d! }7 n" Y8 V% U! K  W2 J
    0 A2 s7 h! m" }5 I6 a) F8 @  C  ]7 Q- [4 x) S0 c1 v$ b
    对于k kk个子图点的集合{ A 1 , A 2 , . . . , A k } \{A_{1},A_{2},...,A_{k}\}{A
    * r' S" z9 \6 b$ i1. P8 \) V( S, \9 h: H, m; @( B
    ' V' ~6 I  g; C. J& ~
    ,A 8 U0 b% H$ u+ t+ G
    2
    " k9 v- S1 s( r7 R
    6 m9 J/ L% g1 m$ i& E ,...,A 7 m) S) u( x, N7 ]
    k
    / J' a% ^; l7 k3 @# k
    9 i1 W0 P4 X" y9 f5 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   s% r: Z+ }3 Q( u- |1 c( D
    15 ?. n! p# ~8 j& M* {; s
      a1 |: S) y6 t2 T+ p9 F5 I+ N* J
    ,A 6 ?, T4 d$ T; z
    2
    ; p+ M5 a- {4 R3 J3 I
    9 o$ J" T$ E6 {5 Q# i" |7 L ,...,A + d9 Z: N; ?) b! h# E+ W1 J
    k
    ! x4 t9 `& F4 A) q
    5 q- K4 n! g$ \1 v3 J) m  w )= , {4 y1 s! Z1 u& ^6 P* Z
    28 K' Y) W1 B4 ]# L$ [8 S4 b
    1
    - c/ x- p; I! F  c# w* r2 v, ?. n0 q1 e  U7 B7 i1 ~( o! Q+ F6 h
    ! r, \" H, c4 q8 r
    i=18 Z: @5 f9 }# _5 Y; y4 M

    / ~$ r/ U* m+ J6 F! ]k7 ?5 q# v0 P  w1 A7 {

    * D6 Y5 X! }7 {6 S5 N W(A
      L' j6 v6 T5 N  @  }i  F) l2 }; `1 [

    1 S9 Y. ~1 ?) V" l ,
    ! e- T! l( A- {0 T. RA
    - O" M. l) ]: F- e) _ˉ
    ) P$ s6 q9 f& q; G, j: x8 |4 [  Y- k2 _! H
    i
    $ ?. ]: _" J$ i  [
    - y( W, Z2 z% M$ X ) (其中A ˉ i \bar A_{i}
    4 F% q1 `  p, P- PA2 c0 E: _  g& d% b# a& a: `2 [
    ˉ; {, h: s7 @* b6 Z7 c: x
    2 {/ N; H" O- M" `! z) P7 p
    i3 A% z/ v" k# L" d) w
    2 x4 q6 \7 R. g2 O0 B
    为A i A_{i}A % F/ }1 \2 }: b8 Y$ e
    i
    " m$ i2 \3 K8 J9 U4 ]
    * g5 U# w# k( i3 b$ | 的补集)& e# e  U/ n$ t
    可以看出,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 0 f8 n! I% L6 f& h& T( X/ ?5 A2 `
    1
      a, Z# N0 H( ?# G/ j8 q1 G
    & z. J/ u/ O* P" O' ] ,A : T! y$ b9 K7 }* W0 D) t
    2
    # Z, ]8 ]. a* R+ n6 T/ \0 b" X0 M, `$ X( J6 e2 X6 z8 h( R
    ,...,A 5 P' }) u4 T9 O- N, ]7 m7 q
    k/ `4 Z1 G- \+ h* q

    1 n9 g0 Z/ S' S  ] )=
    & C: e+ M' o4 {2* x& R# x. n9 W) K# @
    11 b: ]; R- I: E5 j, s  F; `6 I

    - g  g7 N7 L. a  f" c" D
    & {" o. d: c9 n1 Ji=1
    $ L0 b' x9 `- j3 Z8 u9 _; i1 V& K2 i9 B
    k
    ! g5 ?8 J& g  j+ L: c8 l: Q+ ]$ O4 N
    W(A - _. S  W! g- @* p: z+ c8 _
    i
    - G$ m9 I5 @* ]( n2 D# a7 ~- P$ M& Y9 Q
    ,
    9 s+ X7 v& p; a2 BA
    / Q1 ^0 s+ y9 X$ j/ rˉ
    : F' U. O1 [( O- n( O; W) c6 {% c. l" s1 h9 J+ [- @- l# ]  H
    i6 s$ |6 t3 O. H
      @5 L6 Q8 q6 S2 F
    )在划分子图时并没有考虑每个子图中节点的个数。所以在某些情况下,最小化c u t ( A 1 , A 2 , . . . , A k ) cut(A_{1},A_{2},...,A_{k})cut(A
    . w7 M3 g, {( f. D% k% J  S2 X11 E" H9 i6 q: W
    " d4 W) Z% R# Z* _4 ^* L: Y
    ,A . g0 A8 F0 T: t7 o
    2
    % J7 g2 d1 j# }3 A% P/ h2 N+ F* _8 S
    9 x/ Z7 X5 h9 r) j/ E) D+ i* t ,...,A * h2 |  V9 Z2 Z8 |4 H6 R
    k
    - q7 c  p2 K8 C3 H0 R# h3 A! H5 G# A) u- C7 ]" O# K* p
    )可能会把一个数据点或是很少数据点看做一个子图,导致子图划分结果不平衡& E1 p, P9 j  z) G
    ' _7 T& }; p. q3 ]6 }7 j& k' R
    例如下图,选择一个权重最小的边缘的点,比如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 * I* U" y+ ^1 m
    1
    % D: \6 ~! T( {, m* F& T/ s/ c2 k
    # J4 B- i+ y' O* G& ~3 J  J3 l ,A ! M1 M3 H: R$ F1 s6 K
    2* p! e  j' Q8 d' ?+ y" Z1 y5 y, ^; s' q

    # l& f6 T% H$ y1 B8 S! L ,...,A & W& R; H, v" x# Z% d$ Y
    k3 S' R% k! c7 A
    0 O  f7 X' K  W6 z8 n! [
    )但是却不是最优的切图; f( ]4 @, m8 D* ?: U7 Z# k% O
    3 P$ Y* Z6 ?+ E) @) l
    为了解决这个问题,会引入一些正则化方法。最常用的两种方法为比例割和规范割
    / t* X/ F: T* X6 e; m- [$ L
    3 ^- F5 [) o0 s0 Z* h. c7 g比例割: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 N" b6 l3 [' b& {1- ]* Z* C5 Z7 Y" H
    : T3 k4 X) k& E' n% {! y
    ,A : l% b; z& A. Q$ |
    21 }! @7 p1 B* f; _' ^1 {6 R
    , d5 h/ u1 b! ?2 W) \
    ,...,A
    + W+ _3 W# P" n* y1 uk" I- [! d( \0 p' L8 o

    3 a6 r/ i' s2 G )=
    * s1 A- D& m3 I! Q) k2
    * D: x& \! V" |& @/ h1 D& t7 r. b  u1
    + N. q$ }3 a' v4 t1 n7 E  ]- j' U: s0 H) x* r. }7 ?9 e

    % n* _+ L3 L9 Y5 B" Ai=1
    # I6 R" _& g2 Z$ v) h- x* B' \# c, }
    k  G" A5 [# \4 `1 W- x9 m2 e+ r
    4 G4 O/ B: S& e* W* r
    $ u/ O0 p( s6 O) h& @0 Y: F  F( `
    ∣A % _1 i, ~$ Y6 D0 Q; j9 e
    i% ?* K* Q9 m: E7 B! t

    , |% [" `6 J$ _+ `
    1 H$ b0 ?# {) j/ RW(A % l+ h% _) M. h9 e4 [
    i5 x) Q& S+ m! P& X0 s. \8 O
    & y6 m5 q" f' h2 P* q* k. e
    ,
    6 j6 }# [, }( h! m# @- q/ |% M4 XA
    - n& E1 d8 S) R. x  \2 h4 F% lˉ
    4 v2 S. M, q2 ^0 ~! j( P) K$ P! T. r" ^- W$ P4 K  x; q  u! b
    i
    1 ^6 A! Y: E) U0 P. g% \3 ]* r7 Q/ t
    )
    5 R! V9 v& R4 }$ F1 ^) Q7 O
    6 y, Z* J# |1 |6 D4 Q) S, k, h
    规范割: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
    . a# u( H7 L  d$ h+ O1
    ! G) G: ~6 V3 y! ^8 X9 m7 e2 s- F; Z& M# w( R- p, Z
    ,A - X1 l3 g. u2 f  o/ T* K9 x/ [
    22 h1 l( ~! U5 ^  S' ]4 U/ b- r

    : A, ~2 v- M" N/ U, S7 V ,...,A / n# m. S% P4 ^9 H) c
    k; h& p2 C1 i" V8 a: b

    $ @: K6 e/ A2 v6 x, X: Q% @7 H )=
    3 {+ p% o) Z1 w- e5 _" E2
      a& v" y5 S! h6 W% N( N, P+ X, K1
    ' s* c* g: b/ i' q& b6 S
    ; S2 l( a1 V/ a9 @2 G; J. Z8 s; N& h/ g7 u, _; l
    i=1' `' L% B! m1 T+ `; m8 K
    ' `( ^2 U: _6 T& B9 X( v
    k9 S7 I) y1 B7 @* k3 n; U

    0 y4 J" O" ~/ o4 e
    0 P* b, P# r, B. ]* @9 Zvol(A
    ' l/ f, o( j6 O8 Z1 d. {  bi" n& e* }2 t3 B8 k2 ^0 ]6 ?- y7 B
    7 {! ^6 v/ K$ e6 g1 n9 S1 R1 ?
    )- U9 `& C2 ]" E" q" Y6 d1 L
    W(A
    $ J6 x; I" D" d# @" V* |. f5 Vi6 Q* X. M, ^* J) m( v

    + g9 L4 j* C  w1 y  J9 ]; }" F: v ,
    ' p9 D% z! D4 ^8 [/ m  t2 ~A
      Y/ c* \- l8 V3 [ˉ
    * W( a+ W" I2 W/ ]' e, W( Z- x) s9 x' {: o" l
    i* J% G- W" C  c' \* `8 O
    : w- O2 K" W- t* t' w' V
    )
    9 S# l& l( R0 T* A  F- d6 d) \- T8 C: j( ^1 f" @2 {( e) c2 ]1 T$ w

    $ R; V& d7 |* y4 ~; s! f+ Q(1)比例割
    " h) [0 y. w' ^6 O引入指示向量(点击可查看指示向量定义)h j ∈ { h 1 , h 2 , . . . , h k } h_{j}\in\{h_{1},h_{2},...,h_{k}\}h 2 e8 S; b' a- ~" r% L
    j4 Y- W. f7 N3 v! C4 x2 m

    1 V, B7 C$ {7 m ∈{h 5 j8 z& n& V! e* I0 j5 u0 ]  F
    1$ P7 e# _5 {% u. o* ?4 g
    ! y- E+ Y3 ^  O
    ,h * w  T$ M+ q0 Q  y* e
    23 {5 V5 c8 F8 F# `- X

    7 D+ v" }/ Y( T- X$ t& u- ` ,...,h , Y6 C1 j* [( {5 T. j& \. V
    k% u* i& G# g( m7 Q% c  l$ `

    7 L2 N9 ]: b2 e) x0 M9 W+ Y8 Q },j = 1 , 2 , . . . , k j=1,2,...,kj=1,2,...,k。对于任意一个向量h j h_{j}h 6 l/ c& x5 ?* s* I! N) u2 a" g
    j
    , R! n( h9 D" o0 B" M8 Z/ ]- g1 Q6 `) r& ]* P, n& ]$ Y
    ,它是一个n nn维向量(n nn表示样本数),定义h i j h_{ij}h
    / E$ x  M. p6 J/ {* T( p( eij6 Z( e; X! \4 C- D% ?. W2 H

    % Q# Y# n. j4 U7 S& R( Z  L 如下
    ! k7 X1 O- i6 Q4 p* i% Z( w/ b/ a9 G; M
    h i j = { 0 , v i ∉ A j ∣ A j ∣ , v i ∈ A j h_{ij}=
    8 y( ^# w* }$ T  o8 d{0,vi∉Aj|Aj|−−−√,vi∈Aj
    - D4 G9 l9 q  K- m# {6 m{0,vi∉Aj|Aj|,vi∈Aj6 e; {- k3 U, p1 e; q  h
    h
    ; @3 b6 K0 Y8 J% ^( vij
    ; x* c0 R. x8 `3 S* V  [  e7 ^
    - A- s" _5 x- L6 E) g ={ 4 y# D0 R- M( n, O
    0,v
    $ C% B* c2 f- c1 K8 u" Q# L# Yi8 p$ }8 ?1 ]2 {& C- d, e# g% ]
    . U" x8 H! i/ P$ Z* s

    / r' D6 o3 ^  Y6 ~1 C8 Z( S  M/0 j2 Z, H* X4 \/ M( C4 w$ c9 d) D
    A 2 w8 w  W5 T% A6 m
    j8 y, E. L0 f) F6 j0 ?3 z+ Y
    ; Y2 D: I8 e0 C4 \! f! f
    4 b$ f6 E, c5 n# C! W, z! X* s5 }( K& j
    ∣A ! e/ M. g; Y  D8 K! a5 r
    j  N% J) m. B2 ~% p
    # n2 v4 ~3 G. w* Z$ v$ H/ X4 W
    # ^' r' W! Y* a( D% O7 l! o
    2 y" d6 o' |9 j
    ,v 1 n1 D' E; t; W& y/ w. k
    i
    . \) x! |  e5 N8 A' Y, V" n& `4 m% \% j1 w3 [) j
    ∈A & q9 j' j' J7 Y* r, B9 G
    j0 @0 A! t3 ]$ A- }: T6 w$ c9 \

    ' d$ @& |* \4 C: M, \" C  }+ {1 V, v

    & {, T( g% O0 N0 ]' n# C
    8 t, ]( \, R* K4 |3 [0 W- z# C# r% [% G/ o, p( b3 I
    于是,对于h i T L h i h_{i}^{T}Lh_{i}h $ m) p' v6 B' M
    i
    4 I$ d2 g8 n6 AT
    ' \, ?# C) M) [  l1 l* r1 U" D; J7 [8 l$ O# ?+ L
    Lh ; V& \% `, ?+ J7 n! C
    i
    5 `/ @; k: l7 B4 g9 s
    ; h+ T% l( v7 P+ i$ i6 r4 j1 ^ ,根据拉普拉斯矩阵性质可知8 P( ~: q- D5 A
    5 ]" ~* X. K7 q
    对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f * l9 N/ H) C" d5 Z% T
    1$ v0 ^- J  _4 A5 ^+ A
    ' \- ?- P( ~5 @! c3 q& R
    ,...,f . ?2 l, \% M. ^9 m: I& }
    n% m# l. t4 R2 ?

    " ?$ o: S5 F: b8 S )
    5 b% A% D( ]) ], k% Y* bT
    9 r& M  j, j, h$ e% _& k! d ∈R
    3 d  S' x/ B/ d5 Y8 Tn
    * k: M9 ?% {- f& W) ~0 T7 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
    8 B, s/ a# k" C$ ]# ~) {6 _. L  }. [$ AT
    + J, @- ?- F0 _" R/ v Lf=
    ! h3 ~8 V+ Z: M8 o2
    " C' C$ N! {: @. l1' S7 `! s8 [3 n
    2 M  ?6 a. y7 ]7 O6 ]2 }* k  v
    ) U  Y# _- O+ S: G5 c6 y
    i,j=1
    - x9 s* }7 p9 f; \6 T+ A' n5 ~2 T/ R: v' \( a* }
    n
    & D7 c& }/ R2 v8 Q% B% b7 G; W9 ~9 r# V7 A" C$ g
    w ( @+ Y+ Z8 c. V0 B" V3 O
    ij7 O' i/ w  d  @. f6 A2 o& j

    % ?3 K( g2 y7 X3 C6 j! ^# j (f
    # R. z) e6 x* L" qi
    , V6 D3 d* j* p: z2 M8 U6 Y! p( P8 A5 S) C" p! D
    −f ) U) H1 a/ {' ?
    j
    ( T1 D: x- G& P8 ~
    ; g& Z" P+ m4 t0 @9 B. c4 D )
    5 F. }3 R  h* g8 Z) g; U+ W" j+ e2/ e! R: u& r$ `- ?
    9 y; d. a" Q& g. Q
    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}|}; A3 ]+ q! c% {/ }/ w- V
    h
    % w- U' T: t  J/ _4 bi
    2 m. X- E/ L( RT
    # {% q' A* e( _  _7 y) Q9 b* V; ^' @6 j( M' B4 y0 I
    Lh $ s. `* X1 L# I
    i& y* O  \4 P* i2 f

    * ]6 }* t2 J1 z" s5 U0 q = 0 b# x4 f4 P- l& N
    2- M& v; B' {& [4 m
    1! M7 h1 M- D- P6 d% W* A: c7 H  Q
    2 H& _" G: _" i' j) z

    0 X0 g% l, p2 i% x7 k$ @" Am=1
    ! i% m( h/ `" L% Y) @" e
    $ [6 }( s3 l  j3 r
    ; n6 H$ H( A) N5 v0 v$ p
    + w! B2 P* ?; Hn=1- ?: L3 f, c, `

    0 l5 W& B* J2 S$ S/ ~
    ( j; y1 j1 E$ L4 y3 ^* R w   g4 m$ T6 R- Z- S6 l) M8 S
    mn& c8 k2 D3 L0 [; ^0 I

    3 Y  q! H. I; `/ ] (h : L( u/ w4 W9 u$ ?$ z% x9 \; B
    im; j( \7 h3 n* E" r
    9 [8 E+ |$ _, ]# F
    −h # S2 V8 C. M, f5 d
    in! j: i5 T' s- t) ]

    : W. I. M2 L: f( X0 C' a8 H3 B )
    * P% Q; }4 M7 r# p+ W28 h  `. m8 x0 I( S
    = : k3 t& y7 h. R% ^3 M+ I; K
    ∣A
    # i4 \% m+ G  z. G$ Zi
      O. V$ f# Z  G; o' I# C
    $ ]$ h# k4 A' ~. a$ r+ ^
    + i2 A" k( H, L3 V& f2 T* [* ^cut(A
    ) T* j" V  c" x6 X; d0 N2 Wi
    7 ~) S6 C. F1 X7 f* h' T: L
    3 b; Z- A& c) f& @8 R" z , 0 F( L7 d& w) {
    A! B2 @0 t* l) l% T5 G; r% u% J  H
    ˉ6 ?1 ~9 V! H; _" L
    - E+ k9 Q) D2 e9 e7 n! e
    i
    # a8 e+ L" G- N( O1 w% b) t
    2 I" W0 ?' s: _% `$ M )
    ) B. q. L8 R9 j4 f2 x; W- M) a3 F# y8 s/ l

    ) `' T6 g) L# v$ |1 k2 i% v/ o7 n- X
    严格证明过程请看刘建平博客:链接
    * ^& Q5 g5 H* w" R* I可以看到,对于某一个子图i ii,R a t i o n C u t RationCutRationCut就对应于h i T L h i h_{i}^{T}Lh_{i}h
    2 {1 f0 ]! l4 Z2 ]# |4 ui. M! R; l) \! H8 r/ L5 }4 ?9 Y
    T4 p7 [; a& I: x# p7 M

    $ z4 g3 F3 ^- X0 @* J! z8 e9 `% x4 i/ z9 { Lh + M$ L. v& D' R+ B6 }
    i  J8 K/ s1 ~2 d, i; v) Q* l
    " X8 M1 M3 G4 J8 A9 N4 Z8 I
    ,那么对于k kk个子图5 t8 [4 M/ G9 I

    1 d# K! P5 q! b2 v% ?6 QR 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)# u1 Z/ r# P$ `( O' H$ m
    RatioCut(A
    . m% j8 |" }, C- h1
    9 b  K8 `, O8 j/ J+ U! Q. s& y
    ,A
    0 j1 @; z. s" t% c& E5 b29 e7 V5 J: m- p" L
    + |- z9 d; o; v8 @. y- M$ @/ K
    ,...,A 3 G- @) e9 b, T9 s7 e6 ]
    k& z, z% t9 J7 V! Y

    9 d0 g9 X" O; R; e+ ?( p )= . y! E& W  v1 Q" l
    i=1
    8 X+ {9 }- @6 T3 ~% n, L- n# E' }3 I' z4 h. k5 \5 V
    k
    + u8 {- ?4 T: L' d; B% c/ V8 _# B% b. u/ x
    h
    * I' x3 L% Q5 L! p& Ki
    , s0 J) Z, K( W, M/ |) V! X% I, A2 n$ KT4 K1 n( K' x7 t3 A" [. [2 i

    2 y" _6 N! O7 ?; ^9 X; ?$ a/ q Lh
    3 B2 N  W" t7 W4 K8 S. E; Oi' \1 e9 j6 u0 _4 b. y& P# f
    ( `+ T8 q1 e$ h% V& Q4 n
    = + \& u4 i! K" ~% n% F# ]' q
    i=10 Q$ f  C! H$ j
    , z. j7 [" e& s; e1 y
    k% Q, R8 ~( x9 b5 P( h
    6 m- r+ T- x; y- G& D2 q
    (H # _! S2 X0 A6 n) q
    T
    6 o$ h2 T) a: \, @* N6 H3 k LH) , w; X% I7 C; F& d
    ii
    9 S) D- D  Z$ I  p& m) L
    ( h1 q* M. o# [# A$ z =tr(H   `" C$ H  ]1 C4 ~- c- i- `  z
    T
    $ A: |- F: Y4 d! V2 U LH)! g; |6 L+ \5 d$ E3 G" M% A

    ! Q  U/ }2 l: t+ @. A因此,R a t i o n C u t RationCutRationCut切图本质就是最小化t r ( H T L H ) tr(H^{T}LH)tr(H
    ; ]7 O0 U3 H2 z9 D0 k5 L$ MT
    8 w( @' t& T7 k5 T$ x) @ LH)。又因为H T H = I H^{T}H=IH
    , n- T2 t9 x! a+ d% ~2 O4 o+ i0 p( vT
    ' O+ |: A" E# B* K H=I(单位矩阵),则切图优化目标为
    8 o0 R0 a3 Z0 M7 O1 L. U7 [$ W: |. P/ n" h( L6 K) ?6 s
    a r g m i n ⏟ H t r ( H T L H ) s . t . H T H = I \underbrace{argmin}_{H} tr(H^{T}LH) s.t.H^{T}H=I$ |% y) [1 R3 Y; {" N" b: p0 `! O
    H
    - i- F' p- R- @+ }% C- xargmin% U1 b+ V7 t7 O; D& B' N, _
    : ?* `+ z5 X7 R: R" Z4 d0 @4 i
    / n( C6 d1 K( C2 t# W5 {7 Z

    : R8 r# d# a7 f# u% Q4 j, O7 l5 K tr(H
    ; H3 N$ `% [3 A# M9 I! x: W, bT, V/ e. D% u: q. ~4 U% ^. _7 n
    LH)s.t.H ) T9 c! ]  Z# h( _0 O8 h, W; M
    T
    $ _/ P+ ~& {6 P7 ^3 b! C4 i H=I! e7 v5 _+ f- Y3 {0 t0 l
    5 V$ I7 }: d: O+ H4 O2 H" K
    对于优化目标t r ( H t L H ) tr(H^{t}LH)tr(H
    4 ~4 n6 x' G6 ^- @: N$ k+ j  \/ Zt  Z! n9 M. ~6 W* P( S, O+ c/ G( q
    LH)中的每一个优化子目标h i T L h i h_{i}^{T}Lh_{i}h " f' g, }6 D2 M' V8 B. I
    i5 F7 G6 y/ l, v: a
    T
    , ^9 t) k/ D% U& f9 r/ [8 S3 U0 O, \& m5 e
    Lh
    3 L  ^* S& O* a! K) {" Y6 g$ P, ti0 Q, C9 S* _/ f

    , u# C5 s5 j; z2 |$ M ,其中的h hh是单位正交基,L LL为对称矩阵,所以此时h i T L h i h_{i}^{T}Lh_{i}h
    4 U$ O) |  l* k7 Q" U+ ^; @i' N9 t7 S& \" E+ W. T
    T3 h, O0 N2 F4 n! y" {6 L$ [8 K
    3 Z; Y, S/ g7 D# q' E9 s* w$ j
    Lh
    ! E9 C* a) G! Y: p: Pi
    ( d8 @- y* h: z' a& Q* s) a& j( R% _  [6 |0 C' g- {
    的最大值即为L LL的最大特征值、最小值即为L LL的最小特征值。而在谱聚类中,我们的目标就是要找到目标的最小特征值,得到对应特征值向量,此时切图效果最佳。所以对于h i T L h i h_{i}^{T}Lh_{i}h ; u- r: a9 j/ F# {% {8 n
    i7 T8 {& E* |4 I. k
    T* c5 [% G5 v7 e9 H5 g
    9 y# K# d$ M9 C. ?/ J9 D
    Lh
    , u* k" b! W1 d- f- Z5 li: j/ K) [7 {  V& ~4 G1 U) p9 C5 a

    8 V$ b- h* c$ R/ A$ ?' z ,目标就是找到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 - w4 d  \3 q  O: V
    t# R6 D9 Q$ T. g% ^2 q% }
    LH)=
    ' r' t1 B& E5 W0 X. D7 V8 c, K7 K+ Bi=1
    " O& o0 `4 e( W- p/ I( m$ n9 G8 e& F! v5 G, d+ ^' M( I
    k# ?& ]) d4 W, ^, B: p5 v9 P, \
    ' F6 o& R" R3 p' k4 M
    h * k# n* T- T. L: d! X
    i2 q, C/ }5 N% t* |
    T$ D4 O1 y- P0 r7 j1 m' D
    # W% G8 E( ~; t. u2 P# E  q- N
    Lh " o7 j/ n5 B' A: @1 {& K) ?* v) ?
    i
    $ v9 s% {6 P5 R" z: k9 i; M' s% ]' a7 {) [
    ,则目标就是要找到k kk个最小的特征值2 y( q9 q% a2 \& F# G# y
    - M( V0 X* H& T: Z( a4 {
    因此,通过找到L LL的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特特征向量组成一个n nn×k kk维矩阵,也即H HH。一般需要对矩阵H HH按行做标准化,如下
    , p7 d  m; L( E% U' _  U( G9 v0 B
    & C" A0 D: j/ T9 W& }  b& m& }一般来说,k kk远小于n nn,也就说进行了降维8 M% f+ O0 F' O7 u5 Z' a, S* {8 a
    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 X! b; N/ n% y) ^h
    & _5 ?+ S# n& oij
    7 W/ m$ k& t2 }0 C: ]$ g, ]3 S6 q1 P

    # z  E) w% O6 Z5 h. |) Q = 3 G8 z, g" A# V- Z
    ( ' h6 J- m8 p% Z8 {4 M: W
    t=1/ a8 K" O# [/ j; u; `. U- k
    * s4 V; [3 z  w7 D% ^
    k) t* p; u) d- a" y! l+ n
    " t  t: ^4 F2 @; q- k% C5 w6 s: z
    h - h9 K/ V' p/ n4 ]' i2 }* x) V# u
    it
    1 p* _" `! G8 I0 C5 w26 V# w( F9 ?6 Q% m/ o0 h/ ~* q
    : G0 ^# C( X1 p" C8 M6 i, C: m- z" V0 u5 b
    ) & @6 y( i3 {4 f, s$ z
    2' K! `% l2 W" b, t/ ~* S2 ~6 X' L
    1
    ' C: y- `. I- \$ K" E& t( S2 ~" e& ]% @. f- u: M8 b3 k. F

    2 g( s; r4 u( C( T! g
    # V3 s! |) |. z) T% P4 H, m" Wh
    * f# B1 w7 c# l5 Z) N* a% S# N) j  pij1 o$ ]1 g" P! u3 h% x

    3 ^) U; v2 U9 [1 u0 ]' J
    2 }9 ~1 r) c+ C' |- B# L5 l8 d2 `. s1 N* K7 S3 q

    ; \; H4 U& s9 p* z( z5 e
    2 ]$ n8 I# M: z. p' c( D这里需要注意,降维后导致得到的指示向量h hh对应的H HH现在并不能完全指示各样本的归属,因此一般在得到n × k n×kn×k维的矩阵H HH后还需要对每一行进行一次传统的聚类,比如使用K-Means聚类" b7 {+ G5 ^3 W
    & }" Z' x8 R) Z6 X9 D
    (2)规范割(常用)! h8 K0 ?( X1 V+ M( ?- G- B
    规范割和比例割类似,只是把比例割的分母∣ A i ∣ |A_{i}|∣A 4 D& j) V1 m1 g% _$ t
    i; ^. Q2 O+ g9 t5 v

    + ?3 M! F7 D2 ^: j! K$ p4 M9 Z" w ∣换成了v o l ( A i ) vol(A_{i})vol(A
    ( O; g( R( t; Oi
    0 j* f4 Q! V" F0 ~! R+ k$ H, ^5 Q) h4 k; l
    ),定义指示向量h i j h_{ij}h 8 g8 s2 P0 j+ [( P# _: Y
    ij7 j  ?8 A7 ]- s( N! z: ^
    ' q8 t5 W, C4 g/ z9 h' g
    如下
    5 X; l( n2 p4 E: B& t
    5 g: F4 H. S9 ?# Xh i j = { 0 , v i ∉ A j v o l ( A i ) , v i ∈ A j h_{ij}=  E3 v$ h$ O& y' l) o
    {0,vi∉Ajvol(Ai)−−−−−−√,vi∈Aj
    ( E. B7 p& F4 D6 L/ x1 B{0,vi∉Ajvol(Ai),vi∈Aj, o3 i+ F& T5 U9 J* h8 a, n1 e% j
    h 0 @. V2 Q" W* q) ]
    ij7 J( `( ^% E! Y& R
    8 g* \6 G0 n. `- p% p2 m
    ={ 7 |' c5 e3 K% B' m6 v$ H
    0,v
    % f, Z0 ^; r% z9 S3 Vi
    ( A) H* _, C. y3 D- f) B' p; @; c7 d4 Z: f3 r1 D4 ~& [

    / {* ^6 _; a  [+ l) J/9 A* d6 ~( j1 k
    A
    0 e! h* l% d* z0 D# E* P! g; tj, C9 P& |% F, `: i% ?0 J* w

    - Z4 O4 w4 n2 @3 z0 n  A* p4 V
    % _5 P' d; Q$ }- _6 Avol(A $ L/ T$ P7 J5 ]8 C
    i
    % \: O/ B( w5 M2 H
    ; Q) z! U9 e" n )
    ) _6 q7 ^1 M6 L; p4 a
    ! @* [: u4 H" O. ] ,v " [. J+ [8 h' }" }1 a0 ]
    i/ U7 R. U& |1 z' g! @

    & w1 y& u' j0 H2 ?  ?# G' G ∈A
    : M  i! ]" R* V1 ]0 U/ ?. q2 V3 ]j
    ! D) [5 G0 h. d5 a$ b( \; i: C
    1 `- `; x) h6 v: ]% x& B0 Q% X- l, d! X; _
    / i% G% q# d3 L" @' ?! j

    3 {8 X/ A- |' c( A6 l9 N
    4 t9 G1 X- h) S% o& ?4 c9 e9 h于是,对于h i T L h i h_{i}^{T}Lh_{i}h
    : t1 W! W, x1 O% @% b( Bi
    1 D$ i5 B* h! }/ w- OT
    0 t8 g- \  c. ^& u
    9 [- E% Y4 d6 c. x Lh - g+ r: Q! P9 C5 P% c
    i
    5 [, m+ v% E2 i0 I: u- N2 U8 Q4 i3 d/ t: E! ]2 m
    ,根据拉普拉斯矩阵性质可知0 H7 F8 I% n# ~  G; s+ z! I' ~
    6 ?0 k0 ]/ k$ f1 o
    对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f
    0 T) \& t4 T2 J" `1
    + V! L& P, u7 Z
    3 j1 M  l: C4 ^" D. H+ V6 u ,...,f 4 Z: P' K9 a( f) T
    n
    - e' r7 R( z' h* n0 n7 ~/ M2 N( ?* x
    & c. K  N0 l3 N, F/ s! H4 r ) 8 R1 T; q& S7 Y' I2 u" ]1 X
    T
    : @3 f2 k, Q5 w ∈R
    4 H# O+ C; v# i+ A) f: }) ^n
    0 j; z& a; A2 N" C  `5 ]1 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 # G+ G1 ~3 P& [
    T8 a2 W$ a0 X! o( p3 R/ J" z9 ~
    Lf=
    , G8 y4 O+ K* j3 n# d, {- J1 L2
    . M& l+ Y. D$ G  N# h  ?1
    . k' S* G" Q2 T; p0 b' h% S  D2 v
    1 m  N; @4 U% Z7 z. y! w: V5 B  ?# k* ~# E: |  @
    i,j=1; |6 c  ~0 |1 {/ L0 y# x
    0 q. e) _4 [) l. @) n4 W
    n& E  u4 C. O1 D

    ! k7 O& k/ Z' c7 e6 F w
    / q5 J7 [! S! U: O1 yij0 ~0 Y& w/ x% X9 n0 E

    6 O6 }" |1 C; F (f
    : B) i0 g) R+ a% v  {i% p* P3 M% j+ K6 }' ?: X: _

    ( r0 |& n. [8 ?, K5 @. Q" d −f * L$ ^% b' q' Z0 t0 U% Q
    j
    * C& i3 J5 V: F1 f- y3 j
    ) t! g( N, b" U7 D ) 0 |3 u4 X9 h3 n9 P% m
    2
    1 g" P& I, \& v  Q* I9 a- o8 x
    " s6 v3 g8 h" Jh 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})}) ?" P1 \6 Z( F! F  T1 M
    h
    . F. p3 ]+ [; g& p( C* L- wi
    2 K9 s( x5 U$ j! O+ k2 F5 MT
    / J  q, \# k8 v: d
      g7 X0 n. y/ ?5 a Lh + H1 X" w4 B, h! J  A' d3 Q  K6 a0 [
    i: k8 I! J; \: P$ @9 ^* t
    / h2 a/ J2 z! }( O
    = 8 [- n* c( |% |+ |
    20 }; W% V0 W0 B! f+ t2 q
    1" k9 k$ U) ]+ Y: `3 q, [$ r
    - {# Z6 |+ ~2 J$ S! A& M7 D* D

    5 I  `2 R9 n) u; E2 Pm=1# h. w3 @5 I8 X7 T! _

    7 E) ~/ X; B: i2 ^8 R7 j. r9 g* S) Z, d5 w; T, S1 A6 o
    9 p: \. H7 n4 w" ?. E
    n=1
    3 A/ i. t2 d" X! |3 h: K9 v7 d1 h* O! n# Z7 `7 t
    9 _$ x: j" Z1 \* U
    w
    ' d# K8 P" X9 ^: q4 i) i+ ?0 X) }mn; f  E* Q# w% w

    8 @9 H, L' h9 h) f4 D6 r (h 4 M+ |0 y% [/ f# R! l0 @% L  x- j
    im4 w1 L6 t+ h4 l) Z
      ?0 Q" T9 q2 @: o
    −h * d1 F/ O" i- [1 G" ?
    in
    1 ?) W% f2 w. d* g9 F0 e/ I9 B" m- }3 j& Z
    ) 3 T; j) \% a; A* @9 p. a5 u
    2
    " w' o2 {# F! C5 p, {) W = 9 P, j. Q9 q) T" q8 Q# ?1 o8 N
    vol(A ; V+ l( m% B1 |" m# u9 k6 f8 {  x2 [
    i
    $ m: f4 B3 `4 c8 f- L* f4 C* P
    2 G2 r% p: _- A! D. l% N )
    * ~6 \; o" e7 R! M' D% D' Icut(A 4 R: V0 s4 [0 X6 P" ^
    i% y0 j% x& G' J

    ' C% t4 s% F9 C) ?2 k, }; e# L ,
    8 P3 _( H4 W. u$ x6 v% J: @A8 L( M! q2 N: E4 y. u
    ˉ! e% H- P( ?7 D6 W* W  V

    ; [: O5 M$ N6 l* [i
    ( Y4 m) V7 ?: x( Y2 ~8 N  |0 s: ~1 L  I2 e
    )0 p; w4 _! M' r* O% c

    - g$ ]0 q+ T: J8 f8 n" R% S- d: N8 l8 j& X4 Y
    + Q4 p3 r7 [0 {) J+ f
    严格证明过程请看刘建平博客:链接
    4 U. H# r9 \& G' Q/ W' A可以看到,对于某一个子图i ii,R a t i o n C u t RationCutRationCut就对应于h i T L h i h_{i}^{T}Lh_{i}h : n5 @) `+ E! W& k: h( R& |2 D
    i
    , y! T, ~' A2 R9 |T
    + ~; b" w  K( V% V) e
    ( y* d- v. l# F. U2 b; D9 q Lh
    9 l3 h+ B3 ]5 y1 V3 F( @2 oi
    1 d7 i" F" r5 Q4 g* P" l( U6 q
    7 w( ^, h  P0 N0 o' z ,那么对于k kk个子图- l9 Z: x. u1 `# p
    0 J3 }8 B4 `4 _" S0 l. ^8 O7 w. J
    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)
    % x" |5 L. ]" H. W$ p  d) ]  |NCut(A   w; w5 Z/ C+ J
    12 t# x$ I4 j( J4 y( o- e1 G

    . u4 Y9 D+ f  d, f" p: i0 @$ G$ i ,A
    2 g& A  r# ^' i; A+ k, B. F2
    ) |: h+ b: \% `1 @
    / K6 ]7 Q. u9 U& I2 ` ,...,A
    # h) E6 y3 _$ }/ T. F# ok
    5 k% y6 I. s* v! T: v: C& G. L5 ?3 d' `4 u2 v5 X
    )= . x9 Y- ^8 T- w1 \6 O, ?" s
    i=1+ e! i. [4 X4 j. v
    0 R' B) r9 G* ?( u( d6 J2 _9 P; j
    k, O3 b- L; W1 \+ Z9 u

    & y8 ~+ k) w- S6 |5 t& |! e( G h * R$ ^1 O1 s% D+ U
    i
    ' |: B2 Q+ T3 g$ g7 N( aT
    6 m2 ?; m8 G+ J" c2 P: V6 Z1 i4 Q- P4 X+ F
    Lh , k! l) `$ O; b* R
    i
    - D8 I; c' y6 C7 [
    & ~5 ?8 q& C: h8 s9 x# b. }! L = 1 P4 s8 m! i- f: z
    i=1
    9 h4 Q( y: V, X8 W& s& D* }; V) o+ A( i/ s
    k
    * z- P! U" h1 M/ H8 d4 E% D3 T
    5 Q: N* X5 q9 A/ Q2 a  V. U (H
    , l$ R# \0 Y/ |1 l; }+ vT$ u' M# t1 @; a; X9 c+ q6 m  C- X
    LH)
    4 H: i9 n5 H2 G; Jii9 H" @' [/ h1 K/ J* q9 X
    2 i* V0 v  @' }* b8 ]3 d
    =tr(H
    6 |& [, z9 y' |: F' ET
    # p! G  u' F0 D) b8 w/ N& M: W LH)* N6 R- W) Y8 n3 ]' s- ^3 M2 ]0 k4 Z

    1 L! U/ D; H& c6 X' K但此时H T H ≠ I H^{T}H \not=IH 0 u, B- ~# W) D9 J7 o$ x
    T2 E, Q/ D( y8 h* \' ]2 z: P
    H" i8 s% b3 |( m& m. Z8 {

    $ x: k/ v* Q2 {& b+ `( Z' E5 F7 G=I,而是H T D H = I H^{T}DH =IH
    1 N- X4 Q" O/ R% ST% ?* V1 d+ K0 p- `' L% H$ c5 C
    DH=I3 h9 P! @1 f6 X! _
    / D( O% o- k; |# g9 @+ a
    这是因为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 " t( }0 e/ m  [% K, L
    i. _( D* v. ^' l9 E
    T
    - o; k0 M+ {# w; c9 ~# A' g1 C3 W7 k$ G
    Dh
    9 @4 q4 [) X% ]; u6 Mi% ^$ T! C3 ]) p3 |' i

    0 c: O; m5 b% o7 L: t = 9 T: G& V: v& J" q9 W. L. H+ O
    j=1
    0 ]8 ~3 i/ X5 H. p$ `
    6 u! v/ A* _5 T+ Tn1 z: ]9 ^+ m$ p  Q' V0 M( `

    / E4 e2 g+ I  @2 V: D h / Y& ~/ A; x$ u4 k) {9 x
    ij
    / }  p' c, n, D" B, C- \8 ]: l, y2
    ' k3 n$ ~. Y% d2 s! k( d, P1 s5 T1 w: J" z
    d : v0 m* I8 f4 x& A$ A6 z
    j
    ! s& Q. n! q' L7 h/ |1 ?  c+ h% H9 B8 Q$ t% Z5 o
    = + w- r$ E  [7 c0 f0 D- L% D2 o; ~
    vol(A + s+ {! G5 h/ S5 L# u& N8 c& k
    i
    $ t2 \% V7 j; F% ]0 g4 O; x! |  Y( |7 C
    )
    2 o# t+ q3 x$ h/ X3 L1, ]( z5 Y! N3 |# n- d3 r
    : G2 A4 ?4 V- N) j
    2 F, }& l0 \9 K8 @
    j∈A
      K' v1 E+ B& t! vi0 x% U2 w* ~& s$ b" c; v6 v

    ) o5 i* Z3 r) v; x* J' E: s0 m
    9 D0 k  u* ^9 v" C3 n5 \+ Q2 j$ Z/ m# |& r! t1 `" \# E
    * W) U) `1 G% j% T, F1 k
    d 2 ]  o. l$ T5 \
    j
    # @5 G' L' o6 G
    " V" i% ^0 E/ t3 W2 ~ = 4 i) O! T% _* ~8 D0 O
    vol(A
    ) X+ M% q. i1 g- Hi
    : |1 X" B( [! m
    / d/ G: K. i7 g )- {7 w7 F4 [0 A9 a
    1( R4 d# i4 J7 C

    ) W4 D7 j$ O2 ]9 c. b vol(A
    9 T- M1 g' v/ P7 p/ M6 h3 Ui0 w! R1 X# p, e6 J

    $ d# p. w3 [& i. `; r  h7 V )=1
    . E4 L* W5 v9 }- b" }  E+ c; H因此,此时切图优化目标为. x# Q  K: l, y9 I
    . I- T2 V& L4 d4 l0 }; W; S/ m0 ?0 l
    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
    2 Y- c: ^0 V" ^0 nH
    " u9 R/ b) E0 _# P! l9 D+ e: g& rargmin" f1 S( d  z  q7 n: _. @+ n
    , K- `9 B* i( M: h" l  e7 g# z# b
    ; ?4 W# y% E( p2 c% z

    : t$ S, b3 ?0 G: R2 O tr(H
    4 l3 p+ P- m6 W0 n0 T) K/ lT. g! k/ Y, u: @4 x0 v: F, m, a
    LH)s.t.H , |9 V) D2 t- O
    T
    4 V  z& _) _. P3 X+ ^. v& ~ DH=I
    3 x% A0 w/ @: ^( O; ?! H7 l" Y& C5 ]) |3 n3 T  y* z1 O: `, M
    但是现在矩阵H HH中的指示向量h hh并不是标准正交基,所以需要对H HH做一定转换。令H = D − 1 2 F H=D^{-\frac{1}{2}}FH=D
    9 J1 o9 a, k- o, b, v
    ) j+ Q" X0 r7 ]8 t- k8 h3 I) b( s2
    : h0 Y* u( |/ L4 R# c& T& ?1
    ) ^" q. t3 ?$ S. k
    , ^" j( u$ Z# ?  `
    " Q: k. f" E! x  H% _; }2 l8 Z 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
    : o- I( b4 @+ R! z& rT) A8 k5 s1 m9 H8 z9 G( J. y; L
    LH=F
    . K1 U$ m  B7 u9 K$ T' q/ E$ xT! q9 G5 }2 Z0 @
    D
    % k1 c3 d9 c, w/ z8 I# z, K0 X! D/ k- G! \
    2
    % {! q  D9 R# {. c& W2 m1
    . h2 ~3 a8 u+ |& j) l) u% N) o  _6 l' h6 R5 Z4 ~4 T
    , d5 k* T& ?$ t; l+ i& L
    LD ) i2 d* N, ?! j, A! z

    6 p% h* Z$ L9 |: G0 t: ]2
    9 {+ r0 z% x, T' L+ g1* `* F. {3 l# }: e" B8 r

    2 R& A, Y+ {2 r1 i, Z3 Z1 M( s; P7 N. c& z; v, g3 L- k, D
    F、H T D H = F T F = I H^{T}DH=F^{T}F=IH ; b6 n# e/ U, L$ L$ g
    T
    , Z4 F7 Z' s- l$ u* Z) n2 m DH=F
    5 U5 N5 x) W0 f* YT; b. O, p) I% Y; P
    F=I,于是优化目标变更为
    ! L8 S, P% n5 V2 C* u. [9 \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. K* D+ J5 g7 ?3 C" [
    F& h  c( Z0 M. ~- D2 [( q
    argmin
    / K, b( Y8 @! j$ p  B( R4 U1 s0 R
    ; y) e( e: L) E. Y# k/ M6 `: U
    4 \" P% M1 g) k& O$ ^# K7 V/ l
      g  P+ P8 ^- G# V  f tr(F ! ~8 M: ?$ \" T
    T! o& F/ ?3 Z& a+ O. v
    D
    & {: k' r5 B, }' Z5 f! C4 }( I: ~4 E: q* R2 D+ Q/ _+ W
    2" E0 T- z8 a. s9 N) T( p7 t
    1/ @/ v4 a7 e; E$ T7 b/ Z' F6 u
    2 ]! U+ U4 C9 |: T
    , A6 y  t6 g- f. U. v2 L
    LD & A6 ?% \; ?6 I( p! a2 N

    % p2 w8 U0 B4 z! S+ |2
    3 A7 j/ e) |! |( z/ l10 X' [6 o$ t1 m( f9 r
    5 g7 L9 _3 j" X5 _: F4 N  P, Y& g  n

    - m6 q. _1 t& t9 O F)s.t.F
    : j8 }# a; H& RT
    * g2 E  u$ V3 ]* ~4 o F=I
    / c. i0 a  h! ~' t+ J
    ! J& W& t- L+ X% h现在,和比例割一样,通过找到D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
    ; c$ F* J; a4 K' ~- Q; y( U! s% v4 y0 k
    2
    3 V4 s+ j' D3 W9 ~6 A14 }7 d" u( }$ e3 c) [! R
    ! `7 K8 i+ l6 x. j& k% o

    5 u+ i2 n% M# s3 e% S LD
    - ~" ~+ O$ F# C, T$ R% i9 L3 c; B5 Q! y; H5 r2 K& f
    2
    $ i' h3 ^! H$ a9 b9 h1/ h' \( a/ @2 d( M2 @1 F

    1 o" z0 I8 G4 F% I6 K
    % L. O5 ]  K% j7 v (就是之前的L LL)的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特征向量组成一个n nn×k kk维矩阵,也即F FF,最后对F FF进行传统聚类
    + D6 R' {/ K+ i. W. Q* k4 M9 x# N; s* }9 ?7 a, u
    一般来说,D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D , Z9 [: q% w3 H$ n8 z1 f
    7 N: W! n. g! k0 g
    2
    ) s% N: `, m: l1% |" E7 S9 {8 P4 E9 `" Z* w. p

    % z6 e" i% V! Y. M( J+ }* j0 n: v8 w2 \" C4 Z, y) U+ I% J
    LD ) Y8 B) i, e( D; [5 x9 j  F: m
    & r8 x8 e8 W& n9 A, ]
    2
    & N8 t* Z' i* l6 d& e13 F. k2 J- U7 K! k

    ) F+ r4 h2 \, |1 v; A7 a6 \3 A8 }6 ~5 v, }5 f3 c  [  w1 \
    相当于对L LL做了一次标准化,也即L i j d i ∗ d j \frac{L_{ij}}{\sqrt{d_{i}*d_{j}}} ' J; t+ c# n& W9 I
    d : P; V) l5 b, i5 o
    i
    ( g' v- _8 Z) j- E
    4 z* v& ]1 n2 U- Y ∗d
    1 C, k4 f# j/ l6 h8 F- M4 }j
    / _: Y% n) q' _7 a2 V( k% o+ X* X* P# Z2 D" o: ^/ E
    7 ?7 b, r2 m, F! _, h8 w
    5 U+ j3 z2 W  r5 X% [. t) c

    ( w: h" P* P+ Y- g/ n" gL 1 T3 g3 N' y7 G% R7 B; y. J' r' ]
    ij0 F6 s. \3 _5 }# y

    * W0 K) w& d5 Z% z; T0 ?
    2 p- O& E9 X1 w% C3 K& k9 w" b# L  j% e; b" r

    0 r$ B* i8 E' Q7 D7 K9 ]; }- ^* v二:谱聚类算法流程
    9 D: ~* w7 L  Q# Y) D给定数据集D = { x 1 , x 2 , . . . , x n } D=\{x_{1}, x_{2}, ... , x_{n}\}D={x $ F" Z- H# P' k5 ^# A
    1
    $ c. \! l2 {  o8 i$ X" T7 x: W; \: D* L/ z8 L' t
    ,x
    9 w" j8 ^8 k+ c& n4 `21 u# n$ [) f5 M. M
    " a5 C: m; l9 a0 A+ Q% O
    ,...,x ( s: {% Q% U9 n. Z3 e' S7 D* c# _
    n
      E' c) J5 z2 C6 \
    & d. M' F$ L1 {! j. | }
    # b0 K1 ^/ N6 }. Z, U* a9 K6 y2 n
    * o, o* o- K! g根据输入的相似矩阵生成方式(一般为高斯核函数)构建相似矩阵S SS(AffinityMatrix)$ f! @$ H1 W! a0 Z
    根据相似矩阵S SS构建邻接矩阵W WW,再构建度矩阵D DD
    : ^- W8 q' J/ f计算拉普拉斯矩阵L = D − W L=D-WL=D−W
    % g; r) `$ Y7 i5 U, J得到标准化后的拉普拉斯矩阵D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D ) G$ w# y" I. e3 P2 v
    $ s& g: j. ?/ d& d
    2% e/ u' E- x+ O  J3 _
    1, D; B/ ~) v2 {6 A$ I( D% V- t

    , u# Z! e0 F& O( b8 S8 D# O+ o
    ( |! x8 t/ l3 a, Z LD ' {% B& C3 v4 n
    4 C, p$ U. g9 X% B# B8 f- P/ e
    2
    8 W+ k3 E# C; A0 H  [# @0 R1
    4 e4 f; M; {: f1 R4 I4 v, E
    6 Z+ h! H1 G4 Y% B3 Y5 w2 n/ g+ Y  [; B: \  U

    . p. F9 {) S! A* t9 ]计算D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
    , w& d* N- o2 Y. f: `9 d# ~1 ]: U$ d8 q
    2! ~# [4 g4 Y* O! g3 B, r5 h+ g
    1' ]" z0 {; X) ~
    ! p8 ^- p+ C" |6 Y" E# n8 O* b  k

    7 I; M' k, v1 z6 { LD
    - V9 y, k& @! g; z0 v
    8 k& c) v! d* ^0 Q' t2/ l8 p9 c: N. l+ J7 g+ O
    17 _/ C* z- f6 ]3 Y; B7 x& I

    , z8 p- A# ?0 o
    4 a8 w# j, P: i3 X- G1 L' P- C 最小的k kk个特征值对应的特征向量f ff( b, t  a, K, |  _: s
    将特征向量f ff组成矩阵并按行标准化,最终组成n nn×k kk维的特征矩阵F FF  _7 @9 Y5 e, A) y6 h! y9 v
    F FF中每一行作为一个k kk维的样本,共n nn个样本,采用某种聚类方法进行聚类,假设聚类维数为k 、 k^{、}k
    / p, N* W; L2 ]$ g; q- m7 ^9 Z0 R. c/ H
    6 ?7 ?1 K, F  `, e2 }' Y. U( B. v
    得到簇划分C( c 1 , c 2 , . . . , c k 、 ) (c_{1}, c_{2}, ... , c_{k^{、}})(c
    $ K1 r9 F% i% [1
    0 ]5 c& U& D8 h2 h: B- ^/ |& \1 J. E. X$ ~
    / Q  o4 }( A" i/ j ,c , ?2 R- }5 _2 \, }1 E
    2
    4 `$ T" y) }! A& s
    % O* O: I+ y; p5 l1 [& e0 M ,...,c 2 e9 j- R0 F4 |# K* E: E$ m
    k ( O# u$ A' E) a$ n5 C, V3 v$ }7 S

    ' Q3 r" V, N3 q7 d: r& V* a6 m+ Z0 X
    6 w0 t! z) F1 X' _
    )2 e. c, l0 C& `, f* v5 s6 X
    三:Python实现$ E. |% ~' f! g$ i! l0 l7 q
    import matplotlib.pyplot as plt
    * u+ Z# w; S" M+ G1 c2 [: ^4 X$ j$ aimport numpy as np
    + [. O( B1 T+ O, j2 k5 b$ {import pandas as pd: B- o) N' p" d) ~+ z  E4 [  t: i
    from sklearn.cluster import KMeans
    % ?# ?! @4 _, ~' i- ~from sklearn.metrics.pairwise import rbf_kernel" Y7 S8 ?+ }0 H; k
    from sklearn.datasets import make_blobs2 s2 I4 {$ ]* @! U/ _2 ?3 _
    from sklearn.preprocessing import normalize, b( V" ^+ d  Q4 d
    , @( }7 W& w" ?9 m
    def get_affinity_matrix(data_set):
    0 ]; M  A/ V7 P3 C" u% ~    #  利用高斯核函数计算相似矩阵(全连接)
    / x5 o* I6 [  [+ s0 `    rbf = rbf_kernel(data_set)
    . M, j$ l7 C, W7 l6 e    for i in range(len(rbf)):
    2 S& V/ t( q+ _5 F* F        rbf[i, i] = 0
    ) H0 u' U3 y' E; M! d6 j    return rbf
    ( \8 B8 {# s+ h  i+ S4 I& a( `
    9 J& y' g6 _% M7 Z1 [% C- N4 l% P% P# `5 \
    def distance(x1, x2):7 Y! y- e3 ?& R
        """
    , W; v3 t- w6 m    获得两个样本点之间的距离
    ! l: n5 \* M. S& n1 F7 a. D    :param x1: 样本点14 L- `1 X6 B% h: t& }
        :param x2: 样本点2# ]/ _. O/ D( ~, f
        :return:
    - o! g+ q- u& l) C2 q* i    """
    ; x! L$ R3 [0 a+ p. k- ]3 S    dist = np.sqrt(np.power(x1-x2,2).sum())
    , c- V" `- Q1 U: J    return dist
    * O1 G& L6 B# H. X6 v1 ~8 d
    6 E. M: _& u; C- i; c9 cdef get_dist_matrix(data):% x& D; {' b8 i0 Y2 O$ M
        """
    % I" {- Z( r0 X+ {    获取距离矩阵
    # j& M7 b, \% z4 u    :param data: 样本集合1 c* q9 T' B) t9 X
        :return: 距离矩阵' l$ V% ^# [& q3 f
        """4 q- U# X" Y2 Z4 ]$ x' {3 q
        n = len(data)  #样本总数- w+ n0 c! `' I2 q* L% s, B
        dist_matrix = np.zeros((n, n)) # 初始化邻接矩阵为n×n的全0矩阵. _) a# D: i/ O. [# H/ R" t7 X
        for i in range(n):0 P0 {3 o- V% _( D6 q0 |
            for j in range(i+1, n):5 U0 v5 m3 v, }* ]! I) p, @
                dist_matrix[j] = dist_matrix[j] = distance(data, data[j])
    - E9 T! @* `9 p$ S    return dist_matrix3 N$ d' u. Z/ k) x6 D

    6 i8 `! Z4 d" O- f% u* X% y- |def get_W(data, k):" V; ~( n* }3 G1 c" @) G
        # 获取邻接矩阵(K邻近法)8 F% W1 P: O3 H8 j& W% \0 T
        n = len(data)
    $ G  a+ L1 Y) d! O5 u, c    dist_matrix = get_dist_matrix(data)
    / f& d: Y: |" s9 B    W = np.zeros((n, n))0 j- Z0 ^9 H1 y# ]
        for idx, item in enumerate(dist_matrix):. P# s% i1 [# z, Q. W$ p$ Y
            idx_array = np.argsort(item)  # 每一行距离列表进行排序,得到对应的索引列表
      r9 Z) Y* S- @. N) F' w( i' O# I2 R        W[idx][idx_array[1:k+1]] = 1: a' y0 o2 _) _. G
        transpW =np.transpose(W)
    & O$ {# f' V4 @  K4 I    return (W+transpW)/2
    8 x" h7 A- j& b3 F9 G, V; E3 y7 H; H4 R+ i6 ]
    def spectral_clustering(data_set, k):
    6 C, J2 s3 `& u* o# E  o    # 利用相似矩阵S得到邻接矩阵W# q# ^% o( `& r
        W = get_affinity_matrix(data_set)  #高斯核函数(全连接法)! m5 Z  s- S- H! P+ w: g6 f' ]5 L7 M
        #  W = get_W(data_set, k)  # K邻近法
    ' b2 W; N+ |$ p1 M" b. r
    6 z8 `  }; S/ v    # 计算度矩阵D,并得到矩阵D的1/2次方的逆矩阵(便于计算拉普拉斯矩阵)
    ' k2 V% u4 I9 J! k, s- c2 B    D_inv = np.diag(np.power(np.sum(W, axis=1), -0.5))
    ( w  J6 ]& Z1 _0 e3 s% G- v0 W
    . T$ Q0 d( {$ Q7 N! h9 f    # 计算拉普拉斯矩阵L=D-W
    6 G% F) @1 _8 ^1 x# S8 d! H  q- ?    # 标准化拉普拉斯矩阵l = D_inv*L*D_inv=I-D_inv*W*D_inv
      Y, A' s) Y& L1 h    L = np.eye(len(data_set)) - np.dot(np.dot(D_inv, W), D_inv)0 y/ g, A; B; _% q

    " O4 q- t) H2 h    # 得到特征值和特征向量
    8 ~/ w! ?$ W0 I5 s    eigvals, eigvecs = np.linalg.eig(L)9 s  B4 P  a2 e: N8 Q
    / u! d/ I- ^9 Q+ H3 _, s
        # 找到前k个最小的特征值(索引)
    & M/ o4 A, D; w# I8 i4 D: F2 q    k_smallest_eigvals_index = np.argsort(eigvals)[:k]
    . {8 N6 n- W$ F
    3 H' b( r( h$ K0 T/ ]$ K4 k    # 取出这k小特征值对应的特征向量,并正则化) C: ~- k3 v0 w. P2 n3 a+ K
        k_smallest_eigvecs = normalize(eigvecs[:, k_smallest_eigvals_index])
    # ]. @7 p# j8 v2 S8 i' A0 L
    3 T  ?/ O3 f; }+ I2 _    # 使用K_Means聚类# X2 V5 j2 V' d/ a4 }+ ]7 B0 G$ P' G
        return KMeans(n_clusters=k).fit_predict(k_smallest_eigvecs)( W$ i5 O% H! m0 R5 X
    $ @: j# Q1 b" a' J2 {
    " J0 R6 t  K/ P! i! h3 X$ Z
    raw_data = pd.read_csv(r'E:\Postgraduate\Dataset\jain.csv', header=None)
    % H' r4 X* R, M3 d* z6 N3 X& _- ~raw_data.columns = ['X', 'Y']
    0 E+ A( C" E, K) o+ o1 o0 lx_axis = 'X'
    ! l% U, O6 a* s6 Z* gy_axis = 'Y'
    % f8 _5 A8 d4 M. R
    & X/ W0 W, y+ _examples_num = raw_data.shape[0]9 d/ Q9 m: j% I
    train_data = raw_data[[x_axis, y_axis]].values.reshape(examples_num, 2)' s1 j% J9 b: y+ x" k3 T9 Z
    ) {' h2 v6 S! ~' H$ k% K

    " u! P& {4 S$ y3 T) y! R0 ~5 n! @min_vals = train_data.min(0)/ v3 U: U: ]( t. {: k& @" a/ o3 S
    max_vals = train_data.max(0)
    2 u6 \; }' V' J: Lranges = max_vals - min_vals
    ! F# \( C; \/ Wnormal_data = np.zeros(np.shape(train_data))& ]4 @2 f2 t  c( x* Z/ A
    nums = train_data.shape[0]
    0 F1 v5 C: X! C* {; }normal_data = train_data - np.tile(min_vals, (nums, 1))& L- U# j+ H+ K  _% ?  U
    normal_data = normal_data / np.tile(ranges, (nums, 1))+ w; L( j; z: f

    ( ~! S: v5 _! Qlabels = spectral_clustering(normal_data, 2)
    - U5 H2 U$ i% l- S1 w$ @- q. O; u
    2 T8 }) w4 I5 a1 i2 Z) g* T# 原数据
    / s  T2 W1 x+ b* l! o* zfig, (ax0, ax1) = plt.subplots(ncols=2)1 |6 `7 K6 l& f' [# C4 u. o
    ax0.scatter(normal_data[:, 0], normal_data[:, 1], c='black')
    , T0 q. ~: |/ s/ Q$ z# q; ]* Lax0.set_title('raw data')
    0 Y, a( o2 }# ?0 _- P' |* V' z( x! ^# 谱聚类结果: x% W# S' z! z+ b
    ax1.scatter(normal_data[:, 0], normal_data[:, 1], c=labels)
    + [, J: z8 W( O2 [: P6 oax1.set_title('Spectral Clustering')/ x$ N- p' b- ~

    ' _3 a% N% I; R: dplt.show()
    5 H* v; F8 O  t' q7 r7 i7 Y  G# h- e
    ( d3 i$ f$ q) G1
    - v% `3 ?0 f$ C7 r  T" ]5 I( m  K2& P+ r% ~: `; ~" v; p
    3
    & k% W: v' O; Y+ [40 @' F" O. A1 u
    5
    # x: u$ M- ]* E  `7 s- ]$ w. u6# K% }- C& w2 q8 q
    79 I. s  h5 B% G
    85 q: H( d& U: J' w
    9
    6 Z6 l- @* T6 }* u3 H10
    , v3 I& |, J2 Q9 K; ~& _: G6 y11- q' w+ P! m; r- M
    12' s6 S0 ^# U% K2 r: R- I
    136 W5 [0 t' F+ I. ?
    14
    - V5 d3 |  k0 J/ s7 g- }2 g0 o15$ s2 @  I4 M& _0 K7 }' I) h
    16
    % c) M2 X: s* {; x3 \17; H( `1 [) V. r
    18
    ' }3 P; \' U0 G5 @9 q# H19; Y3 r3 |0 |0 ^
    20$ X0 J7 g3 @. E4 K. A6 d
    21- D  i* ]) V2 O# P
    22& A  z7 {+ Y4 d9 n" i$ h* s) T
    231 A$ w& f5 c# G' C' m. s
    24& D4 X$ Y5 @0 Q! D
    25! k5 v1 u& ~6 }" k% i. W7 X
    26' y+ s3 f* b( j3 \, b3 l
    27
    # U6 Q5 G, \8 G5 H281 t, P- N' ?; d' }. z( m; h5 |
    290 [+ t5 e: s6 L
    30! a- e! q2 a1 [3 R: p1 V! p' [. I
    31! I1 `9 R$ T* o4 v
    32
    ! @' P1 J$ f) e6 P/ m333 K9 L, H/ P6 y+ `6 S) {
    34
    $ N3 p3 G  q  V( u( \35( R6 q! q+ z+ P! K. M5 t  f
    36
    1 U4 l; [$ L4 ]  M5 w! L37# i9 t9 ?4 M9 {8 l3 w/ w
    38
    6 _2 e$ O% M, z; d39* p: r, y8 |5 ?4 i
    40  w' j5 I+ D7 L8 e# |( c8 ?
    41
    % w  k& ?' u/ D4 }6 z42
    8 \, a! x4 ~+ h+ t" h7 W6 Y4 s43
    # J6 \& L/ g2 F& p5 B44
    : ?! ~. x1 s6 a( l; p455 C( \3 `2 u$ G- A  \: H
    46
    " l$ Y9 N7 Z4 a47
    * K' H+ L7 ~6 u. K48
    / k: }+ O. {. F  s) p7 d$ i49( P, u& a- Y2 p# u2 q
    50! A8 M: \4 @5 X$ _, N  _5 E
    51( Y0 x! B8 r% p
    52
    + ?5 \! A% V9 M8 g6 _) S" s( v534 i, F5 n$ U% E3 E; @  f7 r
    54
    ) \7 R$ e& y$ \9 n! y55% W0 E9 u7 Z3 _% J/ K: P' S+ @+ g$ U
    56
    ( ^6 b* {5 A! p- n572 s( q* m% y. |* c5 i$ I
    582 {+ Z$ o( A& \6 I8 ~% ^. F6 i
    599 I2 [5 c2 Z& t- ~
    60
    6 y5 I7 [+ p6 d+ U1 @61- O4 G# i8 \+ |$ \9 j0 k: Z
    62
    . C' R+ n7 Q' f63
    2 n% p4 G, `  e* }  W' N64  W7 j( @0 r5 C( H
    65
    ) R) _  f* W9 z) ~66- K' J6 q  q* p" m, e: l/ p( ~
    67
    ; M6 w: S5 i9 ~" A$ E& G( Y68) I" Z6 t8 U1 K5 E" J3 K, v
    69/ _' P% J0 I0 C8 `- z% v
    704 i5 U- j. B8 O
    71
    4 Q5 u) I$ U8 p) A7 S4 K1 w+ }9 r  h' Y72( P- |) g; D: F9 _0 B+ b5 ^7 d% [
    73
    9 z  F# t9 B9 p5 q- C74
    ; n) M2 J. k7 h5 K. _; J3 H75
    , n; q, q' b. r' _76
    1 u0 O8 ^: Z7 g773 P, Z2 X6 `8 C: I5 Z
    78
    5 x% y6 K( k8 \, o3 Q) r79
    . P& n& N2 t6 X80
    ; ^& a, y1 z; a+ ?81
    ! M; u& Z' i* m; K, B# t82  Q# N* Y0 a$ m- `0 F
    83
    * V; f( I1 j: m84/ }5 {! n+ k0 d$ W) b" m/ q
    85. v( n$ E' _5 k& o& y
    86: J( t" b6 v9 @, ~1 x7 A4 E7 j) e
    87, b' O2 T! W% a9 Q  p. b5 i/ _8 D
    888 g, W1 k& v( I7 }2 D
    89; c9 n5 \8 i- H& t# q8 z) H
    901 O2 d4 N) Q- q/ x5 }+ K) m; u7 p
    914 c$ g4 M% y  r  D( u, R
    92
    2 k1 e( u1 }2 P; O5 [: {938 C6 H. }2 G$ p& l
    94/ {1 }9 W* G& N
    95' Q1 ]/ ~5 K: U5 _
    96
    & q, t2 I0 v! H: r975 H! L2 \$ Z$ @+ L
    981 B" V3 H, o% n. g4 r
    997 |% L, u2 D7 \. ]+ [4 y  T6 ~) }5 D
    100
    + B( I2 A2 F2 x1015 p* P! X; J$ ^
    102  ~. N7 M3 S7 p7 n+ K0 F; ?% X$ t- \
    1036 H- r' C7 M4 q% {. R. b2 q
    (高斯核函数)
    " ^5 K' H! d* _! x. M8 \
    % _" c. A( u" ~, r0 ^# \0 h2 c9 Q. ?2 A" M
    (K邻近法)
    $ v2 ?: {1 b) D) }
    3 p; k1 ]# M) y3 M# F5 a" O  ]- Z" D. b& [/ }" n2 E7 @& q' f9 Y
    四:谱聚类算法优缺点
    / |% ^; U. ^" k* C  y(1)优点  i5 B; M3 S- \! f( f) F: h& `
    谱聚类只需要数据之间的相似度矩阵,所以对于稀疏数据的聚类很有效
    : O7 |0 N  C8 b* T) O9 b使用了降维,因此处理高纬数据聚类时复杂度要明显低于传统聚类算法( t3 f0 j' M3 ~& v; o5 s& Z
    谱聚类算法建立在谱图理论基础上,与传统聚类算法相比,它具有能在任意形状的样本空间上聚类且收敛于全局最优解. V% S: X4 G+ P" s6 T
    (2)缺点
    ! f% W6 o; y' U& Z. Z  J" u如果最终聚类的维度非常高,则由于降维的幅度不够,导致算法的运行速度和最后效果都不是很好3 @# J. b; J  n  D+ ?+ {- J
    聚类效果依赖于相似度矩阵,所以不同的相似度矩阵得到的最终聚类效果大不同相同! F2 S' R1 I' |5 r( e" o: ^, m
    ————————————————1 b/ K5 p) E8 z! m- L5 W/ j4 D- x3 U
    版权声明:本文为CSDN博主「快乐江湖」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    * P8 c6 l, Y$ \4 v- V: u2 H3 N原文链接:https://blog.csdn.net/qq_39183034/article/details/126747494
    $ T- @" {7 X/ D6 P8 g( X6 \2 _6 I9 P# w* X8 u2 F* U

    # j! N3 X5 c. G& ^8 X: M9 ?
    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 21:03 , Processed in 0.467821 second(s), 51 queries .

    回顶部