Unpaired/Partially/Unsupervised Image Captioning
这篇涉及到以下三篇论文:
Unpaired Image Captioning by Language Pivoting (ECCV 2018)
Show, Tell and Discriminate: Image Captioning by Self-retrieval with Partially Labeled Data (ECCV 2018)
Unsupervised Image Caption (CVPR 2019)
1. Unpaired Image Captioning by Language Pivoting (ECCV 2018)
Abstract
作者提出了一种通过语言枢轴(language pivoting)的方法来解决没有成对的图片和描述的image caption问题(unpaired image captioning problem)。
Our method can effectively capture the characteristics of an image captioner from the pivot language(Chinese) and align it to the target language (English) using another pivot-target (Chinese-English) sentence parallel corpus.
Introduction
由于encoder-decoder结构需要大量的image-caption pairs来训练,通常这样的大规模标记数据是难以获得的,研究人员开始思考通过非成对的数据或者是用半监督的方法来利用其他领域成对的标记数据来实现无监督学习的目的。在本文中,作者希望通过使用源语言——中文作为枢轴语言,来消除输入图片和目标语言——英文描述之间的间隔,这需要有图片——中文描述以及中文——英文两个成对的数据集,从而达到不需要有图片——英文描述成对数据集来实现图片到英文描述生成的目的。
作者说这种思想来源于机器翻译领域的相关研究,使用这种策略的机器翻译方法通常分为两步,首先将源语言翻译成枢轴语言,然后将枢轴语言翻译成目标语言。但是image caption与机器翻译又有很多不同的地方:1.image-Chinese caption和Chinese-English中句子的风格和词汇分布有很大区别;2.source-to-pivot转换的错误会传递到pivot-to-target
Use AIC-ICC and AIC-MT as the training datasets and two datasets (MSCOCO and Flickr30K) as the validation datasets

i: source image, x: pivot language sentence, y: target language, y_hat: ground truth captions in target language(对于这里的y_hat,是从MSCOCO训练集里面随机抽取的描述性语句(captions),用来训练下autoencoder)

这篇文章的思想比较容易理解,难点是把Image-to-Pivot和Pivot-to-Target联系起来,克服两个数据集语言风格和词汇分布不一致这两个问题。
2. Show, Tell and Discriminate: Image Captioning by Self-retrieval with Partially Labeled Data (ECCV 2018)
作者在这篇文章中指出,目前已有的caption模型倾向于复制训练集中的句子或短语,生成的描述通常是泛化和模板化的,缺乏生成区分性描述的能力。
基于GAN的caption模型可以提升句子的多样性,但在标准的评价指标上会有比较差的表现。
作者提出在Captioning Module上结合一个Self-retrieval Module,来达到generate discriminative captions的目的。
3. Unsupervised Image Caption (CVPR 2019)
这是一篇真正的无监督方法来做Image Caption的文章,不 rely on any labeled image sentence pairs
与Unsupervised Machine Translation相比,Unsupervised Image Caption任务更具挑战是因为图像和文本是两个不同的模态,有很大的差别。

模型由an image encoder, a sentence generator,a sentence discriminator组成。
Encoder:

普通的image encoder即可,作者采用的是Inception-V4
Generator:

由LSTM组成的decoder
Discriminator:

由LSTM来实现,用来distinguish whether a partial sentence is a real sentence from the corpus or is generated by the model.
Training:
由于do not have any paired image-sentence,就不能用有监督的方式来训练模型了,于是作者设计了三种目标函数来实现Unsupervised Image Captioning
Adversarial Caption Generation:


Visual Concept Distillation:

Bi-directional Image-Sentence Reconstruction:

Image Reconstruction: reconstruct the image features instead of the full image



Sentence Reconstruction: the discriminator can encode one sentence and project it into the common latent space, which can be viewed as one image representation related to the given sentence. The generator can reconstruct the sentence based on the obtained representation.

Integration:Generator:

Discriminator:

Initialization
It challenging to adequately train our image captioning model from scratch with the given unpaired data, need an initialization pipeline to pre-train the generator and discriminator.
For generator:
Firstly, build a concept dictionary consisting of the object classes in the OpenImages dataset
Second, train a concept-to-sentence(con2sen) model using the sentence corpus only
Third, detect the visual concepts in each image using the existing visual concept detector. Use the detected concepts and the concept-to-sentence model to generate a pseudo caption for each image
Fourth, train the generator with the pseudo image-caption pairs
For discriminator, initialized by training an adversarial sentence generation model on the sentence corpus.
Unpaired/Partially/Unsupervised Image Captioning的更多相关文章
- Image Captioning代码复现
Image caption generation: https://github.com/eladhoffer/captionGen Simple encoder-decoder image capt ...
- ( 转) Awesome Image Captioning
Awesome Image Captioning 2018-12-03 19:19:56 From: https://github.com/zhjohnchan/awesome-image-capti ...
- 《Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks》论文笔记
Code Address:https://github.com/junyanz/CycleGAN. Abstract 引出Image Translating的概念(greyscale to color ...
- Image Captioning 经典论文合辑
Image Caption: Automatically describing the content of an image domain:CV+NLP Category:(by myself, y ...
- Video Captioning 综述
1.Unsupervised learning of video representations using LSTMs 方法:从先前的帧编码预测未来帧序列 相似于Sequence to sequen ...
- paper 124:【转载】无监督特征学习——Unsupervised feature learning and deep learning
来源:http://blog.csdn.net/abcjennifer/article/details/7804962 无监督学习近年来很热,先后应用于computer vision, audio c ...
- Machine Learning Algorithms Study Notes(4)—无监督学习(unsupervised learning)
1 Unsupervised Learning 1.1 k-means clustering algorithm 1.1.1 算法思想 1.1.2 k-means的不足之处 1 ...
- 论文笔记之:Deep Recurrent Q-Learning for Partially Observable MDPs
Deep Recurrent Q-Learning for Partially Observable MDPs 摘要:DQN 的两个缺陷,分别是:limited memory 和 rely on b ...
- Unsupervised Classification - Sprawl Classification Algorithm
Idea Points (data) in same cluster are near each others, or are connected by each others. So: For a ...
随机推荐
- PatentTips -- 一种在CoAP网络中注册的方法及装置
技术领域 [0001] 本发明涉及一种在CoAP网络中注册的方法及装置,属于网络通信技术领域. 背景技术 [0002] (Internet of Things,物联网)作为新一代的信息技术,越来越受到 ...
- java获取访问路径、域名、项目名、请求入参
废话不多说(这句不是废话吗>>),直接提出可以运行的类,你放到一个web项目访问下就知道了. //测试页面-跳转到输入数据的form表单 public String test1(){ Ac ...
- activiti自己定义流程之整合(五):启动流程时获取自己定义表单
流程定义部署之后,自然就是流程定义列表了,但和前一节一样的是,这里也是和之前单独的activiti没什么差别.因此也不多说.我们先看看列表页面以及相应的代码,然后在一步步说明点击启动button时怎样 ...
- js进阶 10-11/12 表单伪类选择器的作用
js进阶 10-11 表单伪类选择器的作用 一.总结 一句话总结:能想到用伪类选择器来解决问题.如果能一次记住自然是最棒的. 1.表单伪类选择器分为哪两类? 表单元素和表单属性,表单元素例如inpu ...
- 【a501】算24点
Time Limit: 1 second Memory Limit: 32 MB [问题描述] 几十年前全世界就浒一种数字游戏,至今仍有人乐此不疲.在中国我们把这种游戏称为"算24点&quo ...
- XMPP之ios即时通讯客户端开发-配置XMPP基本信息(四)
前文已经有配置open fire,接下来要通过XMPP框架链接到open fire的服务器: 1.首先要在系统偏好设置里面打开open fire的服务器 2.代码中设置xmpp的myJID 有几个名词 ...
- mysql5.6+主从集的版本号(mysql5.5主机和从机载带后,5.5在设置有一定的差距)
怎么安装mysql数据库.这里不说了,仅仅说它的主从复制,过程例如以下 在进行主从设置之前 首先确保mysql主从server之间的数据库port防火墙互相打开, 尽量确保主从数据库账户一致性(主从切 ...
- RStudio 的使用
0. 基本 路径查看和设置: getwd() ⇒ 查看路径 setwd() ⇒ 设置路径: 1. 快捷键 ctrl+shift+c:多行注释:选中待注释的代码段,按下 ctrl+shift+c(c 表 ...
- IIS元数据库失败该如何解决-重新安装ASP.NET
装了VS2005再装IIS,结果出了些小问题 “访问IIS元数据库失败 ” 思考可能是次序出了问题,解决 1.打开CMD,进入 C:\WINDOWS\Microsoft.NET\Framework\v ...
- vscode 如何格式化vue(template)html代码 , 保持标签属性不换行
微软的vscode 真心强大 , electron 框架写的 , 用js写的桌面应用 , 有能力的话大家可以分析一下人家的源码 , 反正我是看不了 , 太牛掰了 在一次跟新后我发现莫名奇妙的些在组件( ...