【机器学习算法】9、EM算法与K-Means算法的收敛性证明

简介: 【机器学习算法】9、EM算法与K-Means算法的收敛性证明

简介


EM算法期望最大化算法,是一种迭代法,它同时估计出每个样本所属的簇类别以及每个簇的概率分布的参数。如果要聚类的样本数据服从它所属的簇的概率分布,则可以通过估计每个簇的概率分布以及每个样本所属的簇来完成聚类。估计每个簇概率分布的参数需要知道样本属于这个簇,而确定每个样本属于哪个簇又需要知道每个簇的概率分布的参数,这个存在循环依赖。EM算法在每次迭代时交替地解决上面的两个问题,直至收敛到局部最优解。


EM算法的原理简述


   首先,EM算法解决的是在概率模型中含有无法观测的隐含变量情况下的参数估计问题。假设有m个观察样本,模型的参数为θ,最大化对数似然函数可以写成如下形式:

   当概率模型中含有无法被观测的隐含变量时,参数的最大似然估计变为


   由于z(i)是未知的,无法直接通过最大似然估计求解参数,这时就需要利用EM算法来求解。假设z(i)对应的分布为Q(z(i)), 并满足ΣQ(z(i))。利用Jensen不等式,可以得到:

要使上式中的等号成立,需要满足:

   不等式右侧函数记为r(x|θ)。当等式成立时,我们相当于为待优化的函数找到了一个逼近的下界,然后通过最大化这个下界可以使得待优化函数向更好的方向改进。


   图1是一个θ为一维的例子,其中棕色的曲线代表我们待优化的函数,记为f(θ),优化过程即为找到使得f(θ)取值最大的θ。在当前θ的取值下(即图中绿色的位置),可以计算,此时不等式右侧的函数(记为r(x|θ))给出了优化函数的一个下界,如图中蓝色曲线所示,其中在θ处两条曲线的取值时相等的。接下来找到使得r(x|θ)最大化的参数θ′,即图中红色的位置,此时f(θ′)的取值比f(θ)(绿色的位置处)有所提升。可以证明,f(θ′)≥r(x|θ)=f(θ),因此函数是单调的,而且P(x(i),z(i)|θ)∈(0,1)从而函数是有界的。根据函数单调有界必收敛的性质,EM算法的收敛性得证。但是EM算法只保证收敛到局部最优解。当函数为非凸时,以图1为例,如果初始化在左边的区域时,则无法找到右侧的高点。

fb75187050cfe1df908b35f960df4b1e.jpg

   由上面的推导,EM算法框架可以总结如下,由以下两个步骤交替进行直到收敛。

E步骤:计算隐变量的期望

0b4fe1f60775518761df0d76ace88140.png

M步骤:最大化

90cbb364140e86a8a708374bf4e533a1.png


下图为流程示意图


K均值算法收敛的证明


   首先,需要知道的是K均值聚类的迭代算法实际上是一种最大期望算法(Expectation-Maximization algorithm,EM算法),剩下的事情就是说明K均值算法与EM算法的关系了。K均值算法等价于用EM算法求解以下含隐变量的最大似然问题:

其中z∈{1,2,...,k}是模型的隐变量。直观地理解,就是当样本x离第k个簇的中心点μk距离最近时,概率正比于exp(-||x-μz||2),否则为0。


(1).在E步骤,计算:

   这等同于在K均值算法中对于每一个点x(i)找到当前最近的簇z(i)。


(2).在M步骤,找到最优的参数θ={μ1,μ2,...,μk},使得似然函数最大:

   因此,这一步骤等同于找到最优的中心点{μ1,μ2,...,μk},使得损失函数:

达到最小,此时每个样本x(i)对应的簇z(i)已确定,因此每个簇k对应的最优中心点μk可以由该簇中所有点的平均计算得到,这与K均值算法中根据当前簇的分配更新聚类中心的步骤是等同的。

相关文章
|
3月前
|
算法 数据可视化 数据挖掘
基于EM期望最大化算法的GMM参数估计与三维数据分类系统python源码
本内容展示了基于EM算法的高斯混合模型(GMM)聚类实现,包含完整Python代码、运行效果图及理论解析。程序使用三维数据进行演示,涵盖误差计算、模型参数更新、结果可视化等关键步骤,并附有详细注释与操作视频,适合学习EM算法与GMM模型的原理及应用。
|
5月前
|
机器学习/深度学习 数据采集 人工智能
20分钟掌握机器学习算法指南
在短短20分钟内,从零开始理解主流机器学习算法的工作原理,掌握算法选择策略,并建立对神经网络的直观认识。本文用通俗易懂的语言和生动的比喻,帮助你告别算法选择的困惑,轻松踏入AI的大门。
|
6月前
|
机器学习/深度学习 存储 Kubernetes
【重磅发布】AllData数据中台核心功能:机器学习算法平台
杭州奥零数据科技有限公司成立于2023年,专注于数据中台业务,维护开源项目AllData并提供商业版解决方案。AllData提供数据集成、存储、开发、治理及BI展示等一站式服务,支持AI大模型应用,助力企业高效利用数据价值。
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
AI训练师入行指南(三):机器学习算法和模型架构选择
从淘金到雕琢,将原始数据炼成智能珠宝!本文带您走进数字珠宝工坊,用算法工具打磨数据金砂。从基础的经典算法到精密的深度学习模型,结合电商、医疗、金融等场景实战,手把手教您选择合适工具,打造价值连城的智能应用。掌握AutoML改装套件与模型蒸馏术,让复杂问题迎刃而解。握紧算法刻刀,为数字世界雕刻文明!
223 6
|
8月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于机器学习的人脸识别算法matlab仿真,对比GRNN,PNN,DNN以及BP四种网络
本项目展示了人脸识别算法的运行效果(无水印),基于MATLAB2022A开发。核心程序包含详细中文注释及操作视频。理论部分介绍了广义回归神经网络(GRNN)、概率神经网络(PNN)、深度神经网络(DNN)和反向传播(BP)神经网络在人脸识别中的应用,涵盖各算法的结构特点与性能比较。
|
8月前
|
监控 算法 安全
内网桌面监控软件深度解析:基于 Python 实现的 K-Means 算法研究
内网桌面监控软件通过实时监测员工操作,保障企业信息安全并提升效率。本文深入探讨K-Means聚类算法在该软件中的应用,解析其原理与实现。K-Means通过迭代更新簇中心,将数据划分为K个簇类,适用于行为分析、异常检测、资源优化及安全威胁识别等场景。文中提供了Python代码示例,展示如何实现K-Means算法,并模拟内网监控数据进行聚类分析。
162 10
|
9月前
|
机器学习/深度学习 算法 网络安全
CCS 2024:如何严格衡量机器学习算法的隐私泄露? ETH有了新发现
在2024年CCS会议上,苏黎世联邦理工学院的研究人员提出,当前对机器学习隐私保护措施的评估可能存在严重误导。研究通过LiRA攻击评估了五种经验性隐私保护措施(HAMP、RelaxLoss、SELENA、DFKD和SSL),发现现有方法忽视最脆弱数据点、使用较弱攻击且未与实际差分隐私基线比较。结果表明这些措施在更强攻击下表现不佳,而强大的差分隐私基线则提供了更好的隐私-效用权衡。
213 14
|
8月前
|
人工智能 编解码 算法
使用 PAI-DSW x Free Prompt Editing图像编辑算法,开发个人AIGC绘图小助理
使用 PAI-DSW x Free Prompt Editing图像编辑算法,开发个人AIGC绘图小助理
136 0
|
8月前
|
机器学习/深度学习 人工智能 自然语言处理
解锁机器学习的新维度:元学习的算法与应用探秘
元学习作为一个重要的研究领域,正逐渐在多个应用领域展现其潜力。通过理解和应用元学习的基本算法,研究者可以更好地解决在样本不足或任务快速变化的情况下的学习问题。随着研究的深入,元学习有望在人工智能的未来发展中发挥更大的作用。
|
8天前
|
传感器 机器学习/深度学习 算法
【使用 DSP 滤波器加速速度和位移】使用信号处理算法过滤加速度数据并将其转换为速度和位移研究(Matlab代码实现)
【使用 DSP 滤波器加速速度和位移】使用信号处理算法过滤加速度数据并将其转换为速度和位移研究(Matlab代码实现)

热门文章

最新文章