常见推断方法一览
- 推断方法区别
- 频率派
- 极大似然估计 MLE
- 最大后验估计 MAP
- 期望最大化 EM
- 贝叶斯推断 Bayesian
- 马尔科夫链蒙特卡洛方法 MCMC
- 变分推断 VI
极大似然估计 (Maximum Likelihood Estimation, MLE):
最大后验估计 (Maximum A Posteriori Estimation, MAP):
期望最大化 (Expectation Maximization, EM):
贝叶斯推断 (Bayesian Inference):
马尔科夫链蒙特卡洛方法 (Markov Chain Monte Carlo, MCMC):
变分推断 (Variational Inference):
搭建模型需要设计目标函数(比如神经网络),绝大多数机器学习的目标函数都是基于 MLE、MAP、Bayesian搭建的。
因为这些模型在学习时,都试图找到最佳的方式去解释数据,同时考虑到现有的知识和不确定性。
MLE定义 给定 theta 的条件下,最大化看到所有样本的概率,最大化目标函数。
假设你有一组数据,并且你有一个模型,这个模型由一些参数(θ)控制。
MLE 的目标是找到这些参数的最佳值,使得这些参数下观察到的数据出现的概率最大,确保模型尽可能地反映出现实世界中的情况。
然后用这个接近现实世界的模式,去预测事情。
似然函数:在特定参数设定下,评估在给定模型参数下,观察到的特定数据集出现的概率。
假设你有一个硬币,想知道是不是公平的。你抛了10次,其中7次正面朝上。
似然函数会尝试不同的概率(比如50%,60%,70%…不同参数下),并计算每种情况下出现“7次正面,3次反面”的概率。
最大化似然函数:目标是找到一个概率值,使得这种结果出现的可能性最大。如果这个最大的概率发生在70%,那你就会说根据目前的数据,最有可能的情况是硬币正面朝上的概率是70%,参数就是这个。
基于实际观察到的数据来估计模型参数,这就是最大似然估计的核心思想。
但这种思想,结论可靠性高度依赖于样本的大小和实验的重复性。
如果我们只抛10次,我们得到的结论可能不太可靠。
但如果我们抛1000次,并且大约700次正面朝上,我们就更有信心认为硬币有偏差。
属于频率派搞法。
数学公式:
在机器学习中的应用,一个神经网络模型,输入是图片,输出是图片属于“猫”或“狗”的概率。
最大似然估计在机器学习中的作用:它提供了一个强大的框架来指导模型参数的优化过程,使模型能够有效地从数据中学习。
这种基于概率的方法有助于确保模型不仅能够适应已见过的数据,而且能够泛化到新的、未见过的数据。
极大似然估计只关注当前的样本,也就是只关注当前发生的事情,不考虑事情的先验情况。
MAP是在MLE的基础上增加了先验知识。
如果没有先验信息,或者先验信息是均匀分布的,那么MAP就简化为MLE。
MAP不仅考虑数据本身,还考虑了参数的先验概率。
试图找到使得参数在观测数据下,后验概率最大的参数值。
先验概率:这是在观测数据之前对参数的信念。例如,如果你已经知道在大多数情况下,猫和狗的图片大致平分,这个信息就可以作为先验。
直观理解:在同样的猫狗识别模型中,如果你已经知道猫的图片通常比狗的图片多(或者相反),MAP会利用这个先验知识来调整参数估计。
数学公式:
M A P ( θ ) = a r g m a x [ P ( θ ∣ X ) ] = a r g m a x [ ( P ( X ∣ θ ) ∗ P ( θ ) ) P ( X ) ] MAP(θ) = argmax [P(θ|X)] = argmax [\frac{(P(X|θ) * P(θ))}{P(X)}] MAP(θ)=argmax[P(θ∣X)]=argmax[P(X)(P(X∣θ)∗P(θ))]
由于 P(X) 是固定的,我们通常简化为:
M A P ( θ ) = a r g m a x P ( X ∣ θ ) P ( θ ) MAP(θ) =argmax P(X|\theta)P(\theta) MAP(θ)=argmaxP(X∣θ)P(θ)
对比 MLE 公式,发现就是多了一个先验模块 P ( θ ) P(\theta) P(θ)
MLE纯粹基于数据来估计参数,而 MAP在估计参数时同时考虑了数据和先验知识。
在数据稀少或有强先验知识的情况下,MAP可能比MLE更有效。
如看故事书,但故事中有一些缺失的部分(这些就是“隐变量”)。
你的目标是填补这些缺失部分,使得整个故事变得连贯和合理。
EM算法就像一个两步循环过程,帮助你逐渐完善这个故事:
期望步骤 (E步骤): 在这一步,你根据目前所知的信息,对故事中缺失的部分做出最佳猜测。就好比你根据故事的上下文来推测这些缺失部分可能的内容。
最大化步骤 (M步骤): 接下来,你根据这些猜测来重新讲述整个故事,并调整故事中其他已知部分的细节,使得整体故事更加合理。这个过程就像根据新的假设来优化故事的连贯性。M步骤可以使用MLE或MAP。
这个循环反复进行:你根据当前的故事版本来改善你对缺失部分的猜测,然后再用这些新猜测来优化整个故事。
随着每次迭代,故事变得越来越连贯,直到最终达到一个点,你觉得再怎么调整也无法使故事更好了。
这时,你就找到了最合适的版本来填补缺失部分,也就是说,你找到了模型参数的最优估计。
详情,请猛击:《【从原理到应用,只需3分钟】期望值最大化 EM 算法:睹始知终》。
用贝叶斯定理更新参数的概率分布,考虑到新的数据。
构建马尔科夫链来抽样未知分布,用于复杂分布的参数估计和积分。
详情,请猛击:【史上最易懂】马尔科夫链-蒙特卡洛方法:基于马尔科夫链的采样方法,从概率分布中随机抽取样本,从而得到分布的近似
简化模型来近似复杂概率分布,常用于贝叶斯推断中处理复杂模型。
详情,请猛击:【史上最易懂】变分推断:从【求分布】的推断问题,变成【缩小距离】的优化问题,用简单的分布 q 去近似复杂的分布 p