NeurIPS 2022 | 首个标注详细解释的多模态科学问答数据集,深度学习模型推理有了思维链(2)

简介: NeurIPS 2022 | 首个标注详细解释的多模态科学问答数据集,深度学习模型推理有了思维链

数据集比较

ScienceQA 是第一个标注详细解释的多模态科学问答数据集。相比于已有的数据集,ScienceQA 的数据规模、题型多样性、主题多样性等多个维度体现了优势。

 

ScienceQA 数据集与其它科学问答数据集的比较。

2、模型和方法


Baselines


作者在 ScienceQA 数据集了评估不同的基准方法,包括 VQA 模型如 Top-Down Attention、MCAN、BAN、DFAF、ViLT、Patch-TRM 和 VisualBERT,大规模语言模型如 UnifiedQA 和 GPT-3,以及 random chance 和 human performance。对于语言模型 UnifiedQA 和 GPT-3,背景图片会被转换成文本形式的注释(caption)。


GPT-3 (CoT)


最近的研究工作表明,在给定合适的提示后,GPT-3 模型可以在不同的下游任务表现出卓越的性能。为此,作者提出 GPT-3 (CoT) 模型,在提示中加入思维链(CoT),使得模型在生成答案的同时,可以生成对应的背景知识和解释


具体的提示模板如下图所示。其中 Ii 表示训练例子,It 表示测试例子。训练例子包含问题(Question)、选项(Options)、背景(Context)和答案(Answer)元素,其中答案由正确答案、背景知识(Lecture)和解释(Explanation)组成。GPT-3 (CoT) 会根据输入的提示信息,补全测试例子的预测答案、背景知识和解释。


GPT-3 (CoT) 采用的提示模板。

3、实验与分析


实验结果


不同的基准和方法在 ScienceQA 测试集上的准确率结果如下表所示。当前最好的 VQA 模型之一的 VisualBERT 只能达到 61.87% 的准确率。在训练的过程引入 CoT 数据,UnifiedQA_BASE 模型可以实现 74.11% 的准确率。而 GPT-3 (CoT) 在 2 个训练例子的提示下,实现了 75.17% 的准确率,高于其它基准模型。人类在 ScienceQA 数据集上表现优异,可以达到 88.40% 的总体准确率,并且在不同类别的问题上表现稳定。

 

不同的方法在 ScienceQA 测试集上的结果。

生成解释的评估


作者用自动评估指标如 BLEU-1、BLEU-2、ROUGE-L 和 Sentence Similarity 评估了不同方法生成的解释。由于自动评估指标只能衡量预测结果和标注内容的相似性,因此作者进一步采用了人工评估的方法,来评估生成解释的相关性、正确性和完整性。可以看到,GPT-3 (CoT) 生成的解释中 65.2% 符合了 Gold 标准

 

不同评估方法对生成解释的结果。

不同的提示模板


作者比较了不同的提示模板对 GPT-3 (CoT) 准确率的影响。可以看到在 QAM-ALE 的模板下,GPT-3 (CoT) 可以获得最大的平均准确率和最小的方差。另外,GPT-3 (CoT) 在 2 个训练例子的提示下,表现最佳。


不同提示模板的结果比较。

模型上限


为了探索 GPT-3 (CoT) 模型的性能上限,作者把标注的背景知识和解释加入模型的输入(QCMLE*-A)。我们可以看到 GPT-3 (CoT) 可以实现高达 94.13% 的准确率。这也提示了模型提升的一个可能方向:模型可以进行分步推理,即先检索到准确的背景知识和生成准确的解释,然后把这些结果作为输入。这个过程和人类解决复杂问题的过程很相似。


GPT-3 (CoT) 模型的性能上限。

不同的 ALE 位置


作者进一步讨论了 GPT-3 (CoT) 在生成预测时,不同的 ALE 位置对结果的影响。在 ScienceQA 上的实验结果表明,如果 GPT-3 (CoT) 先生成背景知识 L 或解释 E,再生成答案 A,其预测准确率会大幅下降。其主要原因是背景知识 L 和解释 E 有较多的词语数量,如果先生成 LE,GPT-3 模型有可能用完最大词数,或者提前停止生成文本,从而不能得到最终的答案 A。

 

不同的 LE 位置。

成功案例


如下 4 个例子中,GPT-3 (CoT) 不但能生成正确的答案,也能给出相关、正确且完整的解释。这说明 GPT-3 (CoT) 在 ScienceQA 数据集上表现出较强的多步推理和解释能力。

 

GPT-3 (CoT) 生成正确答案和解释的例子。

失败案例 I


在下面的三个例子中,GPT-3 (CoT) 虽然生成了正确的答案,但是生成的解释不相关、不正确或者不完整。这说明 GPT-3 (CoT) 对于生成逻辑一致的长序列还面临较大的困难。


GPT-3 (CoT) 能生成正确答案、但是生成的解释不正确的例子。

失败案例 II


在下面的四个例子中,GPT-3 (CoT) 不能生成正确的答案,也不能生成正确的解释。其中的原因有:(1)当前的 image captioning 模型还不能准确地描述示意图、表格等图片的语义信息,如果用图片注释文本表示图片,GPT-3 (CoT) 还不能很好地回答包含图表背景的问题;(2)GPT-3 (CoT) 生成长序列时,容易出现前后不一致(inconsistent)或不连贯(incoherent)的问题;(3)GPT-3 (CoT) 还不能很好地回答需要特定领域知识的问题。



GPT-3 (CoT) 能生成错误答案和解释的例子。

4、结论与展望


作者提出了首个标注详细解释的多模态科学问答数据集 ScienceQA。ScienceQA 包含 21208 道来自中小学科学学科的多选题,涵盖三大科学领域和丰富的话题,大部分问题标注有详细的背景知识和解释。ScienceQA 可以评估模型在多模态理解、多步推理和可解释性方面的能力。作者在 ScienceQA 数据集上评估了不同的基准模型,并提出 GPT-3 (CoT) 模型在生成答案的同时,可以生成相应的背景知识和解释。大量的实验分析和案例分析对模型的改进提出了有利的启发。


主要参考文献


[1] Pan Lu, Swaroop Mishra, Tony Xia, Liang Qiu, Kai-Wei Chang, Song-Chun Zhu, Oyvind Tafjord, Peter Clark, Ashwin Kalyan, et al. Learn to explain: multimodal reasoning via thought chains for science question answering. In Advances in neural information processing systems (NeurIPS), 2022.

[2] Jason Wei, Xuezhi Wang, Dale Schuurmans, Maarten Bosma, Ed Chi, Quoc Le, and Denny Zhou. Chain of thought prompting elicits reasoning in large language models. arXiv preprint arXiv:2201.11903, 2022.

[3] Tom Brown, Benjamin Mann, Nick Ryder, Melanie Subbiah, Jared D Kaplan, Prafulla Dhariwal, Arvind Neelakantan, Pranav Shyam, Girish Sastry, Amanda Askell, et al. Language models are few-shot learners. In Advances in neural information processing systems (NeurIPS), 2020.

[4] Daniel Khashabi, Sewon Min, Tushar Khot, Ashish Sabharwal, Oyvind Tafjord, Peter Clark, and Hannaneh Hajishirzi. UnifiedQA: Crossing format boundaries with a single qa system. In Findings of the Association for Computational Linguistics (EMNLP), 2020.

[5] Aniruddha Kembhavi, Minjoon Seo, Dustin Schwenk, Jonghyun Choi, Ali Farhadi, and Hannaneh Hajishirzi. Are you smarter than a sixth grader? textbook question answering for multimodal machine comprehension. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017.

相关文章
|
2月前
|
机器学习/深度学习 人工智能 文字识别
中药材图像识别数据集(100类,9200张)|适用于YOLO系列深度学习分类检测任务
本数据集包含9200张中药材图像,覆盖100种常见品类,已标注并划分为训练集与验证集,支持YOLO等深度学习模型。适用于中药分类、目标检测、AI辅助识别及教学应用,助力中医药智能化发展。
|
4月前
|
机器学习/深度学习 人工智能 监控
河道塑料瓶识别标准数据集 | 科研与项目必备(图片已划分、已标注)| 适用于YOLO系列深度学习分类检测任务【数据集分享】
随着城市化进程加快和塑料制品使用量增加,河道中的塑料垃圾问题日益严重。塑料瓶作为河道漂浮垃圾的主要类型,不仅破坏水体景观,还威胁水生生态系统的健康。传统的人工巡查方式效率低、成本高,难以满足实时监控与治理的需求。
|
4月前
|
机器学习/深度学习 传感器 人工智能
火灾火焰识别数据集(2200张图片已划分、已标注)|适用于YOLO系列深度学习分类检测任务【数据集分享】
在人工智能和计算机视觉的快速发展中,火灾检测与火焰识别逐渐成为智慧城市、公共安全和智能监控的重要研究方向。一个高质量的数据集往往是推动相关研究的核心基础。本文将详细介绍一个火灾火焰识别数据集,该数据集共包含 2200 张图片,并已按照 训练集(train)、验证集(val)、测试集(test) 划分,同时配有对应的标注文件,方便研究者快速上手模型训练与评估。
火灾火焰识别数据集(2200张图片已划分、已标注)|适用于YOLO系列深度学习分类检测任务【数据集分享】
|
4月前
|
机器学习/深度学习 人工智能 自动驾驶
7种交通场景数据集(千张图片已划分、已标注)|适用于YOLO系列深度学习分类检测任务【数据集分享】
在智能交通与自动驾驶技术快速发展的今天,如何高效、准确地感知道路环境已经成为研究与应用的核心问题。车辆、行人和交通信号灯作为城市交通系统的关键元素,对道路安全与交通效率具有直接影响。然而,真实道路场景往往伴随 复杂光照、遮挡、多目标混杂以及交通信号状态多样化 等挑战,使得视觉识别与检测任务难度显著增加。
|
4月前
|
机器学习/深度学习 人工智能 监控
坐姿标准好坏姿态数据集(图片已划分、已标注)|适用于YOLO系列深度学习分类检测任务【数据集分享】
坐姿标准好坏姿态数据集的发布,填补了计算机视觉领域在“细分健康行为识别”上的空白。它不仅具有研究价值,更在实际应用层面具备广阔前景。从青少年的健康教育,到办公室的智能提醒,再到驾驶员的安全监控和康复训练,本数据集都能发挥巨大的作用。
坐姿标准好坏姿态数据集(图片已划分、已标注)|适用于YOLO系列深度学习分类检测任务【数据集分享】
|
4月前
|
机器学习/深度学习 数据采集 算法
PCB电路板缺陷检测数据集(近千张图片已划分、已标注)| 适用于YOLO系列深度学习检测任务【数据集分享】
在现代电子制造中,印刷电路板(PCB)是几乎所有电子设备的核心组成部分。随着PCB设计复杂度不断增加,人工检测PCB缺陷不仅效率低,而且容易漏检或误判。因此,利用计算机视觉和深度学习技术对PCB缺陷进行自动检测成为行业发展的必然趋势。
PCB电路板缺陷检测数据集(近千张图片已划分、已标注)| 适用于YOLO系列深度学习检测任务【数据集分享】
|
2月前
|
机器学习/深度学习 数据采集 自然语言处理
29_序列标注技术详解:从HMM到深度学习
序列标注(Sequence Labeling)是自然语言处理(NLP)中的一项基础任务,其目标是为序列中的每个元素分配一个标签。在NLP领域,序列标注技术广泛应用于分词、词性标注、命名实体识别、情感分析等任务。
|
机器学习/深度学习 人工智能 监控
单车、共享单车已标注数据集(图片已划分、已标注)|适用于深度学习检测任务【数据集分享】
数据是人工智能的“燃料”。一个高质量、标注精准的单车与共享单车数据集,不仅能够推动学术研究的进步,还能为智慧交通、智慧城市的建设提供有力支撑。 在计算机视觉领域,研究者们常常会遇到“数据鸿沟”问题:公开数据集与真实业务需求之间存在不匹配。本次分享的数据集正是为了弥补这一不足,使得研究人员与工程师能够快速切入单车检测领域,加速模型从实验室走向真实应用场景。
|
2月前
|
机器学习/深度学习 数据采集 人工智能
【机器学习算法篇】K-近邻算法
K近邻(KNN)是一种基于“物以类聚”思想的监督学习算法,通过计算样本间距离,选取最近K个邻居投票决定类别。支持多种距离度量,如欧式、曼哈顿、余弦相似度等,适用于分类与回归任务。结合Scikit-learn可高效实现,需合理选择K值并进行数据预处理,常用于鸢尾花分类等经典案例。(238字)
|
机器学习/深度学习 算法 数据挖掘
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构。本文介绍了K-means算法的基本原理,包括初始化、数据点分配与簇中心更新等步骤,以及如何在Python中实现该算法,最后讨论了其优缺点及应用场景。
1226 6

相关产品

  • 人工智能平台 PAI