极大似然估计
估计类条件概率的一种常用策略是先假定其具有某种确定的概率分布形式,再基于训练样本对概率分布的参数进行估计。具体地,记关于类别 c c c的类条件概率为 P ( x ∣ c ) P(x|c) P(x∣c),假设 P ( x ∣ c ) P(x|c) P(x∣c)具有确定的形式并且被参数向量 θ c \theta_c θc唯一确定,则我们的任务就是利用训练集 D D D估计参数 θ c \theta_c θc。为明确起见,我们将 P ( x ∣ c ) P(x|c) P(x∣c)记为 P ( x ∣ θ c ) P(x|\theta_c) P(x∣θc)。
令 D c D_c Dc表示训练集 D D D中第 c c c类样本组成的集合,假设这些样本是独立同分布的,则参数 θ c \theta_c θc对于数据集 D c D_c Dc的似然是
P ( D c ∣ θ c ) = ∏ x ∈ D c P ( x ∣ θ c ) . (1) P(D_c|\theta_c)=\prod_{x\in D_c}P(x|\theta_c).\tag{1} P(Dc∣θc)=x∈Dc∏P(x∣θc).(1)
对 θ c \theta_c θc进行极大似然估计,就是去寻找能最大化似然 P ( D c ∣ θ c ) P(D_c|\theta_c) P(Dc∣θc)的参数值 θ ^ c \hat{\theta}_c θ^c。直观上看,极大似然估计是试图在 θ c \theta_c θc所有可能的取值中,找到一个能使数据出现的“可能性”最大的值。
式(1)中的连乘操作易造成下溢,通常使用对数似然(log-likelihood)
L L ( θ c ) = log P ( D c ∣ θ c ) = log ∏ x ∈ D c P ( x ∣ θ c ) = ∑ x ∈ D c log P ( x ∣ θ c ) , (2) \begin{aligned} LL(\theta_c)&=\log P(D_c|\theta_c)\\ &=\log \prod_{x\in D_c}P(x|\theta_c)\\ &=\sum_{x\in D_c}\log P(x|\theta_c),\tag{2} \end{aligned} LL(θc)=logP(Dc∣θc)=logx∈Dc∏P(x∣θc)=x∈Dc∑logP(x∣θc),(2)
式子(2)中取对数的时候直接写的是 log \log log,并没有明确地指明这个对数的底数是多少;实际上,只要保证对数是单调递增的就可以了。所以 log \log log的底数取 2 2 2或者 10 10 10或者 e e e都是可以的,通常是取自然常数 e e e为底数。则对数似然可化为:
L L ( θ c ) = ∑ x ∈ D c ln P ( x ∣ θ c ) , (3) LL(\theta_c)=\sum_{x\in D_c}\ln P(x|\theta_c),\tag{3} LL(θc)=x∈Dc∑lnP(x∣θc),(3)
此时参数 θ c \theta_c θc的极大似然估计 θ ^ c \hat{\theta}_c θ^c为
θ ^ c = arg max θ c L L ( θ c ) . (4) \hat{\theta}_c=\mathop{\arg\max}\limits_{\theta_c} LL(\theta_c).\tag{4} θ^c=θcargmaxLL(θc).(4)
例如,在连续属性情形下,假设概率密度函数 p ( x ∣ c ) ∼ N ( μ c , σ c 2 ) p(x|c)\sim\mathcal{N}(\mu_c,\sigma_c^2) p(x∣c)∼N(μc,σc2),则参数 μ c \mu_c μc和 σ c 2 \sigma_c^2 σc2的极大似然估计为
μ ^ c = 1 ∣ D c ∣ ∑ x ∈ D c x , \hat{\mu}_c=\frac{1}{|D_c|}\sum_{x\in D_c}x, μ^c=∣Dc∣1x∈Dc∑x,
σ ^ c 2 = 1 ∣ D c ∣ ∑ x ∈ D c ( x − μ ^ c ) ( x − μ ^ c ) T . \hat{\sigma}_c^2=\frac{1}{|D_c|}\sum_{x\in D_c}(x-\hat{\mu}_c)(x-\hat{\mu}_c)^\mathrm{T}. σ^c2=∣Dc∣1x∈

本文探讨了极大似然估计和EM算法在参数估计中的应用,通过掷硬币游戏的例子详细解析了两种方法的计算过程,展示了如何在数据不完全的情况下进行有效的模型参数估计。
最低0.47元/天 解锁文章
778

被折叠的 条评论
为什么被折叠?



