• EM算法入门相关文章翻译与总结1


    A Note on the Expectation-Maximization(EM) Algorithm

    ChengXiang Zhai 的一篇EM算法note。/Files/rocketfan/em-note.pdf

    1. 简介

    KMEAS算法就是一种EM算法,比如要给所有的点聚类成两组,那么先随机取两个点作为中心,然后将所有点按照距离这两个点的聚类分类到这两个点上,分成两组,然后每个组再计算中心,利用中心再重复分组。。 直到稳定。。。。

    HMM算法中的参数估计问题(参见语音语言处理一书)也用到EM算法。PLSA等也应用EM算法,总之EM是一个很常用的算法。。。。

    EM算法是一个通用的MLE算法(maximum-likelihood estimation),算法应用处理的data是不完整的incomplete,或者带有潜在变量latent variables.

    Incomplete和latent vaiable是相互联系的,如果存在latent variable,我们可以认为数据是不完整的因为我们不能观测到latent variable的值。(We do not observe the values of the latent variables)。

    类似的如果我们数据不完整,我们也可以给数据附加latent variable.(We can associate some latent variable with the missing data)。

    EM算法经常用来估算混合模型(mixture model)的参数,在这里data具体是从哪个模型产生的是未知的。

    EM算法开始的时候随机的给要估算的参数赋予初始值

    然后EM算法迭代执行E和M两个步骤。

    E步骤中,它在当前的参数取值以及观测到得不完整数据的基础上,计算(Q function)即完整数据的期望值。(expected likelyhood of the complete data)

    M步骤中,通过maximizing Q function算法重新计算所有的参数。(re-estimate all the parameters by maximizing the Q function)

    EM算法是一个hill-climing算法,不保证全局最优解,得到的是局部最优解,所以具体的结果和初始值得位置有关系,如果我们在合适的位置(right hill)我们就可能得到全局最优的解,当然如果只有一个峰值那么我们注定得到最优解。

    解决最优解的方法,1.多尝试几个初始位置取最优的最后结果。2.尝试简单的模型只有一个maxima.

    2. 一个简单的一元混合语言模型(mixture unigram language model)

    这里作者用feedbak做例子,假如我们输入一query “刘德华”那么搜索引擎返回给我们一系列的检索结果(feedback documents)image

    我们认为呢F是产生自两个模型的。(We assume tht the feed back doucmuents F are generated from a mixture model with two multimonial componet modles).

    其中一个是backgoround model P(W|C),比如就是我们整个训练语料语言模型,另外一个是一个未知的topic语言模型image , 而整个topic语言模型是我们想要确定的(estimated)。

    其中w表示word。为什么要采用这样一个混合模型呢?直接用返回结果来MLE不就好了吗,作者的意思是说让类别信息不是很强烈的词更多的来源自back ground(比如反馈模型中出现的“今天”“的”…),这样我们的topic model可以更加突出携带更多类别语义信息的词(“刘德华”“朱丽倩”…)。

    (The idea is to model the common(non-discriminaive words in F with P(w|C) so that the topic model image would attact moe disciminative content-carrying words)

    利用反馈文本数据的log-likelihood ,对应我们的mixture model 我们有

    image

    image image

    我们假定image 是已知的,仅仅估算image

    3. 最大似然估计Maximum Likelihood Estimation

    注意EM算法就是MLE,我们要估算参数使得观测到数据(不完整数据)产生的可能性最大化,注意不管下面采用什么方法(引入latent variable)解决,我们的目的始终是这一个image这里我们可以选取使得反馈文档word集合F这一观测到得数据产生的可能性最大的参数image

    image

    不幸的是这个不太好计算因为涉及log(a+b) + log(a2+b2)… 

    那么EM算法是一种解决方法,另外这里的方程可以证明只有一个maxima,因此这里的EM解就是全局最优解。

    4.不完整和完整数据(Incomplete vs Complete Data)

    这里是关键了!EM的核心思想就是通过给我们的数据添加一些latent/hidden 变量使得我们的完整数据(complte data)有一个简单的似然函数(Simple likelihood function),使得我们能够更方便的找到maxima.

    我们将要通过最大化完整数据的似然值期望来最大化我们观测到得不完整数据的最大似然值(We will maximize the incomplate data likelihood(our original goal) through maximizing the expected complete data likelihood(since it is much easier to maximize)

    注意是expected complate data likelihood哦,expected!

    这里期望通过取hidden variables的所有可能值得到。where expectaion is taken over all possible valuse of the hidden vaiables.(不像我们原始的不完整数据似然函数,完整数据的似然函数会包含有隐藏变量)

    这里作者讲的很清楚但是公式没有及时给出,因为作者后面要证明,这里先给出结果吧,来着STANFORD NLP的课件。

    Y是隐藏变量(latent/hidden variable)X是观测数据集合,image 是要估算的参数。

    image

    image

    回到原note,这里作者引入了一个hidden variable z 对应于每一个word w,表示 这个word究竟是产生于generated from back ground model P(w|C)还是产生于or generated from topic model image

    image

    我们假定完整的数据不仅仅包含所有的在F中的words,也有它们所对应的z 取值(0 or 1),这样如果我们知道了完整数据。。。 我们可以计算完整数据的LOG似然函数如下。

    image

    注意这个式子要简单多了没有log(a+b)了。。。。 因为我们知道具体 word是从哪一个产生的了。。 这就简单了。。。 好了 这就是EM魔术的核心所在。

    那么不完整数据的log似然函数和完整数据的log似然函数的联系?

    image 

    image

    5.似然函数的下界(A Lower Bound of Likelihood)

    EM算法实质就是开始有一个初始的对参数的估计image ,然后迭代的去需找更好的参数值。假如当下我们有一个参数估计image ,我们的目的就是要找到另一个image 使得它能够提高image

    考虑下更好的参数对应的似然函数值和当下似然函数值的联系。

    image

    考虑H所有的可能值(在观测数据X和当前参数值image下)。。。 我们有

    image 

    等式右侧最后一项可以看做KL-divergence 总是>= 0的。我们有

    image

    image

    这里我们得到了原始似然函数的下界,EM算法的核心就是通过最大化这个下界来最大化原始似然函数。The main idea of EM is to maximize this lower bound so as to maximize the original (incompelte) likelihood.

    这里式子右面后两项没有参数image 可以看做常量。所以我们可以认为lower bound就是第一项, 也就是 the expectation of the complete likelihood, Q function(上面STANFORD课件中给出的image 是一样的)

    image

    对应我们的例子,mixture modle 就是 ***********!!!

    image

    6.EM算法一般流程

    如果我们找到image  image , 我们就有image image ,这个地方不是很明白下界更大就一定值更大吗,似乎没有很好的证明?后面的总结2,NG的课件证明比较清晰完整。

    image

    对于我们的具体例子,对应E step, 给出当前参数和观测数据下的latent variable概率。

    image

    M step为了使得Q值最大化,这里采用lagrange multiplier method. 取偏导数=0,计算技巧还是挺NB的。。。

    image

    注意其实先算的 image =image   / image

    然后利用image   可以解得image = image ,思维转换很牛啊

    好了 最终结果还是很简单的。。。也符合常识看法。。

    image

    实验:

    OK,简单实验了下作者提到的这个模型,使用最后两个E,Msteep公式,考虑下面的测试文本

    已过期问题必胜客面试服务员需要什么要求? 比如需要注意什么?店长会问一些什么样的问题? 回答:5人气:24提问时间:2008-10-27 12:52 答案 常常采用的有这样几个方法: 1.查询该企业的资料,深入了解该企业的企业文化特点,联系当前情况,自己预测考题; 2.利用网络资源,登录该企业网站,查询相关信息及面试题目.从目前的情况来看,最普遍也最为有效的方式,仍然是向往届毕业生咨询相关信息. 面试题往往与各公司的企业文化和重点关注的东西有密切的关系,我们可以做出如下总结: *忠诚度:面临跳槽,企业往往会看重应聘学生对忠诚度的看法.尤其是一些国有大型企业,更为重视员工的忠诚度.如问:"请分析职业技能和忠诚度哪个对企业更重要"的问题. *实践能力:在注重学生学习成绩的同时,相当多的企业非常重视应聘者的实践经历.*团队协作精神:经营规模宏大的名企往往非常重视员工的团队协作精神. *创新精神:对于大型企业来说,离开了不断的创新,就等于失去了生命力,因此应聘者是否具有创新精神也是重点要考查的. *对企业文化的认可程度:企业在招聘过程中常常会考虑到员工是否能够认可和适应该企业的价值观和企业文化,这将决定员工是否能够很好地为企业服务. *人际交往能力和良好的沟通能力:如sony把人际沟通能力作为重点考核内容,而毕博管理咨询有限公司人力资源部的经理则透露,毕博在招聘过程中非常重视学生的沟通技巧,因为作为未来的咨询师,应聘者一定要具有与客户沟通,协调的能力. 想进入名企工作,以实现自己的人生价值,面试是必须通过的一关,知己知彼才能百战不殆,相信只要一方面对自己有清醒的认识和准确的定位,一方面对企业的情况有深入了解,一定可以在面试中脱颖而出. 另外细节决定成败: 对于求职者来说,最重要的一点就是细节,尤其是对那些进入面试环节的求职者.在结构化面试技巧中,有一种称之为"望闻问切法",其中的"望闻"应该说对求职者也有指导意义.望,指的是面试官要注意应聘者的体格,面目,动作;闻,指的是面试官要注意应聘者的语气,语速,语调.这些都是小细节,而如果求职者注意到了,无疑会为自身求职的砝码增加重量.如果你应聘的时候脚尖不停地点地,表示你有焦虑或不耐烦的心理;交谈时眼睛左顾右盼,不与面试官对视,则表示你对自己不够信任,不安或者在说谎.这些行为心理学的分析很多面试官都将其运用到对招聘者的考核中,这也都是一些平常不大为人注意到的小细节.所以如果你细节都注意到了,做好了,那你的优势立现,赢得自己理想的职位就指日可待了. 主要是自我介绍和你的兴趣还有爱好,另外他会问你为什么选择他们那工作,应该就这些,稍微化一点壮就好 最后祝你应聘成功! 雨 回答采纳率:34.2% 2008-10-27 12:56 没什么要求啊 先要填表,当经理看到后,只要你的时间符合,就会给你电话,通知你面试.学历和工作经验一般不看的,但最好也是在校大学生的吧,也可以专职干这个,学历也就中专旧成了.祝你好运了! 小眼睛 回答采纳率:20.6% 2008-10-27 13:03 不包吃也不包住!而且工资是按时薪算的~你填的有点高~估计很难做到这么多~老员工才有可能~你说的那些没填也没事的~ 面试会问你对pizzahut的了解~什么时好的服务等等~ 不会让你做满的最多167.5小时 周祝 回答采纳率:16.7% 2008-10-27 16:31 个人卫生特别要注意,肯定会问你对客人服务时有什么好的方法,对食物的健康有没有了解之类的了 风随人愿 回答采纳率:27.2% 2008-11-01 10:18 我是必胜客的员工,我来告诉你吧. 其实没什么大要求,学历不是要求很高.必胜客分内场和外场,内场是制作产品的,外场是服务顾客的. 内场没什么要求,外场可能会注意你的形象.其实也不是很注重的.不过我先告诉你,内场比外场好,外场接触顾客很麻烦,有时候还很不愉快. 进入必胜客的步骤是这样的:先去填表,去的时间不要是餐期,在早上或者下午没人去吃饭的时候填表比较好,如果你的资料符合要求就会有面试的机会,经理在审阅你的资料的时候主要关注你的空闲时间是否充裕,以前是否有相关的工作经验等等. 另外,面试经理一般是餐厅的副理,也就是二把手,他可能会问你,你觉得必胜客是什么样的企业,你的兴趣爱好,你以前的经理,当然自我介绍是必不可少的,可以稍微准备一下.还有现在全国必胜客的薪资在不断提高,潜力很大,小时工,工资在6-8元每小时不等.其实很高了,晚上10点以后是1.5倍.法定节假日是3新,一天能赚100那.呵呵,今年10月我就干了一天,100多. 祝你成功,如果还有问题可以短信我 爱你是誓言 2008-11-04 15:36 copyright 1998 – 2010 tencent. all rights reserved.
    只对在我的字典有统计数据的词进行出现频次统计:
    企业 12 | 者 10 | 面试 9 | 应聘 8 | 注意 8 | 必胜客 6 | 问 6 | 员工 6 | 要求 6 | 求职 5 | 外场 5 | 是否 5 | 能力 5 | 经理 5 | 回答 5 | 服务 4 | 了解 4 | 率 4 | 企业文化 4 | 面试官 4 | 时间 4 | 细节 4 | 问题 4 | 采纳 4 | 忠诚度 4 | 重视 4 | 招聘 3 | 先 3 | 重点 3 | 学生 3 | 学历 3 | 内场 3 | 可能 3 | 时候 3 | 进入 3 | 填表 3 | 情况 3 | 相关 3 | 资料 3 | 非常 3 | 告诉 2 | 团队 2 | 应该 2 | 能够 2 | 分析 2 | 过程 2 | 主要 2 | 将 2 | 干 2 | 信息 2 | 工作 2 | 一定 2 | 闻 2 | 指 2 | 一天 2 | 需要 2 | 作为 2 | 重要 2 | 大型 2 | 就会 2 | 工资 2 | 深入 2 | 名企 2 | 不是 2 | 小时 2 | 实践 2 | 工作经验 2 | 认可 2 | 也是 2 | 协作 2 | 创新精神 2 | 注重 2 | 顾客 2 | 望 2 | 方法 2 | 沟通 2 | 都是 2 | 祝 2 | 一方面 2 | 查询 2 | 介绍 2 | 符合 2 | 关注 2 | 具有 2 | 很高 2 | 公司 2 | 精神 2 | 毕博 2 | 立 1 | 壮 1 | 语气 1 | 提高 1 | 生命力 1 | 个人 1 | 薪资 1 | 沟通技巧 1 | 吃 1 | 小时工 1 | 在校 1 | 资源 1 | 当然 1 | 眼睛 1 | 认识 1 | 考核 1 | 旧 1 | 很难 1 | 分内 1 | 不安 1 | 准备 1 | all 1 | 就好 1 | 称 1 | 信任 1 | 祝你成功 1 | 赚 1 | sony 1 | 关 1 | 制作 1 | 来看 1 | 咨询 1 | 职业 1 | 不等 1 | 愉快 1 | reserved 1 | 登录 1 | 做到 1 | 觉得 1 | 特点 1 | 失去 1 | 等于 1 | 看到 1 | 不耐烦 1 | 法 1 | 网络 1 | 几个 1 | 肯定 1 | 焦虑 1 | 左顾右盼 1 | 密切 1 | rights 1 | 那你 1 | 高 1 | 体格 1 | 雨 1 | 说谎 1 | 看重 1 | 充裕 1 | 程度 1 | 所以 1 | 店长 1 | 价值 1 | 增加 1 | 才能 1 | 专职 1 | 管理咨询 1 | 人生 1 | 细节决定成败 1 | 面试技巧 1 | 全国 1 | 小眼睛 1 | 月 1 | 大 1 | 砝码 1 | 也有 1 | 面临 1 | 决定 1 | 指导 1 | 电话 1 | 客户 1 | 二把手 1 | 环节 1 | 赢得 1 | 包住 1 | 人际沟通 1 | 准确 1 | 比如 1 | 面目 1 | 填 1 | 东西 1 | 采用 1 | 平常 1 | copyright 1 | 总结 1 | 考题 1 | 副 1 | 满 1 | 人际交往 1 | 语速 1 | 风 1 | 交谈 1 | 理想 1 | 做出 1 | 形象 1 | 兴趣爱好 1 | 关系 1 | 短信 1 | 步骤 1 | 停 1 | 成功 1 | 相信 1 | 经历 1 | 望闻问切 1 | 规模宏大 1 | 吃饭 1 | 动作 1 | 意义 1 | 卫生 1 | 职位 1 | 向往 1 | 空闲 1 | 心理 1 | 愿 1 | 通过 1 | 接触 1 | 国有 1 | 经营 1 | 麻烦 1 | 人气 1 | 估计 1 | 爱 1 | 脚尖 1 | 客人 1 | 创新 1 | 服务员 1 | 协调 1 | 法定节假日 1 | 联系 1 | 学习成绩 1 | 不看 1 | 同时 1 | 化 1 | 实现 1 | 面试题 1 | 考核内容 1 | 没填 1 | 预测 1 | 考虑 1 | 兴趣 1 | 祝你好运 1 | 技能 1 | 包 1 | 定位 1 | 中常 1 | 薪 1 | 做好 1 | 适应 1 | 运用 1 | 没事 1 | 中专 1 | 跳槽 1 | 离开 1 | 食物 1 | 脱颖而出 1 | 如下 1 | 常会 1 | 餐 1 | 利用 1 | 潜力 1 | 理 1 | 为人 1 | 通知 1 | 健康 1 | 有限 1 | 大学生 1 | 不会 1 | 普遍 1 | 现 1 | 最多 1 | pizzahut 1 | 算 1 | 机会 1 | 指日可待 1 | 企业网站 1 | 结构化 1 | 很好 1 | 产品 1 | 答案 1 | 看法 1 | 清醒 1 | 百战不殆 1 | 透露 1 | 题目 1 | 过期 1 | tencent 1 | 考查 1 | 语调 1 | 重量 1 | 人力资源部 1 | 老 1 | 爱好 1 | 价值观 1 | 誓言 1 | 审阅 1 | 方式 1 | 毕业生 1 | 良好 1 | 行为心理学 1 | 餐厅 1 | 咨询师 1 | 优势 1 | 其中 1 | 知己知彼 1 |

    那么如果我们设置混合参数image = 0.3结果如下

    企业 0.0245479 | 者 0.0204658 | 面试 0.0187413 | 应聘 0.0166735 | 注意 0.016535 | 必胜客 0.0125133 | 员工 0.0124516 | 要求 0.012362 | 问 0.012321 | 外场 0.0104295 | 经理 0.0103504 | 是否 0.010286 | 回答 0.0102795 | 能力 0.0102683 | 求职 0.00981419 | 面试官 0.00834287 | 忠诚度 0.00834263 | 企业文化 0.00833523 | 细节 0.00831464 | 重视 0.00830962 |

    可以预计如果我们设置较大的参数即假定更多可能性的从background中出现,那么反馈模型将会更加突出本模型中出现多但是再整体的backgroud中出现少的词。设定为0.95的结果如下

    面试 0.0321925 | 应聘 0.0292603 | 企业 0.023328 | 注意 0.0231081 | 必胜客 0.0223062 | 者 0.0198498 | 员工 0.0195681 | 外场 0.0186682 | 要求 0.0155863 | 经理 0.0151564 | 面试官 0.0149017 | 忠诚度 0.0148911 | 企业文化 0.014563 | 问 0.0137611 | 细节 0.0136487 | 重视 0.0134261 | 采纳 0.0131289 | 是否 0.0122919 | 回答 0.0120033 | 能力 0.0115043 |

  • 相关阅读:
    swift函数
    Swift数据类型
    swift的特点
    图片适配、九宫切图
    iOS中视图控制器的生命周期
    CocoaPods的安装与使用
    SQLite3的使用
    Pickers应用程序
    多视图应用
    OC对象的三大特性:封装、继承和 多态
  • 原文地址:https://www.cnblogs.com/rocketfan/p/2084173.html
Copyright © 2020-2023  润新知