当前位置: 首页 > news >正文

论文笔记--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。
FPQs-PLMs

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为什么是错误的给出解释,且解释不能仅仅是对错误的否定。下图为标记数据的流程。
annomation  最后,文章得到了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. 文章简介 标题&#xff1a;Won’t Get Fooled Again: Answerin…...

【Django】include app_name和namespace的区别

app_name 区分不同app的url的name&#xff0c;防止不同app之间&#xff0c;url_name的重名&#xff0c;引用时加入app_name:name namespace 区分不同路由 include同一个view module的情况&#xff0c; 让不同路由进入同一个view中&#xff0c;进行reverse时&#xff0c;根据对…...

(黑客)自学笔记

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

【期末课程设计】学生成绩管理系统

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

【论文笔记】KDD2019 | KGAT: Knowledge Graph Attention Network for Recommendation

Abstract 为了更好的推荐&#xff0c;不仅要对user-item交互进行建模&#xff0c;还要将关系信息考虑进来 传统方法因子分解机将每个交互都当作一个独立的实例&#xff0c;但是忽略了item之间的关系&#xff08;eg&#xff1a;一部电影的导演也是另一部电影的演员&#xff09…...

ES6:基础使用,积累

一、理解ES6 ES6是ECMAScript 6.0的简称&#xff0c;也被称为ES2015。它是ECMAScript的第六个版本&#xff0c;是JavaScript标准的下一个重大更新。ES6于2015年6月发布&#xff0c;新增了许多新的语言特性和API&#xff0c;包括箭头函数、let和const关键字、模板字符串、解构赋…...

Android端上传文件到Spring Boot后端

准备 确定好服务器端文件保存的位置确定好请求参数名&#xff08;前后端要保持一致的喔&#xff09;如果手机是通过usb连接到电脑的&#xff0c;需要执行一下&#xff1a; adb reverse tcp:8080 tcp:8080 AndroidManifest.xml的<application/>节点中加上: android:usesC…...

使用GGML和LangChain在CPU上运行量化的llama2

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

微服务基础理论

微服务简介 微服务Microservices之父&#xff0c;马丁.福勒&#xff0c;对微服务大概的概述如下&#xff1a; 就目前而言&#xff0c;对于微服务业界并没有一个统一的、标准的定义&#xff08;While there is no precise definition of this architectural style ) 。但通在其…...

《向量数据库指南》:向量数据库Pinecone管理数据教程

目录 连接到索引 指定索引端点 调用whoami以检索您的项目名称。 描述索引统计信息 获取向量 更新向量 完整更新 ℹ️注意 部分更新 ⚠️注意 ℹ️注意 删除向量...

以深度为基础的Scikit-learn: 高级特性与最佳实践

Scikit-learn是一个广受欢迎的Python库&#xff0c;它用于解决许多机器学习的问题。在本篇文章中&#xff0c;我们将进一步探索Scikit-learn的高级特性和最佳实践。 一、管道机制 Scikit-learn的Pipeline类是一种方便的工具&#xff0c;它允许你将多个步骤&#xff08;如数据…...

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】单元测试

单元测试 单元测试在日常项目开发中必不可少&#xff0c;Spring Boot提供了完善的单元测试框架和工具用于测试开发的应用。接下来介绍Spring Boot为单元测试提供了哪些支持&#xff0c;以及如何在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&#xff08;非确定有限自动机&#xff09;来实现的&#xff0c;由点和边组成的一个状态图&#xff0c;以一个初始状态作为起点&am…...

vue3+taro+Nutui 开发小程序(二)

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

Transformer 模型实用介绍:BERT

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

Spring详解(学习总结)

目录 一、Spring概述 &#xff08;一&#xff09;、Spring是什么&#xff1f; &#xff08;二&#xff09;、Spring框架发展历程 &#xff08;三&#xff09;、Spring框架的优势 &#xff08;四&#xff09;、Spring的体系结构 二、程序耦合与解耦合 &#xff08;一&…...

【JavaEE】Spring中注解的方式去获取Bean对象

【JavaEE】Spring的开发要点总结&#xff08;3&#xff09; 文章目录 【JavaEE】Spring的开发要点总结&#xff08;3&#xff09;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 安装项目依赖时&#xff0c;有时会遇到错误信息 “npm ERR! code ERESOLVE”&#xff0c;该错误通常发生在依赖版本冲突或者依赖解析问题时。本文将详细介绍出现这个错误的原…...

【Linux网络篇】:初步理解应用层协议以及何为序列化和反序列化

✨感谢您阅读本篇文章&#xff0c;文章内容是个人学习笔记的整理&#xff0c;如果哪里有误的话还请您指正噢✨ ✨ 个人主页&#xff1a;余辉zmh–CSDN博客 ✨ 文章所属专栏&#xff1a;Linux篇–CSDN博客 文章目录 一.序列化和反序列化为什么需要序列化和反序列化为什么应用层…...

数据结构中无向图的邻接矩阵详解

在计算机科学的浩瀚宇宙中&#xff0c;数据结构无疑是那把开启高效编程大门的关键钥匙。对于计算机专业的大学生们来说&#xff0c;数据结构课程是专业学习路上的一座重要里程碑&#xff0c;而其中的图结构更是充满魅力与挑战&#xff0c;像一幅神秘的画卷等待我们去展开。今天…...

Java八股-数据类型转换有哪些?类型互转会有什么问题?为什么用bigDecimal 不用double ?自动装箱和拆箱?包装类?

Java中有哪些数据类型转换&#xff1f; 显示类型转换&#xff1a;在前面一个括号&#xff0c;里面写上要转换的类型 隐式类型转换&#xff1a;小范围的数据类型转大范围的&#xff0c;int到long&#xff0c;float到double 字符串转整形或浮点&#xff1a;整形&#xff1a;In…...

JS手写代码篇---手写节流函数

8、节流函数 什么是节流函数&#xff1f; 指规定一个单位时间&#xff0c;在这个单位时间内&#xff0c;只能有一次触发事件的回调函数执行&#xff0c;如果在同一个单位时间内某事件被触发多次&#xff0c;只有一次能生效。 与防抖函数有什么区别&#xff1f; 防抖函数是延…...

React从基础入门到高级实战:React 核心技术 - 动画与过渡效果:提升 UI 交互体验

React 动画与过渡效果&#xff1a;提升 UI 交互体验 在现代 Web 开发中&#xff0c;动画和过渡效果不仅仅是视觉上的点缀&#xff0c;它们在提升用户体验、引导用户注意力以及增强交互性方面扮演着重要角色。作为一款广受欢迎的前端框架&#xff0c;React 提供了多种实现动画的…...

主流Markdown编辑器的综合评测与推荐

根据2025年最新资料&#xff0c;结合功能特性、用户体验和技术适配性&#xff0c;以下是对主流Markdown编辑器的综合评测与推荐&#xff1a; 一、核心对比维度与评估方法 功能完整性&#xff1a;支持数学公式、流程图、代码高亮等复杂格式。跨平台兼容性&#xff1a;Windows/m…...

HDFS存储原理与MapReduce计算模型

HDFS存储原理 1. 架构设计 主从架构&#xff1a;包含一个NameNode&#xff08;主节点&#xff09;和多个DataNode&#xff08;从节点&#xff09;。 NameNode&#xff1a;管理元数据&#xff08;文件目录结构、文件块映射、块位置信息&#xff09;&#xff0c;不存储实际数据…...

服务发现Nacos

目录 Nacos server 安装 注册服务到Nacos server 接口访问Nacos server中的已注册服务 Nacos控制台介绍 Nacos:一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。 在分布式服务应用中&#xff0c;各类服务需要统一的注册、统一的管理&#xff0c;这个组件工具…...

MVCC 原理与并发控制实现

MVCC 原理与并发控制实现 1. MVCC 基本概念 MVCC(Multi-Version Concurrency Control&#xff0c;多版本并发控制)是现代数据库系统中实现并发控制的核心技术之一。与传统的锁机制不同&#xff0c;MVCC通过维护数据的多个版本来实现非阻塞读取。 关键结论&#xff1a;MVCC的核…...

C++并集查找

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