【RAG 论文】SKR:Self-Knowledge 指导下的 RAG

news2024/11/15 10:51:56

论文:Self-Knowledge Guided Retrieval Augmentation for Large Language Models
⭐⭐⭐⭐
Tsinghua, arXiv:2310.05002

文章目录

    • 一、论文速读
    • 二、实现细节
      • 2.1 数据的收集
      • 2.2 引出 LLM 的 Self-Knowledge 的方法
        • 1)Direct Prompting
        • 2)In-Context Learning
        • 3)Training a Classifier
        • 4)KNN(k-nearest-neighbor)
    • 三、实验结果及分析

一、论文速读

传统 RAG 的思路是引入外部知识来增强 LLM 的生成,但是现在的研究发现,有时候引入检索到的文档反而会给 LLM 的生成产生消极影响。

为了更好利用 LLM 的内部参数化知识和外部世界知识,我们需要激发模型识别自己知道还是不知道的能力,也被称为 self-knowledge。因此,本工作提出了 SKR(Self-Knowledge guided Retrieval augmentation):当 LLM 面对一个 user query,先识别出 LLM 知不知道这个问题,如果知道的话就直接让 LLM 回复,如果不知道的话就调用 retriever 进行检索

二、实现细节

该工作在 QA 的场景下做的研究,首先收集了一批研究数据,然后提出了四个方法来激发 LLM 的 Self-Knowledge 的能力。

2.1 数据的收集

对于已有的 QA 数据集,我们希望把其中的所有 question 分成两类:LLM "知道"的和"不知道"的,即 D + D^+ D+ D − D^- D

给定一个 question q i q_i qi,我们先直接把它输入给 LLM 得到 answer α ( q i ) \alpha(q_i) α(qi),然后再把它调用 retriever 后以 RAG 的形式输入给 LLM 得到 answer α R ( q i ) \alpha^R(q_i) αR(qi),然后我们拿 ground-truth answer 来衡量两种方式得到的 LLM answer:

  • 如果 α ( q i ) \alpha(q_i) α(qi) α R ( q i ) \alpha^R(q_i) αR(qi) 都不正确,直接丢弃 question q i q_i qi
  • 如果 E [ α ( q i ) ] ≥ E [ α R ( q i ) ] E[\alpha(q_i)] \ge E[\alpha^R(q_i)] E[α(qi)]E[αR(qi)],那就把 question 归为 D + D^+ D+
  • 反之则归为 D − D^- D

其中 E [ ⋅ ] E[\cdot] E[] 是一个 evaluation metric,比如 accuracy。

2.2 引出 LLM 的 Self-Knowledge 的方法

论文提出了四种方法:direct prompting、in-context learning、classifier、KNN,下面分别介绍一下。

1)Direct Prompting

也就是设计 prompt template 然后填充 question 后,直接问 LLM 是否需要额外信息来辅助生成。prompt template 如下:

2)In-Context Learning

基于前面的 direct prompting,首先给 LLM 几个示例,教会它输出 Yes 或者 No,然后再问他是否需要更多信息来辅助增强,如下图所示:

3)Training a Classifier

使用之前的数据集,基于 BERT-base 训练一个二分类的 classifier,从而决定一个 question 要不要进行检索。

4)KNN(k-nearest-neighbor)

这里基于一个 motivation:如果两个 question 在语义嵌入空间中相近,那么 LLM 会倾向于对两个 question 展示出相似的 self-knowledge。

于是,可以使用一个 pre-trained fixed encoder 来对 question 做 KNN 从而推断出它的 label。

三、实验结果及分析

论文在 5 个 QA 数据集上进行了实验,最终,KNN 的方法在 5 个数据集上平均表现最好,而 direct prompting 的方法则表现较差。

论文还发现,无论是内部知识还是外部知识,都存在自己的限制:

  • 像 CoT 这样利用 LLM 内部知识的方法,并不总是能有效提升效果
  • 检索文档这样的利用外部知识的方法,也不总是有用的,有时甚至会让模型表现更差

论文还做了如下的分析:

  • 不同 template 的 self-knowledge 影响:发现所有设计的模板,都可以让 LLM 表达出自己的响应。论文发现,LLM 对于自己认为可以回答的问题,准确率可以达到 70%~73%,这也表明仍有 30% 的问题,模型是不知道自己“不知道”的。
  • 不同数据集的 self-knowledge 影响:发现不同的方法在不同的数据集上会有一定的差距,这可能与数据集的问题有关。
  • 训练数据大小的影响:随着训练数据的增加,性能逐渐提高,这说明从训练数据中收集的 self-knowledge 是有价值的。
  • 不同知识源的影响:整体来看,Wikipedia 作为外部知识源可以让 LLM 表现更好。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1646202.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024年电工杯数学建模竞赛A题B题思路代码分享

您的点赞收藏是我继续更新的最大动力! 欲获取更多电工杯学习资料,可点击如下卡片链接 点击链接加入群聊【2024电工杯】:http://qm.qq.com/cgi-bin/qm/qr?_wv1027&k_PrjarulWZU8JsAOA9gnj_oHKIjFe195&authKeySbv2XM853pynlnXiv6M58…

Honor of Kings QQ 1537937510

司空震到底要不要物理伤害高呢?还是法术伤害高呢?要不要出魔女和制裁引发的血案 先看下司空震的说明: 说下这个伙计为啥加QQ来骂我,因为这场当然最终是赢了,比赛里他一直强调司空震是物理伤害改版问题,然后…

爱普生S2D13V52快速实现车载显示屏高分辨率显示系统

随着时代的发展,汽车驾驶位前中央的显示屏承担的功能也越来越多,从一开始仅仅是显示仪表盘的信息,再到作为显示屏辅助倒车,再到如今和一块平板一样可公认娱乐,显示屏的大小有些时候成为了一辆车够不够好的体现。随着汽…

Pandas入门篇(三)-------数据可视化篇2(pandas-plot篇)

目录 概述一、格式1. 生成pandas.plotting对象来生成图表2. 调用plot()函数来生成图表3.支持的图表类型 二、单变量绘图常用图表1. 柱状图(bar)使用场景代码实现 2. 折线图(line)(默认即为折线图)适用场景代…

解密SSL/TLS:密码套件扫描仪的深度解析(C/C++代码实现)

解密SSL/TLS流量通常是为了分析和审计加密通信,以确保数据传输的安全性和合规性。密码套件扫描仪是实现这一目的的一种工具,它可以提供关于SSL/TLS配置的详细信息,帮助安全专家评估潜在的风险。 SSL/TLS协议基础 SSL/TLS协议是网络安全中不…

一个JDBC小工具

pom.xml 结构 <properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><mysql5>5.1.44<…

解决python/pycharm中import导入模块时报红却能运行的问题

一、问题 导入时报红&#xff0c;如下 二、解决 右键单击项目&#xff0c;将项目Mark Directory as→Sources Root 三、效果 报红消失 学习导航&#xff1a;http://www.xqnav.top

redis stream 作为消息队列的最详细的命令说明文档

简介 stream 作为消息队列&#xff0c;支持多次消费&#xff0c;重复消费&#xff0c;ack机制&#xff0c;消息异常处理机制。 涉及到以下几个概念&#xff0c;消息流&#xff0c;消费者组&#xff0c;消费者。 涉及到以下命令 # 添加消息到流中 XADD key [NOMKSTREAM] [&…

动态规划——背包问题(01,完全,多重)

一、01背包问题 1.题目描述 有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。第 i 件物品的体积是 vi&#xff0c;价值是 wi。 求解将哪些物品装入背包&#xff0c;可使这些物品的总体积不超过背包容量&#xff0c;且总价值最大。输出最大价值。 01背包问题特点&…

不考408的985,不想考408的有福了!吉林大学计算机考研考情分析

吉林大学&#xff08;Jilin University&#xff09;简称吉大&#xff0c;位于吉林长春&#xff0c;始建于1946年&#xff0c;是中华人民共和国教育部直属的综合性全国重点大学&#xff0c;国家“双一流”、“211工程”、“985工程”、“2011计划”重点建设的著名学府&#xff0…

免费分享一套微信小程序商城系统(电商系统)(SpringBoot+Vue3)【至尊版】,帅呆了~~

大家好&#xff0c;我是java1234_小锋老师&#xff0c;自己原创写了一个不错的微信小程序商城系统(电商系统)(SpringBootVue3)【至尊版】&#xff0c;免费分享下哈。 项目视频演示 【免费】微信小程序商城系统(电商系统)(SpringBootVue3) 【至尊版】Java毕业设计_哔哩哔哩_bi…

【数据结构与算法】之五道链表进阶面试题详解!

目录 1、链表的回文结构 2、相交链表 3、随机链表的复制 4、环形链表 5、环形链表&#xff08;||&#xff09; 6、完结散花 个人主页&#xff1a;秋风起&#xff0c;再归来~ 数据结构与算法 个人格言&#xff1a;悟已往之不谏&#xff0c;知…

自动驾驶主流芯片及平台架构(二)特斯拉自动驾驶芯片平台介绍

早期 对外采购mobileye EyeQ3 芯片摄像头半集成方案&#xff0c;主要是为了满足快速量产需求&#xff0c;且受制于研发资金不足限制&#xff1b; 中期 采用高算力NVIDIA 芯片平台其他摄像头供应商的特斯拉内部集成方案&#xff0c;mobileye开发节奏无法紧跟特斯拉需求&#xff…

pyside6的调色板QPalette的简单应用

使用调色板需要先导入:from PySide6.QtGui import QPalette 调色板QPalette的源代码&#xff1a; class QPalette(Shiboken.Object):class ColorGroup(enum.Enum):Active : QPalette.ColorGroup ... # 0x0Normal : QPalette.ColorGrou…

基于C++基础知识的循环语句

一、while循环 while循环语句形式如下&#xff1a; while(表达式){语句 } 循环每次都是执行完语句后回到表达式处重新开始判断&#xff0c;重新计算表达式的值&#xff0c;一旦表达式的值为假就退出循环。用花括号括起来的多条简单语句&#xff0c;花括号及其包含的语句被称…

公网tcp转流

之前做过几次公网推流的尝试, 今天试了UDP推到公网, 再用TCP从公网拉下来, 发现不行, 就直接改用TCP转TCP了. 中间中转使用的python脚本, 感谢GPT提供技术支持: import socket import threadingdef tcp_receiver(port, forward_queue):"""接收TCP数据并将其放入…

【简单介绍下7-Zip】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…

Fireworks AI和MongoDB:依托您的数据,借助优质模型,助力您开发高速AI应用

我们欣然宣布 MongoDB与 Fireworks AI 正携手合作 让客户能够利用生成式人工智能 (AI) 更快速、更高效、更安全地开展创新活动 Fireworks AI由 Meta旗下 PyTorch团队的行业资深人士于 2022 年底创立&#xff0c;他们在团队中主要负责优化性能、提升开发者体验以及大规模运…

五款优秀的局域网监控软件推荐:实时监控电脑屏幕的神器

在现代社会&#xff0c;计算机和网络已经成为工作中不可或缺的部分。随着局域网的普及&#xff0c;如何有效地监控和管理局域网内的电脑成为了许多企业和管理者关心的问题。本文将为您推荐五款优秀的局域网监控软件&#xff0c;帮助您实时监控电脑屏幕&#xff0c;提高工作效率…

宏电全栈式IoT赋能供排水智能监测,护航城市生命线

城市供水、排水系统是维系城市正常运行、满足群众生产生活需要的重要基础设施&#xff0c;是城市的“生命线”。随着城市化进程加快&#xff0c;城市规模不断扩大&#xff0c;地下管线增长迅速&#xff0c;城市“生命线安全”的监管日益面临挑战。 宏电作为物联网行业的领航者…