FAGAN:完全注意力机制(Full Attention)GAN,Self-attention+GAN

近期,人工智能专家Animesh Karnewar提出FAGAN——完全注意力机制(Full Attention)GAN,实验的代码和训练的模型可以在他的github库中找到:

https://github.com/akanimax/fagan。

这个fagan示例使用了我创建的名为“attnganpytorch”的包,该包在我的另一个存储库中可以找到:

https://github.com/akanimax/attnganpytorch。

作者 | Animesh Karnewar

编译 | 专知

整理 | Mandy

FAGAN: Full Attention GAN

介绍

在阅读了SAGAN (Self Attention GAN)的论文后,我想尝试一下,并对它进行更多的实验。由于作者的代码还不可用,所以我决定为它编写一个类似于我之前的“pro-gan-pth”包的一个package。我首先训练了SAGAN论文中描述的模型,然后意识到,我可以更多地使用基于图像的注意机制。此博客是该实验的快速报告。

SAGAN 论文链接:

https://arxiv.org/abs/1805.08318

Full Attention 层

SAGAN体系结构只是在生成器和DCGAN体系结构的判别器之间添加了一个self attention层。此外,为了创建用于self attention的Q、K和V特征库,该层使用(1 x 1)卷积。我立即提出了两个问题:注意力(attention)能否推广到(k x k)卷积? 我们能不能创建一个统一的层来进行特征提取(类似于传统的卷积层)并同时进行attention?

我认为我们可以使用一个统一的注意力和特征提取层来解决这两个问题。我喜欢把它叫做full attention层,一个由这些层组成GAN架构就是一个Full Attention GAN.。

图2:我所提出的full attention层

图2描述了所提出的full attention层的体系结构。 正如您所看到的,在上面的路径中,我们计算传统的卷积输出,在下面的路径中,我们有一个注意力层,它泛化成(k x k)卷积滤波器,而不仅仅是(1 x 1)滤波器。残差计算中显示的alpha是一个可训练的参数。

现在为什么下面的路径不是self attention? 其原因在于,在计算注意力图(attention map)时,输入首先由(k×k)卷积在局部聚合,因此不再仅仅是self attention,因为它在计算中使用了一个小的空间邻近区域。 给定足够的网络深度和滤波器大小,我们可以将整个输入图像作为一个接受域进行后续的注意力计算,因此命名为:全注意力(Full Attention)。

我的一些想法

我必须说,当前的“Attention is all you need”的趋势确实是我这次实验背后的主要推动力。实验仍在进行中,但是我真的很想把这个想法说出来,并得到进一步的实验建议。

我意识到训练模型的alpha残差参数实际上可以揭示注意力机制的一些重要特征; 这是我接下来要做的工作。

attnganpytorch包中包含一个在celeba上训练的SAGAN示例,以供参考。该package包含了self attention、频谱归一化(normalization)和所提出的full attention层的通用实现,以供大家使用。所有这些都可以用来创建您自己的体系结构。

原文链接:

https://medium.com/@animeshsk3/fagan-full-attention-gan-2a29227dc014

-END-

原文发布于微信公众号 - 专知(Quan_Zhuanzhi)

原文发表时间:2018-08-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏极客慕白的成长之路

高度不平衡的数据的处理方法

1552
来自专栏CVer

[计算机视觉论文速递] ECCV 2018 专场3

Amusi 将日常整理的论文都会同步发布到 daily-paper-computer-vision 上。名字有点露骨,还请见谅。喜欢的童鞋,欢迎star、for...

800
来自专栏专知

伯克利新论文 | 合成GAN(Compositional GAN)

【导读】伯克利大学今日发表一篇最新论文,改进生成对抗网络GAN,提出了一个名为“Compositional GAN”的模型,将GAN框架中的对象组合建模为一个s...

1370
来自专栏玉树芝兰

如何用 Python 和深度迁移学习做文本分类?

在《如何用 Python 和 fast.ai 做图像深度迁移学习?》一文中,我为你详细介绍了迁移学习给图像分类带来的优势,包括:

2132
来自专栏AI研习社

怎样在树莓派上轻松实现深度学习目标检测?

这个现实世界造成了很多挑战,比如数据有限、只有微型的计算机硬件(像手机、树莓派)所造成的无法运行复杂深度学习模型等。这篇文章演示了如何使用树莓派来进行目标检测。...

1863
来自专栏机器之心

16岁高中生夺冠Kaggle地标检索挑战赛!而且竟然是个Kaggle老兵

1933
来自专栏机器之心

学界 | Bengio等提出稀疏注意力回溯:长期依赖关系建模的更一般化机制

人类对与当前心理状态相关的很久之前的事件有很强的记忆能力(Ciaramelli et al., 2008)。大多数关于记忆的实验和理论分析都集中在理解形成记忆和...

881
来自专栏人工智能头条

利用机器学习进行恶意代码分类

6314
来自专栏BestSDK

Google推出黑科技:无需写代码,3分钟学会机器学习

简单的说,Teachable Machine是一个基于浏览器的机器学习演示实验,用一个叫做Deeplearn.js的库构建,网页开发者可以编写一个简单的视觉输入...

3784
来自专栏AI研习社

让深度学习帮你创作爵士乐

数学与音乐有着内在的联系。 用算法作曲的历史,可以追溯到计算机科学出现的初期。翻译模型可以把一张图片转译为音乐。这都是基于规则的:如果图片里有一条水平的线,就会...

3528

扫码关注云+社区

领取腾讯云代金券