查看原文
其他

【杂谈】如何系统性地学习生成对抗网络GAN

言有三 有三AI 2020-09-07


文/编辑 | 言有三


作为被誉为“下一代深度学习技术”,同时已经在工业界能够真正成熟稳定应用的GAN,有三AI公众号很早之前就开始关注相关内容,从理论到实践都做出了一些总结,并且在持续进行中,本次简单介绍一下相关内容供有需要的同学。


1 了解GAN基本原理和应用


有三最早写的一篇GAN相关的文章就是一篇综述,虽然因为后来比较忙,一直没有更新,但是在这个综述上中,已经介绍了GAN的来龙去脉,优化目标,以及GAN的图像生成,风格迁移,超分辨等各类应用,有超过30篇参考文献,适合对GAN感兴趣的初学者。

有三说GANs



2 GAN的重要理论


GAN的重点和难点一方面是它的理论,包括优化目标,评测指标。另一方面是各类工程训练技巧。10月份有三同一个实验室的亲师弟郭晓洲在自身扎实的数学系背景知识的支持下,在公众号开设了《GAN优化》专栏,从GAN的基本理论,f散度度量和Wasserstein距离,到GAN与动力学,各种GAN的正则项的优劣,模式崩溃问题,进行了细致的总结,浓浓的数学味道,希望你会喜欢。

GAN优化目标



3 GAN实战专栏


好记星不如烂笔头,终究还是要靠实战,于是我们在有三AI知识星球的网络结构1000变中添加了GAN专栏,内容会包括核心思想解读,部分包括代码解读和实战,形式如下:

有三AI知识星球-网络结构1000变

SAGAN

SAGAN(Self-Attention Generative Adversarial Networks)是attention机制在GAN中的应用,由于捕获了全局信息,因此生成的效果大大提升。

作者/编辑 言有三

网络结构如上,就是在前一层的feature maps 上加入attention机制,包含4个1*1的变换,f,g,h,v。


假如输入通道数为C,attention的位置为N,输出为C',f和g用于产生attention map,尺寸都是C'×C,attention map的大小就是C'×N,h尺寸也是C'×C,v尺寸是C×C',最后与x进行加权,式子如下。

γ的值初始化为0,在训练中逐渐增大权重,其原因是刚开始attention训练的不好,随着训练得原来越好之后再加大它的权重。

上图展示了生成的结果以及取生成器最后一层对应的attention结果展示,可以发现attention确实很有效。作者们的开源实现如下, https://github.com/brain-research/self-attention-gan,有机器的同学可以一试。


参考文献

[1] Zhang H, Goodfellow I, Metaxas D, et al. Self-attention generative adversarial networks[J]. arXiv preprint arXiv:1805.08318, 2018.

一些内容预览如下:

当然GAN只是知识星球里很小的一部分内容,整个生态的介绍大家可以阅读下面文章,添加有三微信Longlongtogo加入可有优惠。

有三知识星球生态介绍


如今你就是只对GAN感兴趣,不想加入星球那怎么办呢?可以考虑一下有三在今日头条开设的《百战GAN》图文专栏,目前只需19.9,很快就会涨价,扫码可以了解详情,一定会更新超过100期内容。

下面是快捷跳转链接,跳转不了就去头条搜索吧。

祝大家在GAN的坑里越陷越深,取得成绩!


转载文章请后台联系

侵权必究



往期精选

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存