论文笔记:Visual Question Answering as a Meta Learning Task
Visual Question Answering as a Meta Learning Task
ECCV 2018
2018-09-13 19:58:08
1. Introduction:
本文提出一种新的 VQA 思路,将 meta-learning 结合进来,通过支持集的形式(Support Set),让神经网络学会学习。
本文核心的技术贡献是:提供一种顶尖的 VQA模型到 meta-learning 的设定下。the resulting model 是一个深度神经网络,利用 dynamic parameters,也被称为 fast weights,依赖于 support set 在测试时决定的。
the resulting system 的一个能力是:学会产生完全新颖的答案(在 training data 中从未出现的回答)。另外一个能力是处理 rare answers 能力。因为 VQA 是严重的类别不均衡。
本文的贡献是:
1. 将 VQA 看做是 meta-learnig 的问题,在测试时,提供一个 support set 进行模仿;
2. 描述了一个神经网络结构 以及 训练过程,能够结合 meta-learning 的场景;
3. 能够产生新颖的答案。对于 rare answers 能够很好的处理,更好的采样效率;
2. VQA in a Meta Learning Setting :
1)传统的 VQA 模型:
Image I, Question Q, 答案集合 A;
2)拓展到meta-learning 应用场景下:
带有 support set S, the support set S can include novel examples S' provided at test time; S = T U S' ;
3. Proposed Model:
作者将 VQA 系统分为两个部分:第一个部分就是感知,the embedding part that encodes the input question and image;第二个部分就是,the classifier part that handles the reasoning and actural question answering;
3.1. 非线性映射 $f_{theta} (*)$ :
非线性映射的作用是:将问题/图像 h 的 embedding 映射到适合 classifier 的表示(is to map the embedding of the question/image h to a representation suitable for the following classifier)。
我们采用 paper 【34】的设置,利用 a gated hyperbolic tangent layer, 定义为:
其中,$\delta$ 是逻辑激活函数,W, W', b, b' 都是可学习的参数,圆圈代表了元素级相乘。我们将这些参数统一表达为 $\theta$,传统方法就是用 BP 算法以及 梯度下降的方法进行训练,这样他们得到的就是 static 的参数。而本文所提出的方法,在测试的时候,依赖于 the input h 以及 the available support set,自适应的进行参数的调整。具体的,我们利用 static parameter $\theta^s$,以及 测试时候的动态参数 $\theta^d$。其线性组合为: 其中,w 是学习权重的向量。动态权重 可以看做是根据输入 h,对 static weights 进行的调整(the dynamic weights can therefore be seen as an adjustment made to be the static ones depends on the input h)。
候选动态权重的集合,被保留在 associative memory M 中。该 memory 是一个关于 key/value pair 的集合(跟支持集一样大)。在测试的时候,我们从该 memory 中提取出合适的动态权重,通过 soft key matching:
其中,$d_{cos}$ 代表了余弦相似度函数。所以,我们得到的是一个加权的 sum,用的是 输入 h 和 memory keys $h_i^~$ 之间的相似度来加权 the memory values。
Mapping to Candidate Answers :
未完,待遇 。。。
==
论文笔记:Visual Question Answering as a Meta Learning Task的更多相关文章
- 论文阅读:Learning Visual Question Answering by Bootstrapping Hard Attention
Learning Visual Question Answering by Bootstrapping Hard Attention Google DeepMind ECCV-2018 2018 ...
- 【自然语言处理】--视觉问答(Visual Question Answering,VQA)从初始到应用
一.前述 视觉问答(Visual Question Answering,VQA),是一种涉及计算机视觉和自然语言处理的学习任务.这一任务的定义如下: A VQA system takes as inp ...
- Hierarchical Question-Image Co-Attention for Visual Question Answering
Hierarchical Question-Image Co-Attention for Visual Question Answering NIPS 2016 Paper: https://arxi ...
- Visual Question Answering with Memory-Augmented Networks
Visual Question Answering with Memory-Augmented Networks 2018-05-15 20:15:03 Motivation: 虽然 VQA 已经取得 ...
- Learning Conditioned Graph Structures for Interpretable Visual Question Answering
Learning Conditioned Graph Structures for Interpretable Visual Question Answering 2019-05-29 00:29:4 ...
- 论文笔记系列-Neural Architecture Search With Reinforcement Learning
摘要 神经网络在多个领域都取得了不错的成绩,但是神经网络的合理设计却是比较困难的.在本篇论文中,作者使用 递归网络去省城神经网络的模型描述,并且使用 增强学习训练RNN,以使得生成得到的模型在验证集上 ...
- 论文笔记:Deep Attentive Tracking via Reciprocative Learning
Deep Attentive Tracking via Reciprocative Learning NIPS18_tracking Type:Tracking-By-Detection 本篇论文地主 ...
- 论文笔记:(CVPR2017)PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation
目录 一. 存在的问题 二. 解决的方案 1.点云特征 2.解决方法 三. 网络结构 四. 理论证明 五.实验效果 1.应用 (1)分类: ModelNet40数据集 (2)部件分割:ShapeNet ...
- 论文笔记之:Large Scale Distributed Semi-Supervised Learning Using Streaming Approximation
Large Scale Distributed Semi-Supervised Learning Using Streaming Approximation Google 2016.10.06 官方 ...
随机推荐
- vue2中使用transition
最终效果为 div元素从右向左出现, 然后从左向右消失. transition标签包裹要移动的元素: css 样式: 其中: 1: 为div元素显示时的状态 2: 为div元素移动的过程 (进入 ...
- java学习之路--String类方法的应用
消除字符串两端的空格 1.判断字符串第一个位置是否为空格,如果是继续向下判断,直到不是空格位置,末尾也是这样,往前判断,直到不是空格为止. 2.当开始和末尾都不是空格时,获取字符串. public s ...
- yarn配置日志聚合
[原文地址] 日志聚集是YARN提供的日志中央化管理功能,它能将运行完成的Container/任务日志上传到HDFS上,从而减轻NodeManager负载,且提供一个中央化存储和分析机制.默认情况下, ...
- 主机配置nginx后如何获取访问者IP
he你早的时候写了一个根据访问者ip查询天气的小接口,那时候还没得买域名,没有搞nginx,测试自然没有问题,然后随着一个小工具一块上线了,今天突然发现我的小工具有好几个人在使用了,就想写一个记录访问 ...
- spark streaming集成kafka
Kakfa起初是由LinkedIn公司开发的一个分布式的消息系统,后成为Apache的一部分,它使用Scala编写,以可水平扩展和高吞吐率而被广泛使用.目前越来越多的开源分布式处理系统如Clouder ...
- SpringBoot-@RequestParam
Request参数 在访问各种各样网站时,经常会发现网站的URL的最后一部分形如:?xxxx=yyyy&zzzz=wwww.这就是HTTP协议中的Request参数,它有什么用呢?先来看一个例 ...
- python dict的函数
1. dict.clear() 删除字典内所有元素 2. dict.copy() 返回一个字典的浅复制 3. dict.fromkeys(seq[, val]) 创建一个新字典,以序列 seq 中元素 ...
- Mybatis经常被问到的面试题
1. #{}和${}的区别是什么? #{}是预编译处理,${}是字符串替换. Mybatis在处理#{}时,会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值: ...
- windows10系统下安装pygame
1.安装python,选择版本3.7.1 下载地址:https://www.python.org/downloads/windows/选择安装版本 2.安装pip 下载地址:https://pypi. ...
- 第二章 函数和window对象
1.什么是函数函数相当于Java中的方法,每一个函数可以做一件事情,但是不属于某一个类 2.使用函数的好处:使代码模块化,功能分工明确,方便调用,思路功能清晰 3.函数的分类:(1)系统函数:系统提前 ...