谱聚类算法

第一章 简介

        谱聚类是一种基于图论和线性代数的聚类方法,它利用数据的相似性构造图结构,并通过谱分解(特征值分解)来进行聚类。相较于传统的 K-Means 方法,谱聚类能够更好地处理非凸形状的簇,尤其适用于高维、非线性可分的数据。
        谱聚类的发展经历了多个关键阶段,从早期的图划分问题到现代机器学习中的应用,主要包括以下几个方面:
1)图划分理论的起源
        谱聚类的思想起源于图割问题,研究如何将图划分为若干个连通性较强的子图。早期方法包括 最小割、均衡割和归一化割等。
2)线性代数方法的引入
        研究者发现,基于拉普拉斯矩阵的特征值分解可以有效解决图划分问题。Shi & Malik提出了基于归一化切割的谱聚类方法。Ng, Jordan & Weiss提出了基于无向图拉普拉斯矩阵的谱聚类方法,使谱聚类在机器学习领域成为主流算法之一。

第二章 图的概述

2.1 图的基本定义

在数学上,图是由顶点以及连接顶点的边构成,顶点表示研究对象,边表示两个对象之间的特定关系。图可以表示顶点和边的集合,记为 G = ( V , E ) G=(V, E) G=(V,E),其中 V V V 表示顶点的集合, E E E 表示边集合。假设图 G G G 的顶点个数为 n,边数为 m。一条连接顶点 v i , v j ∈ V v_i,v_j \in V vivjV 的边,记为 e i j e_{ij} eij。如图 2-1 所示, V = { v 1 , v 2 , v 3 , v 4 } V=\{v_1,v_2,v_3,v_4\} V={v1v2v3v4} E = { e 12 , e 23 , e 13 , e 24 } E=\{e_{12},e_{23},e_{13},e_{24}\} E={e12e23e13e24}

示例图片
图 2-1 无向图

2.1.1 图的类型

2.1.1.1 有向图和无向图

如果图中的边存在方向,则称边为有向边,记为 e i j = < v i , v j > e_{ij} = <v_i,v_j> eij=<vivj>,其中 v i v_i vi 是这条有向边的起点, v j v_j vj是这条有向边的终点,包含有向边的图称为有向图,如下图所示。与有向图对应的是无向图,无向图中的边都是无向边,即 e i j = e j i e_{ij} =e_{ji} eij=eji


图 2-2 无向图

图 2-3 有向图
2.1.1.2 非加权图和加权图

若图中的每条边都有一个实数与之对应,我们称这样的图为加权图,如图 2-4所示,该实数称为对应边上的权重。在工程应用中,权重可以表示两地之间的距离或运输成本。一般情况下,我们习惯把权重看作两个顶点之间的连接强度。与之相反,非加权图上权重是一样的。

示例图片
图 2-4 加权图
2.1.1.3 连通图与非连通图

若图中存在孤立的顶点,没有任何边与之相连,这样的图称为非连通图,反之称为连通图,如图2-5所示。

示例图片
图 2-5 非连通图
2.1.1.4 二部图

二部图是一类特殊的图。我们将图 G G G 中的顶点集合 V V V 划分为两个子集 A A A B B B,如果对图中的任意一条边 e i j e_{ij} eij均有 v i ∈ A , v j ∈ B v_i \in A, v_j \in B viA,vjB 或者 v j ∈ A , v i ∈ B v_j \in A, v_i \in B vjA,viB,则称图 G G G为二部图,如图2-6所示。

示例图片
图 2-6 二部图

2.1.2 邻居和度

        如果存在一条边连接顶点 v i v_i vi v j v_j vj ,则称 v j v_j vj v i v_i vi 的邻居,反之亦然。我们记 v i v_i vi 的所有邻居为集合 N ( v i ) N(v_i) N(vi),即 N ( v i ) = { v j ∣ ∃ e i j ∈ E 或 e j i ∈ E } N(v_i) = \{v_j| \exists e_{ij} \in E 或 e_{ji} \in E\} N(vi)={vj∣∃eijEejiE} v i v_i vi为端点的边的数目称为 v i v_i vi 的度,记为 deg ⁡ ( v i ) \deg(v_i) deg(vi),即 deg ⁡ ( v i ) = ∣ N ( v i ) ∣ \deg(v_i) = |N(v_i)| deg(vi)=N(vi)
        在图中,所有节点的度之和与边数存在如下关系: ∑ v i deg ⁡ ( v i ) = 2 ∣ E ∣ \sum_{v_i}\deg(v_i) = 2|E| videg(vi)=2∣E
在有向图中,我们同时定义出度和入度顶点的度数等于该顶点出度和入度之和。其中,顶点 v i v_i vi 的出度是以 v i v_i vi 为起点的有向边的数目,顶点 v i v_i vi 的入度是以 v i v_i vi 为终点的有向边数目。

2.2 图的表示方法

        在图论中,邻接矩阵(Adjacency Matrix)和关联矩阵(Incidence Matrix)是两种常见的表示图结构的方法。它们分别用于描述顶点之间的连接关系和顶点与边之间的关系。
邻接矩阵与关联矩阵

2.2.1 邻接矩阵

邻接矩阵用于表示图中顶点之间的连接关系,适用于有向图和无向图。假设图 G = ( V , E ) G=(V,E) G=(VE)是一个具有 n 个顶点的图,则邻接矩阵 A 是一个 n × \times × n 的矩阵,其中,无向图与有向图的邻接矩阵为:
A i j = { 1 ,    如果顶点 v i 和 v j 之间存在边 0 ,    否则 A_{ij} = \begin{cases} 1,\,\, 如果顶点 v_i 和 v_j 之间存在边\\ 0,\,\, 否则 \\ \end{cases} Aij={1如果顶点vivj之间存在边0否则
注意由于无向图的边没有方向性,因此邻接矩阵是对称矩阵,有向图的邻接矩阵一般不是对称矩阵。
        加权图的邻接矩阵为:
A i j = { w i j ,    如果顶点 v i 和 v j 之间存在边 0 ,    否则 A_{ij} = \begin{cases} w_{ij},\,\, 如果顶点 v_i 和 v_j 之间存在边\\ 0,\,\, 否则 \\ \end{cases} Aij={wij如果顶点vivj之间存在边0否则
式中, A i j A_{ij} Aij 表示 v i v_i vi v j v_j vj 边的权重。

2.2.1 关联矩阵

关联矩阵用于描述顶点与边之间的关系,适用于有向图和无向图。假设图 G = ( V , E ) G=(V,E) G=(VE)是一个具有 n 个顶点和 m 条边的图,则关联矩阵 B 是一个 n × \times × m 的矩阵,其中,无向图的关联矩阵为:

B i j = { 1 ,    如果顶点 v i 是边 e j 的一个端点 0 ,    否则 B_{ij} = \begin{cases} 1,\,\, 如果顶点 v_i 是边 e_j 的一个端点\\ 0,\,\, 否则 \\ \end{cases} Bij={1如果顶点vi是边ej的一个端点0否则
        有向图的关联矩阵为:
B i j = { 1 ,    如果顶点 v i 是边 e j 的起点 − 1 ,    如果顶点 v i 是边 e j 的终点 0 ,    否则 B_{ij} = \begin{cases} 1,\,\, 如果顶点 v_i 是边 e_j 的起点\\ -1,\,\, 如果顶点 v_i 是边 e_j 的终点\\ 0,\,\, 否则 \\ \end{cases} Bij= 1如果顶点vi是边ej的起点1如果顶点vi是边ej的终点0否则
         设无向图 G = ( V , E ) G = (V,E) G=(VE),其中边集编号为 e 1 , e 2 , ⋯ , e 6 e_1,e_2,\cdots ,e_6 e1e2e6,对应的图结构、邻接矩阵和关联矩阵如下所示。


图 2-7 无向图

图 2-8 邻接矩阵

图 2-9 关联矩阵

第三章 偏微分方程数值解法

3.1 微分算子

图 3-1 微分几何解释

        微分算子几何解释如图 3-1 所示。当自变量由 x 0 x_0 x0 增加到 x 0 + Δ x x_0 + \Delta x x0+Δx 时,函数增量 Δ y = f ( x 0 + Δ x ) − f ( x 0 ) = R Q \Delta y = f(x_0 + \Delta x) - f(x_0) = RQ Δy=f(x0+Δx)f(x0)=RQ,而微分则是在点 P P P 处切线上与 Δ x \Delta x Δx 所对应的增量:
d y = f ′ ( x 0 ) Δ x = R Q ′ dy = f^{'}(x_0)\Delta x = RQ^{'} dy=f(x0)Δx=RQ
并且
lim ⁡ x → x 0 Δ y − d y Δ x = lim ⁡ x → x 0 Q ′ Q P R = f ′ ( x 0 ) lim ⁡ x → x 0 Q ′ Q Q ′ R \lim_{x \to x_0}\frac{\Delta y - dy}{\Delta x} = \lim_{x \to x_0}\frac{Q^{'}Q}{PR}=f^{'}(x_0)\lim_{x \to x_0}\frac{Q^{'}Q}{Q^{'}R} xx0limΔxΔydy=xx0limPRQQ=f(x0)xx0limQRQQ
其中,
lim ⁡ x → x 0 Q ′ Q Q ′ R = lim ⁡ x → x 0 Q R − Q ′ R Q ′ R = lim ⁡ x → x 0 Δ x tan ⁡ α − Δ x tan ⁡ β Δ x tan ⁡ β = lim ⁡ x → x 0 tan ⁡ α − tan ⁡ β tan ⁡ β = lim ⁡ x → x 0 tan ⁡ α tan ⁡ β − 1 = 0 \lim_{x \to x_0}\frac{Q^{'}Q}{Q^{'}R} =\lim_{x \to x_0} \frac{QR - Q^{'}R}{Q^{'}R}=\lim_{x \to x_0}\frac{\Delta x\tan \alpha - \Delta x \tan \beta}{\Delta x \tan \beta} = \lim_{x \to x_0}\frac{\tan \alpha - \tan \beta}{\tan \beta} = \lim_{x \to x_0}\frac{\tan \alpha }{\tan \beta} - 1=0 xx0limQRQQ=xx0limQRQRQR=xx0limΔxtanβΔxtanαΔxtanβ=xx0limtanβtanαtanβ=xx0limtanβtanα1=0
        若函数 y = f ( x ) y=f(x) y=f(x) 在区间上每一点都可微,则称 f f f 为该区间上的可微函数。函数 f ( x ) f(x) f(x) 在区间上任一点 x x x 处的微分记为:
d y = f ′ ( x ) Δ x dy = f^{'}(x)\Delta x dy=f(x)Δx

3.1 Taylor公式

        多项式函数是各类函数中最简单的一种,用多项式逼近函数是近似计算和理论分析的一个重要内容。
        我们在学习导数和微分概念时已经知道,如果函数 f f f 在点 x 0 x_0 x0 可导,则有
f ( x ) = f ( x 0 ) + f ′ ( x − x 0 ) + o ( x − x 0 ) f(x) = f(x_0) + f^{'}(x - x_0) + o(x - x_0) f(x)=f(x0)+f(xx0)+o(xx0)

3.2 导数的差分近似

        有限差分法求解微分方程的基本思想是用离散的、只含有限个未知量的差分方程去近似代替连续变量的微分方程和定解条件,并把相应的差分方程的解作为微分方程的定解问题的近似解。本节以常微分方程为例讨论导数的有限差分近似。
        对于函数 y = f ( x ) y=f(x) y=f(x) ,利用 Taylor 展开有
f ( x + h ) = f ( x ) + h f ′ ( x ) + h 2 2 ! f ′ ′ ( x ) + h 3 3 ! f ′ ′ ′ ( x ) + ⋯ (2-1) f(x + h) = f(x) + hf^{'}(x) + \frac{h^2}{2!}f^{''}(x) + \frac{h^3}{3!}f^{'''}(x) + \cdots \tag{2-1} f(x+h)=f(x)+hf(x)+2!h2f′′(x)+3!h3f′′′(x)+(2-1)
f ( x − h ) = f ( x ) − h f ′ ( x ) + h 2 2 ! f ′ ′ ( x ) − h 3 3 ! f ′ ′ ′ ( x ) + ⋯ (2-2) f(x - h) = f(x) - hf^{'}(x) + \frac{h^2}{2!}f^{''}(x) - \frac{h^3}{3!}f^{'''}(x) + \cdots \tag{2-2} f(xh)=f(x)hf(x)+2!h2f′′(x)3!h3f′′′(x)+(2-2)
通过上式,可得
f ′ ( x ) = f ( x + h ) − f ( x ) h − h 2 ! f ′ ′ ( x ) − h 2 3 ! f ′ ′ ′ ( x ) + ⋯ f ′ ( x ) = f ( x ) − f ( x − h ) h + h 2 ! f ′ ′ ( x ) − h 2 3 ! f ′ ′ ′ ( x ) + ⋯ f^{'}(x) = \frac{f(x + h) - f(x)}{h} - \frac{h}{2!}f^{''}(x) - \frac{h^2}{3!}f^{'''}(x) + \cdots \\ f^{'}(x) = \frac{f(x) - f(x - h)}{h} + \frac{h}{2!}f^{''}(x) - \frac{h^2}{3!}f^{'''}(x) + \cdots f(x)=hf(x+h)f(x)2!hf′′(x)3!h2f′′′(x)+f(x)=hf(x)f(xh)+2!hf′′(x)3!h2f′′′(x)+
于是得到一阶导数的近似表达式
f ′ ( x ) = f ( x + h ) − f ( x ) h + O ( h ) (2-3) f^{'}(x) = \frac{f(x + h) - f(x)}{h} + O(h) \tag{2-3} f(x)=hf(x+h)f(x)+O(h)(2-3)
f ′ ( x ) = f ( x ) − f ( x − h ) h + O ( h ) (2-4) f^{'}(x) = \frac{f(x) - f(x - h)}{h} + O(h) \tag{2-4} f(x)=hf(x)f(xh)+O(h)(2-4)
其中, O ( h ) O(h) O(h) 为截断误差项,可分别表示为
O ( h ) = − h 2 f ′ ′ ( ξ ) ( x < ξ < x + h ) 和 O ( h ) = h 2 f ′ ′ ( ξ ) ( x − h < ξ < x ) O(h) = -\frac{h}{2} f^{''}(\xi) (x < \xi < x + h) 和 O(h) = \frac{h}{2} f^{''}(\xi) (x - h < \xi < x) O(h)=2hf′′(ξ)(x<ξ<x+h)O(h)=2hf′′(ξ)(xh<ξ<x)
式(2-3)和式(2-4)分别称为 f ′ ( x ) f^{'}(x) f(x) 的向前差分公式和向后差分公式,它们都具备一阶精度。为了获取具有更高精度的近似表达式,将式(2-1)和式(2-2)相减可得
f ( x + h ) − f ( x − h ) = 2 h f ′ ( x ) + 2 h 3 3 ! f ′ ′ ′ ( x ) + ⋯ f(x + h) - f(x - h) = 2hf^{'}(x) + \frac{2h^3}{3!}f^{'''}(x) + \cdots f(x+h)f(xh)=2hf(x)+3!2h3f′′′(x)+
于是,有
f ′ ( x ) = f ( x + h ) − f ( x − h ) 2 h + O ( h 2 ) (2-5) f^{'}(x) = \frac{f(x + h) - f(x - h)}{2h} + O(h^2) \tag{2-5} f(x)=2hf(x+h)f(xh)+O(h2)(2-5)
其中, O ( h 2 ) O(h^2) O(h2) 为截断误差项,可表示为
O ( h ) = − h 2 6 f ′ ′ ′ ( ξ ) ( x − h < ξ < x + h ) O(h) = -\frac{h^2}{6} f^{'''}(\xi) (x - h < \xi < x + h) O(h)=6h2f′′′(ξ)(xh<ξ<x+h)
式(2-5)称为 f ′ ( x ) f^{'}(x) f(x) 的中心差分公式,它具备二阶精度。 f ′ ( x ) f^{'}(x) f(x) 的差分近似表达式的几何意义如下图所示。
在这里插入图片描述
        若将式(2.1)和式(2.2)相加,得
f ( x + h ) + f ( x − h ) = 2 f ( x ) + h 2 f ′ ′ ( x ) + h 4 12 f ( 4 ) ( x ) + ⋯ f(x + h) + f(x - h) = 2f(x) + h^2f^{''}(x) + \frac{h^4}{12}f^{(4)}(x) + \cdots f(x+h)+f(xh)=2f(x)+h2f′′(x)+12h4f(4)(x)+
于是,有
f ′ ′ ( x ) = f ( x + h ) − 2 f ( x ) + f ( x − h ) h 2 + O ( h 2 ) f^{''}(x) = \frac{f(x + h) -2 f(x) + f(x - h)}{h^2} + O(h^2) f′′(x)=h2f(x+h)2f(x)+f(xh)+O(h2)
其中, O ( h 2 ) O(h^2) O(h2) 为截断误差项,可表示为
O ( h 2 ) = − h 2 12 f ( 4 ) ( ξ ) ( x − h < ξ < x + h ) O(h^2) = -\frac{h^2}{12}f^{(4)}(\xi)(x - h < \xi < x + h) O(h2)=12h2f(4)(ξ)(xh<ξ<x+h)

3.3 偏微分方程有限差分原理

        考虑区域 Ω \Omega Ω 上的二维问题 L [ u ( x , y ) ] = f ( x , y ) L[u(x,y)] = f(x, y) L[u(xy)]=f(x,y),使其在 Ω \Omega Ω 的边界 Γ \Gamma Γ 上满足给定的边界条件,如下图所示,其中 L L L 是微分算子, u = u ( x , y ) u=u(x,y) u=u(xy) 是未知函数。采用有限差分方法求解这个边界问题。
在这里插入图片描述
        与常微分方程的处理方法一样,其基本思想是将偏微分方程离散化,即用差商代替偏导数,把偏微分方程边值问题转换为代数方程问题,然后求解所得的代数方程组。
        在 x O y xOy xOy 平面上作两组平行线,使得
x = x i = i l , y = y j = j h ( i , j = 0 , ± 1 , ± 2 , ⋯   ) x = x_i = il,y = y_j = jh (i,j = 0,\pm1,\pm2,\cdots) x=xi=ily=yj=jh(ij=0±1±2)
这样就得到矩形网络。其中, l > 0 l > 0 l>0 h > 0 h > 0 h>0 称为步长;网格线的交点称为结点,记为(i,j)。我们只关心属于 Ω = D + T \Omega = D + T Ω=D+T 的结点,若两个结点沿着坐标轴方向只相差一个步长,则称这两个结点为相邻结点。若一个属于 Ω \Omega Ω 结点,其它4个相邻结点都属于 Ω \Omega Ω ,则称此结点为内点,若4个相邻结点中至少有一个不属于 Ω \Omega Ω ,则称此结点为边界点。
        在上述构造的网格基础上,需要偏微分方程离散化,将偏导数以有限差商的形式表示。对变量 x x x 的偏导数如下:
∂ u ( x , y ) ∂ x = u ( x + Δ x , y ) − u ( x , y ) Δ x + O ( Δ x ) ∂ u ( x , y ) ∂ x = u ( x , y ) − u ( x − Δ x , y ) Δ x + O ( Δ x ) ∂ 2 u ( x , y ) ∂ x 2 = u ( x + Δ x , y ) − 2 u ( x , y ) + u ( x − Δ x , y ) Δ x 2 + O ( Δ x 2 ) \frac{\partial{u(x,y)}}{\partial{x}} = \frac{u(x + \Delta x,y) - u(x,y)}{\Delta x} + O(\Delta x) \\ \frac{\partial{u(x,y)}}{\partial{x}} = \frac{u(x,y) - u(x - \Delta x,y)}{\Delta x} + O( \Delta x) \\ \frac{\partial^2{u(x,y)}}{\partial{x^2}} = \frac{u(x + \Delta x,y) -2u(x,y) +u(x - \Delta x,y)}{\Delta x^2} + O(\Delta x^2) xu(xy)=Δxu(x+Δxy)u(xy)+O(Δx)xu(xy)=Δxu(xy)u(xΔxy)+O(Δx)x22u(xy)=Δx2u(x+Δxy)2u(xy)+u(xΔxy)+O(Δx2)
以及对变量 y y y 的偏导数
∂ u ( x , y ) ∂ y = u ( x , y + Δ y ) − u ( x , y ) Δ y + O ( Δ y ) ∂ u ( x , y ) ∂ y = u ( x , y ) − u ( x , y − Δ y ) Δ y + O ( Δ y ) ∂ 2 u ( x , y ) ∂ y 2 = u ( x , y + Δ y ) − 2 u ( x , y ) + u ( x , y − Δ y ) Δ y 2 + O ( Δ y 2 ) \frac{\partial{u(x,y)}}{\partial{y}} = \frac{u(x,y + \Delta y) - u(x,y)}{\Delta y} + O(\Delta y) \\ \frac{\partial{u(x,y)}}{\partial{y}} = \frac{u(x,y) - u(x,y - \Delta y)}{\Delta y} + O( \Delta y) \\ \frac{\partial^2{u(x,y)}}{\partial{y^2}} = \frac{u(x,y + \Delta y) -2u(x,y) +u(x,y - \Delta y)}{\Delta y^2} + O(\Delta y^2) yu(xy)=Δyu(xy+Δy)u(xy)+O(Δy)yu(xy)=Δyu(xy)u(xyΔy)+O(Δy)y22u(xy)=Δy2u(xy+Δy)2u(xy)+u(xyΔy)+O(Δy2)
        将空间点 ( i , j ) (i, j) (i,j) 的变量记为 u i , j u_{i,j} ui,j ,将空间点 ( i + 1 , j ) (i+1, j) (i+1,j) 的变量记为 u i + 1 , j u_{i+1, j} ui+1,j 等等,则可在 x x x 方向上对点 ( i , j ) (i,j) (ij) 的邻域进行Taylor展开,得到
( ∂ u ∂ x ) i , j = u i + 1 , j − u i , j l + O ( l ) ( ∂ u ∂ x ) i , j = u i , j − u i − 1 , j l + O ( l ) ( ∂ u ∂ x ) i , j = u i + 1 , j − u i − 1 , j 2 l + O ( l 2 ) ( ∂ 2 u ∂ x 2 ) i , j = u i + 1 , j − 2 u i , j + u i − 1 , j l 2 + O ( l 2 ) (\frac{\partial{u}}{\partial{x}})_{i,j} = \frac{u_{i+1,j} - u_{i,j} }{l} + O(l) \\ (\frac{\partial{u}}{\partial{x}})_{i,j} = \frac{u_{i,j} - u_{i-1,j} }{l} + O(l) \\ (\frac{\partial{u}}{\partial{x}})_{i,j} = \frac{u_{i+1,j} - u_{i-1,j} }{2l} + O(l^2) \\ (\frac{\partial^2{u}}{\partial{x^2}})_{i,j} = \frac{u_{i+1,j} - 2u_{i,j} + u_{i-1,j} }{l^2} + O(l^2) (xu)i,j=lui+1juij+O(l)(xu)i,j=luijui1j+O(l)(xu)i,j=2lui+1jui1j+O(l2)(x22u)i,j=l2ui+1j2uij+ui1j+O(l2)
同理可得微商 ∂ u ∂ y \frac{\partial{u}}{\partial{y}} yu ∂ 2 u ∂ y 2 \frac{\partial^2{u}}{\partial{y^2}} y22u

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值