微软新研究提出新型 GAN——ObjGAN,可根据文字描述生成复杂场景。他们还提出另一个可以画故事的 GAN——StoryGAN,输入一个故事的文本,即可输出「连环画」。
如果让你画一幅几个人穿着滑雪服在雪地上的图,你很可能会先在画布中间大致画出三四个人的轮廓,然后画他们脚下的滑雪板。虽然没有具体说明,但你可能会给每个人画上个背包。
最后,为了让整个图更加真实,更加贴近要求,你还会仔细补充细节,比如把他们的衣服涂成蓝色,围巾涂成粉色,背景填满白色。最后,为了使场景更加生动,你甚至在雪白的背景中画上一些棕色石头,表示这些滑雪者正在山中。
现在一个网络就可以做到这一切。
微软人工智能研究院(Microsoft Research AI)开发的新 AI 技术可以理解自然语言描述、绘制草图、合成图像,然后根据草图框架和文字提供的个别单词细化细节。换句话说,这个网络可以根据描述日常场景的文字描述生成同样场景的图像。
相关研究论文《Object-driven Text-to-Image Synthesis via Adversarial Training》报告了行业标准测试结果,与之前最优的复杂日常场景文本到图像生成技术相比,这种更为复杂的机制显著提高了生成图像的质量。
这篇论文已被 CVPR 接收,论文作者为来自微软人工智能研究院的 Pengchuan Zhang、Qiuyuan Huang 和 Jianfeng Gao,来自微软的 Lei Zhang,来自京东 AI 研究院的 Xiaodong He,以及来自纽约州立大学奥尔巴尼分校的 Wenbo Li 和 Siwei Lyu。
基于文本描述的绘图网络主要面临两个主要挑战。首先,日常场景中会出现多种物体,该网络需要能够理解并绘制所有物体。以前的文本到图像生成方法使用的是图像-标题对,这种方法仅对单个物体的生成提供非常粗粒度的监督信号,限制了物体生成质量。
而在微软这项新技术中,研究人员利用 COCO 数据集进行训练,该数据集包含 个常见物体类别、 万个物体实例的标签和分割图,使网络能够学习这些物体的特征和外观。这种用于目标生成的细粒度有监督信号显著提高了这些常见物体类别的生成质量。
第二个挑战是理解和生成场景中多个物体之间的关系。在为多个特定域生成仅包含一个主要目标(例如人脸、鸟类或常见物体)的图像方面已取得了巨大成功。
然而,生成包含多个目标的复杂场景以及理解目标间的语义关系仍然是一个重大挑战。微软提出的新型绘图网络学会了从 COCO 数据集中的共现模式中生成目标的排列布局,然后根据预生成的布局生成图像。
ObjGAN 工作流程。
目标驱动的注意力图像生成
微软研究院的这个绘图网络的核心是生成对抗网络(GAN)。
GAN由两个机器学习模型组成,一个是根据文本描述生成图像的生成器,另一个是使用文本描述判断生成图像真实性的判别器。生成器试图利用假图片「骗过」判别器;另一方面,判别器要做到「不被骗」。两者协同工作,最后将生成器训练到以假乱真的地步。
绘图网络在包含 万个图像的数据集上进行训练,每个图像具有明显的标签和分割图,以及五个让模型感知物体以及物体之间语义关系的不同标题。例如,GAN 在对比图片描述中有狗和没有狗的图像时,学习狗应该是什么样子。
图 :具有多个物体和关系的复杂场景。
GAN 在生成仅包含一个显著目标(例如人脸、鸟或狗)的图像时效果很好,但面对更复杂的日常场景时就显得捉襟见肘了,比如描述为「戴头盔的女人骑着马」(见图 )。
这是因为该场景包含多个目标(女人、头盔、马)和丰富的语义关系(女人戴头盔,女人骑马)。网络首先必须理解这些概念并将它们转化成有意义布局的图像。之后,需要一个监督信号来指导目标生成和布局生成,以此实现语义理解和图像生成任务。
在绘制这些复杂场景时,首先要确定绘制的主要目标,并在画布上放置这些目标的边界框,进行整体布局。然后通过反复检查描述该目标的相应单词来关注每个目标。
为了学习这种人类特质,研究人员创造了一种叫作目标驱动注意力 GAN(Object-driven attentive GAN,ObjGAN)的网络,以数学建模的方式模拟人类以目标为中心的注意力机制。ObjGAN 通过将输入文本分解为单个单词,并将这些单词与图像中的特定目标进行匹配来实现这一点。
人类通常会从两方面改进绘图:单个目标的逼真程度和图像块的质量。ObjGAN 通过引入两个判别器来模拟这一行为——一个目标判别器和一个图像块判别器。目标判别器判断所生成的物体是否逼真,以及与句子描述是否一致。图像块判别器用来判断图像块是否逼真,以及该图像块与句子描述是否一致。
相关工作:故事可视化
当前最优的文本到图像生成模型可以基于单句描述生成逼真的鸟类图像。然而,文本到图像生成器远远不止仅对一个句子生成单个图像。
在《StoryGAN: A Sequential Conditional GAN for Story Visualization》中,微软研究院的 Jianfeng Gao,微软 Dynamics 人工智能研究院的 Zhe Gan、Jingjing Liu 和 Yu Cheng,杜克大学的 Yitong Li、David Carlson 和 Lawrence Carin,腾讯的 Yelong Shen,以及卡内基梅隆大学的 Yuexin Wu 进一步提出了一项名为「故事可视化」(Story Visualization)的新任务。
给定一个多句段落,生成一系列图像,每个图像对应一个句子,完整地可视化整个故事。这是一项具有挑战性的任务,因为绘图网络不仅需要构想出一个适合故事的场景,为故事中不同角色之间的交互建模,还必须能够在动态场景和角色之间保持全局一致性。任何单个图像或视频生成方法都没有解决这一挑战。
图 :故事可视化 vs 简单图像生成
研究人员基于序列条件 GAN 框架提出了一种新型故事到图像序列生成模型 StoryGAN。该模型的独特之处在于它包含一个动态跟踪故事流的深层上下文编码器(Context Encoder),以及两个故事级和图像级的判别器,以提高图像质量和生成序列的一致性。
StoryGAN 还可以自然地扩展到交互式图像编辑,即输入图像可以根据文本指令进行顺序编辑。在这种情况下,一系列用户指令将作为「故事」输入。因此,研究人员修改了现有数据集,创建了 CLEVR-SV 和 Pororo-SV 数据集,如图 所示。
实际应用:一个真实的故事
文本到图像生成技术可以作为画家和室内设计师的草图助手,或作为语音照片编辑工具。随着算力的不断提高,研究人员设想可以利用这项技术生成基于剧本的动画电影,通过省去一些人工劳作来减少动画电影制作的工作量。
目前,生成图像仍无法媲美真实图像。单个物体总是会有瑕疵,例如模糊的脸部或变形的汽车。这些缺陷清楚地表明,是计算机而非人类创造了图像。尽管如此,ObjGAN 图像的质量明显优于之前的同类型最优 GAN 所生成的图像,并且这是通向增强人类能力的通用人工智能的里程碑。
AI 和人类要共享同一个世界,双方就必须学会彼此的交互方式。语言和视觉是人类和机器交互的两个最重要方式。文本到图像生成是语言视觉多模态智能研究的重要任务之一。