机器学习: 离散变量的概率分布

二元分布

先介绍最简单的一种二元概率分布,比如抛硬币,只有两种可能。假设随机变量为x,那么x{0,1}, x=1 表示硬币是字朝上,x=0 表示硬币是
花朝上。p(x=1)=μ 表示 x=1 的概率为 μ, 那么 p(x=0)=1μ, 其中,μ 满足 0u1,那么随机变量x 的概率分布满足:

B(x|μ)=μx(1μ)1x

这个称为伯努利分布,可以很容易得到该分布的期望与方差为:

E(x)=μvar(x)=μ(1μ)

如果,硬币抛了很多次,我们有了很多的观测数据 D={x1,x2,...,xN},那么我们可以得到如下的似然函数:

p(D|μ)=i=1Np(xi|μ)=i=1Nμxn(1μ)1xn

如果要根据观测数据估计参数μ, 可以利用最大似然估计,对上式取对数,可以得到:

lnp(D|μ)=i=1Nlnp(xi|μ)=i=1N{xilnμ+(1xi)ln(1μ)}

可以得到参数μ 的最大似然估计为:

μML=1Ni=1Nxi

从古典统计的角度来看,其实就是观测数据中 x=1 所占的比例。这种估计在观测数据少的时候,会有问题,比如如果我们抛了三次硬币得到三次观测数据 x1,x2,x3,如果三次都是 x=1,那么我们估计的参数 μ 为1,意味着第四次抛硬币,x=1的概率为百分之百,这似乎违反我们一般的直觉,我们可以认为第四次抛硬币,x=1的概率大于百分之五十,但不应该是百分之百。这是最大似然估计的缺陷,因为最大似然估计只根据观测数据来确定参数。如果要得到更合理的估计,应该要对参数μ 给定一个先验分布,然后再利用最大后验概率估计来确定参数。具体的细节可以参考下面的文献。

多元分布

伯努利分布是描述二元分布的,但是有的时候,一个变量可能不止两种状态,比如扔色子,从1到6会有6种可能,这种是多元分布。对于这种多元分布,有种简单的描述就是用一个只包含0与1的向量x来表示,这个向量中只含有一个1,其它都是0,比如 x={0,0,0,1,0,0} 表示色子的点数为4,一个包含K个状态的随机变量,可以用一个维度为K的向量来表示,其满足 Kk=1xk=1,每个状态的概率为μk, 并且 Kk=1μk=1

向量x的概率分布满足:

p(x|μ)=k=1Kμxkk

给定一组观测数据D,含有N个独立的观测值 x1,x2,...,xN, 那么对应的似然函数为:

p(D|μ)=n=1Nk=1Kμxnkk=k=1Kμ(nxnk)k=k=1Kμmkk

利用最大似然估计,可以得到相应的参数 μMLk 为:

μMLk=mkN

其中,mk 表示观察数据 x中,第 k 分量为 1的个数,N 表示总的观察数据的个数。

事实上,多元分布还可以表示另外一种概率分布,上面我们讨论的是一个变量可能有多个状态,而且每个状态是互斥的。还有一种情况是多个变量同时出现,但是每个变量依然只有两种状态。比如,我们同时扔6个硬币,每个硬币只有两种状态:字或者花。如果一次抛六个硬币,那么每次这六个硬币的概率分布可以表示为:

p(x|μ)=k=1Kμxkk(1μk)(1xk)

x={x1,x2,...x6}, 其中xk 表示第 k 个硬币的状态 (0或者1), μk 表示第k 个硬币字朝上(xk=1)的概率。我们可以看到,0μk1, 6k=1μk1。虽然两者的形式看起来很像,但是所表达的含义却完全不同。

原文地址:https://www.cnblogs.com/mtcnn/p/9412484.html