最近在网上看到有好多的多项分布的最大估计推导过程,都不一样,但是感觉都好有道理,求解答
最大似然估计推导的方法大同小异,不知道你看了哪几种,可以参考以下这种方法
https://zhuanlan.zhihu.com/p/32341102?utm_id=0
多项分布是一种描述在 $k$ 个类别中随机选择一个类别的概率分布,这些类别可以是任何类型的类别,例如文本中的单词、图像中的像素等。在最大似然估计中,我们希望找到一组参数 $\boldsymbol{\theta}$,使得在给定观测数据 $\mathbf{x}$ 的条件下,这组参数的似然最大。
设观测数据 $\mathbf{x}$ 中有 $n$ 个样本,每个样本属于某个类别 $c_i$,则观测数据 $\mathbf{x}$ 可以表示为类别序列 $\mathbf{c}={c_1,c_2,\dots,c_n}$。则最大似然估计的目标可以表示为:
$$\boldsymbol{\theta}^*=\arg\max_{\boldsymbol{\theta}} P(\mathbf{c}|\boldsymbol{\theta})$$
注意到 $P(\mathbf{c}|\boldsymbol{\theta})=\prod_{i=1}^n P(c_i|\boldsymbol{\theta})$,因此我们可以将目标转化为对每个样本的似然进行最大化:
$$\boldsymbol{\theta}^*=\arg\max_{\boldsymbol{\theta}} \prod_{i=1}^n P(c_i|\boldsymbol{\theta})$$
根据上面的推导,我们可以将目标转化为:
$$\boldsymbol{\theta}^*=\arg\max_{\boldsymbol{\theta}} \sum_{i=1}^n \log P(c_i|\boldsymbol{\theta})$$
而在多项分布中,我们通常假设 $P(c_i|\boldsymbol{\theta})$ 为形如 $\theta_{c_i}$ 的形式,其中 $\theta_j$ 表示选择类别 $j$ 的概率。这样的话,我们的目标可以表示为:
$$\boldsymbol{\theta}^*=\arg\max_{\boldsymbol{\theta}} \sum_{i=1}^n \log \theta_{c_i}$$
注意到我们还有一个约束条件,即 $\sum_{i=1}^k \theta_i=1$,因此我们可以使用拉格朗日乘数法将其转化为最优化问题。设拉格朗日乘子为 $\lambda$,则我们的目标可以表示为:
$$L(\boldsymbol{\theta},\lambda)=\sum_{i=1}^n \log \theta_{c_i} + \lambda(\sum_{i=1}^k \theta_i - 1)$$
对 $L(\boldsymbol{\theta},\lambda)$ 求导并令其为 0,可以得到:
$$\frac{\partial L(\boldsymbol{\theta},\lambda)}{\partial \theta_j} = \frac{1}{\theta_j} + \lambda = 0$$
解得 $\theta_j=-\frac{1}{\lambda}$。
而我们知道 $\sum_{i=1}^k \theta_i=1$,因此我们可以求得 $\lambda=-\frac{1}{k}$。代回原式得:
$$\theta_j=\frac{1}{k}$$
因此,在最大似然估计中,我们可以将所有的 $\theta_i$ 设为 $\frac{1}{k}$,从而满足约束条件 $\sum_{i=1}^k \theta_i=1$。
综上所述,在最大似然估计中,我们可以通过将所有的 $\theta_i$ 设为 $\frac{1}{k}$ 来得到最优解。
首先,假设我们有n个类别,对于第i个类别,有x[i]个样本,并且我们观察到每个类别的概率为p[i],则我们可以求出总样本数为:
N = ∑x[i]
因此,我们的目标是求出p[i]的值,使得总体数据的概率最大。根据最大似然估计的原理,我们可以得到:
L = ∏p[i]^x[i]
求解L的最大值,等价于求解L的对数的最大值。因此,我们可以得到:
ln(L) = ∑x[i] * ln(p[i])
将ln(L)带入求解得到:
∑x[i] * ln(p[i]) = max
移项得到:
∑x[i] * ln(p[i]) - max = 0
对于每一个类别,都有:
x[i] * ln(p[i]) = max
因此,我们可以得到多项分布的最大似然估计结果:
p[i] = x[i] / N
注意,这里的N是所有类别的总样本数。
根据题意,提供如下流程参考:
1、学习六大常用分布的矩估计和最大似然估计推导过程,链接:https://blog.csdn.net/CAUC_yangxiao/article/details/108848469
2、用公式和代码推导【深入浅出多维高斯分布的最大似然估计矩阵推导】,链接:https://zhuanlan.zhihu.com/p/301741267
3、最后实际例子运用【极大似然估计详解】,链接:https://aistudio.csdn.net/62e38a58cd38997446774bfb.html?spm=1001.2101.3001.6650.8&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Eactivity-8-72787849-blog-108848469.pc_relevant_recovery_v2&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Eactivity-8-72787849-blog-108848469.pc_relevant_recovery_v2&utm_relevant_index=10
假设有一个样本 $x$,它服从多项分布,其概率分布函数为:
$$P(x|\theta) = \prod_{i=1}^{n} \theta_i^{x_i}$$
其中 $n$ 为种类数,$x_i$ 为样本属于第 $i$ 种类别的次数,$\theta_i$ 为第 $i$ 种类别的概率。
我们要求的是最大似然估计 $\theta$,即最大化似然函数:
$$L(\theta) = \prod_{j=1}^{m} P(x_j|\theta)$$
其中 $m$ 为样本数。
将似然函数取对数,得到对数似然函数:
$$l(\theta) = \sum_{j=1}^{m} \sum_{i=1}^{n} x_{j,i} \log \theta_i$$
将对数似然函数对 $\theta_i$ 求偏导,得到:
$$\frac{\partial l(\theta)}{\partial \theta_i} = \frac{\sum_{j=1}^{m} x_{j,i}}{\theta_i}$$
将对数似然函数对 $\theta_i$ 求偏导等于 0,得到:
$$\sum_{j=1}^{m} x_{j,i} = 0$$
将所有的 $\theta_i$ 代入上式,得到最大似然估计的结果:
$$\hat{\theta_i} = \frac{\sum_{j=1}^{m} x_{j,i}}{m}$$
希望这些信息能帮到您。如果还有其他问题,欢迎继续提问。
R 语言 多项式分布的极大似然估计
借鉴下
https://blog.csdn.net/Mrrunsen/article/details/127198599
假设有一个多项分布,其概率分布为 $p = (p_1, p_2, ..., p_k)$,其中 $\sum_{i=1}^{k} p_i = 1$。
设 $x_1, x_2, ..., x_n$ 为来自该分布的样本,那么样本出现的概率为:
$$ \prod_{i=1}^{n} p_{x_i} $$
我们希望找到一组参数 $p$,使得样本出现的概率最大。也就是说,我们希望求出最大似然估计 $\hat{p} = (\hat{p_1}, \hat{p_2}, ..., \hat{p_k})$。
我们可以将上面的式子取 $\log$,得到:
$$ \sum_{i=1}^{n} \log p_{x_i} $$
然后,我们可以使用拉格朗日乘数法来最大化上式。设 $L(p)$ 为似然函数,$\lambda$ 为拉格朗日乘数。那么我们要求的 $\hat{p}$ 就是使得 $L(p) + \lambda(\sum_{i=1}^{k} p_i - 1)$ 最大的 $p$。
移项得到:
$$ \sum_{i=1}^{k} p_i + \lambda = \sum_{i=1}^{n} \frac{\partial}{\partial p_i} L(p) $$
这个式子的意思是,我们需要使得每个 $p_i$ 加上 $\lambda$ 之后的和为 $\frac{\partial}{\partial p_i} L(p)$ 的和。
下面我们来求导。设 $n_i$ 为第 $i$ 类的样本个数,则有:
$$ \frac{\partial}{\partial p_i} L(p) = \frac{\partial}{\partial p_i} \sum_{j=1}^{k} n_j \log p_j = \frac{n_i}{p_i} $$
所以有:
$$ \sum_{i=1}^{k} p_i + \lambda = \sum_{i=1}^{k} \frac{n_i}{p_i} $$
将 $\lambda$ 移到左边得到:
$$ \lambda = \sum_{i=1}^{k} \frac{n_i}{p_i} - \sum_{i=1}^{k} p_i $$
我们发现右边的式子是一个常数,所以我们希望最大化 $\lambda$。
回到最初的式子:
$$ L(p) + \lambda(\sum_{i=1}^{k} p_i - 1) $$
我们发现,当 $\lambda$ 最大时,$\sum_{i=1}^{k} p_i$ 也最大。因此,我们可以将 $\sum_{i=1}^{k} p_i$ 取为 $1$,得到:
$$ L(p) + \lambda(\sum_{i=1}^{k} p_i - 1) = L(p) + \lambda = \sum_{i=1}^{k} n_i \log p_i + \lambda $$
根据拉格朗日乘数法,对于任意一组 $(p, \lambda)$,都有:
$$ \frac{\partial L(p)}{\partial p_i} + \lambda = 0 $$
代入得到:
$$ \frac{n_i}{p_i} + \lambda = 0 $$
解得:
$$ p_i = \frac{n_i}{-\lambda} $$
再代回原式得到:
$$ L(p) + \lambda(\sum_{i=1}^{k} p_i - 1) = \sum_{i=1}^{k} n_i \log \frac{n_i}{-\lambda} + \lambda $$
因为 $\sum_{i=1}^{k} p_i = 1$,所以有:
$$ \sum_{i=1}^{k} n_i \log \frac{n_i}{-\lambda} + \lambda = \sum_{i=1}^{k} n_i \log \frac{n_i}{\sum_{j=1}^{k} n_j} + \sum_{j=1}^{k} n_j $$
得到:
$$ \lambda = \sum_{j=1}^{k} n_j $$
带回原式得到:
$$ p_i = \frac{n_i}{\sum_{j=1}^{k} n_j} $$
也就是说,对于多项分布的最大似然估计,$p_i$ 就是第 $i$ 类样本的出现次数除以总样本数。
这就是多项分布的最大似然估计的推导过程。
我草,我来学习的
多项分布的最大似然估计可以用来估计一组离散数据的概率分布。设有n个离散型随机变量$x_1,x_2,...,x_n$,其观测值分别为$x_1,x_2,...,x_n$,它们的概率分布为多项分布$Multinomial(n,p_1,p_2,...,p_k)$。最大似然估计就是要求在保证样本数据的观测概率最大的情况下,求出参数$p_1,p_2,...,p_k$的值。
具体来说,我们假设给定样本数据$x_1,x_2,...,x_n$,求出$p_1,p_2,...,p_k$的值使得观测数据的概率$P(x_1,x_2,...,x_n|p_1,p_2,...,p_k)$最大。
根据贝叶斯公式,$P(x_1,x_2,...,x_n|p_1,p_2,...,p_k)=\frac{P(p_1,p_2,...,p_k|x_1,x_2,...,x_n)P(x_1,x_2,...,x_n)}{P(p_1,p_2,...,p_k)}$。
由于在已知观测数据的条件下,$P(x_1,x_2,...,x_n)$和$P(p_1,p_2,...,p_k)$是常数,所以我们只需要使$P(p_1,p_2,...,p_k|x_1,x_2,...,x_n)$最大。
而$P(p_1,p_2,...,p_k|x_1,x_2,...,x_n)=\frac{P(x_1,x_2,...,x_n|p_1,p_2,...,p_k)P(p_1,p_2,...,p_k)}{P(x_1,x_2,...,x_n)}$,所以$P(p_1,p_2,...,p_k|x_1,x_2,...,x_n)=\frac{\prod_{i=1}^{k}p_i^{x_i}P(p_1,p_2,...,p_k)}{P(x_1,x_2,...,x_n)}$
将其取对数,得到:
$lnP(p_1,p_2,...,p_k|x_1,x_2,...,x_n)=ln(\prod_{i=1}^{k}p_i^{x_i})+lnP(p_1,p_2,...,p_k)-lnP(x_1,x_2,...,x_n)$
将$lnP(p_1,p_2,...,p_k)$看成是一个常数,$lnP(x_1,x_2,...,x_n)$看成是一个常数,那么我们要做的就是使$ln(\prod_{i=1}^{k}p_i^{x_i})$最大。
因为$ln(a\times b)=ln(a)+ln(b)$,所以:
$ln(\prod_{i=1}^{k}p_i^{x_i})=\sum_{i=1}^{k}ln(p_i^{x_i})=\sum_{i=1}^{k}x_iln(p_i)$
而$\sum_{i=1}^{k}x_i=n$,所以有:
$ln(\prod_{i=1}^{k}p_i^{x_i})=n\sum_{i=1}^{k}\frac{x_i}{n}ln(p_i)=nE[ln(p_i)]$
其中$E[ln(p_i)]$表示$ln(p_i)$的期望值。
最大似然估计的目标就是使$nE[ln(p_i)]$最大。
我们的目标是使$nE[ln(p_i)]$最大,即使$E[ln(p_i)]$最大。
设$L=nE[ln(p_i)]$,则有:
$L=\sum_{i=1}^{k}np_i[ln(p_i)]$
求解最优解时,我们通常采用求解方程的方法,即求出$\frac{\partial L}{\partial p_i}=0$的解。
所以我们要求出$\frac{\partial L}{\partial p_i}$的值。
$\frac{\partial L}{\partial p_i}=\frac{\partial}{\partial p_i}(\sum_{i=1}^{k}np_i[ln(p_i)])=n[ln(p_i)+1]$
设$\frac{\partial L}{\partial p_i}=0$,则有:
$ln(p_i)+1=0$
解得:
$p_i=\frac{1}{e}$
最后,我们得到了多项分布的最大似然估计的结果:$p_i=\frac{1}{e}$。
这就是多项分布的最大似然估计的推导过程。
我的想法
{\theta_1, \theta_2, \dots, \theta_K}$。
假设我们有一组样本 $x_1, x_2, \dots, x_n$,其中 $x_i$ 表示每个样本属于哪个类别。我们可以使用最大似然估计来估计多项分布的参数。
设 $L(\theta)$ 为模型参数 $\theta$ 的似然函数,则最大似然估计的目标是最大化 $L(\theta)$。
因此,我们可以求出每个样本属于每个类别的概率,并将这些概率相乘得到似然函数。即:
$$L(\theta) = \prod_{i=1}^{n} P(x_i|\theta)$$
其中 $P(x_i|\theta)$ 表示样本 $x_i$ 属于每个类别的概率。
我们可以使用极大似然法来求解最大似然估计。即:
$$\theta_{MLE} = \arg\max_{\theta} L(\theta)$$
因此,我们可以使用梯度上升法来求解最大似然估计。
$$\theta_i^{t+1} = \theta_i^t + \alpha \frac{\partial L(\theta)}{\partial \theta_i}$$
其中 $\alpha$ 是学习率,$t$ 表示迭代的次数。我们可以重复计算上式直到收敛为止。
最后,我们得到的 $\theta_{MLE}$ 就是多项分布的最大似然估计。
最大似然估计是常用的统计学方法,可以用来估计参数的值。多项分布是一种常见的概率分布,可以用来描述具有K个不同结果的随机事件的概率分布。
在求解多项分布的最大似然估计的过程中,通常需要根据样本数据求解似然函数,并找到似然函数的最大值,以此来估计参数的值。具体的推导过程可能会有所不同,但是大体思路是相似的。
下面是一种常见的多项分布最大似然估计的推导过程:
这是一种常见的多项分布最大似然估计的推导过程,但是也有其他的推导方法。总的来说,最大似然估计是一种通用的方法,常用于参数估计和模型拟合。它的优点在于简单易用,能够得到较为精确的估计值。但是,它也有一些缺点,例如对于样本数据的分布有较大的假设,并且不能很好地处理样本数据的噪声。
最大似然估计是一个广泛使用的方法,如果你想深入了解最大似然估计,可以参考相关的书籍或文献,例如《统计学习方法》这本书。
在推导多项分布的最大似然估计过程时,我们可以遵循如下步骤:
1、确定数据的分布模型。对于多项分布,我们可以使用如下模型:
P(x1,x2,...,xn) = Π pi^xi (i=1,2,...,n)
其中,x1,x2,...,xn是离散型随机变量,pi是每一种取值的概率。
2、确定数据的样本数据。我们可以通过实验或者观察得到的数据来确定样本数据。
3、计算样本数据的似然函数。我们可以使用如下公式来计算样本数据的似然函数:
L(p1,p2,...,pn) = Π pi^xi (i=1,2,...,n)
4、计算最大似然估计值。我们可以使用最大化似然函数的方法来计算最大似然估计值。具体来说,我们可以使用求导的方法来解决这个问题。
5、求解极大似然估计值。我们可以使用数学工具(例如数值解法)来求解极大似然估计值。在这一步中,我们需要解决求导结果为零的方程。
6、检验模型的合理性。最后,我们需要通过检验模型的合理性来评估求得的最大似然估计值的可靠性。常用的检验方法包括卡方检验和假设检验。
希望这些信息对你有帮助!望采纳。
都是大佬啊 膜拜了