MLE算法
Maximum Likelihood Estimate (MLE) 中文名叫做极大似然估计。其核心思想是求解能够最大化拟合观测分布 DDD 的参数 θ^\hat\thetaθ^
θ^=argmax(P(D)∣θ)\hat\theta = argmax(P(D)|\theta)θ^=argmax(P(D)∣θ)
例如,假设抛硬币正面朝上的概率值P(up)=θP(up) = \thetaP(up)=θ, 反面朝上的概率值为P(down)=1−θP(down) = 1 - \thetaP(down)=1−θ 。假设每次抛硬币的过程是条件独立的,且符合(0-1)分布。用αu\alpha_{u}αu和 αd\ \alpha_d αd 分别表示抛了若干次硬币之后观察到的正面朝上和反面朝上的次数。则
P(D∣θ)=P(αu,αd∣θ)=θαu(1−θ)αdP(D|\theta) = P(\alpha_u, \alpha_d|\theta) = \theta^{\alpha_u} (1 - \theta)^{\alpha_d}P(D∣θ)=P(αu,αd∣θ)=θαu(1−θ)αd
利用MLE算法求解上述表达式:
θ^MLE=argmax(P(D)∣θ)θ^MLE=argmax(ln(P(D∣θ)))θ^MLE=argmax(ln(θαu(1−θ)αd))\hat\theta_{MLE} = argmax(P(D)|\theta) \\ \hat\theta_{MLE} = argmax(ln(P(D|\theta))) \\ \hat\theta_{MLE} = argmax(ln(\theta^{\alpha_{u}}(1-\theta)^{\alpha_d}))θ^MLE=argmax(P(D)∣θ)θ^MLE=argmax(ln(P(D∣θ)))θ^MLE=argmax(ln(θαu(1−θ)αd))
令其导数为0,求解极值点:
ddθln(θαu(1−θ)αd)=αu1θ−αd11−θ=0\frac{d}{d\theta }ln(\theta^{\alpha_{u}}(1-\theta)^{\alpha_d}) = \alpha_u \frac{1}{\theta} - \alpha_d \frac{1}{1-\theta} = 0dθdln(θαu(1−θ)αd)=αuθ1−αd1−θ1=0
解得 θ^MLE=αuαu+αd\hat\theta_{MLE} = \frac{\alpha_u}{\alpha_u + \alpha_d}θ^MLE=αu+αdαu 这符合我们的认知,概率值近似等于频率。
MAP 算法
Maximum a Posterior (MAP) 中文名叫最大后验概率估计。其核心思想是在极大似然估计(MLE)算法的基础上,假设参数θ\thetaθ符合某先验分布g(θ)g(\theta)g(θ)则根据贝叶斯公式:
P(θ∣D)=P(D∣θ)P(θ)P(D)P(\theta|D) = \frac{P(D|\theta)P(\theta)}{P(D)}P(θ∣D)=P(D)P(D∣θ)P(θ)
由于P(D) 是已知的观测分布可以忽略,因此P(θ∣D)∝P(D∣θ)P(θ)P(\theta|D) \propto P(D|\theta)P(\theta)P(θ∣D)∝P(D∣θ)P(θ)(这里的∝\propto∝表示“正比于”),因此MAP的求解过程如下:
θ^MAP=argmax(P(D)∣θ)P(θ)=θ^MLE g(θ)\hat \theta_{MAP} = argmax(P(D)|\theta)P(\theta) = \hat \theta_{MLE} \space g(\theta)θ^MAP=argmax(P(D)∣θ)P(θ)=θ^MLE g(θ)
当参数θ\thetaθ的分布为常数分布时,最大后验概率估计等价于极大似然估计,即 θ^MAP=θ^MLE\hat \theta_{MAP} = \hat \theta_{MLE}θ^MAP=θ^MLE
EM 算法
Expectation-maximization algorithm (EM) 中文名叫期望最大化算法,其核心思想是当求解MLE算法或MAP算法的过程中依赖于某些不可观测的隐变量ZZZ(不同于常规的可观测数据分布D,现在待计算的分布中有一些数据是不可观测的(例如缺失值),就需要使用EM算法)。则通过以下步骤进行参数估计:
- 初始化分布参数 (θ\thetaθ)
- E步骤: 根据参数的假设值,给出未知变量(隐变量)的期望估计,应用于缺失值。
- M步骤: 根据未知变量(隐变量)的估计值,给出当前的参数的极大似然估计θ^MLE\hat \theta_{MLE}θ^MLE。
重复2,3过程,直到收敛。