• third
    2019-02-19
    想起了一个故事,摘叶子
    要找到最大的叶子
    1.先心里大概有一个叶子大小的概念(初始化模型)
    2.在三分之一的的路程上,观察叶子大小,并修改对大小的评估(观察预期,并修改参数)
    3.在三分之二的路程上,验证自己对叶子大小模型的的评估(重复1,2过程)
    4.在最后的路程上,选择最大的叶子(重复1.2,直到参数不再改变)

    相同点
    1.EM,KMEANS,都是随机生成预期值,然后经过反复调整,获得最佳结果
    2.聚类个数清晰

    不同点
    1.EM是计算概率,KMeans是计算距离。
    计算概率,概率只要不为0,都有可能即样本是每一个类别都有可能
    计算距离,只有近的的票高,才有可能,即样本只能属于一个类别
    展开

    编辑回复: 例子举的不错,相同和不同之处理解也很到位,大家都可以看看。

    
     23
  • FORWARD―MOUNT
    2019-03-28
    请问:

    通过猜测的结果{A, A, B, B, A}来完善初始化的参数θA 和θB。
    然后一直重复第二步和第三步,直到参数不再发生变化。


    怎么完善初始化参数?,急需解答。
    展开
     2
     7
  • 黄楚门的世界
    2019-02-24
    “”通过猜测的结果{A, A, B, B, A}来完善初始化的θA 和θB“” 这个步骤是怎样的?

    A 5
    A 7
    B 8
    B 9
    A 4
    θA=(5+7+4)/(10+10+10)
    θB=(8+9)/(10+10)
    展开
    
     7
  • Python
    2019-02-15
    em聚类和K均值的区别就是一个软一个硬,软的输出概率,硬的要给出答案。我理解的em聚类的过程是一个翻来覆去决策的过程,这种聚类方式是先确定一个初始化的参数,再反过来推算结果,看和自己期望的差距,又在翻回去调整。好就好在,你想要一个什么样的结果他都能慢慢给你调整出来

    编辑回复: 一软一硬这个说的很恰当!一个输出概率,一个输出明确的答案。

    
     7
  • mickey
    2019-02-28
    文中抛硬币的例子,应该还要说明“5组实验,每组实验投掷10次,每组中只能抛同一枚硬币”。

    作者回复: 对的

    
     6
  • 松花皮蛋me
    2019-02-18
    有同学说:核心是初始参数啊。如果一开始就错那就完了。这完全是错的,只不过增加了更新次数而已。

    编辑回复: EM有自我更新的机制,就像K-Means一样,所以不用担心初始化参数,即使初始化参数不正确也会逐渐迭代出来结果。区别是在于迭代的次数,也就是运行的时间。这就好比把菜分到两个盘子中,一开始A盘很少,B盘非常多。这时候初始化参数并不理想,但是没有关系,EM机制通过参数估计,最终通过迭代会让两个盘子的分量一样多。只是迭代次数会略多一些。

    
     5
  • 滨滨
    2019-04-05
    em算法是假定一个样本分布概率,然后根据最大似然估计进行聚类,然后根据聚类结果修正参数,直到结果不在变化,而kmeans算法则是根据随机确定初始点,根据欧式距离等算法来计算和初始点的距离,完成初始聚类,然后迭代直到聚类结果不发生变化。kmeans是计算硬聚类,em是软聚类。
    
     3
  • 梁林松
    2019-02-15
    EM 就好像炒菜,做汤,盐多了放水,味淡了再放盐,直到合适为止。然后,就能得出放盐和水的比例(参数)

    作者回复: 对的 很形象

    
     3
  • 白夜
    2019-02-15
    EM,聚类的个数是已知的,首先,预设初始化的参数,然后获得对应的结果,再通过结果计算参数,不断循环以上两步,直到收敛。属于软分类,每个样本有一定概率和一个聚类相关。
    K-Means,聚类的个数也是已知的,首先选定一个中心点,然后计算距离,获得新的中心点,重复,直到结果收敛。属于硬分类,每个样本都只有一个分类。

    作者回复: 对的

    
     3
  • 滨滨
    2019-04-05
    说的通俗一点啊,最大似然估计,就是利用已知的样本结果,反推最有可能(最大概率)导致这样结果的参数值。
    例如:一个麻袋里有白球与黑球,但是我不知道它们之间的比例,那我就有放回的抽取10次,结果我发现我抽到了8次黑球2次白球,我要求最有可能的黑白球之间的比例时,就采取最大似然估计法: 我假设我抽到黑球的概率为p,那得出8次黑球2次白球这个结果的概率为:
    P(黑=8)=p^8*(1-p)^2,现在我想要得出p是多少啊,很简单,使得P(黑=8)最大的p就是我要求的结果,接下来求导的的过程就是求极值的过程啦。
    可能你会有疑问,为什么要ln一下呢,这是因为ln把乘法变成加法了,且不会改变极值的位置(单调性保持一致嘛)这样求导会方便很多~
    
     2
  • mickey
    2019-02-28
    to third:

    吴军老师说过,这种找最大叶子的问题,最优解最大概率会在37%的时候,而不是最后。
    
     1
  • 老师 冯
    2019-02-19
    “”通过猜测的结果{A, A, B, B, A}来完善初始化的θA 和θB“” 这个步骤是怎样的?跪求解答



    
     1
  • 追梦
    2019-10-22
    想起了一个故事,摘叶子
    要找到最大的叶子
    1.先心里大概有一个叶子大小的概念(初始化模型)
    2.在三分之一的的路程上,观察叶子大小,并修改对大小的评估(观察预期,并修改参数)
    3.在三分之二的路程上,验证自己对叶子大小模型的的评估(重复1,2过程)
    4.在最后的路程上,选择最大的叶子(重复1.2,直到参数不再改变)

    相同点
    1.EM,KMEANS,都是随机生成预期值,然后经过反复调整,获得最佳结果
    2.聚类个数清晰

    不同点
    1.EM是计算概率,KMeans是计算距离。
    计算概率,概率只要不为0,都有可能即样本是每一个类别都有可能
    计算距离,只有近的的票高,才有可能,即样本只能属于一个类别


    “”通过猜测的结果{A, A, B, B, A}来完善初始化的θA 和θB“” 这个步骤是怎样的?

    A 5
    A 7
    B 8
    B 9
    A 4
    θA=(5+7+4)/(10+10+10)
    θB=(8+9)/(10+10)

    以留言方式暂时记录一下
    展开

    作者回复: 很好的总结整理

    
    
  • FeiFei
    2019-08-13
    EM聚类算法,通过假定参数值,来推断未知隐含变量。再不断重复这个过程,至到隐含变量恒定不变时,得出假定参数的值。也就是实际的聚类分类的结果。
    K-Means:非黑即白
    EM:黑白通吃

    作者回复: 对的 比喻的不错

    
    
  • 对三要不起
    2019-05-19
    TO FORWARD―MOUNT
    【通过猜测的结果{A, A, B, B, A}来完善初始化的参数θA 和θB。
    然后一直重复第二步和第三步,直到参数不再发生变化。】

    这个步骤就是通过第一次随机,我们一直知道了顺序了可能是{A A B B A},然后就可以算出A和B投正面的概率,再通过算出来的这个新概率(之前是随即指定的),再去模拟一遍五组硬币,可能这次模拟出来的就不是{A A B B A}了,重复这个步骤直到模拟出来的五枚硬币不再改变。此时的概率就是A和B 投正面的概率。
    展开
    
    
  • 奔跑的徐胖子
    2019-04-26
    原理的话就拿老师的这个抛掷硬币的例子来看:
    1、初始的时候,我们并不知道1~5次试验抛掷的分别是A硬币还是B硬币,我们就先假设一下A、B正面向上的概率。
    2、通过我们假设的概率,我们根据1~5次实验中每次正面向上的频率,使用我们1中假设的A、B正面的概率来分别计算期望值。两个期望值比较哪个大,我们就觉得这次试验抛掷的是哪个硬币。
    3、我们通过2,就第一次将本来没有分类的试验(该次实验抛掷的是哪一个硬币)给分类了,但是这个结果是我们初始化一个随机的正面向上的概率来算出来的,不准确。
    4、我们把1、2、3的出来的初始的分类结果当做已知,通过全体数据来算一下此时A、B正面向上的概率(全体数据的频率),这样,我们就得到了类似2步骤中的正面向上的概率,这里就优化了A、B这面向上的概率(完善参数)。
    5、就这样一直重复2、3的过程,直到稳定为止
    展开

    作者回复: Good Sharing

    
    
  • 奔跑的徐胖子
    2019-04-26
    EM的原理,其实就拿这个老师给的硬币的例子来看。初始的时候,我们只有一堆数据,并不知道试验1~5分别抛掷的是哪一个硬币。这样,我们先随机一下A、B两枚硬币的正面出现的概率。

    作者回复: 很好的总结

    
    
  • 王彬成
    2019-02-23
    1、 EM 算法的原理?
    当我们需要从样本观察数据中,找出样本的模型参数。 但是问题含有未观察到的隐含数据,这时采用EM算法。
    在EM算法的Expectation步,先猜想隐含数据,接着基于观察数据和猜测的隐含数据一起来极大化对数似然,求解我们的模型参数。(EM算法的Maximization步)。
    我们基于当前得到的模型参数,继续猜测隐含数据(EM算法的E步),然后继续极大化对数似然,求解我们的模型参数(EM算法的M步)。以此类推,不断的迭代下去,直到模型分布参数基本无变化,算法收敛,找到合适的模型参数。
    2、EM 聚类和 K-Means 聚类的相同和不同之处又有哪些?
    k-means 计算过程:
    1)随机选择k个类簇的中心
    2)计算每一个样本点到所有类簇中心的距离,选择最小距离作为该样本的类簇
    3)重新计算所有类簇的中心坐标,直到达到某种停止条件(迭代次数/簇中心收敛/最小平方误差)
    展开
    
    
  • 李沛欣
    2019-02-20
    今天的看完了。我理解的EM算法,是先估计一个大概率的可能参数,然后再根据数据不断进行调整,直到找到最终的确认参数。

    它主要有高斯模型和隐马尔科夫模型,前者在自然语言处理领域有很多应用。

    它和K-means都属于聚类算法,但是,EM属于软聚类,同一样本可能属于多个类别;而后者则属于硬聚类,一个样本只能属于一个类别。所以前者能够发现一些隐藏的数据。

    作者回复: 对的 很好的总结

    
    
  • 深白浅黑
    2019-02-19
    原理哪里都有,还是需要结合实战!
    个人觉得,如果从数学定义角度出发,会更容易对算法原理进行理解。
    EM算法是求解隐含参数的算法,依据算法推导过程,可以视为求局部最优解的方法,可以归属为求解凸函数的问题。
    https://www.cnblogs.com/bigmoyan/p/4550375.html
    
    
我们在线,来聊聊吧