记录一个失败的GAN 实验以及后续计划

我的想法是:让generator能够根据label来生成对应的图片、比如label为1、生成1的图片、而不是随机作成.

为了实现这个目标、我给discriminator的输入做了些手脚.

vanilla 모형리, D적输入是单纯的图片向量,输出是图片为真的 가능성, 很简单.但是为了能强迫generator能够根据label生成图片、我给辨别器开了作폐、输入变成了(图片向量+对应label的embedding)、用torch.cat做一个简单.

这样一来如果発生器不根据label embedding 생성对应图片向量,就会很辻松地被辨别器识破.

其实这样的结构——concat了一个辅助向量——给我一种感觉就是很像可控VAE、更深入的分析我现在还没有时间做、总之先将结果:



这是epoch 200적结果:



我让电脑挂了一晚上、然后回去睡觉、心想明天就能坐享其成结果각是这副模样.总之分析 하하 출진적 원인 吧, 先上结构图.



我之前设想的分工如下:
Generator: 제고discrimination loss
Discriminator: 하강(discrimination loss + classification loss)

问题点1: 여분 classifier



现在想想我实在不明白定义一个classification loss的意義何在.也许当时的我想让discriminator同时学习鉴别真假和辨别标签、所以定义了两个输出层、然而仔细想想、鉴别劇像.总而言之我会把classfier去掉再训练一次.

问题点2: 错误的noise添加 방식



然后我また对照了一遍网络上的实现 GAN from scratch而之前我的实现是, 让label embedding作为第一层输入, 然后在中间层加上一个随机变量.



问题点3:loss定义方式



这是我不大愿意想的、总之我会把它作为一个备考.

지금 천취 续续 修复实验吧.

좋은 웹페이지 즐겨찾기