EM算法讲解程序2 - 数据结构与算法.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
lnumberofdatasamples%convergen)%x(:,i)=mvnrnd(mureal(:,1),com=0;forcn=1:Nforcm=1:Mpikn(1,c:Mrznk(cm,cn)=pikn(1,cm)/sum(p lnumberofdatasamples%convergen )%x(:,i)=mvnrnd(mureal(:,1),co m=0;forcn=1:Nforcm=1:Mpikn(1,c :Mrznk(cm,cn)=pikn(1,cm)/sum(p EM 算法实验报告 一、 算法简单介绍 EM 算法是 Dempster ,Laind,Rubin 于 1977 年提出的求参数极大似然估计的一种方法, 它可以从非完整数据集中对参数进行 MLE估计,是一种非常简单实用的学习算法。这种方 法可以广泛地应用于处理缺损数据、 截尾数据以及带有噪声等所谓的不完全数据, 可以具体 来说,我们可以利用 EM 算法来填充样本中的缺失数据、发现隐藏变量的值、估计 HMM 中 的参数、估计有限混合分布中的参数以及可以进行无监督聚类等等。 本文主要是着重介绍 EM 算法在混合密度分布中的应用, 如何利用 EM 算法解决混合密 度中参数的估计。 二、 算法涉及的理论 我们假设 X 是观测的数据,并且是由某些高斯分布所生成的, X 是包含的信息不完整 (不清楚每个数据属于哪个高斯分布)。 此时,我们用 k 维二元随机变量 Z (隐藏变量) 来表示每一个高斯分布, 将 Z 引入后,最终 得到: 然而 Z 的后验概率满足 (利用条件概率计算): 但是, 但是, Znk 为隐藏变量,实际问题中我们是不知道的,所以就用 Znk 的期望值去估计它(利用 全概率计算)。 count=count+1;iftthbreak;endetthreshold%dementionofoutputsist=);disp(abest);disp(mubest验概率满足(利用条件概率计算):然而我们最终是计算max count=count+1;iftthbreak;ende tthreshold%dementionofoutputsi st=);disp(abest);disp(mubest 验概率满足(利用条件概率计算):然而我们最终是计算max:最 然而我们最终是计算 max: 最后,我们可以得到(利用最大似然估计可以计算): 三、 算法的具体描述 3.1 参数初始化 对需要估计的参数进行初始赋值,包括均值、方差、混合系数以及 对需要估计的参数进行初始赋值,包括均值、方差、混合系数以及 。 3.2 E-Step 计算 利用上面公式计算后验概率,即期望 利用上面公式计算后验概率,即期望 。 3.3 3.3 M-step 计算 重新估计参数,包括均值、方差、混合系数并且估计此参数下的期望值。 3.4 收敛性判断 将新的 与旧的值进行比较,并与设置的阈值进行对比,判断 迭代是否结束,若不符合条件,则返回到 3.2 ,重新进行下面步骤,直到最后收敛才结 束。 :Mrznk(cm,cn)=pikn(1,cm)/sum(psummu=rznksummu+rznk(cm,cn)*x(里生成的数据全部符合标准%%%%%%%%%%%%%%%%初始 :Mrznk(cm,cn)=pikn(1,cm)/sum(p summu=rznksummu+rznk(cm,cn)*x( 里生成的数据全部符合标准%%%%%%%%%%%%%%%%初始 =0.0858-0.0177f=-1.63236.565.5 summu=rznksummu+rznk(cm,cn)*x(=0.0858-0.0177f=-1.63236.565.5nd%while1holdofff=sum(log(sum(lnumberofdatasamples%convergen四、 算法的流程图 summu=rznksummu+rznk(cm,cn)*x( =0.0858-0.0177f=-1.63236.565.5 nd%while1holdofff=sum(log(sum( lnumberofdatasamples%convergen 开始 开始 参数初始化 E-Step M-step 是否 否 收敛 是 结束 每次迭代期望值 2,i)10)))%x(:,i)=mvnrnd(murea%Estep%开始求rznkrznk=zeros(M,N);:,cn);endmu(:,cm)=rznksummu/nktthreshold%dementionofoutputsi-0.06930.2184-

文档评论(0)

张老师资料 + 关注
实名认证
文档贡献者

一线教师,精品资料

1亿VIP精品文档

相关文档