AI 技术内参
洪亮劼
Etsy 数据科学主管,前雅虎研究院资深科学家
32838 人已学习
新⼈⾸单¥98
登录后,你可以任选6讲全文学习
课程目录
已完结/共 166 讲
开篇词 (1讲)
人工智能国际顶级会议 (31讲)
搜索核心技术 (28讲)
推荐系统核心技术 (22讲)
数据科学家与数据科学团队养成 (25讲)
AI 技术内参
15
15
1.0x
00:00/00:00
登录|注册

102 | 基础文本分析模型之三:EM算法

周一我们分享的模型是“概率隐语义分析”(Probabilistic Latent Semantic Indexing),或者简称为 PLSA,这类模型有效地弥补了隐语义分析的不足,在 LDA 兴起之前,成为了有力的文本分析工具。
不管是 PLSA,还是 LDA,其模型的训练过程都直接或者间接地依赖一个算法,这个算法叫作“期望最大化(Expectation Maximization),或简称为 EM 算法。实际上,EM 算法是针对隐参数模型(Latent Variable Model)最直接有效的训练方法之一。既然这些模型都需要 EM 算法,我们今天就来谈一谈这个算法的一些核心思想。

EM 和 MLE 的关系

EM 算法深深根植于一种更加传统的统计参数方法:最大似然估计(Maximum Likelihood Estimation),有时候简称为 MLE绝大多数的机器学习都可以表达成为某种概率模型的 MLE 求解过程
具体来说,MLE 是这样构造的。首先,我们通过概率模型写出当前数据的“似然表达”。所谓的“似然”表达,其实也就是在当前模型的参数值的情况下,看整个数据出现的可能性有多少。可能性越低,表明参数越无法解释当前的数据。反之,如果可能性非常高,则表明参数可以比较准确地解释当前的数据。因此,MLE 的思想其实就是找到一组参数的取值,使其可以最好地解释现在的数据
针对某一个模型写出这个 MLE 以后,就是一个具体的式子,然后看我们能否找到这个式子最大值下的参数取值。这个时候,整个问题往往就已经变成了一个优化问题。从优化的角度来说,那就是针对参数求导,然后尝试把整个式子置零,从而求出在这个时候的参数值。
对绝大多数相对比较简单的模型来说,我们都可以根据这个流程求出参数的取值。比如,我们熟悉的利用高斯分布来对数据进行建模,其实就可以通过 MLE 的形式,写出用高斯建模的似然表达式,然后通过求解最优函数解的方式得到最佳的参数表达。而正好,这个最优的参数就是样本的均值和样本的方差。
然而,并不是所有的 MLE 表达都能够得到一个“解析解”(Closed Form Solution),有不少的模型甚至无法优化 MLE 的表达式,那么这个时候,我们就需要一个新的工具来求解 MLE。
EM 算法的提出就是为了简化那些求解相对比较困难模型的 MLE 解。
有一点需要说明的是,EM 算法并不能直接求到 MLE,而只能提供一种近似。多数无法直接求解的 MLE 问题都属于非凸(Non-Convex)问题。因此,EM 能够提供的仅仅是一个局部的最优解,而不是全局的最优解

EM 算法的核心思想

理解了 EM 和 MLE 的关系后,我们来看一看 EM 的一些核心思想。因为 EM 算法是技术性比较强的算法,我建议你一定要亲自去推演公式,从而能够真正理解算法的精髓。我们在这里主要提供一种大体的思路。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《AI 技术内参》
新⼈⾸单¥98
立即购买
登录 后留言

全部留言(3)

  • 最新
  • 精选
  • 马勇(Daniel)
    最好有公式
    1
  • 林彦
    EM算法是不是有收敛速度慢,每一步的计算比较复杂的问题?
  • 罗马工匠
    还是有公式好理解一点。另外问题的答案能否放评论区呢?em算法除了局部最优,还有其他问题么?
收起评论
显示
设置
留言
3
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部