论文笔记--Won’t Get Fooled Again: Answering Questions with False Premises
论文笔记--Won’t Get Fooled Again: Answering Questions with False Premises
- 1. 文章简介
- 2. 文章概括
- 3 文章重点技术
- 3.1 大模型面对FPQs的表现
- 3.2 False QAs数据集
- 3.3 训练和评估
- 4. 文章亮点
- 5. 原文传送门
1. 文章简介
- 标题:Won’t Get Fooled Again: Answering Questions with False Premises
- 作者:Shengding Hu, Yifan Luo, Huadong Wang, Xingyi Cheng, Zhiyuan Liu, Maosong Sun
- 日期:2023
- 期刊:arxiv
2. 文章概括
文章给出了第一份False Premises Questions(FPQs)数据集,并证明了PLMs本身具有识别False premise的能力,通过在少量FPQ上微调可以激活该能力。
下图为PLM能力激活的一个简单示例
3 文章重点技术
3.1 大模型面对FPQs的表现
一般来说,我们直接问大模型"Does the sun have eyes?“可以得到正确的答案"No”,但当我们把错误问题作为前提提问其它问题时,比如"How many eyes does the sun have?",这时候大模型往往会把错误问题中蕴含的前提当真,并继续给出错误的答案。具体来说,我们用<subject, predicate, object>表示一个三元组,上述问题的三元组为<triple, quantity, ?>,其中triple为<syn, has_property, eye>,针对此类triple中嵌套triple的问题,大模型往往无法正确作答。
文章测试了Bloon, OPT, Jurassic-1, GPT-3对一些FPQ的问答能力。如下表所示,大模型模型可以直接回答出单个三元组的问题,但无法正确回答错误假设下的问题FPQs。
3.2 False QAs数据集
为了解决上述问题,文章构建了一份False QAs数据集。由于从自然语言语料库中收集数据可能会是的收集的问题不可控,且难以对其校正。为此,文章手动构建数据集,希望构建的False QA数据集具有broad coverage, high quality, few shortcuts, detailed explanations。
首先,文章希望数据集包含尽可能多的问题分类。文章对错误问题进行了两种分类:按照错误类型进行分类(包括尝试错误、逻辑错误等);按照问题格式进行分类(包括事实类畏难而退,描述类问题等)。最后得到的数据集包括8种错误类型的问题,6种问题格式的问题,且每种类型的问题数量仅可能一致。
作者雇用了20个人类标记员来创造FPQs。首先从Generic-sKB数据库中获取单词为源单词及对应的简短的描述性句子,然后标记员根据该单词进行发散思考创造出包含/与单词相关的错误前提的问题。为了让PLMs更深刻地理解任务,我们让标记员对每个FPQs进行修正,且需保证修改最小从而确保模型可以学习到必要的知识。此外,每个标记员被要求对FPQs为什么是错误的给出解释,且解释不能仅仅是对错误的否定。下图为标记数据的流程。
最后,文章得到了FalseQA数据集,包含2365个问题对(包含False QA和修正后的True QA)。
3.3 训练和评估
为了让模型同时判断问题的假设是为真 并给出合理的解释,我们让模型生成判别tokens: “tricky question"或是"true question”,然后继续生成对判断的解释。由于判别tokens的token数很少,文章增加了额外的binary loss来进行学习,该loss和模型的生成时loss的比例为1。
评估阶段,如果生成的答案中包含“tricku question”,则认为该问题为一个FPQ,否则为一个TPQ。
4. 文章亮点
文章给出了第一个False Premise Questions数据集,在其基础上进行学习可以增强大模型对FPQs问题的判别和解释能力。且数值实验表明,在学习FPQs的过程中增加少量的原始QA数据(每次迭代使用小部分重复数据即可)可以有效地防止大模型的灾难性遗忘现象发生。False QAs数据集可供科研工作者进行进一步的该类研究,且文章提出的学习思路可供未来的QA数据集构建参考。
5. 原文传送门
Won’t Get Fooled Again: Answering Questions with False Premises
相关文章:

论文笔记--Won’t Get Fooled Again: Answering Questions with False Premises
论文笔记--Won’t Get Fooled Again: Answering Questions with False Premises 1. 文章简介2. 文章概括3 文章重点技术3.1 大模型面对FPQs的表现3.2 False QAs数据集3.3 训练和评估 4. 文章亮点5. 原文传送门 1. 文章简介 标题:Won’t Get Fooled Again: Answerin…...
【Django】include app_name和namespace的区别
app_name 区分不同app的url的name,防止不同app之间,url_name的重名,引用时加入app_name:name namespace 区分不同路由 include同一个view module的情况, 让不同路由进入同一个view中,进行reverse时,根据对…...

(黑客)自学笔记
特别声明: 此教程为纯技术分享!本教程的目的决不是为那些怀有不良动机的人提供及技术支持!也不承担因为技术被滥用所产生的连带责任!本教程的目的在于最大限度地唤醒大家对网络安全的重视,并采取相应的安全措施&#x…...

【期末课程设计】学生成绩管理系统
因其独特,因其始终如一 文章目录 一、学生成绩管理系统介绍 二、学生成绩管理系统设计思路 三、源代码 1. test.c 2. Student Management System.c 3.Stu_System.c 4.Teacher.c 5.Student Management System.h 前言: 学生成绩管理系统含教师…...

【论文笔记】KDD2019 | KGAT: Knowledge Graph Attention Network for Recommendation
Abstract 为了更好的推荐,不仅要对user-item交互进行建模,还要将关系信息考虑进来 传统方法因子分解机将每个交互都当作一个独立的实例,但是忽略了item之间的关系(eg:一部电影的导演也是另一部电影的演员)…...
ES6:基础使用,积累
一、理解ES6 ES6是ECMAScript 6.0的简称,也被称为ES2015。它是ECMAScript的第六个版本,是JavaScript标准的下一个重大更新。ES6于2015年6月发布,新增了许多新的语言特性和API,包括箭头函数、let和const关键字、模板字符串、解构赋…...
Android端上传文件到Spring Boot后端
准备 确定好服务器端文件保存的位置确定好请求参数名(前后端要保持一致的喔)如果手机是通过usb连接到电脑的,需要执行一下: adb reverse tcp:8080 tcp:8080 AndroidManifest.xml的<application/>节点中加上: android:usesC…...

使用GGML和LangChain在CPU上运行量化的llama2
Meta AI 在本周二发布了最新一代开源大模型 Llama 2。对比于今年 2 月发布的 Llama 1,训练所用的 token 翻了一倍,已经达到了 2 万亿,对于使用大模型最重要的上下文长度限制,Llama 2 也翻了一倍。 在本文,我们将紧跟趋…...

微服务基础理论
微服务简介 微服务Microservices之父,马丁.福勒,对微服务大概的概述如下: 就目前而言,对于微服务业界并没有一个统一的、标准的定义(While there is no precise definition of this architectural style ) 。但通在其…...
《向量数据库指南》:向量数据库Pinecone管理数据教程
目录 连接到索引 指定索引端点 调用whoami以检索您的项目名称。 描述索引统计信息 获取向量 更新向量 完整更新 ℹ️注意 部分更新 ⚠️注意 ℹ️注意 删除向量...
以深度为基础的Scikit-learn: 高级特性与最佳实践
Scikit-learn是一个广受欢迎的Python库,它用于解决许多机器学习的问题。在本篇文章中,我们将进一步探索Scikit-learn的高级特性和最佳实践。 一、管道机制 Scikit-learn的Pipeline类是一种方便的工具,它允许你将多个步骤(如数据…...
Autosar MCAL-S32K324Dio配置-基于EB
文章目录 DioPost Build Variant UsedConfig VariantDioConfigDioPortDioChannelDioChannelGroupDioConfigDio Development Error DetectSIUL2 IP Dio Development Error DetectDio Version Info ApiDio Reverse Port BitsDio Flip Channel ApiDio Rea...

【Spring Boot】单元测试
单元测试 单元测试在日常项目开发中必不可少,Spring Boot提供了完善的单元测试框架和工具用于测试开发的应用。接下来介绍Spring Boot为单元测试提供了哪些支持,以及如何在Spring Boot项目中进行单元测试。 1.Spring Boot集成单元测试 单元测试主要用…...

Flink CEP (一)原理及概念
目录 1.Flink CEP 原理 2.Flink API开发 2.1 模式 pattern 2.2 模式 pattern属性 2.3 模式间的关系 1.Flink CEP 原理 Flink CEP内部是用NFA(非确定有限自动机)来实现的,由点和边组成的一个状态图,以一个初始状态作为起点&am…...

vue3+taro+Nutui 开发小程序(二)
上一篇我们初始化了小程序项目,这一篇我们来整理一下框架 首先可以看到我的项目整理框架是这样的: components:这里存放封装的组件 custom-tab-bar:这里存放自己封装的自定义tabbar interface:这里放置了Ts的一些基本泛型,不用…...

Transformer 模型实用介绍:BERT
动动发财的小手,点个赞吧! 在 NLP 中,Transformer 模型架构是一场革命,极大地增强了理解和生成文本信息的能力。 在本教程[1]中,我们将深入研究 BERT(一种著名的基于 Transformer 的模型)&#…...

Spring详解(学习总结)
目录 一、Spring概述 (一)、Spring是什么? (二)、Spring框架发展历程 (三)、Spring框架的优势 (四)、Spring的体系结构 二、程序耦合与解耦合 (一&…...

【JavaEE】Spring中注解的方式去获取Bean对象
【JavaEE】Spring的开发要点总结(3) 文章目录 【JavaEE】Spring的开发要点总结(3)1. 属性注入1.1 Autowired注解1.2 依赖查找 VS 依赖注入1.3 配合Qualifier 筛选Bean对象1.4 属性注入的优缺点 2. Setter注入2.1 Autowired注解2.2…...

【基于CentOS 7 的iscsi服务】
目录 一、概述 1.简述 2.作用 3. iscsi 4.相关名称 二、使用步骤 - 构建iscsi服务 1.使用targetcli工具进入到iscsi服务器端管理界面 2.实现步骤 2.1 服务器端 2.2 客户端 2.2.1 安装软件 2.2.2 在认证文件中生成iqn编号 2.2.3 开启客户端服务 2.2.4 查找可用的i…...
解决安装依赖时报错:npm ERR! code ERESOLVE
系列文章目录 文章目录 系列文章目录前言一、错误原因二、解决方法三、注意事项总结 前言 在使用 npm 安装项目依赖时,有时会遇到错误信息 “npm ERR! code ERESOLVE”,该错误通常发生在依赖版本冲突或者依赖解析问题时。本文将详细介绍出现这个错误的原…...

【Linux网络篇】:初步理解应用层协议以及何为序列化和反序列化
✨感谢您阅读本篇文章,文章内容是个人学习笔记的整理,如果哪里有误的话还请您指正噢✨ ✨ 个人主页:余辉zmh–CSDN博客 ✨ 文章所属专栏:Linux篇–CSDN博客 文章目录 一.序列化和反序列化为什么需要序列化和反序列化为什么应用层…...

数据结构中无向图的邻接矩阵详解
在计算机科学的浩瀚宇宙中,数据结构无疑是那把开启高效编程大门的关键钥匙。对于计算机专业的大学生们来说,数据结构课程是专业学习路上的一座重要里程碑,而其中的图结构更是充满魅力与挑战,像一幅神秘的画卷等待我们去展开。今天…...
Java八股-数据类型转换有哪些?类型互转会有什么问题?为什么用bigDecimal 不用double ?自动装箱和拆箱?包装类?
Java中有哪些数据类型转换? 显示类型转换:在前面一个括号,里面写上要转换的类型 隐式类型转换:小范围的数据类型转大范围的,int到long,float到double 字符串转整形或浮点:整形:In…...
JS手写代码篇---手写节流函数
8、节流函数 什么是节流函数? 指规定一个单位时间,在这个单位时间内,只能有一次触发事件的回调函数执行,如果在同一个单位时间内某事件被触发多次,只有一次能生效。 与防抖函数有什么区别? 防抖函数是延…...
React从基础入门到高级实战:React 核心技术 - 动画与过渡效果:提升 UI 交互体验
React 动画与过渡效果:提升 UI 交互体验 在现代 Web 开发中,动画和过渡效果不仅仅是视觉上的点缀,它们在提升用户体验、引导用户注意力以及增强交互性方面扮演着重要角色。作为一款广受欢迎的前端框架,React 提供了多种实现动画的…...
主流Markdown编辑器的综合评测与推荐
根据2025年最新资料,结合功能特性、用户体验和技术适配性,以下是对主流Markdown编辑器的综合评测与推荐: 一、核心对比维度与评估方法 功能完整性:支持数学公式、流程图、代码高亮等复杂格式。跨平台兼容性:Windows/m…...
HDFS存储原理与MapReduce计算模型
HDFS存储原理 1. 架构设计 主从架构:包含一个NameNode(主节点)和多个DataNode(从节点)。 NameNode:管理元数据(文件目录结构、文件块映射、块位置信息),不存储实际数据…...

服务发现Nacos
目录 Nacos server 安装 注册服务到Nacos server 接口访问Nacos server中的已注册服务 Nacos控制台介绍 Nacos:一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。 在分布式服务应用中,各类服务需要统一的注册、统一的管理,这个组件工具…...
MVCC 原理与并发控制实现
MVCC 原理与并发控制实现 1. MVCC 基本概念 MVCC(Multi-Version Concurrency Control,多版本并发控制)是现代数据库系统中实现并发控制的核心技术之一。与传统的锁机制不同,MVCC通过维护数据的多个版本来实现非阻塞读取。 关键结论:MVCC的核…...

C++并集查找
前言 C图论 C算法与数据结构 本博文代码打包下载 基本概念 并查集(Union-Find)是一种用于处理动态连通性(直接或间接相连)的数据结构,主要支持两种操作:union 和 find。通过这两个基本操作,可…...