噪声对比估计(负样本采样)

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;\theta)=\frac{f(x;\theta)}{Z(\theta)}, \]

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

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

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

主要内容

这里, 我们用\(p(x)=p(x;\theta^*)\)来表示样本数据\(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;\theta)=p(x;\theta). \]

相应的后验概率为

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

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

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

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

若我们记

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

注: 逻辑斯蒂回归.

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

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

\[\tag{1} J(\theta) = \mathbb{E}_{x \sim p(x)} \log \sigma(x;\theta) + \mathbb{E}_{x\sim q(x)} \log (1-\sigma(x;\theta)). \]

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

殊途同归

观察(1)式, 先展开得

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

等价于

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

等价于最大化

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

\[-\mathbb{E}_{x\sim p(x)} D_\mathrm{KL}(\sigma (x)\| \sigma(x;\theta))- \mathbb{E}_{x\sim q(x)} D_\mathrm{KL}(\sigma(x)\| \sigma(x;\theta)). \]

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

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

\[G(x;\theta)=G(x), \]

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

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

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

\[p(x;\theta^*)=p(x). \]

则便是我们想要的结果.

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

posted @ 2020-09-24 21:19  馒头and花卷  阅读(770)  评论(1编辑  收藏  举报