【机器学习系列】EM算法第三讲:由Jensen Inequality推导EM算法
作者:CHEONG
公众号:AI机器学习与知识图谱
研究方向:自然语言处理与知识图谱
阅读本文之前,首先注意以下两点:
1、机器学习系列文章常含有大量公式推导证明,为了更好理解,文章在最开始会给出本文的重要结论,方便最快速度理解本文核心。需要进一步了解推导细节可继续往后看。
2、文中含有大量公式,若读者需要获取含公式原稿Word文档,可关注公众号后回复:EM算法第三讲,本文主要介绍如何通过Jensen Inequality推导出EM算法的优化公式。
一、EM算法解决的问题
通俗些说,EM算法就是求含有隐变量zzz的概率模型p(x,z∣θ)p(x,z|\theta)p(x,z∣θ)中的参数θ\thetaθ。对于求参数问题我们很容易想到最大似然估计法MLE,但MLE是针对比较简单的概率模型p(x∣θ)p(x|\theta)p(x∣θ)可直接使用MLE求出参数的解析解,MLE参数最大化公式所示:
对于含有隐变量的概率模型p(x,z∣θ)p(x,z|\theta)p(x,z∣θ),隐变量zzz的概率分布是未知的,无法使用MLE求出解析解,因此使用EM算法来求解参数的近似解。对于概率密度p(x,z∣θ)p(x,z|\theta)p(x,z∣θ)参数求解公式如下:
二、由Jensen Inequality推导EM算法
Jesen不等式: 先简单介绍一下Jesen不等式,Jesen不等式和凸函数、凹函数的定义是相关的,下面直接给出结论:
首先看凸函数Convex Function,凸函数上任意两点的割线位于函数的上方,对应公式为:
Jesen不等式就是等上式的推广和泛化:
在概率论中,如果把λi\lambda_iλi看成为离散变量xix_ixi的概率分布,则上式可写成,其中E是均值:
而如果λi\lambda_iλi看成为连续变量xix_ixi的概率分布,则公式可表达成:
接下来再看凹函数,凹函数上任意两点的割线位于函数的下方,所以只需要将上面的性质的符号反转便是凹函数中具有的性质,直接给出Jesen不等式在凹函数中的体现:
在了解了Jesen不等式之后,接下来进行EM算法的推导:
因为log是凹函数,结合Jesen不等式性质有:
假设:
将上式两边同时对ZZZ求积分
所以求得:
至此我们求出了分布q(Z)q(Z)q(Z),就是后验概率p(Z∣X,θ)p(Z|X,\theta)p(Z∣X,θ),所以有:
所以对于参数θ\thetaθ
其中q(Z)q(Z)q(Z)为后验分布p(Z∣X,θ)p(Z|X,\theta)p(Z∣X,θ),至此借助Jesen不等式推导出了EM算法的优化公式。
三、往期精彩
【知识图谱系列】Over-Smoothing 2020综述
【知识图谱系列】基于生成式的知识图谱预训练模型
【知识图谱系列】基于2D卷积的知识图谱嵌入
【知识图谱系列】基于实数或复数空间的知识图谱嵌入
【知识图谱系列】自适应深度和广度图神经网络模型
【知识图谱系列】知识图谱多跳推理之强化学习
【知识图谱系列】知识图谱的神经符号逻辑推理
【知识图谱系列】动态时序知识图谱EvolveGCN
【知识图谱系列】多关系神经网络CompGCN
【知识图谱系列】探索DeepGNN中Over-Smoothing问题
【知识图谱系列】知识图谱表示学习综述 | 近30篇优秀论文串讲
【知识图谱系列】动态知识图谱表示学习综述 | 十篇优秀论文导读
【面经系列】八位硕博大佬的字节之旅
【机器学习系列】机器学习中的两大学派
各大AI研究院共35场NLP算法岗面经奉上
干货 | Attention注意力机制超全综述
干货 | NLP中的十个预训练模型
干货|一文弄懂机器学习中偏差和方差
FastText原理和文本分类实战,看这一篇就够了
Transformer模型细节理解及Tensorflow实现
GPT,GPT2,Bert,Transformer-XL,XLNet论文阅读速递
机器学习算法篇:最大似然估计证明最小二乘法合理性
Word2vec, Fasttext, Glove, Elmo, Bert, Flair训练词向量教程+数据+源码
原稿获取请关注公众号后回复:EM算法第三讲,原创不易,有用就点个赞呀!
【机器学习系列】EM算法第三讲:由Jensen Inequality推导EM算法相关推荐
- 机器学习系列之EM算法
机器学习系列之EM算法 我讲EM算法的大概流程主要三部分:需要的预备知识.EM算法详解和对EM算法的改进. 一.EM算法的预备知识 1.极大似然估计 (1)举例说明:经典问题--学生身高问题 我们需要 ...
- 《机器学习系列-强填EM算法在理论与工程之间的鸿沟(上)》
小夕曾经问一位做机器学习理论的学姐:"学姐学姐,EM算法是什么呢?" 学姐回答:"EM算法啊,就是解决包含隐变量的参数估计问题." 小夕: 然后小夕去问一位做工 ...
- 机器学习系列-强填EM算法在理论与工程之间的鸿沟(下)
前言 在上一篇文章<机器学习系列-强填EM算法在理论与工程之间的鸿沟(上)>中,小夕用优(恐)雅(怖)的数学理论来向读者解释了EM算法的工作原理.那么从工程角度出发的EM算法又是怎样的呢? ...
- 机器学习系列(4)_机器学习算法一览,应用建议与解决思路
作者:寒小阳 时间:2016年1月. 出处:http://blog.csdn.net/han_xiaoyang/article/details/50469334 声明:版权所有,转载请联系作者并注明出 ...
- k近邻法matlab_机器学习系列(一)K近邻算法(KNN,KNearestNeigh
本文源自微信公众号[Python编程和深度学习]原文链接:机器学习系列(一)K-近邻算法(KNN,K-Nearest-Neighbor),欢迎扫码关注鸭! 目录 一.算法概述 二.Python代码 三 ...
- 机器学习系列------1. GBDT算法的原理
GBDT算法是一种监督学习算法.监督学习算法需要解决如下两个问题: 1.损失函数尽可能的小,这样使得目标函数能够尽可能的符合样本 2.正则化函数对训练结果进行惩罚,避免过拟合,这样在预测的时候才能够准 ...
- 【机器学习系列】概率图模型第三讲:深入浅出无向图中的条件独立性和因子分解
作者:CHEONG 公众号:AI机器学习与知识图谱 研究方向:自然语言处理与知识图谱 阅读本文之前,先注意一下两点: 1. 机器学习系列文章常含有大量公式推导证明,为了更好理解,文章在最开始会给出本文 ...
- PCA主成分分析算法专题【Python机器学习系列(十五)】
PCA主成分分析算法专题[Python机器学习系列(十五)] 文章目录 1. PCA简介 2. python 实现 鸢尾花数据集PCA降维 3. sklearn库实现 鸢尾花数据集PCA降维案例 ...
- 视觉机器学习20讲-MATLAB源码示例(7)-EM算法
视觉机器学习20讲-MATLAB源码示例(7)-EM算法 1. EM算法 2. Matlab仿真 3. 仿真结果 4. 小结 1. EM算法 最大期望算法(Expectation-Maximizati ...
- 【机器学习系列】之SVM核函数和SMO算法
作者:張張張張 github地址:https://github.com/zhanghekai [转载请注明出处,谢谢!] [机器学习系列]之SVM硬间隔和软间隔 [机器学习系列]之SVM核函数和SMO ...
最新文章
- 利用关系数据库开展智能化营销新思路详解
- Spring MVC 4.1 支持jsonp
- 关于机器学习你必须要了解的事情
- lucene大牛博客汇总保存
- GaussDB(DWS)应用实战:对被视图引用的表进行DDL操作
- python 调用opencv dll_【问题已解决】python 3.6下安装opencv-python解决cv2 DLL load failed: 找不到指定的模块问题...
- eBPF BCC 实现UNIX socket抓包
- python画画用哪库好_学Python画画:应用Turtle库画一个蠢萌的小黄人
- AndroidJava保留小数位数的几种写法
- python怎么将json文件转为xls文件_基于python实现把json数据转换成Excel表格
- zabbix_nginx监控
- 【心电信号】基于matlab瞬时抑制心电信号IIR滤波【含Matlab源码 1533期】
- FPGA之JESD204B接口——总体概要 尾片
- 利用python编程,制作自己的游戏“外挂”!
- Python turtle库如何瞬间完成作图?难道只难像海龟一样慢慢爬吗?
- Codeforces Round #384 B. Chloe and the sequence
- java bean ejb_EJB:企业JavaBean - 解道jdon
- H5常见问题 微信踩过得坑
- 【LaTex】LaTex 的使用与写作(快速入门,尾附:简洁的论文模板代码)
- 朋友圈里这3种人,一定要远离
热门文章
- 改变form里面input,textarea.select等的默认样式
- 【前端】js代码模拟用户键盘鼠标输入
- 谈谈BFC与ie特有属性hasLayout
- 利用AsyncHttpClient实现图片的上传与下载
- Android SDK Permission大全访问权限
- Java中变量及数据类型
- 数据可视化——ECharts基础
- delphi memo 查找字符 下行插入_VBA实践+用编程代码为PDF文档插入书签
- java怎么把照片导出来,JAVA将图片转成base64导出到word中
- ubunt Linux nginx,linux ubuntu系统安装nginx教程