半监督VAE文本分类中对无标签以及有标签数据的处理区别

论文笔记:https://cloud.tencent.com/developer/news/43321

Semi-supervised Learning with Deep Generative Models-------2014   NIPS

参考的复现代码:https://github.com/wead-hsu/semi-vae

 

1.对于有标签数据

先求重构损失,再加分类损失,要注意的点就是分类器的输出不用输入到vae中用作训练

半监督VAE文本分类中对无标签以及有标签数据的处理区别_第1张图片

注意其中重构损失中,标签信息分别在encoder和decoder中都输入进去

半监督VAE文本分类中对无标签以及有标签数据的处理区别_第2张图片

加上的分类器损失如下,重点是高亮这句

半监督VAE文本分类中对无标签以及有标签数据的处理区别_第3张图片

 

2.对于无标签数据

重点是注意先用分类器输出unlabel的类别标签,然后输入VAE求重构误差(即使用了分类器输出作为VAE输入)

首先预测无标签数据的类别(即分类器的输出)

然后假设真实的类别分别为总共的类别的每一种(比如说数据一共有三种类别,我们分别按顺序假设第一种是真实的,然后计算在第一种类别是真实的情况下的重构损失,然后是假设第二种是真实的。。。。。)

最后将预测的无标签数据的类别概率分别与每一种假设真实情况的重构误差相称,并加权求和

半监督VAE文本分类中对无标签以及有标签数据的处理区别_第4张图片

 

 

 

你可能感兴趣的:(VAE的处理trick)