论文笔记之:Generative Adversarial Text to Image Synthesis

简介: Generative Adversarial Text to Image SynthesisICML 2016     摘要:本文将文本和图像练习起来,根据文本生成图像,结合 CNN 和 GAN 来有效的进行无监督学习。

  

Generative Adversarial Text to Image Synthesis

ICML 2016 

  

  摘要:本文将文本和图像练习起来,根据文本生成图像,结合 CNN 和 GAN 来有效的进行无监督学习。

  Attribute Representation: 是一个非常具有意思的方向。由图像到文本,可以看做是一个识别问题;从文本到图像,则不是那么简单。

  因为需要解决这两个小问题:

  1. learning a text feature representation that captures the important visual deatails ; 

  2. use  these features to synthesize a compelling image that a human might mistake for real. 

  幸运的是,深度学习对这两个问题都有了较好的解决方案,即:自然语言表示image synthesis

 

  但是,仍然存在的一个问题是:the distribution of images conditioned on a text description is highly multimodal,in the sense that there are very many plausible configurations of pixels that correctly illustrate the description

 

  

 

  


 

  Background : 

  1. GANs

    此处略,参考相关博客。

  2. Deep symmetric structured joint embedding.

  为了得到一个视觉上可以判别的文本表示(text description),我们采用了一个 CVPR 2016 的一篇文章,利用 CNN 和 recurrent text encoder 根据一张 Image 学一个对应的函数。这个 text classifier 是通过以下的 structure loss 进行训练:

    

 

  其中,$\{ v_n, t_n, y_n \}$ 是训练数据集合, $\delta$ 是 0-1 loss,$v_n$ 是image,$t_n$ 是 text description,$y_n$ 是class label。

  分类器 $f_t$, $f_v$ 参数化如下:

  其中,一个是 image encoder,一个是 text encoder。当一张图像有了其类别信息的时候,文本的编码应该有更高的兼容性得分,反之亦然。(The intuition here is that a text encoding should have a higher compatibility score with image of the corresponding class and vice-versa。)

 

 


 

  Method

  我们的方法是为了基于text feature,训练一个深度卷积产生式对抗网络 (DC-GAN)。

  1. Network architecture .

  基本概念:产生器 G ;判别器 D ; 

 

  以上,就是本文提出的整个网络框架。

  首先看产生器 G,将文本信息经过预处理得到其特征表达,然后将其和 noise vector 组合在一起,输入到接下来的反卷积网络中,最终生成一幅图像;

  再看判别器,将图像进行卷积操作后,我们将本文信息在 depth 方向上组合原本图像卷积得到的feature 上,然后得到一个二元值。

  

  2. Matching-aware discriminator (GAN-CLS)

  最直接的方法进行 conditional GAN 的训练是将 pairs (text, image) 看做是一个联合的观察(Joint Observations),然后训练判别器来判断这个 pair 是 real or false。这种条件是 naive 的,当处于 the discriminator 没有明显的 notion 是否 real training images match the text embedding context。 

  在 naive GAN,the discriminator 观察到两种输入:real image 和 匹配的 text;以及 synthetic images 和 随意的 text。所以,必须显示的将两种 errors 分开:

  unrealistic images (for any text), and realistic images of the wrong class that mismatch the conditioning information。

  基于这可能会增加了学习 dynamics 的复杂性,我们修改了 GAN 训练来分开这些 error source。 

 

  除了在训练阶段,提供 real / fake inputs 给 discriminator 之外,我们增添了第三种输入,即:real images with mismatched text,which the discriminator must learn to score as fake。通过学习 image / text 的 matching,还要学习 image realism (图像的真实性),判别器可以提供额外的信息给产生器(the discriminator can provide an additional signal to the generator)。

  

  算法 1 总结了训练的过程。

  

 

  3. Learning with manifold interpolation (GAN-INT)  流型插值 

  Deep network have been shown to learn representations in which interpolations between embedding pairs tend to be near the data manifold.  

  深度学习发现当接近数据流型的数据对之间进行插值 来学习表示。

  受到这个发现的启发:我们可以产生一个 large amount of additional text embeddings by simply interpolating between embeddings of training set captions

  关键是,这些插值的 text embeddings 不需要对应上任何真实的 human-written text,所以,不需要额外的 labeling cost。

  这个就可以看做是:在产生器的目标中增加一个额外的项:

  由于插值的 embeddings 是伪造的,判别器并没有对应的 image and text pairs 来进行训练。但是,D 学习到了是否当前 image 和 text 相匹配。

  

  4. Inverting the generator for style transfer

  如果 text encoding 可捕获图像的 content,比如:flower shape 和 colors,然后 为了保证一个真实的图像,the noise sample Z 应该可以捕获 style factors,如:背景颜色和姿态。有了一个 trained GAN,我们可能希望转换一个图像的类型,根据特定的文本描述的内容。为了达到这个目的,我们可以训练一个 CNN 来翻转 G 以使得从样本进行回归 到 Z。我们利用一个简单的 squared loss 来训练 style encoder:

  其中,S 是 style encoder network。有了训练的产生器 和 类型编码,style transfer 根据样本 t 从一张 query image x 执行下列步骤:

  其中, x 是结果图像, s 是预测的 style。 

 


 

  Experiments

  

  

 

   

  

  

  

  

   

  

  

 

  

    

  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

相关文章
|
1月前
|
数据采集 JSON BI
京东评论API能挖出多少“神评”?用代码揭秘用户真实反馈
京东商品评论API提供商品全量评论数据,支持按评分、时间筛选及分页获取,返回120+字段与口碑统计,具备高并发、低延迟、数据安全等特性,助力电商分析与决策。
|
6月前
|
人工智能 搜索推荐 安全
电商API:数据驱动的营销利器
电商 API 是连接系统与平台的技术桥梁,助力企业实现数据驱动营销。它可实时获取商品、订单及用户行为数据,打破数据孤岛,支持动态化和智能化营销活动。通过整合多渠道数据,企业能优化页面布局、调整广告策略并提升转化率。同时,API 可自动化营销流程,如触发个性化邮件或折扣推送。实际应用中,某时尚电商利用订单 API 提升促销响应率 40%,另一家电品牌借助库存 API 解决超卖问题。未来,AI 融合将推动预测性、计算机视觉和 AR 试穿等智能 API 的发展,隐私计算技术也将保障跨企业数据合作的安全合规。
177 4
|
12月前
|
存储 IDE JavaScript
【HarmonyOS Next开发】端云一体化初始化项目
端云一体化开发是HarmonyOS对云端开发的支持、实现端云联动。云开发服务提供了云函数、云数据库、云存储等服务,可以使开发者专注于应用的业务逻辑开发,无需关注基础设施,例如:服务器、操作系统等问题。
259 6
【HarmonyOS Next开发】端云一体化初始化项目
|
8月前
|
机器学习/深度学习 算法 Java
java家政系统实现智能派单?
本项目旨在构建一个基于JAVA的家政系统,通过实时派单满足用户即时需求。系统涵盖用户需求收集、服务人员数据库管理、智能匹配算法(如综合评分、机器学习模型)、实时通信通知、订单状态跟踪及动态调整等功能。同时,优化用户体验,强化安全与隐私保护,并采用微服务架构确保高并发稳定性。通过持续数据分析与算法迭代,实现高效精准的智能派单,提升服务质量和客户满意度。
286 0
|
运维 监控 数据可视化
云应用开发平台CAP产品综合评测
云应用开发平台CAP旨在为开发者提供高效、便捷的云应用开发解决方案。本文从开发环境搭建、应用开发功能、应用部署与运维、数据管理与集成及性能评测等多个角度全面分析CAP,总结其快速开发、多云支持及社区生态等优势,同时也指出了功能深度、性能优化及文档培训等方面的不足,为开发者选择和使用CAP提供了参考。
|
安全 Linux Python
Volatility3内存取证工具安装及入门在Linux下的安装教程
Volatility3内存取证工具安装及入门在Linux下的安装教程
1913 0
Volatility3内存取证工具安装及入门在Linux下的安装教程
|
SQL 关系型数据库 MySQL
【MySQL】脏读、不可重复读、幻读介绍及代码解释
【MySQL】脏读、不可重复读、幻读介绍及代码解释
|
人工智能 弹性计算 算法
【Hello AI】AI加速器Deepytorch-面向生成式AI和大模型场景
Deepytorch作为阿里云自研的AI加速器,面向生成式AI和大模型场景,提供了训练和推理加速能力。
【Hello AI】AI加速器Deepytorch-面向生成式AI和大模型场景
|
机器学习/深度学习 搜索推荐 API
实时数据获取:抖音API在电商中的应用与影响
在电商行业高速发展的今天,数据已经成为企业决策和创新的重要驱动力。抖音作为全球最大的短视频平台之一,其根据关键词取商品列表API为电商行业带来了前所未有的机遇和挑战。本文将深入探讨该API在电商行业中的关键作用,以及如何实现实时数据获取,为电商企业提供有价值的见解。
|
前端开发 安全 JavaScript
React 正式推出全新官方文档!
React 正式推出全新官方文档!
464 0