软装潢.企业网站建设/新站seo竞价
Noise-contrastive estimation(NCE)是一种估计统计模型参数的方法。
基本思想是用非线性逻辑回归(nonlinear logistic regression)区分观测数据和一些人为产生的噪声数据。
作者证明该方法的估计量是一个一致(收敛)估计量,并分析了渐近方差。
特别地,该方法可以直接用于非归一化模型的参数估计,即概率密度函数积分不为1的模型。归一化常数可以像任何其他参数一样进行估计。
NCE的估计量
用X=(x1,…,xT)X=(\mathbf{x}_1, \ldots, \mathbf{x}_T)X=(x1,…,xT)表示观测数据,我们用分布pm(⋅;θ)p_m(\cdot; \theta)pm(⋅;θ)去拟合。Y=(y1,…,yT)Y=(\mathbf{y}_1, \ldots, \mathbf{y}_T)Y=(y1,…,yT)表示任意的噪声数据,其符合分布pn(⋅)p_n(\cdot)pn(⋅)。估计量θ^T\hat{\theta}_Tθ^T被定义为最大化下面目标函数的θ\thetaθ:
JT(θ)=12T∑tln[h(xt;θ)]+ln[1−h(yt;θ)](1)J_T(\theta) = \frac{1}{2T} \sum_t \ln[h(\mathbf x_t;\theta)] + \ln[1-h(\mathbf y_t;\theta)] \tag{1} JT(θ)=2T1t∑ln[h(xt;θ)]+ln[1−h(yt;θ)](1)其中
h(u;θ)=11+exp[−G(u;θ)]G(u;θ)=lnpm(u;θ)−lnpn(u)h(\mathbf u;\theta) = \frac{1}{1+\exp[-G(\mathbf u; \theta)]}\\ G(\mathbf u; \theta) = \ln p_m(\mathbf u; \theta) - \ln p_n(\mathbf u) h(u;θ)=1+exp[−G(u;θ)]1G(u;θ)=lnpm(u;θ)−lnpn(u)
logistic regression的函数是r(x)=11+exp(−x)r(x) = \frac{1}{1+\exp(-x)}r(x)=1+exp(−x)1,那么h(u;θ)=r(G(u;θ))h(\mathbf u;\theta) = r(G(\mathbf u; \theta))h(u;θ)=r(G(u;θ))。
公式(1)是区分数据来自X或者噪声Y的logistic regression的log-likelihood。
NCE的思想就是,通过区分数据和噪声,可以学习到数据的分布。
作者证明了估计量θ^T\hat{\theta}_Tθ^T的一致性:
噪声分布的选择
噪声分布应该尽可能的和数据分布相似,否则的话分类问题太过于简单,算法学习不到符合真实数据分布的参数。
可以先学习一个基础的模型去拟合数据分布,再将这个基础模型作为噪声分布。
参考
AISTATS 2010《Noise-contrastive estimation: A new estimation principle for unnormalized statistical models》