zoukankan      html  css  js  c++  java
  • 噪声对比估计(负样本采样)

    Gutmann M U, Hyvarinen A. Noise-contrastive estimation: A new estimation principle for unnormalized statistical models[C]. international conference on artificial intelligence and statistics, 2010: 297-304.

    @article{gutmann2010noise-contrastive,
    title={Noise-contrastive estimation: A new estimation principle for unnormalized statistical models},
    author={Gutmann, Michael U and Hyvarinen, Aapo},
    pages={297--304},
    year={2010}}

    在处理参数化概率密度的时候, 往往需要处理配分函数, 即

    [p(x; heta)=frac{f(x; heta)}{Z( heta)}, ]

    (Z( heta))是和参数( heta)有关的.
    继续往下走, 一般估计参数, 最普通的就是极大似然估计, 即

    [max_{ heta} sum_{i=1}^N log f(x_i; heta)-Nlog Z( heta), ]

    (Z( heta))有显示表达式的时候, 上面的玩意儿还能弄, 故一般情况下, 这种估计方法就不是很合适了, 本文另辟蹊径, 引入了负采样来应对这一问题.

    主要内容

    这里, 我们用(p(x)=p(x; heta^*))来表示样本数据(x)的真实的分布. 令(x)采样自(p(x))的为真实的样本((c=1)), 即我们所观测到的样本, 而采样自另一个分布(q(x))的为样本为伪样本((c=0)), 不妨设(P(c=0)=P(c=1)=frac{1}{2}), 则

    [p(x|c=1)=p(x), quad p(x|c=0)=q(x), ]

    对应的估计为

    [p(x|c=1; heta)=p(x; heta). ]

    相应的后验概率为

    [P(c=1|x; heta)=frac{p(x; heta)}{p(x; heta)+q(x)}, ]

    [P(c=0|x; heta)=frac{q(x)}{p(x; heta)+q(x)}. ]

    自然, 我们可以通过极大似然估计(关于随机变量(c))来估计参数( heta):

    [ell( heta)=sum_{i=1}^N c_i log P(c=1|x; heta)+(1-c_i)log P(c=0|x; heta). ]

    若我们记

    [G(x; heta) = log p(x; heta)- log q(x), sigma(x; heta) = frac{1}{1+exp[-G(x; heta)]}. ]

    注: 逻辑斯蒂回归.

    [P(c=1|x; heta)=sigma(x; heta), P(c=0|x; heta)=1-sigma(x; heta). ]

    更一般的(通过大数定律)

    [ ag{1} J( heta) = mathbb{E}_{x sim p(x)} log sigma(x; heta) + mathbb{E}_{xsim q(x)} log (1-sigma(x; heta)). ]

    理解是很自然的, 就是我们希望参数( heta)使得真实的样本与虚假的样本是尽可能可分的(逻辑斯蒂回归).

    殊途同归

    观察(1)式, 先展开得

    [int p(x) log sigma(x; heta) + q(x) log (1-sigma(x; heta)) mathrm{d}x, ]

    等价于

    [int [p(x)+q(x)] [sigma(x)log sigma(x; heta)+(1-sigma(x)log (1-sigma(x; heta)] mathrm{d} x, ]

    等价于最大化

    [-int [p(x)+q(x)] [sigma(x)log frac{sigma(x)}{sigma(x; heta)}+(1-sigma(x)log frac{1-sigma(x)}{(1-sigma(x; heta)}] mathrm{d} x, ]

    [-mathbb{E}_{xsim p(x)} D_mathrm{KL}(sigma (x)| sigma(x; heta))- mathbb{E}_{xsim q(x)} D_mathrm{KL}(sigma(x)| sigma(x; heta)). ]

    注: 这里(sigma)本身不是一个分布, (sigma)(1-sigma)共同表达了(c)的分布.

    因为KL散度非负, 且当且仅当(sigma(x; heta) = sigma(x))的时候取0, 故最优解为

    [G(x; heta)=G(x), ]

    [frac{p(x; heta)}{p(x; heta)+q(x)} = frac{p(x)}{p(x)+q(x)}, ]

    [q(x)[p(x; heta)-p(x)]=0. ]

    故, 只需要满足(p(x))非零的时候, (q(x))也非零(显然高斯分布是一定适用的), 则通过最大化(1)得到的解是唯一的且满足

    [p(x; heta^*)=p(x). ]

    则便是我们想要的结果.

    另外, 作者说, 噪声分布(q(x))最好和(p(x))比较接近, 这样子由于比较难以区分两类样本, 可以使得判别器(逻辑斯蒂回归)更好的抓住数据的特征.

  • 相关阅读:
    把特斯拉送上火星的程序员,马斯克!
    简练软考知识点整理-激励理论之成就动机理论
    简练软考知识点整理-激励理论之期望理论
    简练软考知识点整理-激励理论之XY理论
    简练软考知识点整理-激励理论之赫兹伯格双因素理论
    2017白领年终奖调查出炉,程序员扎心了!
    简练软考知识点整理-项目人力资源管理之马斯洛需要层次理论
    fsck获取文件的block信息和位置信息
    Snapshots常用命令
    Inceptor Parse error [Error 1110] line 102,24 SQL问题
  • 原文地址:https://www.cnblogs.com/MTandHJ/p/13726739.html
Copyright © 2011-2022 走看看