易学智能

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4890|回复: 6

VisualQA数据集介绍

[复制链接]

22

主题

107

帖子

266

积分

中级会员

Rank: 3Rank: 3

积分
266
发表于 2018-8-25 18:01:22 | 显示全部楼层 |阅读模式
本帖最后由 马猴烧酒 于 2018-8-27 11:37 编辑

1 简介
    VisualQA数据集是用于可视化的问答数据集,可视化的问答即根据图片的内容进行提问与回答,如图1-1,视觉与语言结合起来。这个数据集的基本信息如下
  1. 265,016张图片(COCO和抽象场景);
  2. 每张图片至少有3个问题(平均5.4个问题);
  3. 每个问题有10个基本事实答案;
  4. 每个问题有3个似乎合理(但可能不正确)的答案;
  5. 自动评估指标。
复制代码
1.png

图1-1

2 内容

    数据集有VQA1和VQA2两个版本,VQA1版本的数据集内容如图2-1所示。VQA2版本的数据集内容如图2-2所示。

1.png

图2-1

1.png

图2-2

    VQA1和VQA2版本的数据集都分为真实图片和抽象图片,真实图片是用于问答的数据集,抽象图片是用于对图片内容进行抽象,生成标题的数据集。两者的共同点是都被分成训练集,验证集,测试集,真实图片的数据集分为问题(比如Training questions 2015 v1.0),答案(比如Training annotations 2015 v1.0)json文件。问题(questions)数据集被用来当做输入数据集,而答案(annotations)数据集被用来当做验证的数据集。抽象图片也分为输入数据集和验证数据集,下面一一介绍这些数据集的格式,首先介绍下真实图片的答案(annotations)的数据集格式。
真实图片的annotations数据集
    annotations的json文件最外层是个字典,包含info,data_type,license,data_subtype,annotations五个键。info键存储的值描述数据集的信息,如下所示。
  1. {
  2. "info" : info,
  3. "data_type": str,
  4. "data_subtype": str,
  5. "annotations" : [annotation],
  6. "license" : license
  7. }
复制代码
    data_type键值描述数据集属于真实图片,还是抽象图片,data_subtype键值描述数据集属于训练集,验证集还是测试集,并且描述数据集的年份。license键值描述数据集的授权文件,annotaisons键值描述问题对应的答案,是个列表,列表中每个元素是如下所示的字典。
  1. {
  2. "question_id" : int,
  3. "image_id" : int,
  4. "question_type" : str,
  5. "answer_type" : str,
  6. "answers" : [answer],
  7. "multiple_choice_answer" : str
  8. }
复制代码

    answers中每个元素也是个字典,其形式如下。
  1. {
  2. "answer_id" : int,
  3. "answer" : str,
  4. "answer_confidence": str
  5. }
复制代码
    answer_id描述答案唯一的id,answer描述答案,answer_confidence描述答案可信度。
真实图片的questions数据集
    questions的json文件最外层也是个字典,包含如下的5个键值对。
  1. {
  2. "info" : info,
  3. "task_type" : str,
  4. "data_type": str,
  5. "data_subtype": str,
  6. "questions" : [question],
  7. "license" : license
  8. }
复制代码
    info,data_type,data_subtype,license键值描述的内容和annotations数据集的一样,重点关注task_type,questions键值。task_type键值描述问题的类型,问题分为多个类型:是多选题,开放性题,还是有标准答案的题。questions描述各个具体问题。questions列表中每个字典元素question如下所示。
  1. {
  2. "question_id": int,
  3. "image_id": int,
  4. "question": str
  5. }
复制代码
   question_id描述问题id,image_id描述问题对应的图片id,question描述问题。上述是常规的问答questions数据集格式,除了常规问答还有选择题问答,选择题的questions数据集格式与常规问答questions不同的地方在于question多了multiple_choices键,而最外层的字典多了num_choices键。如下所示。
  1. "num_choices": int
  2. question{
  3. "multiple_choices" : [str]
  4. }
复制代码
    num_choices描述选择题的选择项个数,multiple_choices描述选择题选项,是个字符串列表。
    真实图片的数据集介绍完了,再来看看抽象图片的数据集。
抽象图片的输入数据集
     真实图片的输入数据集是questions数据集,而抽象图片的输入数据集略有不同,最外层的字典如下所示。
  1. {
  2. "info" : info,
  3. "data_type": str,
  4. "data_subtype": str,
  5. "compositions" : [composition],
  6. "images" : [image],
  7. "license" : license
  8. }
复制代码
    info,data_type,data_subtype,license键值描述的内容与真实图片一致,在此不做赘述。compositions描述的是图片id和图片名称的组合,这里的图片名称指对应场景(图片id)合成的图片名称,意思是一个场景对应着多幅描述这个场景的图片。compositions格式如下。
  1. {
  2. "image_id" : int,
  3. "file_name" : str
  4. }
复制代码
    image_id是图片id,file_name是图片名称。images是图片列表,包含图片id,图片名称,图片链接,图片地址,图片宽高。images中图片名称是指图片id所对应的图片名称,即场景本身,而compositions中的图片名称指的是从另外的角度来描述场景的图片,比如场景中切割的图片来描述场景。iamges图片列表中每个字典元素如下所示。
  1. {
  2. "image_id" : int,
  3. "file_name" : str,
  4. "url" : str,
  5. "height" : int,
  6. "width" : int
  7. }
复制代码
抽象图片的验证数据集
    抽象图片验证数据集的json最外层依然是个字典,如下所示。
  1. {
  2. "info" : info,
  3. "task_type": str,
  4. "data_type": str,
  5. "data_subtype": str,
  6. "annotations" : [annotation],
  7. "images" : [image],
  8. "license" : license
  9. }
复制代码
    info,task_type,data_type,data_subtype,images,license键值前面都介绍过,这里描述的内容与前面介绍的一致,不再赘述,而annotations里面的annotation发生了一些改变。annotation的结构如下所示。
  1. {
  2. "id" : int,
  3. "image_id" : int,
  4. "caption" : str
  5. }
复制代码
    id是annotation的唯一id,image_id是图片id,caption是为图片id对应的图片生成的标题。
3 其他
    另外一些值得注意的地方,开放数据集的作者引入了一个新的评估指标,该指标对于表达答案的人际差异具有很强的可靠性,指标如下


    回答正确率等于人类提供的答案个数/3,和1之间的最小值。其次为了与“人类精确度”保持一致,机器精度在所有10种选择的9套人类标注器上取平均值。
    对外发布的数据集对原始数据集进行了以下预处理:
  • 问题和回答字符串的拼写校正(使用必应拼写器)
  • 问题标准化(第一个字符大写,最后一个字符' ? ')
  • 答案标准化(所有字符小写,除小数点外无句点,数字单词- >数字,条形文字(a, a, a))
  • 如果缺少缩进,则添加撇号(例子如"dont" 转换成"don't")
4 小结
   VisualQA数据集是一个非常适合视觉问答的数据集,其分成真实图片数据集和抽象图片数据集,真实图片数据集用于视觉问答,抽象图片数据集用于图片标题生成,抽象图片数据集也可以用于视觉问答,因为官网也提供了其和真实图片数据集的输入验证格式相同的json文件。除此之外VisualQA提供了在线测试图片,可以上官网http://vqa.cloudcv.org/自己上传图片试试效果。


回复

使用道具 举报

10

主题

82

帖子

200

积分

中级会员

Rank: 3Rank: 3

积分
200
发表于 2018-9-15 09:10:26 | 显示全部楼层
视觉问答,很神奇啊,这是机器向人的智能又迈出了一大步的特征
回复

使用道具 举报

10

主题

72

帖子

180

积分

注册会员

Rank: 2

积分
180
发表于 2018-10-8 16:09:48 | 显示全部楼层
不错的数据集,记录了
回复

使用道具 举报

44

主题

139

帖子

382

积分

论坛管理

Rank: 4

积分
382
发表于 2018-10-11 08:08:30 | 显示全部楼层
挺好的
回复

使用道具 举报

22

主题

107

帖子

266

积分

中级会员

Rank: 3Rank: 3

积分
266
 楼主| 发表于 2018-10-11 08:20:27 | 显示全部楼层
污妖王 发表于 2018-9-15 09:10
视觉问答,很神奇啊,这是机器向人的智能又迈出了一大步的特征

现阶段还很浅显,坐等大佬开括新世界
回复

使用道具 举报

10

主题

82

帖子

200

积分

中级会员

Rank: 3Rank: 3

积分
200
发表于 2018-10-11 08:28:18 | 显示全部楼层
马猴烧酒 发表于 2018-10-11 08:20
现阶段还很浅显,坐等大佬开括新世界

恩,坐等大佬,我们这些杂鱼只需紧跟大佬的脚步就好了
回复

使用道具 举报

44

主题

139

帖子

382

积分

论坛管理

Rank: 4

积分
382
发表于 2018-10-12 07:58:54 | 显示全部楼层
令狐少侠 发表于 2018-10-8 16:09
不错的数据集,记录了

对啊整个这个模块很良心
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|易学智能

GMT+8, 2024-12-22 13:08 , Processed in 0.020322 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表