QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3100|回复: 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
    【数据聚类】第八章第二节:谱聚类算法之切图聚类、算法流程及其实现
    8 F: L# I/ C( A- R+ I! y* p) q2 E( G
    % C9 g/ g; y: r  m+ l: N  g; _本文部分内容源自刘建平博客,在此基础上进行总结拓展
    * v( p" T* x9 q  T
    , j/ S+ I) x( d$ D& A原文链接0 L, v, a, p1 M9 F7 Q4 Q  C
    文章目录
    $ c% s0 t# m: ?0 L" U一:谱聚类与图划分: Q; L$ e& B3 `/ M' U
    (1)比例割
    ( ]. y; Z6 D. v6 |( I! u(2)规范割(常用)
    $ u! l; B6 l7 S3 T$ @  C% v6 w二:谱聚类算法流程
    / ?1 {, C. q/ E. A) H, p6 ?三:Python实现% `! I7 I. K- W
    四:谱聚类算法优缺点) m' a1 j5 e: {* ~& v% B3 u; q: L
    (1)优点7 u' J! X; J8 Z4 r
    (2)缺点
    5 Z3 G$ o3 |2 h8 I1 G9 i5 m2 S2 h一:谱聚类与图划分
    ' J! i; j9 X, f& G' q- B" {无向图切图:谱聚类算法根据数据点之间的相似度将数据点划分到不同簇中,因此将数据点映射到无向图之后,可以转化为图划分的问题。对于无向图G GG,切图的目标是将图G ( V , E ) G(V,E)G(V,E)切分成互相无连接k kk个子图,其中5 |$ i3 J# M- e+ V3 e: n6 z: ?

    " e% t% A! R6 w" ]# |, t每个子图点的集合为{ A 1 , A 2 , . . . , A k } \{A_{1},A_{2},...,A_{k}\}{A
    7 ]% k. \( P. V/ {8 ?: ]6 C, _11 ?7 i+ o) o1 @. Y# f7 F
    ​
    9 x8 H* p, m6 D8 J8 z7 p ,A
    7 w8 l) q6 I' @, a2
    # j7 N# }4 e4 i4 G: W​
    , N# ~. d- u4 E3 A- d+ y3 U4 x ,...,A 5 {, w0 [9 j. y) ^) V# s% u( u; _( C
    k. J' U2 {5 r9 L& E+ {
    ​' p$ W1 h2 k! {) P; R
    },且满足A i ∩ A j = ∅ A_{i}\cap A_{j}=\emptyA 3 x: T& |9 I& W2 w" s7 |
    i# R7 t- q: e5 |4 f
    ​
    2 K7 P: p' \. y" a- g# J5 I% g8 p ∩A % C  L4 h0 @& _# r+ P
    j# \1 A6 N) K$ G. Y
    ​+ m, X3 c" N8 d6 l4 G- X+ B" C
    =∅、A 1 ∪ A 2 ∪ . . . ∪ A k = V A_{1}\cup A_{2}\cup ... \cup A_{k}=VA
    7 r% e3 N# f& _( y: u( q8 q12 ^  S9 E1 U2 ?
    ​8 I. y8 @, b" ]2 d5 r5 ^
    ∪A
    2 l$ @+ W+ q4 ]; D5 W# `1 D2; `8 H  }9 r$ K" V
    ​& e. @. X1 P, B' d) x/ d. s
    ∪...∪A : U* y+ L# I' p: u
    k8 K/ V: P8 F" k
    ​
    9 L" W, h/ Z3 O =V  [" S- x! ]1 |$ z+ ~- F: p
    对于任意两个子图点的集合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)= ; I; A$ Q; Y; m$ J0 R* N! C
    i∈A,j∈B
    $ M- k8 p; D% Z( a. c4 h8 v∑$ R0 m) j9 s' R" ?
    ​
    6 T9 ?8 i2 c& N( g0 c w
    # E* [2 w/ T3 c: E0 P, cij
    5 q) k, ]3 i" f0 d7 E2 B​
    . v% ^: z1 \* B$ V7 y
    0 t, t& X: z* J对于k kk个子图点的集合{ A 1 , A 2 , . . . , A k } \{A_{1},A_{2},...,A_{k}\}{A
    ( s, @3 D( f' B& h% p1
    9 u- S' @% E, F; X  o$ z5 b2 K​9 ^! }% l4 z1 B1 g
    ,A & S' u- {8 F8 K! l
    24 b/ g% |5 S; g6 m
    ​. E$ m1 ]# W8 ?4 w% ~( x
    ,...,A
    7 n& \6 l/ c& K: wk
    ; J" I# c. ~' T4 `​, n4 P+ b6 d; C  w: 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
    & w7 w  e, `; d5 n8 ~- x1
    . g% }% ^# i3 }  w) [​6 e' B, T+ V( r  A
    ,A * l. |$ h! U& C- V4 f9 W( d
    2
    & U' a( p" b6 @$ c9 i​
    & j9 }* E+ X  t; ^/ | ,...,A
    $ F$ W# u! s. F5 Lk
    5 l; t/ K% c2 _* h​
    2 s' _3 j+ T- m1 P3 S$ }! n )= 1 r5 e* i) {/ Y
    2
    $ D& [6 m( I7 Y) I1
    % P" T  c7 v5 u  W- W& h0 \​) n5 k: X  _6 Z0 ]3 r/ k8 B6 Y
    5 {: e+ q- L2 `3 R- L0 c
    i=1
    3 Z0 e2 _& w$ y9 }∑
    ! N6 H/ P. b1 R" ?! sk& n6 {( Y% f- f) y* f% W2 o
    ​+ g+ B  y* _6 @& g7 T
    W(A
      S8 W: L* a' }3 k4 M& i5 ti
    * @1 q8 a( }" d2 C​# {* ?* F* \' g6 N- [
    , $ a2 T+ y$ @; c: k4 @
    A
    $ a  R9 @4 f7 [! O0 q+ I+ c* I/ a1 W) nˉ
    : b. j3 Q7 W* y4 E" n, a% {
    0 \* e8 w% ^1 [" O. _i
    9 h; x8 [, U! |  M6 d​6 @. d: l- X0 P
    ) (其中A ˉ i \bar A_{i}
    5 V; Y% b6 N# j/ {A
    / {* {# I  b8 xˉ
    . j( a' Z& i% u7 X) B) R, I7 |: [5 L6 o
    i
    . H) b9 y1 a" E& m​
    " ^5 \$ y9 {  K0 D* z 为A i A_{i}A
    % O2 T# @+ s8 t- @  D' v7 Z4 R& mi& {! o$ P& e; ]
    ​* Y! L: P3 }" n
    的补集)( s5 h# |" E/ a* J/ b: q2 v# j
    可以看出,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
    ! f) H$ A9 E: `5 q# `" {1
    , f3 }, s. j* f, {( n​+ P) U, H* t! m4 R9 f3 f& Z% o
    ,A
    ; F: Q$ M, ?) o9 n: w2
    ! |2 |' S8 Y* g* v) x4 o, J2 U​
    / C2 E& g) t3 Q6 o ,...,A
    * f0 X0 ^; ~$ N# P  a3 ek3 e- N9 o; }% @0 |3 j
    ​" Y- ^' E3 n" D: `% A& g8 Z' |
    )= 0 z' `: V, G! K, Z
    20 m- x2 U: G% C! @( H9 i
    1
    # A: o7 P% d6 W​
    / R* w6 Q- u$ ^- a0 t+ R6 V; v$ [  p4 }7 P
    i=16 \& g$ M# X- D( s  Q; n
    ∑* ]$ b& E' _4 _$ n% I! l
    k5 z$ g  ~' x2 K
    ​2 o8 T4 `" e, A; W
    W(A : F# @6 H6 \6 r* B
    i6 {5 N; U2 _$ V! o0 h& ^
    ​
    4 i4 |+ G& _1 ~2 f: y  c ,
    + u: y, r3 |( MA
      s5 }# j1 |+ ~9 V8 h8 Zˉ4 O; c' Z; z$ I4 Y$ R

    4 i: W5 q. i% e- _* [i/ _# x( t$ o" Z2 p% ~* R8 x$ W
    ​9 g5 f: {1 m) s5 e6 T# Q' C
    )在划分子图时并没有考虑每个子图中节点的个数。所以在某些情况下,最小化c u t ( A 1 , A 2 , . . . , A k ) cut(A_{1},A_{2},...,A_{k})cut(A # D4 q2 Z2 ^# I0 y; l
    1: y& x" S% l5 e& {
    ​
    ( X' h, [0 c# Z3 J6 ? ,A
    ; D" `5 x! g4 t5 E, M4 u( V6 I27 {/ d' I4 g1 d$ r
    ​5 ?: q0 m; |7 Y  {6 d4 B4 O
    ,...,A 2 m/ z& C# j/ t0 k- n
    k
    0 b( D+ _4 G' m9 Z% Z​/ v! Q% C% ~3 m2 S! |! c
    )可能会把一个数据点或是很少数据点看做一个子图,导致子图划分结果不平衡
    1 f9 \& T. V& W" `
    " b: x, Z% v6 ?5 Q6 [例如下图,选择一个权重最小的边缘的点,比如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 # ?# K' d6 y5 F1 ~
    13 `: d+ k( B) K& ~
    ​
    5 |' J( s5 O7 H ,A
    ; u4 y$ m5 @3 v$ A1 N# l/ A2, k+ A' B% Z- @& x8 }! F4 [4 z9 E
    ​
    $ F8 O0 P% n; h. s# F+ ~ ,...,A
    - }8 F1 C5 p4 v: `2 Ek
    : i  X* N/ |1 J' y3 o​
      ]4 ^, b; ~; r$ O3 S7 H8 } )但是却不是最优的切图/ M' ~1 L) ^7 l3 V; S
    * t% B/ z$ C+ i* L+ `
    为了解决这个问题,会引入一些正则化方法。最常用的两种方法为比例割和规范割
    7 N3 s) P: Z# V/ |( T
    1 t* l/ J2 R! y/ v" X比例割: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 + j  @1 w  M- @8 Q3 ?
    1: ~# n6 `* X1 j
    ​2 U7 ]5 T0 F0 v: u" Z7 u! ?
    ,A ( F. X' a* i7 L# Z: N/ F1 i
    2
    ; e! A8 P5 F- g. H& h​
    ! p% M4 H1 s. S ,...,A
    4 G0 {! C- v: u9 W8 [k
    + K% e, b$ g$ O  s. S* C​
    * A" G2 ^) a5 n( R5 |; m )= $ y" \* S; S! B  i) y' P0 F
    2
    8 ]; M3 |, z7 T/ v9 u# ?& u19 j) {" |( L, u
    ​
    9 W: q" H& i+ W2 g3 k, s6 ^1 a% a0 D; K8 [
    i=1
    , M3 U! o, d* T' O) o% m# H∑% N2 T) G$ ]: y9 C6 e6 R
    k
    . D  @- C# w' p1 v​# z. \, A7 k- U" P

    ! t- z4 o( W  [) }6 Z: |∣A
    " c9 F3 S. J% B5 xi
    3 X- Y8 I: d4 x/ r. d  R​( n. V* t6 ]0 U
    ∣
    $ s3 T8 i9 R  O1 rW(A 7 k- F0 m, g/ \! y2 a, p
    i
    $ }7 ]3 P! n# q9 z+ T​
    . J' ^8 Y+ o/ g7 C) z7 H) q7 K/ Y , + [9 `+ g5 |+ Q/ p
    A
    , v% T: _) K5 `" f; {7 p. d( dˉ
    8 Y$ ^7 _9 L8 Q* Y6 t4 T* ?+ t
    : L! t" h+ W4 F, }i- B" O; q# J3 s$ M  L4 K
    ​
    & O3 `- }' H- P% _' T ); ~* x5 A7 \: B' n8 ^/ }, q  I" {: N
    ​6 U6 Z6 h! s+ [  W
    9 s- N! c4 F& q
    规范割: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 % F+ a  f$ K7 ~4 a, B
    1
    * H+ J& f9 r* A( P/ n6 v​
    0 N7 B! }8 u# _& G( w ,A ( ~" V( A( w4 f. ?0 N1 r
    2
    5 b7 w! `3 l$ A7 G) {​
    9 i: `" |' M! [0 p# v ,...,A
    # Z! s3 @7 K- e" Nk3 @2 [: u' @( u, G2 Y5 M
    ​/ ~9 L% O4 j9 ]9 c
    )=
    8 K! j8 ~, f( }/ C. M  u4 r( t6 [2
    - W% j2 g2 b+ ?5 J7 H' x1
    5 Z8 B8 V! u- C​
    7 u+ y3 y" t8 Z$ {# d. E. B; W) z7 f5 R9 B& g
    i=1$ h; t! J# ?) r1 f* b9 ~7 G
    ∑5 A% C1 o7 q4 p. R/ x7 z' v4 W
    k
    $ z6 p- j& n/ `% o& \+ O​1 ^$ {& [' i$ p

    # [" s5 c5 R' {( L' bvol(A ' w* ]8 {  C) Y, x
    i. ^) n. C. h6 s2 {$ k! v
    ​
    + j# e$ |, }( V! ~: A )5 ]3 V, T5 L. M& d
    W(A # Q/ g* A- U: ]5 ?; `  y9 e
    i
    . w( F+ r$ t6 W; |6 t1 O​
    1 v- N; n- @' r7 W  { , # g/ I' c" `: |% {! D; H5 |
    A3 H, s, p. M. e+ r( l  P5 m
    ˉ
    ' {0 u8 ?. Y2 J* r' e$ c& y  _, B
    + ~/ d" B4 x7 \+ B+ D0 I. H3 t/ Pi
    5 H# |; A5 l( M5 X​
    ( y8 m1 p+ J0 q2 V# [ )
    5 `6 P( s7 F/ Z& [7 m9 h1 l​
    # Y) N5 s; v9 L7 u
    ' z# Q: s$ |5 c: |(1)比例割( c! |- H+ u, C" u) t
    引入指示向量(点击可查看指示向量定义)h j ∈ { h 1 , h 2 , . . . , h k } h_{j}\in\{h_{1},h_{2},...,h_{k}\}h
    ) g2 ]" |2 O( v3 \/ b. gj
    ( |8 m% z6 m0 @/ }: Y) c​9 J, q2 v& o1 k! `/ l
    ∈{h
      i5 V3 X, z1 V! }3 ~* q) K2 o1
    7 J) z) V, M: U6 J5 Y, c​4 R8 b7 a# l  S% @/ C$ t
    ,h
    1 M5 x7 u$ g% }  V4 J2
    - o: T4 h( {/ ~2 ~2 x​
    * {% T( e# ^. f3 A3 C ,...,h
    9 a8 `* e/ O7 ?; n, ?k" Z3 Z) Y8 u9 U% Q, S. `0 r- T
    ​* O3 [. J8 h6 K! f" d
    },j = 1 , 2 , . . . , k j=1,2,...,kj=1,2,...,k。对于任意一个向量h j h_{j}h : l" b7 z) p, [4 j- y
    j
    ! ^( D% Y8 u9 [- Z​
    & g7 U& E1 ]$ x+ P ,它是一个n nn维向量(n nn表示样本数),定义h i j h_{ij}h / k- b! Z- t, _/ i0 o& `1 V
    ij
    ' H3 g8 K: x$ B2 L. S* m​' G- @4 |6 B& r8 [/ U
    如下
    6 F5 Y: M$ |5 |+ w1 u  f0 \% |3 a2 D: p' h! I, z3 B6 [
    h i j = { 0 , v i ∉ A j ∣ A j ∣ , v i ∈ A j h_{ij}=7 K& {8 |! |" t/ {" V) l! m5 {
    {0,vi∉Aj|Aj|−−−√,vi∈Aj) P2 c% ]% Q8 g( w! Y4 ~
    {0,vi∉Aj|Aj|,vi∈Aj1 k# L* _$ u) ]; ?/ i
    h
    4 X2 }2 u/ b+ C7 f. Gij
    $ q1 B; S5 i+ j$ ?+ ^+ @​
      E; s2 i  `7 ]& a% k$ D4 K ={
    0 P7 [5 h/ C% v3 N; R0,v 2 O) Q% X$ d. ]% r) \8 S
    i
    + x- U! o( k* V$ l2 y​
    0 c- ^, B2 k& r7 c ∈
    6 H% M+ h- D( A' `$ x' g/; W/ A+ h8 V( g, i$ C4 _
    A ) o4 \8 V* W7 a% i5 j" O2 f
    j
    & u& ^  C6 P, d​& m3 o) g! k' o" [  d. K% N5 m9 H
    1 u6 D6 X1 B: }% f2 S$ ]" l) ]
    ∣A
    8 q+ [# b' M- E5 M8 uj
    / j8 P# q, _1 G9 x​
    # n( f" s" C! ], F. z ∣
    5 J: L4 A% U" B​( u) @  b# @$ k$ W1 e. e; u$ W
    ,v
    5 z; V8 g3 s8 U3 o/ `i6 q( t  U1 R7 W" ^" R8 m
    ​, L- M5 h# H6 V! n/ b) z
    ∈A 4 D& P3 O! K. g8 [
    j, u# P5 w0 s) M8 X5 ?' L" s
    ​% O2 o; T( @+ ~

    % U+ K4 C  j( ~. U* w4 ~- C​
    7 O( r7 B) @# ~. ~% C
    % w5 p5 d7 J% B
    $ A. S- b# z( M2 [2 a( k! a. M% T3 e  x7 Q于是,对于h i T L h i h_{i}^{T}Lh_{i}h & x8 [) q) X& I  K; B
    i
    3 \; a4 V) [( p$ }: E9 _" L- VT0 Q: |7 N/ h& P( ?  A; {
    ​
    , `9 s7 Y$ n* z  O* c+ W1 r Lh ! [8 y* f& e3 o3 Y
    i
    * d5 o8 _' p0 N9 D! v​- K5 f9 ^, y; a
    ,根据拉普拉斯矩阵性质可知
    0 T5 ?( w) Q  [' ?) u* ]& l4 k5 @  F# R. P
    对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f
    % i& R" z8 s! u5 ?( ^, H+ r1
    1 C' t" R3 }6 I7 S& E* ?3 m$ \' |' A​
      j8 V6 W1 {- ?! g8 A ,...,f # M6 ]$ v6 Y5 j8 t$ C
    n
    1 _/ t# r# R0 u6 N​
    1 @$ E  U" N! f% Z$ M )
    2 Y4 o) O/ B. ^, x5 w0 ~T, T8 ?, ~; e$ \' r! \/ S
    ∈R
    ; H- w( U3 k4 m6 R5 E6 a$ fn
    1 N. z' v0 M6 X! y/ _ ,有f T L f = 1 2 ∑ i , j = 1 n w i j ( f i − f j ) 2 f^{T}Lf=\frac{1}{2}\sum\limits_{i,j=1}^{n}w_{ij}(f_{i}-f_{j})^{2}f , I. J) t( _0 p) G
    T
    + {2 X0 k6 z" l  t Lf=   h  E6 G, Z3 l& t+ e2 A- c
    2
    / g* Q% d$ A4 I7 Q1 p( @1
    0 G! J8 N7 m. Y( G3 ~. S​$ v3 x/ D2 z# D' t1 I

    8 e- E8 @3 k* O; z! li,j=1
    4 [) U1 @% o- N& h∑; Z5 y: ?* G" _3 e4 P1 d( d6 S/ v+ a
    n, _/ G; o/ u) ^& I: y) d9 y) H' X
    ​
      |1 |9 p# \+ O( q7 W7 v; {3 Q5 B w 7 y% L$ j( c, E( t* d
    ij7 o( L+ z1 K1 B' l
    ​
    ( ^# [7 K: q5 R2 ~( V9 G/ F. d (f , i- k) d  m4 d" U7 k4 p
    i$ W! U  ^$ a1 U( V$ E* K9 a2 b
    ​( v8 Y. K( u! L' n; q1 d
    −f
    " v, s+ |& A' g* C6 wj
    * H0 z7 V1 a* c/ j​
    5 |! ?3 v/ c7 K9 _ ) + n6 W. Q, h; _
    2
    . S9 y' N! a3 [, F% m5 t5 y6 ?) _9 m( I2 `) l" e8 K
    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}|}! ]- H0 n# k& |4 r+ ?" t5 {- P0 ^
    h , E( w2 E8 d/ t3 g8 l+ [+ L6 {+ N5 v
    i
    ! J1 p) }3 @( F. rT4 E' u2 R; q5 O
    ​
    6 |7 n; W3 V, l4 a* r( U Lh ' Y5 \: H1 p& n( M
    i3 S0 E! y* n- P7 j
    ​
    / T! `) n3 p+ ] = 0 g. q# e/ l" {$ l
    27 r2 b6 y2 k5 f  R; u% u
    1
    : x6 k: ]3 `' w2 S​
    ; |5 G- B' U5 B% G6 \4 _1 U4 L, n8 [" t' q5 R1 v. U7 N
    m=1; c; f* H' r4 B$ d) B# V( ~
    ∑" d+ A- W; O3 k$ ~- G
    ​
    9 \6 J6 ]6 x. z7 V: h
    " f. Z3 F  c: \7 n* Xn=1
    % Y. j/ q9 L* j1 V1 ^: ~∑
    ) x* I7 {5 v. e- y$ ^0 i​' [" e8 T# k0 t  f! H0 y
    w 7 N5 M. |* o& N# w5 |! {
    mn7 x/ e7 {% p7 F$ W
    ​
    2 s& |$ }4 x8 T9 Y6 Q (h
    8 ~0 v' j* }+ [7 o7 N9 Yim
    - {( W$ H. [& L( I9 ]​
    & E( ~7 i3 v1 _' R6 Y −h
    , I5 p% F& `. r- ~in
    * l5 t+ z( [, h$ x​
    # L1 F# Q- G6 \0 p )
    7 n" E4 ]0 x1 O# z, j* _2
    / C0 |# F! W4 J# ] = ' |* ~! E7 T' Z- W
    ∣A 9 n7 a$ ]; G2 n7 g+ m
    i* _% E2 x/ H  d6 v* P# Y4 @# X
    ​6 l* m2 B1 r) a  D: q
    ∣( @$ s. c4 h8 @, F8 O
    cut(A   t. e. M5 x" _( Z; ?& m4 J, ^
    i
    % ?* [+ x: _! L' Y, H2 ^0 `​
    $ i+ R6 V" D9 V , 1 K( ~7 ]9 f1 ?
    A
    + Y! G, r* u% t1 S- uˉ* O3 {/ n/ K  h" F! [2 K8 M+ Z5 d

    / I2 a2 A6 J- d. [9 l3 |9 s  Oi
    ' h) [. ~) a  U0 l, r- i​3 I# r  a& n: v3 i  |
    ), l& F+ P3 H4 F0 `$ l
    ​
    # `& B" e1 J& m
    + h3 h" ]: |$ l, g% V6 F3 |0 y0 ?4 |# E. m
    严格证明过程请看刘建平博客:链接3 V+ x, ~% ?# 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 1 u1 H) ~+ P' H  f: M# s
    i
    * W  S0 [8 u) U3 B! I0 O4 ST3 |* c8 D5 R+ n/ J% X
    ​
    ; ^5 q1 \0 D* W Lh / j+ Q( B& T- y5 M- ]
    i' j5 S" j# y. g9 }" g6 ]
    ​
    9 K$ [! ~) H0 v5 G ,那么对于k kk个子图
    + ?  b! k% [# F) Z. L6 g6 G3 @% c2 D5 t9 [9 f; v& o( h. t  Z) `
    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)% e4 w. {' B) r6 ^$ x
    RatioCut(A
    - T* M1 m, u1 S) W1' i8 ]7 D5 ?3 }9 g$ z3 k
    ​! l- U; F/ w! ^/ @# q6 E" ]
    ,A & R" P4 ~: G9 x7 y$ \
    2+ I0 M# N: L1 c# }9 Z$ y5 u3 w
    ​) u# _% B7 j, i& [
    ,...,A " _* M/ C4 w% N1 Z2 O
    k
    8 u/ C$ B# U* l* \​  f' B8 Y# \% ]6 z
    )= 0 }) o+ y" {. X- s9 f
    i=1
    9 l6 z, e0 R9 T5 l) O∑5 H3 O( c& L  W0 i: Z7 {
    k
    - ?9 R6 H9 Y" s5 J; B$ m! L​
    5 ~2 \& k3 i) C( u& W h : _; d- m& A% c) o5 J6 t
    i
    ( c" A- d1 b! r, ]/ LT" X. Z$ ~6 x$ R' E' h
    ​' B* A+ k5 D0 l& H2 c9 u
    Lh $ C( N+ V/ o; F  m* n) b5 z
    i3 K; i. M$ S0 A  k4 D
    ​
    7 u+ T" C6 H$ Y' L0 p = , u/ ^  f" V  y% e+ r/ c
    i=1! O' O  `' f" S, R
    ∑
      ?* v* K; ?5 H3 I; L8 ok
    3 U- T7 `& P1 A2 c1 U& a​7 K* t" B1 F) T: j/ O2 Z  S
    (H 4 K7 a! n. u% f! l' V
    T5 ]7 v5 Y: ?. a- F! y
    LH)
    6 C) Y# L7 D6 {0 e6 t- [4 yii) j0 b4 N; z0 b1 e
    ​
    ; f& I1 i, D% x# D3 _* v% G =tr(H 9 p$ k0 `4 ]( N% u
    T& r: ~$ O# }0 }2 z7 a% _
    LH)
    5 {; ^6 }. W$ L3 f* q0 v% M; g7 N4 l1 i
    因此,R a t i o n C u t RationCutRationCut切图本质就是最小化t r ( H T L H ) tr(H^{T}LH)tr(H
    : q4 F$ k2 I. s3 }: BT
    9 R1 M7 S+ o+ s) M LH)。又因为H T H = I H^{T}H=IH
    ' {  e9 P4 O4 k# r  pT% s8 K' j2 g1 g+ [: }: V7 G# M6 P
    H=I(单位矩阵),则切图优化目标为; O; I6 G7 s1 S: l- l$ v' c7 @
    ) @# e0 Z, Z# H: _- m2 B
    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
    : u5 e2 Y: U/ G* E, JH" E6 p% k. X. i$ M# _2 S
    argmin
    $ O& [8 g- [+ l' N# w3 i/ X1 R​: Q8 Q% q' J. l" |5 v+ w4 i( i7 l
    ; u+ d9 Z. y  `: p: |
    ​
    3 T. X# G1 T9 @- c' U! v tr(H ; _3 ?( Q; v1 Z, x3 Y$ S  `
    T
    4 O( }8 e: c  [  C LH)s.t.H
    & L  \! z+ V' J& ]4 w% hT* Z& x3 |( x6 X& X
    H=I
    - C+ \5 v$ e! Z7 t0 m! j! e/ E: y
    / m  ^. F' z, b7 X) Z对于优化目标t r ( H t L H ) tr(H^{t}LH)tr(H * x% t% D, U9 J+ r; u- y
    t6 z; j- Z1 o! G
    LH)中的每一个优化子目标h i T L h i h_{i}^{T}Lh_{i}h
    & a, C2 g; B$ @i% v2 d" r! ]' E1 u5 |% C/ M
    T7 L% m3 m2 K0 K) m3 y3 w
    ​
    , K/ t# a& J9 C" [! f1 b5 K8 g! @ Lh
    ) ?/ S- |' F. _' |5 zi! ^' f4 C2 b2 h3 c$ c- b5 ~" w& i
    ​9 B1 y5 M' D3 F3 N) d
    ,其中的h hh是单位正交基,L LL为对称矩阵,所以此时h i T L h i h_{i}^{T}Lh_{i}h 4 I4 f% z3 ^) U9 Z) \
    i
    & O( l; }$ _$ u# U0 y# x# |- U$ n# a; ]T
    ' ]6 v5 A; X+ a7 q3 z5 y​
    2 A% U6 W  U& y Lh
    4 J' P7 G1 {9 r) Fi0 A, {, w5 x; L7 R- R0 b
    ​8 c$ V, C) |6 E+ R
    的最大值即为L LL的最大特征值、最小值即为L LL的最小特征值。而在谱聚类中,我们的目标就是要找到目标的最小特征值,得到对应特征值向量,此时切图效果最佳。所以对于h i T L h i h_{i}^{T}Lh_{i}h
    6 Z- D/ g" z& x- [2 n- j, @i6 u) b( V) K7 ?& E+ v' Q" u3 e) r
    T) \+ {4 K8 }5 t. j0 z& K  c
    ​* J& T& _# {3 D8 j  `8 a
    Lh
    ; D& L, {+ |* V  I+ ti
    # |! g' O& L; t( ~: g2 ~​* W$ @# R2 o$ u7 e: @; L/ `' M3 v
    ,目标就是找到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 ; V0 M% J, Q5 z3 n
    t
    ( }) D  A1 {( z% s LH)=
    1 c# {8 \6 W# D; W2 v  Y9 Wi=1
    $ ]9 k! f! ?; Z3 L  ^( F% h1 s. r∑7 g- W+ B4 L/ z, ?/ @
    k7 w6 {+ v& R  ]# ?+ ~5 f
    ​
    ' s* S5 L! g+ D* n  t+ w h ) m# a' `: Z5 z1 S3 B( N4 m
    i" e# g0 ^" P+ Y& [' |) B
    T( S8 G' ~( o! L4 p4 T
    ​
    , W' |4 G9 V2 C4 r  M Lh
    # E3 e9 S6 T$ ^; V' U3 gi* [& e& [5 y  E; ~% x
    ​
    3 B' p! H6 m5 p8 i ,则目标就是要找到k kk个最小的特征值
    3 U  s8 d4 M( {  `$ B$ s+ j) {- x, _. v4 F
    因此,通过找到L LL的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特特征向量组成一个n nn×k kk维矩阵,也即H HH。一般需要对矩阵H HH按行做标准化,如下
    $ \* x, |4 d/ y. O0 g0 R& R& v0 j) M5 X1 j( D7 X# j
    一般来说,k kk远小于n nn,也就说进行了降维: d: {. [7 G3 t/ D! ]0 _
    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}}}# }: i) U% t" b7 `8 u0 c
    h , O7 O4 \5 L  _% k! Y
    ij
    % B* m0 R) x; N: j# h9 K4 z∗
    ' q  F: j0 Z) k8 ]​" C7 E2 r( Q6 F7 O: d- t
    = 5 O) ^- O- f" }
    (
    9 ]9 y8 m2 Z( u& c5 U- yt=1
    - D2 }( y" b" P9 K- k- L) k∑
    1 B; ?& M3 Y8 B7 L+ [k
    # ]# F- d1 U3 ?​
    3 D6 g2 [% J! n/ q h 1 K/ `6 w( A, W+ Y- E& p3 Z
    it
    3 E4 ^6 [. a1 U& J& _' S+ W2
    # O* d* P# b) j​
    6 J+ i( T* p' h# o, g$ Q )
    0 V) X3 M* W  o- q2
    3 b1 W4 K- t+ U, ?, M1 R1
    # O1 |" ^2 ^. m( v+ J​  {$ ^/ P$ _0 w0 N3 r1 Y' ]
    . C. D+ O. u) _+ o: G7 f! O# u9 z

    - |+ ?" g* X% Q2 Gh
    + L+ h# \: G) {* iij( j$ u% ?9 o! I5 q5 e
    ​5 X; O& M! }8 u  C: Y' j
    - E0 d9 o/ k0 Q  J% _0 e9 |" G
    ​
    4 z7 w+ D' A3 p. Y" c0 e, h! O* O4 }) M( E. o8 l6 S

    1 {) C! ]8 p) _) e( }这里需要注意,降维后导致得到的指示向量h hh对应的H HH现在并不能完全指示各样本的归属,因此一般在得到n × k n×kn×k维的矩阵H HH后还需要对每一行进行一次传统的聚类,比如使用K-Means聚类* [) v) k' ^( J/ @; K4 `
    & |% D, F; T9 N
    (2)规范割(常用); z$ V1 {% w1 ?! m; v
    规范割和比例割类似,只是把比例割的分母∣ A i ∣ |A_{i}|∣A $ l2 T- Y8 p. n
    i
      ]( S! I' z' n8 S' s) C​
    ; d. t8 X7 \& [3 i  f) F ∣换成了v o l ( A i ) vol(A_{i})vol(A
    ' y+ L) @% h, Ji3 F; ?9 H# l5 t5 P  K& O7 I
    ​
    ' d7 b* n: C; S; q; ~ ),定义指示向量h i j h_{ij}h
    ' v+ F6 A" u/ t0 S; u( x# U2 Vij
    3 N+ v' M" J7 B) p9 U) B& Y% \​# {9 X. x% i$ ]/ k" o$ F
    如下2 Z/ w4 {! R, _; F# N' e- h* u. H. H1 z

    * m* O3 [* v( v3 e: ]- a6 ?h i j = { 0 , v i ∉ A j v o l ( A i ) , v i ∈ A j h_{ij}=
    ! J9 n' w! J' T- C0 @7 r) J{0,vi∉Ajvol(Ai)−−−−−−√,vi∈Aj
    6 L2 T9 I3 z" i  x# g! Y{0,vi∉Ajvol(Ai),vi∈Aj
    4 }  l, }$ p+ R; o* }h + Q  }- D8 s- A+ W/ j/ x
    ij* d6 V$ A* @" J0 g  I6 q! H
    ​; M; N0 ]) r( K4 F  y: B' w
    ={
    : n2 J/ A7 G! X& m! ~3 M0,v
    9 c. n" u0 Z, A' L! Ti8 t' l& U7 J- O- Y' W* J
    ​2 s$ n, y( r  ^1 l) A. v1 x
    ∈( p5 r+ _6 `6 |  G4 C+ R+ d5 P/ R
    /. y. X9 i, u' p5 N' K3 R* i
    A
    ; d; `" l0 ^% G3 Z( a  c+ b# o& fj9 d* j) c! f3 n
    ​" p& }& m; `' I  m) v
    # l/ f; Z; Y# ^- V' c
    vol(A 7 d# k$ Q% ~' w' g# V6 r% g. r
    i6 ]$ {, a* H0 _9 t& U, g0 M' P
    ​
    & ~! W& l2 n) q8 P3 C+ X )
    / B8 g7 ?5 W) ~( k/ A​
    / z8 L- y' _5 Q9 y. M& \9 F7 s ,v
      a  k( s2 a: fi
    # V5 N) j' Z  N​
    4 b* U) A, p; O6 f. m' s4 i( @; \ ∈A
    7 a3 R0 E; r. s( s& Kj( E+ z% R4 T# \; y9 t9 W
    ​! _% g8 o- H  z2 p2 g- Y
    ) v; }3 }- W, M$ f$ v! k6 H# _
    ​8 k8 N9 O' B; I7 x0 K/ |+ y5 S
    2 s0 V7 j$ s1 ]7 a# x+ H0 q
    ! N% ]- b3 G3 f
    于是,对于h i T L h i h_{i}^{T}Lh_{i}h
    3 h) s8 T6 a: F- V, Gi
    0 L4 w: Q+ ?) F0 F! y) Q& e! yT; I5 }# Z7 z% G+ G3 m: Q
    ​
    ( Y4 O9 i+ @) x: i6 G& E( p! W7 I Lh " ~+ P) \. W4 i4 L9 n% J7 P
    i) j! `) P9 b* L, _
    ​
    . S* D) T' ^% j3 T ,根据拉普拉斯矩阵性质可知" i1 d, k& q* f8 J: O$ F

    ) Z8 ?4 s; R8 E" Q; q对于任意向量f = ( f 1 , . . . , f n ) T ∈ R n f=(f_{1},...,f_{n})^{T} \in R^{n}f=(f 9 b5 b2 c  ~7 H
    1
    + g3 A, F1 O3 j4 O​  c9 ?1 X* P6 H8 ^& t6 j
    ,...,f ) o2 n# k0 _, c5 N# {) N" @6 a
    n: |" ~/ e  o( l* L3 U
    ​/ n6 ^+ j% k1 q  B/ I$ I: s
    ) 8 O, H& o: {8 J& B" S
    T
    1 I" v) U4 \2 n) E ∈R
    ; ^8 s/ h3 {; A, _n8 q# |2 U% G) P9 }# i
    ,有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) V( F5 p  B$ R, v- _
    T8 h& ]. s/ W: }6 q$ |7 e. z8 [
    Lf=   {& L* ^6 |" U2 e0 y
    27 E+ z, r" D& G/ ?* j) {; V
    1
    3 e* Q" Y- p* L8 q​" p' o# W* T- X) b
    ' t2 ~: p1 p! w. ]2 R  }# e! r) E; U
    i,j=1
    1 b# [7 ~3 |1 |8 R, R" U7 Z∑
      }  m0 k0 o% R3 `n# T5 D& u/ k; f8 M4 U
    ​( [# l" D* X( C# I8 i
    w . u) [( D- `0 N# l( i$ O5 Q9 K
    ij
    9 c' [$ f7 `5 @/ i# R4 I, x​
    / G8 l+ {6 Q8 o2 { (f # i( b9 Q. Q0 E4 }3 k& t. n) `! X0 e
    i
    8 [- D% U: U7 m1 a, s  X6 L​
    - ?% a. q8 A6 A! {  _ −f
    * F. {; P" H& `j
    , p0 I5 Y6 j- _( y* X, b8 j+ z​
    7 g# F1 k; Q# g3 i0 _" y ) , U8 i2 I7 L* C2 H3 X
    2! l* C7 `# }; d1 r+ W2 ?. W: k. M

    0 G! Z: l, f, G; [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})}
    0 x% g" U0 F% ]5 H7 }/ _h * j; D7 e% P/ ?# y
    i# q$ r3 @, W! V( s. K
    T$ H5 i5 f/ s' P# [# x& o0 _
    ​- v; n4 l; `' D
    Lh 1 V+ r, i9 [  J! i7 {9 K
    i
    6 S2 U7 b* b1 \  Q6 s, M2 p4 x​( U0 \0 M3 C+ h$ L8 |, s, E2 {
    = - a8 `- V1 e) _7 F
    2+ |& h6 X8 \4 Y) J" R* Z) C
    1% q6 j7 g# N5 R2 E& B* P  F
    ​
    9 u2 s$ b8 W0 b8 I) h5 M# M: J7 @
    0 Q+ n! I8 c' D) `m=1
    # G- q( H: H: B: c' R0 ?# s& n∑
    ( o" q, y7 ~1 s$ y6 ?5 t​  {  u* E! K. M6 ?! ~

    0 U6 T5 c5 B% w: hn=1
    % X1 x* I) |& A; c3 K0 O∑
    " N4 p. s3 C/ j, b+ Q4 ~! ^: a​
    7 h9 D/ t# h5 H* s& S w 2 t6 w+ {4 I1 P: a" o, F
    mn6 H; H% _1 J" A6 j3 u, g
    ​% M6 M3 p- ^, l
    (h
    ' r7 X+ [6 a4 y; B9 M( h' m; Vim
    3 [" ~" v1 K4 v) L3 X: M​9 G9 i- b. o; w! V" n' ?
    −h
    1 o) h- C# ]. X  r; G* a6 e2 q/ Vin9 b; ^) F' i+ N' K  {
    ​
    7 j  {) h( i% `1 n5 _ )
    : A$ Q# x" K, Z2
      ^+ Z1 t' Z0 ^2 O =
    ( l7 ?- l( G8 U. Pvol(A + E/ q+ R- j  e8 R  e
    i
    7 m" f" e. K( v  a$ x. T( U3 `" z: X​
    1 T& X/ h4 c9 B8 L; b, r! S )
    5 X( M7 y$ S  Q6 N. _$ H3 r5 Ocut(A $ v2 V- r* M/ ~+ O
    i" G) Z7 H8 ]# R$ l0 f4 l, h0 K
    ​1 F  D1 u* k- m) v$ j$ P4 Q+ h
    , 3 z" @  W% i& t% [( V8 b. f. y$ e
    A" \8 X% n# P# j& M$ J- n
    ˉ+ A7 h* c; Z1 O5 f. O/ f
    ! A8 w' R- b: v
    i1 \/ u4 o! T# n1 X2 X6 i
    ​/ m3 F% E4 X# F  M
    )
    ( n% k  h3 @; r# x​3 Z1 d' y  k$ e' c7 q
    ! K* B. F" T0 {  o
    3 P& U! U& x; }2 j0 y. R
    严格证明过程请看刘建平博客:链接
    8 R/ O: u* k1 g+ B5 n* h8 n4 H6 ~" R可以看到,对于某一个子图i ii,R a t i o n C u t RationCutRationCut就对应于h i T L h i h_{i}^{T}Lh_{i}h + B& I/ \; j1 h' }& ]/ T) j
    i6 t, L* ~- k' X1 D7 R8 Q* C! Z
    T5 G& C$ ]0 A  l# J5 K# j
    ​; \( V. x0 R5 {5 ]. @2 E
    Lh 1 h9 W. F2 N0 d4 z: |% R
    i7 u% s+ l5 L6 |! e) |
    ​
    3 B" |3 g* G6 h! a  u* b ,那么对于k kk个子图
    2 W( R' k2 f  @; z9 J/ @
    0 y: ^/ o/ p8 ?( y( U. LN 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)0 d2 j% }2 O' \* t, ]* H2 q
    NCut(A * f4 c: U" F' K: `: _
    1
    ( S" j, F% p2 B% [! k​
    , _7 ]! b+ G+ j ,A
    ( b4 H' U: V# z2- k* n5 H# _/ v# H3 b4 [
    ​
    5 T3 g$ A& w% C& Z% x) L! h2 U& Y ,...,A * v" e7 i5 ~' E4 {+ B9 ~
    k6 G7 P4 j) N) l9 @" t! p% l5 d
    ​
    - q9 c% W+ T% ~$ j )=
    ( [3 j8 X! ^& i& ?" ~i=1
    5 M; V7 G+ I8 c6 D+ t∑
      l3 X5 O3 a+ D1 i% [k
    - K4 w: w/ h" P/ k6 a​
    & `- {  Z& S. Z+ b h * |9 P8 f& g' _1 c
    i: E9 y: A5 G8 U& d% \; @1 R
    T
    0 Z$ B, O4 C$ K! E2 D: C( ]2 l2 a​8 H! o; L* h! d1 w
    Lh 1 F3 G( c$ @7 G! w. A
    i
    ( U) n2 E1 `6 M+ J! }​
    6 X+ u( Q( H$ X* y  { =
    ( {3 I2 E. r! {% Ti=1) A; N8 s9 N5 n! s1 |
    ∑2 L$ S1 M% H% ]2 m) R! ?
    k
    8 G! M0 V5 ~- A​- E$ c; d; i7 {
    (H $ r5 N) c/ ~% q& h, C6 N; j3 p1 |
    T8 ?( S7 A, f% O  @. f( j
    LH) 0 p9 P8 f5 S. c, z: y
    ii3 [  n3 o8 L( W& J, e6 T/ A" `
    ​
      ?/ n  z7 R. w" g& i) Y =tr(H
    6 G/ D1 l( Z. iT
    % q& h8 w9 J4 ]4 n1 \7 M8 B2 q$ n LH)- u; O5 D7 {! h5 T# _! o0 i* e5 h

    + t7 F- U$ n# @$ K但此时H T H ≠ I H^{T}H \not=IH
    ' f+ P( h( J+ y. |6 pT
    + Y9 q2 x) q4 j" x2 r8 q2 q; g H/ a' ^0 Q% V  {6 `# V; P' t, J

    + f/ I  U, T# i=I,而是H T D H = I H^{T}DH =IH . C- Q, x6 p. [7 p! R5 J7 l$ L% c
    T5 c  r* T) b% H# U/ F
    DH=I8 `% F! ?( _: G. j; X6 b1 j: X
    2 w) O2 o  x: H" |+ p2 a) Y+ v0 C' R
    这是因为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 . O4 k9 Z: o" v: C, r: L6 h
    i
    8 d5 J7 q6 I: \T
    * s( `4 p0 Y  i$ U4 C​3 M/ c; r1 J% C2 b$ `( c
    Dh
    / r5 Q4 V9 m* D7 w5 qi/ {6 C& E# a2 g' {8 b
    ​
    8 r: w4 X0 {( c4 S7 F =
    % b% p3 |6 G: mj=12 g9 z. o& J, L* h5 g
    ∑
    8 v" `% D8 w3 i" [5 t, Nn
    % y7 Q; [% s( g​- T9 a% K* D* p8 y, Z
    h 0 S0 D3 b7 W7 R
    ij) ]  F  K9 I4 j. o, K
    2
    ' B8 v: n' A+ Z3 ^5 n​2 ^' k3 u* J, M* q) R7 D& ~, o
    d & s) I" c4 ?& o# H; W$ S. O
    j5 G& l& {2 x% |4 @" d* M7 h6 s
    ​
    % V2 O; z( V' A& a# x = 6 h7 u, m7 v  }
    vol(A
    ) l4 H' w& ^* d3 W7 a1 Gi0 l8 N, J* q4 e9 d, h
    ​' d& Z* `8 N& S. K
    )
    1 `( M3 W4 G# s5 X18 e9 ]* w5 X, }9 U/ v
    ​' j; H/ o8 D) F8 ?- X7 f
    ' }2 K1 Q* A! A' q' ]
    j∈A ! A' D& I8 j' n0 t1 g" X( G
    i
    # S' |$ B2 |$ }- t: m/ o- s​5 u& g( _0 v4 H# O8 s

    $ q% e2 ?/ g4 g8 d+ r' G% K∑
    7 h& l* q# r2 W; A8 p% ?% [% [​4 s9 p- Y! h, F* d$ P
    d
    5 j, H1 T4 G* S" s  f( C0 S; Fj
    % j. }! ~" `/ y​, i, j0 [, i/ v: P6 S* n5 m
    =
    / U, H! X! c" M  p$ U* ~  Y/ M, b2 c1 Svol(A / k" G* d+ D# {  Z* Y# g
    i
    3 K( ^1 t3 q: H7 s​- h$ f# T( ^0 r2 J! E
    )
      W: n  d* W' o- R8 u1 Z# y! b1- q3 i; B/ P6 W/ a4 ~) u
    ​
    4 ]( a/ G  f0 ] vol(A
    1 c8 v% P) E- `4 g0 k' Ji
    8 A& \, ?2 P( R* a5 C* O$ g​. M7 m* ]9 h2 r3 c" n  f
    )=12 }, H: C( C0 X9 c6 w
    因此,此时切图优化目标为! O; z; U# J0 X2 u; x3 h

    # F7 o3 f1 _: F) I# z5 Ca r g m i n ⏟ H t r ( H T L H ) s . t . H T D H = I \underbrace{argmin}_{H} tr(H^{T}LH) s.t.H^{T}DH=I$ C4 f/ p9 \0 C! z
    H
    $ g- m; }- U( Y3 J3 `argmin
    , j( f; I3 S5 i' S​) @' o, b% G* C8 w; G

    6 X8 X# f2 M, b- g# b9 p* }$ d& T' b8 Q​
    / h5 ~; X: K5 v8 o. k tr(H 3 o6 {- R  P% e; V, h) U
    T/ k3 j: K. d0 F- G, W8 n/ B
    LH)s.t.H $ p; L7 z5 ^* `% y% g/ c7 G
    T( h% ]8 Y! J* f3 O1 ~
    DH=I
    ! ^6 C$ Z* a# Q6 n* j. k! ?" A1 I2 u8 o$ w
    但是现在矩阵H HH中的指示向量h hh并不是标准正交基,所以需要对H HH做一定转换。令H = D − 1 2 F H=D^{-\frac{1}{2}}FH=D
    ' w! ^: o+ E, t' l% N− " P( f5 B8 ?1 t5 g, v
    20 m: O; {& e; B5 _. R: F3 l$ _
    1( w0 R+ I; v% x/ F) R+ P4 i
    ​. O1 m5 G; C8 D" e0 j# K. `& }1 I

    7 E( e1 Z# m8 _* ^ 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 ' m& a; ^( z! b, f7 n4 x
    T0 @% D/ p7 h. l9 V5 I
    LH=F * Y8 A4 h# b3 b8 ]
    T
    5 B& f$ i; r/ J. P- d4 M+ i D " a; k5 ]+ ^+ ~2 b, d
    − . v/ W, M6 \  K+ s
    2( E7 D7 f) o' p) S
    1- k* X( Y4 R  ^( b' l) f
    ​! h, H/ Q" W8 R7 G5 I

    & E% H/ A' o' b3 B/ k1 c) t LD
    $ o8 |8 s0 f# E% J" b1 J% q8 y− 9 H7 g2 P" Y, W  h
    2
    9 x2 B9 p3 `7 ?' K1
    6 P% D! b" [& |/ r​5 f+ A! ?( w0 z( M& ^6 \
    $ y' V4 x6 y% m$ f* @
    F、H T D H = F T F = I H^{T}DH=F^{T}F=IH 6 C, ?, S; x8 F( @" j  z
    T
    2 E, C# w8 T( w" d* f DH=F 5 c' x" A4 U: A) j+ K: b
    T7 X, q0 L% r- y2 A9 v4 j! H
    F=I,于是优化目标变更为- I7 ^" R6 J% E0 H1 I  U
    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
    - l3 m2 e5 b: q7 P& _F
    3 _7 Q. }, c( Q: ?8 p- W2 ]  X8 pargmin# O3 K  s& L% b0 C2 P" Q; w4 \  q
    ​
    . j% t( ~! f' c5 E, K: U
    $ `3 i( d/ F7 r​7 k+ O# s! V, J) a+ A8 m- j5 D
    tr(F
    # i" S! h, T8 a+ I, `) ^* \- J% ET
    * a$ c3 \9 L! g3 h1 a1 ` D
    " G5 e' y' L6 }; N& z& k1 f) a) n−
    ) G% T' G6 ?, z# z. g# |6 w5 c8 Y2
    ( x3 O% [3 Y1 s- x9 S( |1
    2 l9 |( j0 j; ?+ R7 p! j​
    - f6 N4 }  C2 ~* A2 a5 k! z0 t# q# M" }3 E5 O
    LD + \" l! _" K8 u& e! K# `
    − " E- s, n, A6 ^2 O
    2
    4 q# y* x( p, _. B: a1
    1 N' c) ]: E' f  ]( E​4 f& k* g! l- X3 ^( X7 p. [
    8 C3 ~; y/ t9 {( W# g& {# g
    F)s.t.F
    ' P8 n/ v5 D! H/ ?8 t7 I6 bT
    5 z! ]! Q# t$ Z8 ]7 k F=I2 M9 ?7 h$ W7 u2 c

    . w5 o2 I1 h3 i# X现在,和比例割一样,通过找到D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
    7 i* m: C* O% E$ v$ x7 o, k& q− 6 E' ]: p; f  ?* ]( O
    2
    $ D4 p8 I1 t' O5 j; Z. i0 W; n1/ R2 v# Q* Y4 N( \6 l
    ​
    5 @: M6 E1 h& J' f1 F
    9 r, w# O4 a) U LD ' g1 n5 o* G1 F  F
    − 9 A( o; D3 |& T* ^+ p
    24 D0 {( q- }9 M2 |1 H; I
    1/ P0 ?1 X. c3 x1 a5 r, @; x
    ​4 L) j- }& [# n: b. u+ l' d3 X

    3 r7 I" Y* \9 b5 O: A (就是之前的L LL)的最小的k kk个特征值,可以得到对应的k kk个特征向量,这k kk特征向量组成一个n nn×k kk维矩阵,也即F FF,最后对F FF进行传统聚类: Y- r5 \( C4 D7 w: Q( R

    ; H# Z- Y/ k2 X/ l5 X一般来说,D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D   }- A  C3 C8 K
    −
    : V3 z2 q* v* |: \- d" l( o2% \- E4 @$ H1 x
    1
    : w2 d- O2 S# M0 H; C( f2 \+ n​
    # {, [. \8 P, S* C
    ' m5 C5 W# V4 M8 O9 k& w3 K. N LD
    % n( K; Z$ t+ H, x2 j; I9 T/ x, w− 8 C$ N; x- }8 U1 b0 n! |* O
    2
    ' n) d9 y1 G0 S1
    3 o% n- t. J! ^* q% u; a) I" \5 O​4 Y$ S& x& t% J4 Z1 D: W
    ( i2 p, G" q" |8 ?# R9 I2 j
    相当于对L LL做了一次标准化,也即L i j d i ∗ d j \frac{L_{ij}}{\sqrt{d_{i}*d_{j}}}
    2 E% u- d! q  J9 I4 g5 [% xd
    ! J, Y" D3 k- |$ _+ l- Ci% Q! d) f' y5 p3 M$ @. S
    ​
    , J) Z; _  ?; ]( m, E# H: i ∗d
    ; R  m& r% z! L6 L3 m4 ]+ o6 p1 uj, D) Y# k; S7 Q. }
    ​
    , B# c! `7 a$ J) M9 R' ?$ f% P1 k, W  T6 _
    ​+ W/ R" l1 R8 f9 z

    ; y' U8 x" x1 TL 4 U8 h4 @3 Y* Q3 k' X7 `
    ij
    9 X  B7 g% P: D# S0 |2 Q​
    # a  _" C5 I5 G$ |
    # A6 I5 k$ S% ^/ N2 Z% E  U9 {​
    + z& o$ @1 v* x
    , }  y$ |$ v6 k% A$ ~二:谱聚类算法流程
    1 O5 s% k, E, |  c给定数据集D = { x 1 , x 2 , . . . , x n } D=\{x_{1}, x_{2}, ... , x_{n}\}D={x
    3 V* Q# n: a6 X) V4 \" _0 S0 e1
    / Q3 O. L/ d8 p2 k: @7 @% p5 r​
    : }5 w- y# W( {9 _( E# [ ,x 1 }7 C' y  W5 W- L5 p2 @. z
    2; b$ J; j( T1 r
    ​4 D% D) v/ B0 y( p' W: B/ n
    ,...,x . J0 h# ]" q8 F/ y1 i
    n
    1 T9 r# i' h8 _' f( ?​
    . N3 ?* R, }+ u* H" N) w+ B }& |+ ~( w8 x! a$ K
    , S, t5 y+ ]# Q. b8 E# `
    根据输入的相似矩阵生成方式(一般为高斯核函数)构建相似矩阵S SS(AffinityMatrix)
    ; j- F% M: y' H根据相似矩阵S SS构建邻接矩阵W WW,再构建度矩阵D DD
    & ^5 v  g8 ^9 o# O# h计算拉普拉斯矩阵L = D − W L=D-WL=D−W2 ]7 E6 z6 }2 @. t' A2 i; a
    得到标准化后的拉普拉斯矩阵D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
      s9 L8 i; Z+ ]& ]: n& J− 9 U/ D, C+ D. t3 ]0 \/ v9 J
    22 i7 Y( W  k" o2 _) Z- l
    1$ ?. M5 _" ?  f7 |$ O! S% H
    ​
    ( R6 s9 U  H2 R. Z" _
    6 r- E% g/ p9 m2 w4 S2 ^ LD ; Q( |( I. R; D4 i, S9 \+ c5 e. a
    −
    2 W& x$ t* T2 B2
    % E- A3 h/ d* [9 l" I4 M  c' h' a1
    2 N3 m2 M: Z5 D7 l, \" G​
    " g1 h* s$ a8 n( G
    ; u" t0 [+ m! z' ]8 V; t! l2 v  G" e6 G6 c+ }2 r6 u! x
    计算D − 1 2 L D − 1 2 D^{-\frac{1}{2}}LD^{-\frac{1}{2}}D
    % ~  k  G( W" R: B−
    7 o; l+ u" k* t1 A27 N% Z5 |; I. A
    1  C! P( h2 ^$ J/ L- K
    ​
    , L9 t% ~6 ^3 J
    - G* E' s2 X/ U  i5 |/ B LD 8 w9 F0 r7 {# f2 O, q  g2 S8 B! H
    − % _1 G$ T' Z1 H/ E5 e9 o
    2
    5 J& I4 `" F2 a& k4 v7 w2 f1
    " p$ T5 K8 `+ e! k​$ H7 x  U1 G# K9 L

    $ ~  |( j8 k: y 最小的k kk个特征值对应的特征向量f ff
    7 L/ c" Y; ], g2 U5 \: I0 n将特征向量f ff组成矩阵并按行标准化,最终组成n nn×k kk维的特征矩阵F FF: k9 s6 f  U# l% g; N7 K7 Q& O7 [
    F FF中每一行作为一个k kk维的样本,共n nn个样本,采用某种聚类方法进行聚类,假设聚类维数为k 、 k^{、}k
    % }3 @) t/ @! o" W- h; h- @、
    * I! R" T" Q8 ]' P5 }- h+ N; ^* m  J9 K+ S$ C
    得到簇划分C( c 1 , c 2 , . . . , c k 、 ) (c_{1}, c_{2}, ... , c_{k^{、}})(c
    - u' `2 F- {4 H9 J) n! P' f1 J1
    ! t% q# b+ P+ j2 P​; _/ F6 K: |) c  H9 Q5 g
    ,c . j" K5 g9 F: b- r$ u% ]: x6 `
    29 O. G; a. i9 t  G, O2 Z
    ​
    - T& u) n& |) ]1 { ,...,c + @9 ~8 Z* ]7 q& e; C1 d
    k
    + F. B- z, Q; L9 i  t" |, S3 z、5 n/ n# d: ]% V- ]* u7 B

    , z8 J- d! t$ G. E# P2 C​) g  x2 v" _) h# {
    )5 l+ n" g+ T, v# w* w
    三:Python实现# ?+ ]& X1 N6 R0 h- M& q, j9 s
    import matplotlib.pyplot as plt& \. q; D9 y7 t  t# z. K! ]
    import numpy as np5 d# I' Y5 L0 Q- p( \! A7 ]
    import pandas as pd
    / w- s3 W- w* Q, r; S6 kfrom sklearn.cluster import KMeans0 t6 J: R. M, f! q$ w- W
    from sklearn.metrics.pairwise import rbf_kernel9 N! b3 u, i# F9 S7 f- T) C
    from sklearn.datasets import make_blobs) @! M4 A% Y$ S% l
    from sklearn.preprocessing import normalize
    % I; a: b- C8 T& b8 i
    & A* N8 k2 J/ n$ _) T! _def get_affinity_matrix(data_set):& m, g" ]: y$ h
        #  利用高斯核函数计算相似矩阵(全连接)- v4 m/ _2 K" T6 V5 R6 R
        rbf = rbf_kernel(data_set)
    ! Z, L1 h) I& a  T    for i in range(len(rbf)):  T$ {  o: P; A9 `( D
            rbf[i, i] = 0
    / Y& u) G$ C: Y% n8 G5 y$ H+ r; X  p    return rbf
    ; Q# w; M- D# Q' R/ H$ ~
    0 z+ K5 N; O  e4 h  B. Y4 o) W% a
    : C3 X, R  O) cdef distance(x1, x2):" \0 L  v1 r/ R5 G; ~& j3 i9 q- A
        """  ^# h6 _6 F( S, Z5 q
        获得两个样本点之间的距离
    . c. N) H+ p# M* f+ ]9 j    :param x1: 样本点1
    . T/ x# R, Y2 Y& w' h! f    :param x2: 样本点2
    9 i0 ~4 N& G  m; f& K" Y    :return:
    8 u9 L2 w$ z. Q6 o( \! u  D    """
    % |# g& ~$ K) Y2 W3 v    dist = np.sqrt(np.power(x1-x2,2).sum())& e2 X! b) z; O6 |( l
        return dist
    # Y8 r' f6 I; ^
    + m1 b9 }: q9 u8 B2 k# ^+ udef get_dist_matrix(data):' _* p- M! f0 F* x
        """
    7 i! P3 l7 j( e1 J    获取距离矩阵( u( f, c, x, b& b8 q
        :param data: 样本集合3 k" j0 v) D# G9 l
        :return: 距离矩阵
    : J6 J- G) F* }. G% t0 l    """8 p! Q4 E4 b( m& F# w$ T8 W
        n = len(data)  #样本总数& F; l3 L, [1 w
        dist_matrix = np.zeros((n, n)) # 初始化邻接矩阵为n×n的全0矩阵# ?2 O8 ]' u+ _. ?/ _
        for i in range(n):
    2 Y1 C$ [$ i1 Z        for j in range(i+1, n):1 ^! B& M! C( M
                dist_matrix[j] = dist_matrix[j] = distance(data, data[j])- n  e. {# Z5 T- q4 g
        return dist_matrix
    3 g5 ~1 c9 V( b: I
    3 b8 m% _' M  p  _def get_W(data, k):9 }. g2 i: M  U4 Q! k  {+ B- o
        # 获取邻接矩阵(K邻近法)9 B! s+ Y* d9 y. [1 O. S* e
        n = len(data)
    ' G* F9 C( N4 l0 ^    dist_matrix = get_dist_matrix(data)5 _# q7 l. d) @8 W  l6 d
        W = np.zeros((n, n))
    : D9 \4 t# T  f: q6 e    for idx, item in enumerate(dist_matrix):) T8 m! |+ A" C# p( L3 g) T
            idx_array = np.argsort(item)  # 每一行距离列表进行排序,得到对应的索引列表
    + x! r  l# V' @2 |& ]        W[idx][idx_array[1:k+1]] = 1
    0 ]; u, W. |9 K    transpW =np.transpose(W)
    5 \) X& ]$ {, E' l1 D% M    return (W+transpW)/2
    2 M( m- @" b+ q# g+ g! t! W6 X/ h. w. i0 m4 t0 }5 O
    def spectral_clustering(data_set, k):
    4 P3 _. ]# ~3 d    # 利用相似矩阵S得到邻接矩阵W
    ; S# a2 n- e; a6 G) C/ J5 A4 ]6 V) x    W = get_affinity_matrix(data_set)  #高斯核函数(全连接法)
    ! C' \: ?+ P8 ~( f8 K    #  W = get_W(data_set, k)  # K邻近法5 M4 V# B8 Y0 f& Y
    % R% d' N) }7 o. R$ Q  Y$ i" [  W; |- {
        # 计算度矩阵D,并得到矩阵D的1/2次方的逆矩阵(便于计算拉普拉斯矩阵)
    $ e# D% R) h( H- X& O    D_inv = np.diag(np.power(np.sum(W, axis=1), -0.5)): ~- T1 g5 x' {- O9 _9 f# Z

    ! H$ p7 d( \- g    # 计算拉普拉斯矩阵L=D-W7 E% t/ E. _% L, V& V
        # 标准化拉普拉斯矩阵l = D_inv*L*D_inv=I-D_inv*W*D_inv
    ) z$ b% K% s5 C1 U% a    L = np.eye(len(data_set)) - np.dot(np.dot(D_inv, W), D_inv)
    " s. I) |+ n# e, E! O2 }$ N
    ) m6 f1 w" X: P; l/ U    # 得到特征值和特征向量
    , w# x" q# w* R    eigvals, eigvecs = np.linalg.eig(L)3 E; j4 F3 C- z+ T+ C* Y
    1 i0 F1 w7 t: l$ @9 |7 Y7 ^
        # 找到前k个最小的特征值(索引)4 V7 ^" h! U& _2 c% r; A
        k_smallest_eigvals_index = np.argsort(eigvals)[:k]
    7 m4 j8 \7 B; N6 Z# U
    8 j. O$ t) F+ c, z& R% J7 u% C    # 取出这k小特征值对应的特征向量,并正则化
    / J' {- s9 _% J8 l    k_smallest_eigvecs = normalize(eigvecs[:, k_smallest_eigvals_index])
    2 Q/ V  h5 _2 [; |! O0 j. Y1 _7 d( s0 G1 Q. v! U4 O
        # 使用K_Means聚类1 ]0 L2 F8 Y# r5 f5 w
        return KMeans(n_clusters=k).fit_predict(k_smallest_eigvecs)
    & v5 u6 A) O9 v  V, @' j2 k* o% \0 X1 o
    + P3 ^) G9 S2 c% E; N
    raw_data = pd.read_csv(r'E:\Postgraduate\Dataset\jain.csv', header=None)6 f5 A" ?( P/ `
    raw_data.columns = ['X', 'Y']  z6 L5 t1 `9 e+ t/ H
    x_axis = 'X'
    & h/ x6 F: Z  D! {( Ty_axis = 'Y'! y  N' T+ Z" p, a! g" y
    7 }( r1 v; M8 X2 I/ l! Z5 J
    examples_num = raw_data.shape[0]
    & F7 O$ u& j6 r* m! r# X7 i- N( p0 Wtrain_data = raw_data[[x_axis, y_axis]].values.reshape(examples_num, 2)
    / y- {  q* E$ U! {0 H  }) m6 j" C4 \( J; V" A, G

    ( A: J* T1 H: N, y' ^1 P- R% {. jmin_vals = train_data.min(0)
    8 W! Y( ~+ z) l% i8 f7 @3 amax_vals = train_data.max(0)* G2 y! H- o- w# u1 j2 n
    ranges = max_vals - min_vals" o' c7 p* `0 G: N
    normal_data = np.zeros(np.shape(train_data))4 q0 @" w5 [  t4 E2 b
    nums = train_data.shape[0]* W/ i# {, B8 B
    normal_data = train_data - np.tile(min_vals, (nums, 1))3 S- p7 ]! \1 T" Y$ ]
    normal_data = normal_data / np.tile(ranges, (nums, 1))0 S7 o6 c. E7 l* u9 a  t

    + W$ f0 l+ }0 Z( [labels = spectral_clustering(normal_data, 2)$ {7 C9 l1 _4 j) G0 l/ y9 _4 W

    # \! y8 d) O7 H1 r6 g# 原数据
    9 h0 t& w. C& H" l: G/ O1 f* ]- {fig, (ax0, ax1) = plt.subplots(ncols=2)
    4 g- m5 K" @/ r  K" Y; v4 Bax0.scatter(normal_data[:, 0], normal_data[:, 1], c='black')0 }- f0 Q, v& k
    ax0.set_title('raw data')' P, I5 M- f+ e1 [, @4 e: w
    # 谱聚类结果
    + ~. }; _. X8 hax1.scatter(normal_data[:, 0], normal_data[:, 1], c=labels). |( |4 h: p; j+ ^, l
    ax1.set_title('Spectral Clustering')
    ' k8 V$ R( |- x9 v) d6 s3 n3 @
    1 c2 b$ \: D" P6 Y0 M. ?plt.show()
    : H' o/ U# y' X- n& B$ M/ P9 T0 {$ h- Z$ X( Z" Z
    1+ s: i. A' M; d( g! c4 O
    2
    " |$ Y  x) ?: w0 U3' g* ]4 \) I& A- c1 H9 x& ?7 g" u
    4
    $ D& Z8 e( D/ C$ J+ R" c5; j/ O; d, N5 _7 ^6 R
    6
    % l& X' G; Z& Y8 p7
    * a* U+ V' K, F! Q$ z+ ?/ r8. E+ h/ d8 L. ]
    9
    - W3 {7 G! D- u. B1 |3 p10( X/ i  q, \/ Q' v: ^7 O2 B. X
    11
    * E3 h4 f3 V+ }% D6 {' P9 {0 N12
    . o' r: u7 c0 p. E" Y  _1 F8 B3 @13
    : {) @, Q; P# Q# [  H( C4 S& b144 V( x2 A+ ^4 N8 X
    15
    , r+ x! `6 e  `5 ]2 w3 \& P162 n. g; N* s# }# |
    171 u- x6 j8 p+ t7 K* ], |
    18- o* U4 U1 ^1 e) U
    19
    - ?4 S, @6 s2 e5 \! \0 ^20. o8 V9 ^( J2 d
    21/ h: z5 S5 a* M, S' Z
    22' |  I* \" \# F1 C
    23& c; J  b$ s9 c5 @  Q
    24, E# L  U/ r3 X8 C  p
    25
    2 C5 c  W2 b, F7 b8 O2 V6 ~26
    , w* P. G6 F$ Z6 S4 c27  U; u" x! V" ^8 ~7 J/ C( |
    281 J5 f, m* J8 _
    29
    : J' m8 l/ s5 F8 u$ T8 T30
    # i& M/ x' M; s. l9 Q( C31. E' o0 K0 F+ s5 M  f
    326 l) V! q- O, }) k9 d
    33
    2 S% Q* i- R( N0 \34
    5 Y2 o. |) w- k2 i2 i6 w, o356 L/ y/ p7 ]3 W0 }( }& u
    36* e3 W, F3 ]0 o' _7 J% U) A( n$ }% _
    37
    , W, S* F0 z- V2 d, y38$ A/ O8 p' ?) ^8 T
    39
    8 g+ i( {5 c" }+ c+ b$ {. p40
    3 M* q2 U8 E' u: D413 Z# d5 }. h4 @( @. C
    42
    2 U2 {, c& X1 _% U+ N43
    $ {. v7 l' Y  Q5 J- Z) h44
    ! l. k+ X' G4 ^5 e: l0 [3 p8 O# P& X454 l4 _, ~0 k  W% b1 ?) h/ r2 @
    46
    ) G. z/ D3 N8 Y; b47
    0 _; m. w+ I) X; c! _48! q, R2 f3 @% D! _; g1 Z; ^) t0 {
    49
    $ {, i3 K' I5 K! |; _" o50& p4 k# F; v8 h2 f
    51  s- }; q1 o  T$ \- Q
    52
    & [8 s+ @8 B' P0 x0 o) L" a/ |53- r! @/ n( U/ f- b
    54
    ' }) V/ y, Y/ o/ }1 L8 [6 O8 `( M55
    * h1 G4 W0 k% O: B56# [" M7 X3 F3 a% U
    57
    - j, m$ }* P5 H! Q1 |4 Y58
    , Y' o5 h: W7 O+ o: p598 k1 r" q1 |% d- K7 a  u
    608 x5 \7 N3 T+ q9 W  J+ C
    61. a  }. \8 U+ A" `$ W6 y2 k+ X
    62$ H, A1 }2 I8 w% Q+ q4 }* T5 e$ K
    63* O. b) u  B( |) A0 V' r
    64
    / A8 t; T# s0 A9 ^# V& \  I4 ?! w65
    ; y6 u* b- e) K. b9 ?6 v66# L% a' t) e: J: H( N9 ?
    67! P2 d( C4 y/ ^% N4 I  i, v
    68
    * D+ s8 K7 }" B$ u' U69
    + p% F( A- k; z# b) ~5 i70$ {. ^1 F( }, l4 J. m. {  d1 Z
    717 b' r5 D" M* X7 d
    72
    , D, s) Q5 y' V9 G/ o: h732 u# e$ ^$ l! l& q8 o. i
    742 M' G/ E5 v1 E" q* `$ T* k- b) a
    75, c6 W! G( p$ c4 R1 e8 E, z
    767 \0 b  a3 o+ P( X
    777 a0 d+ p3 Q- y% M: A" ^
    78
    0 Z4 t$ Z3 p5 U+ ^* p+ r79
    ( ?% q6 e4 Z7 q- M* [; f80$ k, q! q, |7 |& q" B& I  a
    814 R4 Y- Y1 l+ y" S
    82
    & \7 k  u/ U4 H+ N; p; S83
    6 D; w- t7 J1 [- K$ m# @2 |84" l4 L7 X# h! J: `  R9 c
    85
    : y# F- W  g* `% Z3 {+ g1 E$ @865 p# @- a; {% Z7 N- n! ?
    87
    0 K5 k0 V  k7 O4 P6 S' S' W88
    $ r# G" D3 ^4 w6 H9 ~# z89
    2 ]( \5 \+ |1 @6 e. q90
    " o9 i4 j5 H  s# b3 x' j91  p. x; M8 v- ~7 t" C$ r4 ^
    92
    : |6 T3 d8 j! n$ B0 q# ?0 s93( M- C9 v$ H" p+ X
    946 q: U4 q. M, b8 {8 L1 K0 S
    95
    ' }  B  \+ x* d96  x$ B- Z7 Y# e8 ^' h+ T. Z1 M: I
    97
    ' o6 |% [8 z6 }& y98
    ; }1 W3 Z2 @: _7 |- P# c5 R1 r5 ]! R99
    # a) ?0 T1 [& @100
    8 n! Q' f( T& K5 K% p) ?- \101
    7 m. n) Q8 u! m  ^102  X7 J5 H7 k! a4 z: m
    103- ]/ d  r, H' v* K
    (高斯核函数)5 C2 D7 \% d8 o* Y
    ' _$ h& T( k( y. i; s8 H
    2 q/ ~5 e7 Y0 h
    (K邻近法)1 o3 \6 _: H) j+ s% [1 o4 g5 Y

    ! @2 d; p0 c5 p# A# C) ~- R* U' {
    % `) A. Y% |  g0 F3 F6 e. a四:谱聚类算法优缺点
    , I. g: U' R/ S! Z: {6 C(1)优点: d/ n- Y  Z% `- @, K. A9 [
    谱聚类只需要数据之间的相似度矩阵,所以对于稀疏数据的聚类很有效
    ( @/ I& _9 [: p. A  S使用了降维,因此处理高纬数据聚类时复杂度要明显低于传统聚类算法
    ( w$ ?% ]) R: _0 B谱聚类算法建立在谱图理论基础上,与传统聚类算法相比,它具有能在任意形状的样本空间上聚类且收敛于全局最优解: e& @8 t6 q9 q1 j. n6 Z
    (2)缺点1 m( p  S) |" y; P$ J/ d
    如果最终聚类的维度非常高,则由于降维的幅度不够,导致算法的运行速度和最后效果都不是很好) m9 O' Y! E$ [; Z
    聚类效果依赖于相似度矩阵,所以不同的相似度矩阵得到的最终聚类效果大不同相同
    : l7 ]- e+ G7 {, [5 c, G, a0 [————————————————
    & G8 Z" d& k- Z* X2 [4 r" e8 f版权声明:本文为CSDN博主「快乐江湖」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    ' N7 Z) Z. }. o* d+ K9 z* l; ~原文链接:https://blog.csdn.net/qq_39183034/article/details/126747494/ ?4 A( ]' E- }# J5 @3 D

    - f: o4 \, ~) i, M/ [9 q0 ~" S- S  c2 i! Q! L
    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-10-8 10:31 , Processed in 0.439740 second(s), 50 queries .

    回顶部