论文笔记之:Natural Language Object Retrieval
论文笔记之:Natural Language Object Retrieval
2017-07-10 16:50:43
本文旨在通过给定的文本描述,在图像中去实现物体的定位和识别。大致流程图如下:

此处,作者强调了一点不同之处:
Natural language object retrieval differs from text-based image retrieval task as it involves spatial information about objects within the scene and global scene context. (自然语言物体的检索 与 基于文本的图像检索任务 是不同的,因为其涉及到:在场景内部的关于物体的空间信息,以及全局的场景信息)。本文通过 recurrent network 来实现 query text, local image descriptor, spatial configurations and global context features,然后输出是:文本和 proposal 之间的相符程度的得分。与此同时,也可以将 visual-linguistic knowledge 从 image caption 领域借鉴到我们的任务当中。
作者发现:简单的将 text-based image retrieval system 来直接做这个任务,得到的效果并不是非常好,因为自然语言物体检索涉及到 物体的空间信息 以及 场景中全局信息。利用 RNN 作为 scoring function有如下的好处:
1. 整个模型可以通过 反向传播 来进行end to end 的训练,使得 visual feature extraction 和 text sequence embedding 可以相互影响。实验表明这种方向比 bag of words 效果要好很多。
2. 可以很简单的利用 大型 image-text datasets 来学习一个 vision-language model 来协助该任务的完成。
但是,这个任务有一个比较大的挑战是:the lack of large scale datasets with annotated object bounding box and description pairs.
To address this issue, we show that it allows us to transfer visual-linguistic knowledge learned from the former task to the latter one by first pretraining on the image caption domain and then adapting it to the natural language object retrieval domain.
这种 pre-training 和 adaptation 的过程不但提升了性能,而且避免了过拟合,特别是当 the object retrieval training dataset 比较小的时候。
本文的网络结构 和 大致示意图 如下所示:

训练所用到的损失函数为:

简单而言,其实就是:
利用给定的图像,BBOX的位置信息,以及检索的语言。。。
然后基于此给出一个网络结构的预测,在去比较该结果和给定的语言描述之间的 loss 。。。
从而完成整个网络的训练。。。。
在测试的时候,就可以将 proposal 替换掉 原始 GT image patch,然后就可以利用这个语言模型,给各个 proposal 进行打分了。。。
最终选择一个最佳的 proposal 作为检测的结果。。。
论文笔记之:Natural Language Object Retrieval的更多相关文章
- 论文笔记:Fast Online Object Tracking and Segmentation: A Unifying Approach
Fast Online Object Tracking and Segmentation: A Unifying Approach CVPR-2019 2019-03-11 23:45:12 Pape ...
- 论文笔记 Beyond Part Models: Person Retrieval with Refined Part Pooling_ECCV_2018
1. 摘要 使用part-feature 能够起到更好的效果,不过这个需要我们很好地定位part的位置. 本文中作者集中考虑part内部的一致性,提出了 part-based convolutiona ...
- 论文笔记之:Multiple Object Recognition With Visual Attention
Multiple Object Recognition With Visual Attention Google DeepMind ICRL 2015 本文提出了一种基于 attention 的用 ...
- 论文笔记之:Active Object Localization with Deep Reinforcement Learning
Active Object Localization with Deep Reinforcement Learning ICCV 2015 最近Deep Reinforcement Learning算 ...
- 论文笔记:Capsules for Object Segmentation
Capsules for Object Segmentation 2018-04-16 21:49:14 Introduction: ----
- 论文笔记 - Noisy Channel Language Model Prompting for Few-Shot Text Classification
Direct && Noise Channel 进一步把语言模型推理的模式分为了: 直推模式(Direct): 噪声通道模式(Noise channel). 直观来看: Direct ...
- 论文阅读笔记: Natural Language Inference over Interaction Space
这篇文章提出了DIIN(DENSELY INTERACTIVE INFERENCE NETWORK)模型. 是解决NLI(NATURAL LANGUAGE INFERENCE)问题的很好的一种方法. ...
- 论文笔记:Dynamic Multimodal Instance Segmentation Guided by Natural Language Queries
Dynamic Multimodal Instance Segmentation Guided by Natural Language Queries 2018-09-18 09:58:50 Pape ...
- 论文笔记:Tracking by Natural Language Specification
Tracking by Natural Language Specification 2018-04-27 15:16:13 Paper: http://openaccess.thecvf.com/ ...
随机推荐
- 关于this指向性的问题
函数调用 首先需要从函数的调用开始讲起. JS(ES5)里面有三种函数调用形式: func(p1, p2) obj.child.method(p1, p2) func.call(context, p1 ...
- Spark学习之路 (十)SparkCore的调优之Shuffle调优
摘抄自https://tech.meituan.com/spark-tuning-pro.html 一.概述 大多数Spark作业的性能主要就是消耗在了shuffle环节,因为该环节包含了大量的磁盘I ...
- MyBatis学习笔记(二)——使用MyBatis对表执行CRUD操作
转自孤傲苍狼的博客:http://www.cnblogs.com/xdp-gacl/p/4262895.html 上一篇博文MyBatis学习总结(一)——MyBatis快速入门中我们讲了如何使用My ...
- tensorflow学习3---mnist
import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data '''数据下载''' mnist= ...
- 通过百度api 获取当前城市3种方法
方法一:function showLocation(data) { console.log(data.content); //alert(data.content.address_detail.cit ...
- ETH跌破400美元大关 一场收割全球的计划完成闭环
ETH跌破400美元大关 一场收割全球的计划完成闭环 三大交易所,ETH的价格均跌下400美元,看空者占比近80%. 在普通人眼里,这可能只是熊市的一个自然表现. 但事实完全不是这样.这本质上一场历时 ...
- PHP框架CI CodeIgniter 的log_message开启日志记录方法
PHP框架CI CodeIgniter 的log_message开启日志记录方法 第一步:index.php文件,修改环境为开发环境define(‘ENVIRONMENT’, ‘development ...
- 深入理解Node.js基于事件驱动的回调
回调和异步调用的关系 首先明确一点,回调并非是异步调用,回调是一种解决异步函数执行结果的处理方法.在异步调用,如果我们希望将执行的结果返回并且处理时,可以通过回调的方法解决.为了能够更好的区分回调和异 ...
- bzoj1625 [Usaco2007 Dec]宝石手镯
01背包 #include<algorithm> #include<iostream> #include<cstdlib> #include<cstring& ...
- Android开发常见错误汇总
[错误信息] [2011-01-19 16:39:10 - ApiDemos] WARNING: Application does not specify an API level requireme ...