李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN

Feature Extraction

本节介绍的GAN,可以用于做feature extraction,课程pdf和video。

Info GAN

之前训练的G,输入是一个latent,然后,就会输出对应的OBJECT。我们的假设是不同维度对应着不同的特征,而事实上,这种关系可能是非常复杂的,不易知道的。
李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第1张图片
下面是InfoGAN的架构:
上面与就是传统的GAN,差别是输入z可以视为两部分组成:c和z’,同时,引入了一个classifier,这个classifier和generator组合起来,类似与autoencoder(输入是c,转成一幅图片,再预测为c)。
discriminator与classifier可以共享参数,除了最后一层不同。
李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第2张图片
再将输入的一部分划归为c,并且,训练过程中,要求classifier也可以从生成的x中识别出对应的c。这种思路就使得c与x的某些特征有了对应关系,并不是c本身就指定了x的某些特征,而是这种架构的设计,使得c与x的某些特征存在了关系。
李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第3张图片
下面是论文中的实验效果:
李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第4张图片
图a,修改第一维,会发现数字发生了变化
图b,修改原先的GAN中的第一维,基本没有什么变化
图c,修改第二维,数字的角度发生变化
图d,修改第三维,笔画的粗细发生变化

VAE-GAN

VAE-GAN可以视为使用GAN来增强VAE,也可以视为使用VAE来增强GAN。
李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第5张图片
对于前面的VAE来说,discriminator可以帮助判断生成的x是否像真实的x。
对于后面的GAN来说,encoder可以减少GAN训练过程中,从随机的z开始训练出真实图片的难度。

算法:
李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第6张图片

BiGAN

李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第7张图片
李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第8张图片

李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第9张图片
看看上面的描述,感觉也是可以用autoencoder来代替啊
但是,实际上是不行的。只有当都达到最优解的时候,两者在理论上是一样的。但是实验中会发现,不可能达到理论最优解。
BiGAN输入一只鸟的图片,输出会是另外一只鸟。这是autoencoder做不到的。
李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第10张图片

Triple GAN

Semi-supervised Learning中的一种
李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第11张图片
不看最左边的Classifier的时候,D和G组成的就是原先的Conditional GAN。

Domain-adversarial training

像下面slide中给出的例子,黑白手写体数字与彩色手写体数字识别的问题,属于不同的domain。我们想有一个feature extractor,抽取的feature,是相同的distribution。这样,就有可比性了。
李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第12张图片

李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第13张图片
语音辨识的应用:将声音信号中的内容信息和音色特征分开
下面的slide中,Phonetic Encoder是负责内容特征,Speaker Encoder是负责音色特征。
李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第14张图片
在使用过程中,不同的说话人说的声音,经过音色的feature extractor处理以后,产生的特征之间,距离大于指定的阈值时,就被认为是来自不同的人。
李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第15张图片
受到domain-adversarial training的启发,引入speaker classifier作为discriminator。
Phonetic Encoder的目的是使得生成的声音特征能够骗过Speaker Classifier,而Speaker Classifier的目标是识别出不同的人。这就是GAN的思想了~
当Phonetic Encoder做到骗过Speaker Classifier时,也就是说,其抽取的特征中已经没有不同人物的声音特征了。换个角度,Speaker Encoder中包含的就是不同人的声音特征。
李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第16张图片

李宏毅《GAN Lecture》学习笔记7 - Info GAN,VAE-GAN,BiGAN_第17张图片

你可能感兴趣的:(GAN学习笔记)