数据传输视角下的语言模型和VAE
生成式模型可以抽象成数据传输游戏:Alice要向Bob发送一些数据,而他们的目标是发送的损失 尽量小,所谓损失就是编码的位数 。 数据传输视角下的语言模型 假设Alice和Bob有一个共同的词表$\mathcal{V}$。现在,Alice要给Bob发送一段包含$n$个token的文本$\boldsymbol{x}=(x_1, \cdots, \boldsymbol{x}_n)$。 注意,Alice并非将整段文本直接发送给Bob,而是逐个token发送(与LM的工作方式一样)。假设Bob能够根据已经接收到的token预测Alice下一个将要发送的token,也就是说Bob有一个$\mathcal{V}$上的分布: $$P(x_i|x_{<i})$$ 那么发送每个token的损失就是根据条件概率分布$p$对这个token进行最优编码的位数,即条件概率的负对数,而发送这段文本的损失等价于发送所有token的损失: $$-\sum_{i=1}^{n}\log P(x_i|x_{<i})=-\log\prod_{i=1}^{n} P(x_i|x_{<i})=-\log P(\boldsymbol{x})$$ 注:以上的对数函数$\log$均以2为底。 没错,根据以上数据传输游戏的目标,我们可以推出语言模型的损失函数。这个框架同样适用于VAE。 VAE的损失函数 $$ \begin{align*} -\log P(\boldsymbol{x}) &= -\log\int P(\boldsymbol{x},\boldsymbol{z})d\boldsymbol{z} \\ &=-\log\int P(\boldsymbol{x},\boldsymbol{z})\frac{P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})}{P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})}d\boldsymbol{z} \\ &=-\log\mathop{\mathbb{E}}\limits_{ P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})} \frac{P(\boldsymbol{x},\boldsymbol{z})}{P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})} \\ &\leq -\mathop{\mathbb{E}}\limits_{ P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})}[\log P_{\boldsymbol{\phi}}(\boldsymbol{x}|\boldsymbol{z}) + \log \frac{P(\boldsymbol{z})}{P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})}] \\ &=-\mathop{\mathbb{E}}\limits_{ P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})}\log P_{\boldsymbol{\phi}}(\boldsymbol{x}|\boldsymbol{z}) + \int P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})\log\frac{P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})}{P(\boldsymbol{z})} d\boldsymbol{z} \\ &=-\mathop{\mathbb{E}}\limits_{ P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})}\log P_{\boldsymbol{\phi}}(\boldsymbol{x}|\boldsymbol{z}) + \text{KL}[P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})|P(\boldsymbol{z})] \end{align*} $$ 注: 此处$P(\cdot;\boldsymbol{\theta})$代表使用参数为$\boldsymbol{\theta}$的神经网络对$P(\cdot)的$估计。另外, 带有误差项的推导可参考文献[1]中的公式9-16。 总的来说,VAE的优化目标包含两个部分,分别是在最大化样本$x$的条件概率似然,以及最小化隐变量$z$的后验分布和先验分布的KL散度。我们同样可以从数据传输的角度理解VAE。 ...