EM算法的应用—— 高斯混合聚类模型 GMM模型


参考书籍:

  • 周志华.机器学习 P206
  • 李航.统计学习方法 P162
  • 范明译.数据挖掘导论P368

李航.统计学习方法中高斯混合模型仅介绍一元高斯分布的情况,周志华.机器学习则采用多元高斯分布的写法,但求解过程不够突出EM算法的思想。此外,李航.统计学习方法中的一些写法会产生误解。因此下面过程主要根据李航.统计学习方法中的推导方法,但会有部分修正。

GMM算法主要利用EM算法来估计高斯混合模型中的参数,然后根据计算得到的
概率进行聚类。
EM算法原理看这里

1、定义

2、目标函数

理论的目标函数:

求解的目标函数:

3、步骤

(1)首先计算高斯混合模型的参数

输入:观测数据D={y1,y2,y3,…,yn} ,高斯混合模型的个数

输出:高斯混合模型参数

一维高斯混合模型公式根据《统计学习方法》,多维高斯混合模型公式根据《机器学习》


4、注意

​如果细心的同学可以看见,迭代更新参数中,一维和多维中方差或协差阵计算所带入的均值有所差异(或者说是两本书的差异)。一维高斯分布参数计算中,方差更新计算带入的是上一步的均值,而多维高斯分布中协差阵带入的是更新后的均值。两者的差异不大,计算方差或协差阵时带入上一步计算的均值或更新后的均值都可以,只要保证收敛即可。一般情况下都是收敛的。

机器学习理论 || GMM模型相关推荐

  1. 机器学习理论《统计学习方法》学习笔记:第六章 逻辑斯谛回归与最大熵模型

    机器学习理论<统计学习方法>学习笔记:第六章 逻辑斯谛回归与最大熵模型 6 逻辑斯谛回归与最大熵模型 6.1 逻辑斯谛回归模型 6.1.1 逻辑斯谛分布 6.1.2 二项逻辑斯蒂回归模型 ...

  2. 机器学习理论与实战(九)回归树和模型树

    前一节的回归是一种全局回归模型,它设定了一个模型,不管是线性还是非线性的模型,然后拟合数据得到参数,现实中会有些数据很复杂,肉眼几乎看不出符合那种模型,因此构建全局的模型就有点不合适.这节介绍的树回归 ...

  3. 【20210610】【机器/深度学习】Python GMM模型学习笔记

    先上代码~ import matplotlib.pyplot as plt import warnings warnings.filterwarnings('ignore') from sklearn ...

  4. 探索机器学习理论的最新进展,走近云、端、芯上的视觉计算——“智源论坛:机器学习报告会”重点梳理...

    1909 年,莱特兄弟通过纯粹的工程方法首次把飞机送上了天,但彼时的他们并不了解其中的原理.如今,经过几十年的发展,飞机的性能较之当年已然不可同日而语.究其原因,主要在于上世纪四五十年代,人们在空气动 ...

  5. 【机器视觉】探索机器学习理论的最新进展,走近云、端、芯上的视觉计算

    来源:产业智能官 1909 年,莱特兄弟通过纯粹的工程方法首次把飞机送上了天,但彼时的他们并不了解其中的原理.如今,经过几十年的发展,飞机的性能较之当年已然不可同日而语.究其原因,主要在于上世纪四五十 ...

  6. 简单自学机器学习理论——正则化和偏置方差的权衡 (Part III )

    本文由北邮@爱可可-爱生活 老师推荐,阿里云云栖社区组织翻译. 以下为译文 机器学习理论-Part3 正则化和偏置方差的权衡 在第一部分探讨了统计模型潜在的机器学习问题,并用它公式化获得最小泛化误差这 ...

  7. 机器学习理论《统计学习方法》学习笔记:第五章 决策树

    机器学习理论<统计学习方法>学习笔记:第五章 决策树 决策树 5.1 决策树模型与学习 5.1.1 决策树模型 5.1.2 决策树与if-then规则 5.1.3 决策树与条件概率分布 5 ...

  8. 机器学习理论《统计学习方法》学习笔记:第四章 朴素贝叶斯法

    机器学习理论<统计学习方法>学习笔记:第四章 朴素贝叶斯法 4 朴素贝叶斯法 4.1 朴素贝叶斯法的学习与分类 4.1.1 基本方法 4.1.2 后验概率最大化的含义 4.2 朴素贝叶斯法 ...

  9. 机器学习理论《统计学习方法》学习笔记:第三章 k近邻法

    机器学习理论<统计学习方法>学习笔记:第三章 k近邻法 3 k近邻法 3.1 K近邻算法 3.2 K近邻模型 3.2.1 模型 3.2.2 距离度量 3.2.3 K值的选择 3.2.4 分 ...

最新文章

  1. python写一个通讯录step by step V3.0
  2. 深度案例 | 3 大领域 7 大场景,消费金融中的行业数据实践(以合众投资集团为例)...
  3. 【学习笔记】JAVA IO与NIO(new IO)的对比与不同IO模型的理解
  4. opengl加载显示3D模型COB类型文件
  5. DevExpress 选择框如何进行模糊查询
  6. 电表的改装与校准大学物理实验报告_电学实验 一 : 电表的改装、使用与读数...
  7. linux抓包命令tcptrace,每天学习一个命令:tcpdump 命令行下抓包
  8. 怎么样用计算机才能让电量增多,高手分享:教你如何让电脑延长2倍使用率
  9. 在django项目中使用django-ckeditor
  10. nacos启动报错 db.num is null【已解决】
  11. java爬取豆瓣电影TOP250排行
  12. 单片机万年历阴阳历c语言,51系列单片机的一种万年历优化算法源程序
  13. Java KeyTool 的使用
  14. 压紧力变化的平均值matlab,基于MATLAB遗传算法的汽车拉式离合器膜片弹簧结构参数优化设计...
  15. python table删除一列_在python中从dataframe中删除多个列
  16. Pytorch入门+实战系列五:Pytorch情感分类
  17. iOS 获取屏幕方向,和强制屏幕旋转
  18. 宝宝纸尿裤怎么选?我联合2000位宝妈,对20款纸尿裤做了次测评
  19. 2017百度之星初赛a
  20. Python每日一练-----整数转罗马数字

热门文章

  1. unity HLSL 面片火焰Shader V0.2
  2. 怎样用Java制作一个选择题
  3. php中的base64,php中base64_decode与base64_encode加密解密函数
  4. pto oracle,Oracle HRMS Payroll fast formula PTO 公式示例
  5. Python安装笔记之注意事项
  6. 华为校招机试 - 工单调度策略(Java JS Python)
  7. 近期要做填报报表,使用Spreadsheet还是Finereport?
  8. 2022年度美国专利授权量50强榜单:29年以来首次,三星超越IBM排名第一 | 美通社头条...
  9. 商标遭抢注 法国利佳薄荷水发声维护百年声誉
  10. JavaScript +canvas简易画板的实现