EM算法:期望最大算法,原来你是这么得灵性,很多机器学习的参数都是通过EM算法求解的

EM算法:期望最大算法,原来你是这么得灵性,很多机器学习的参数都是通过EM算法求解的

提示:系列被面试官问的问题,我自己当时不会,所以下来自己复盘一下,认真学习和总结,以应对未来更多的可能性

关于互联网大厂的笔试面试,都是需要细心准备的
(1)自己的科研经历,科研内容,学习的相关领域知识,要熟悉熟透了
(2)自己的实习经历,做了什么内容,学习的领域知识,要熟悉熟透了
(3)除了科研,实习之外,平时自己关注的前沿知识,也不要落下,仔细了解,面试官很在乎你是否喜欢追进新科技,跟进创新概念和技术
(4)准备数据结构与算法,有笔试的大厂,第一关就是手撕代码做算法题
面试中,实际上,你准备数据结构与算法时以备不时之需,有足够的信心面对面试官可能问的算法题,很多情况下你的科研经历和实习经历足够跟面试官聊了,就不需要考你算法了。但很多大厂就会面试问你算法题,因此不论为了笔试面试,数据结构与算法必须熟悉熟透了
秋招提前批好多大厂不考笔试,直接面试,能否免笔试去面试,那就看你简历实力有多强了。


文章目录

  • EM算法:期望最大算法,原来你是这么得灵性,很多机器学习的参数都是通过EM算法求解的
    • @[TOC](文章目录)
  • gaussian Mixture高斯混合,基于模型的聚类
  • k-means聚类的本质
  • EM算法:expectation maximizing
    • 抛硬币举例给你看看啥是EM算法
    • 假如现在不知道抛的是硬币A,还是硬币B,你还能算出上面的概率吗?
  • EM算法求:高斯混合模型gaussian mixture
  • 总结

gaussian Mixture高斯混合,基于模型的聚类

不是直接返回哪个点直接属于啥类别

而是找数据,它属于啥模型
可能它是高斯混合模型生成的呢???

比如下面的数据,它可能是下面的各种高斯模型混合一起生成的
EM算法:期望最大算法,原来你是这么得灵性,很多机器学习的参数都是通过EM算法求解的_第1张图片
alphai是一个权重——求和是1,这样就保证了每个高斯的出现是以一定的概率出现的

N个权重混合为f(x)

EM算法:期望最大算法,原来你是这么得灵性,很多机器学习的参数都是通过EM算法求解的_第2张图片
高斯模型的参数,不同,慢慢迭代,让混合高斯模型更加接近真实的情况

那你咋知道是几个高斯?他们的参数u和sigma究竟是啥呢?

k-means聚类的本质

EM算法:期望最大算法,原来你是这么得灵性,很多机器学习的参数都是通过EM算法求解的_第3张图片
kmeans聚类的目标就是得到一组参数,那就是class们的中心点theta

直接给你数据,你也求不出来这些中心点呀

那曲线救国,我们假设一个隐含的参数z=不同类别簇
啥意思?直接假设这几个点数据这个类别cluster
EM算法:期望最大算法,原来你是这么得灵性,很多机器学习的参数都是通过EM算法求解的_第4张图片
最开始,咱们把那些点,想办法归类到z的不同簇里面,
那么不同的簇,不就可以直接算中心点theta了吗?

没错,我们kmeans算法就是这么干的
OK,第一波中心点求出来了之后,好办,再把所有数据,拿去跟这些中点对比,又可以得到了一个新的簇z
EM算法:期望最大算法,原来你是这么得灵性,很多机器学习的参数都是通过EM算法求解的_第5张图片
这样反复迭代,不就求出聚类中心点theta了吗

舒服,这就是EM算法的思想

不知道theta,令搞一个z来,假设z之后就可以估计theta了,然后又算出新的z,反复迭代,最后能求出一个美滋滋的theta。

EM算法:expectation maximizing

抛硬币举例给你看看啥是EM算法

最大释然估计,

假设有两种不均匀的硬币,请你估计一下A,B他们两者头上,尾上的概率

那就抛硬币,搞几次,统计
EM算法:期望最大算法,原来你是这么得灵性,很多机器学习的参数都是通过EM算法求解的_第6张图片
者不难

但是

假如现在不知道抛的是硬币A,还是硬币B,你还能算出上面的概率吗?

很难搞

我们这么安排:
EM算法:期望最大算法,原来你是这么得灵性,很多机器学习的参数都是通过EM算法求解的_第7张图片
【1】我们假设A头朝上的概率0.6,B头朝上的概率为0.5【这个可以作为隐藏参数z看待】
这可能不正确
没关系

【2】做evidence做实验瞅瞅啥情况
现在抛硬币,反正得到了一串10次,几次head上,tail上
反正状况就是这样
在这里插入图片描述
你知道了5次head,上,5次tail上,这个情况
你可以通过贝叶斯公式求,这个硬币是A的概率,这个硬币是B的概率

EM算法:期望最大算法,原来你是这么得灵性,很多机器学习的参数都是通过EM算法求解的_第8张图片
懂了吧?你现在只能通过贝叶斯公式,推测,AB的可能性
OK,5次头,5次尾,分给AB,那A头上有几次,A尾上有几次,B头上有几次,尾上有几次,这都可以算

EM算法:期望最大算法,原来你是这么得灵性,很多机器学习的参数都是通过EM算法求解的_第9张图片
OK,你做了好多实验
【3】得到了很多组实验结果,最后汇总AB各自朝上,尾朝上的次数
【4】这样的话,大致你可以估算A头朝上的概率,B头朝上的概率thetaA,B

这波就可以通过迭代求出了theta
中间假设了那个z变量

整个过程就是EM算法,懂????

EM算法求:高斯混合模型gaussian mixture

我们现在就是要求u和alpha
EM算法:期望最大算法,原来你是这么得灵性,很多机器学习的参数都是通过EM算法求解的_第10张图片
zij是认为样本i是从第j个高斯样本中生成的

那它的期望expectation是上面的求法,有了这个E
就可以求u和alpha

新高斯模型出来之后,又可以重新去算E
这样反复迭代,就可以搞出一个美滋滋的u和alpha了
这就是EM算法

懂了吧

是不是很有灵性

这种思想可以用在很多机器学习的参数求解上,这就是EM算法!!!!


总结

提示:重要经验:

1)
2)
3)笔试求AC,可以不考虑空间复杂度,但是面试既要考虑时间复杂度最优,也要考虑空间复杂度最优。

你可能感兴趣的:(国考,数据挖掘,聚类,EM算法,期望最大算法,高斯混合模型)