Skip to content
CodingMizore Blog
Go back

KL散度如何导出极大似然估计

Edit page

MLE(Maximum Likelihood Estimation)是我们建模概率分布的常用方法。它的基本思想很简单:

Important

给定一组数据,找一个分布,使得在此分布下,该组数据出现的概率(称为“似然”)最大。

本文将用一些简短的推导说明,KL散度的最小化将同样给出MLE. KL散度衡量两个概率分布之间的“距离”,因此,用KL散度刻画分布建模的质量是自然的。

X1,X2,...,XnX_1, X_2, ..., X_n 是分布PP^* 给出的一组观测数据。考虑分布PPPP^*的KL散度:

KL(PP)=xP(x)logP(x)P(x)=xP(x)logP(x)xP(x)logP(x)=EP[logP(x)]EP[logP(x)]\begin{aligned} KL(P^*||P)&=\sum_xP^*(x)\log\frac{P^*(x)}{P(x)} \\ &=\sum_xP^*(x)\log P^*(x)-\sum_xP^*(x)\log P(x) \\ &=\mathbb{E}_{P^*}[\log P^*(x)]-\mathbb{E}_{P^*}[\log P(x)] \end{aligned}

我们想要找一个PP, 使得上式最小。注意上式第一项由真实分布PP^*决定,与优化目标无关。因此最小化KL散度等价于最大化

EP[logP(x)]\mathbb{E}_{P^*}[\log P(x)]

注意X1,...,XnX_1,...,X_n由真实分布PP^*给出,根据大数定律,上面的期望可以由

1ni=1nlogP(Xi)=1nlogi=1nP(Xi)\frac{1}{n}\sum_{i=1}^n\log P(X_i)=\frac{1}{n}\log\prod_{i=1}^nP(X_i)

给出。 其中

logi=1nP(Xi)\log\prod_{i=1}^n P(X_i)

正是观测数据在概率模型PP下的对数似然。


Edit page
Share this post:

Next Post
Time Series Analysis (1)