zoukankan      html  css  js  c++  java
  • pattern recognition and machine learning 2.2 Multinomial Variables

    (源自:http://isip.buaa.edu.cn/lichen/?p=376

    beta分布用于对二值随机变量建模,比如抛硬币实验。但如果随机变量可以取多个互斥的值呢?比如可能有K种选择。对于某个可以取K种互斥状态的随机变量我们可以用一个k维向量mathbf{x}来表示,其中一个元素x_k取1,剩下的位置取0。例如,如果我们有一个变量可以有K=6种状态,一个观察值恰好对应x_3=1,那么mathbf{x}可以表示成  

    mathbf{x}=(0,0,1,0,0,0)^Tquadquad(2.25)

    这种向量满足sum_{k=1}^K x_k=1。如果我们记x_k=1的概率为参数mu_k,那么mathbf{x}的分布就是:a

    p(mathbf{x} lvert boldsymbol{mu})=prod_{k=1}^K mu_{k}^{x_k}qquad(2.26)

    其中的boldsymbol{mu}=(mu_1,cdots,mu_K)^T,而参数mu_k满足mu_k geq 0 且 sum_{k=0}^K mu_k = 1,因为它们代表概率。(2.26)的分布可以看成伯努利分布的一个多值泛化。可以看到这个分布式满足概率的归一化的:

     sum_mathbf{x} p(mathbf{x} lvert boldsymbol{mu} )=sum_{k=1}^K mu_k=1qquad(2.27)

     同时,

    mathbb{E}[mathbf{x} lvert boldsymbol{mu}]=sum_mathbf{x}p(mathbf{x} lvert boldsymbol{mu})mathbf{x}=(mu_1,cdots,mu_K)^T=boldsymbol{mu}qquad(2.28)

     考虑一个包含N个独立观察值mathbf{x}_1,cdots,mathbf{x}_N的数据集mathcal{D}相应的似然函数:

    p(mathcal{D} lvert boldsymbol{mu})=prod_{n=1}^Nprod_{k=1}^{K}mu_k^{x_{nk}}=prod_{k=1}^Kmu_k^{(sum_n x_{nk})}=prod_{k=1}^{K}mu_k^{m_k}qquad(2.29)

     可以看出似然函数和数量K有关:

    m_k=sum_{n} x_{nk} qquad(2.30)

     实际上是表示观察数据中x_k为1的观察值的个数。这在概率论中称为充分统计量。

    为了找出boldsymbol{mu}的最大似然估计值,我们需要对lnp(mathcal{D} lvert boldsymbol{mu})求极大值,并满足所有mu_k之和为1这个约束。引入拉朗格日乘子lambda,并极大化:

    sum_{k=1}^K m_k ln mu_k + lambda(sum_{k=1}^K mu_k - 1)qquad(2.31)

     对(2.31)式以mu_k为自变量求导并令其导数为0,可得:

     mu_k=-m_k/lambdaqquad(2.32)

     把(2.32)带入约束sum_k mu_k=1得到lambda=-N,这样我们得到最大似然的解:

    mu_k^{ML}=frac{m_k}{N}qquad(2.33)

    这个实际上式N个观察值中那些x_k=1的实例所占百分比。

     我们考虑给出mu和N个数据观察值时,m_1,cdots,m_K的联合概率分布。从(2.29)我们得到:

    Mult(m_1,cdots,m_K lvert boldsymbol{mu},N)=begin{pmatrix}N\m_1,cdots,m_K end{pmatrix} prod_{k=1}^Kmu_k^{m_k}qquad(2.34)

    这就是多项式分布,归一化系数是把N个对象划分成K组大小分别为m_1,cdots,m_K的可能划分总数。即:

    begin{pmatrix}N\m_1,cdots,m_K end{pmatrix} =frac{N!}{m_1!m_2!cdots m_K!}qquad(2.35)

    注意到变量m_k需要满足:

    sum_{k=1}^K m_k=Nqquad(2.36)
    **************************************************************
    我喜欢程序员,他们单纯、固执、容易体会到成就感;面对困难,能够不休不眠;面对压力,能够迎接挑战。他们也会感到困惑与傍徨,但每个程序员的心中都有一个比尔盖茨或是乔布斯的梦想,用智慧把属于自己的事业开创。其实我是一个程序员
    [=.=]
  • 相关阅读:
    sql 日期格式化 比较全面
    SQL Server 2005 中的树形数据处理示例1
    Web网站的性能测试工具
    js实现时分秒
    sql查询远程数据库的表的数据并填充到本地数据库的表
    Windows 2003操作系统十四招加速大法
    window2003 server的一些优化设置_windows 2003
    解决html向aspx页面传值汉字乱码问题
    js快捷键大全 http://www.zhangxinxu.com/wordpress/?p=1667
    iis 重启命令
  • 原文地址:https://www.cnblogs.com/kevinGaoblog/p/2529028.html
Copyright © 2011-2022 走看看