1.算法概述
假设X是从真实的数据(或语料库)中抽取的样本,其服从一个相对可参考的概率密度函数P(d),噪音样本Y服从概率密度函数为P(n),噪音对比估计(NCE)就是通过学习一个分类器把这两类样本区别开来,并能从模型中学到数据的属性。
模型原始论文:Noise-contrastive estimation: A new estimation principle for unnormalized statistical models
tensorflow引用:Candidate Sampling Algorithms Reference
2.算法要点与推导
2.1损失函数定义:
\[ \text{让$U=X\bigcup Y={u1,u2,⋯,u_{T_d}+u_{T_n}}$,其中$T_d$为数据样本个数,$T_n$为噪音分布的样本个数。那么我们认为$u_t$服从(0-1)分布,给每个$u_t$一个标签$C_t$,则} \]
\[ C_t= \begin{cases} 1, & \text{if $u_t \in X$} \\ 0, & \tex