论文阅读1《AttnGAN: Fine-Grained Text to Image Generation with Attentional Generative Adversarial Networ》

AttnGAN是一种利用注意力机制的生成对抗网络,能根据文本描述生成256x256的图像,通过关注描述中的相关词汇,细化图像各区域。此模型在CUB_200_2011数据集上验证,采用分步生成策略,并引入深层注意多模态相似性模型评估图像与文本的一致性。

paper链接https://arxiv.org/abs/1711.10485,
code链接https://github.com/taoxugit/AttnGAN,
作者的homepage https://sites.google.com/view/taoxu

本文给出的是CVPR 2018的文章《AttnGAN: Fine-Grained Text to Image Generation with Attentional Generative Adversarial Networks》。它是StackGAN++的后续工作。

一、相关工作

对GAN的相关理解:https://blog.youkuaiyun.com/zlrai5895/article/details/80648898

前作StackGAN的工作:http://blog.youkuaiyun.com/zlrai5895/article/details/81292167

二、基本思想

1、文章要做的事情(Text to Image Synthesis):
输入:text      输出:image

2、通过引入attentional generative network,AttnGAN可以通过关注自然语言描述中的相关单词来合成图像不同子区域的细粒度细节。此外,提出了一种deep attentional multimodal similarity model来计算细粒度图像-文本匹配损失,用于生成器的训练。

它首次表明 the layered attentional GAN 能够自动选择单词级别的condition来生成图像的不同部分。

三、 数据集

本次实验使用的数据集是加利福尼亚理工学院鸟类数据库-2011(CUB_200_2011)。
在这里插入图片描述
文章的主要思想是将生成256x256图像的文图转换成先生成64x64,然后再生成128x128,最后再生成256x256的问题(与stackGAN类似,分多步),从低分辨率的图像生成高分别率图像的过程中,分别利用低分辨率的图片信息和word-context产生下一状态的图片,为了在让最后生成的256x256大小的图像与文本的语义一致,作者应用了文本图像检索的方法将生成的图像与原始的文本之间度量他们的相似性(分别从word层面和sentence层面)。

四、分析

1.判别器

思考一下究竟为什么我们需要x,但是x(0)并没有出现在h(1)或者x(1)中?

原因就是训练。在学习阶段判别器D训练采用的是缩小尺寸的原始标注图片。这样将会使得生成器G更好的从h的输入生成x。由BP的规则,这将是的F函数更好的生成隐藏的上下文,这样就保证了每一个阶段的生成都能产生一些有意义的结果。(说白了就是我们判别器判别的时候会有原始的模糊到清晰像素图去监督整个训练的过程)。

2.深层注意多模态相似性模型(DAMSM)

虽然有多个判别器去让这个系统更加优化,但是我们还是不能有个客观的概念:是否标注中的每一个词都被正确的表示在生成的图片中?

为了高效的解决这个问题,作者预先训练了一个被他们称为“专家”的打分网络-DAMSM。这个模型的输入是图片和图片对应的标注词向量。输出就是这两个之间的相似性。

具体细节如下:
采用标准的卷积神经网络,图片被转换为了一系列特征图,每一个特征图表示一些概念或者图上的子区间。
特征图的维度也就和词向量的维度一样,这样方便于计算相似度。
根据标题中的每个标记,将注意力放在特征图上,以计算它们的加权平均值。这个注意力向量实际上代表了图像对标记的抽象。
最后,DAMSM被训练来最小化上述注意向量(单词的可视化描述)和单词嵌入(单词的文本含义)之间的区别。基本上是想让图像的绿色部分尽可能的“绿色”
一旦DAMSM在数据集上得到了足够的训练,它就可以与步进的鉴别器一起使用,为AttnGAN提供一个丰富的目标来优化。

给定的参考引用中未提及“基于方面的细粒度图像和文本不匹配检测与纠正技术FineMatch”的相关内容,所以无法依据引用准确回答该问题。不过,一般来说,这类技术在细粒度图像和文本处理领域有着重要应用。细粒度图像分类本身就是对粗粒度大类别进行更细致子类划分的任务,难度较大,因为子类别间存在细微类间差异和较大类内差异 [^1]。 基于方面的细粒度图像和文本不匹配检测与纠正技术FineMatch可能会结合图像识别和自然语言处理的方法。在图像识别方面,可能会运用到细粒度图像识别的相关技术,如通过定位 - 分类子网络(包括使用检测或分割技术、利用深层过滤器、利用注意力机制等)、端到端特征编码(执行高阶特征交互、设计特别的损失函数等)以及借助外部信息(有噪声的Web数据、多模态数据等)来准确理解图像内容 [^2]。在文本处理方面,可能会涉及对文本语义、语法等方面的分析,以确定文本所表达的信息。然后通过对比图像和文本的信息,检测两者之间的不匹配之处,并尝试进行纠正。 ### 示例代码(伪代码示意) ```python # 模拟图像特征提取 def extract_image_features(image): # 这里可以是实际的图像特征提取算法 image_features = [] return image_features # 模拟文本特征提取 def extract_text_features(text): # 这里可以是实际的文本特征提取算法 text_features = [] return text_features # 模拟不匹配检测 def detect_mismatch(image_features, text_features): # 对比图像和文本特征,检测不匹配 mismatch = False # 具体的对比逻辑 return mismatch # 模拟不匹配纠正 def correct_mismatch(image_features, text_features): # 根据不匹配情况进行纠正 corrected_text = "" return corrected_text # 主函数 def FineMatch(image, text): image_features = extract_image_features(image) text_features = extract_text_features(text) mismatch = detect_mismatch(image_features, text_features) if mismatch: corrected_text = correct_mismatch(image_features, text_features) return corrected_text return text ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

evsunny

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值