【LLM之RAG】KG_RAG论文阅读笔记

news2024/11/23 6:59:48

研究背景

该研究集中于通过将生物医学知识图谱(KG)与大型语言模型(LLMs)集成,以增强LLMs在生物医学应用中的表现。研究的动机源于LLMs在生成精确内容方面面临的挑战,尤其是在像生物医学这样准确性至关重要的领域。LLMs在广泛的通用文本上的传统训练并不总是能够在专业领域中转化为高准确性,这是因为模型尽管语言结构正确,却仍会生成错误信息(即“幻觉”)。

研究目标

本研究的主要目标是创建一个框架,将丰富的结构化生物医学知识与LLMs的先进文本处理能力结合起来。这个框架旨在提高LLMs输出的事实正确性,使其更适合敏感的生物医学应用,而无需进行广泛的重新训练或特定领域的微调

相关工作

LLM的限制:尽管LLM功能强大,但在处理复杂的特定领域信息时常常生成非事实内容。
特定领域的LLM:如PubMedBERT和BioBERT等模型专门在生物医学文献上进行训练,以缓解一些问题,但需要巨大的计算资源。
LLM中的知识图谱:先前的工作已将LLM与KG整合,有效地利用了结构化领域知识,特别是在问答任务中。

方法论

数据处理

1.query->抽取实体,prompt对应为:
在这里插入图片描述
2.找到的graph中的三元组转为自然语言:
(Disease hypertension, ASSOCIATES_DaG, Gene VHL) → Disease hypertension associates Gene VHL

3.把检索出来的自然语言填充进Prompt,例如:
在这里插入图片描述

解决方案

从KG中检索出相关信息,回填Prompt,基本上走的原RAG后半段的G思路,R也是采用embedding,不过和非结构化文档的检索流程略不同。
在这里插入图片描述
详细流程如下:

  1. 实体识别:通过零样本提示(zero-shot prompting)实现的。研究人员设计了一个高效的抽取prompt,引导大型语言模型(如GPT-3.5-Turbo)从输入文本中提取疾病实体,并将结果以JSON格式返回。(替代原始NER模型)
  2. 实体链接:用语义相似度的方式来做。
    实体embedding计算:首先,使用Embedding模型(如’all-MiniLM-L6-v2’)为SPOKE知识图谱中的所有疾病概念节点计算embedding向量
    将计算出的疾病embedding存储在向量数据库(如’Chroma’)中,以便快速检索。
    语义搜索匹配:将LLM提取的疾病实体与向量数据库中的疾病实体进行比较,选择最相似的
    当然,如果零样本方法未能识别出疾病实体,采取的办法是直接拿原始query去匹配,取top 5。
  3. 子图查询:在得到具体的实体后,紧接着就是从KG中去查询这个实体关联的子图,这些信息通常以三元组(Subject, Predicate, Object)的形式存在,表示不同的生物医学关系。通常情况下,可以查询1~3跳内的三元组信息,这里借助图数据库可以比较容易的实现。
    得到的三元组信息,LLM可能不太能比较好的理解,这里就需要将三元组转换成自然语言,以便与输入提示结合并用于后续的文本生成。举个例子:
    (Disease hypertension, ASSOCIATES_DaG, Gene VHL) → Disease hypertension associates Gene VHL
  4. 上下文剪枝:在KG-RAG框架中,Context Pruning(上下文剪枝)是一个关键步骤,就和dfs遍历时,需要剪枝来减少遍历时间一样,这里的剪枝可以减少给LLM的信息,减少token数量,同时过滤掉一些无用信心,还能提升LLM回答的精确性。
    Context Pruning的具体做法还是会基于embedding来计算语义相似度,大概就是使用embedding模型计算三元组和query的cos相似度,最后选择策略:
    条件一:上下文关联的余弦相似度必须大于所有提取上下文关联的相似度分布的75%分位
    条件二:余弦相似度的最小值必须达到0.5
    通过这个0.5 和 75%,可以有效减少给LLM的无效信息,有助于提高后续文本生成的准确性和相关性。

实验

实验设计

实验使用了多种预训练的LLM,包括Llama-2-13b、GPT-3.5-Turbo和GPT-4,利用KG-RAG框架处理不同的生物医学任务(例如,是非题、多项选择题和药物重定位)。比较这些模型在使用和不使用KG-RAG框架的情况下的表现,以评估整合KG信息的影响。
KG选用的是SPOKE,SPOKE是一个开放知识图谱,提供数据下载和开放API,整合了超过40个公开可用的生物医学知识源,涵盖了基因、蛋白质、药物、化合物、疾病等概念和概念之间的关系,

实验结论

  1. 引入KG-RAG后,所有测试任务中LLM输出的准确性和可靠性都显著提高。特别是,Llama-2模型在MCQ(多项选择题)数据集上的表现提高到显著的71%。
    在这里插入图片描述

  2. 与KG-RAG集成的模型显示出更好的上下文利用能力,能生成更准确的生物医学文本回答,尤其是在复杂查询场景如药物重定位中。
    在这里插入图片描述

参考资料

  • 原文
  • 代码

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

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

相关文章

重生之 SpringBoot3 入门保姆级学习(18、事件驱动开发解耦合)

重生之 SpringBoot3 入门保姆级学习(18、事件驱动开发解耦合) 5、SpringBoot3 核心5.1 原始开发5.2 事件驱动开发 5、SpringBoot3 核心 5.1 原始开发 LoginController package com.zhong.bootcenter.controller;import com.zhong.bootcenter.service.A…

【C++】stack、queue和deque的使用

💗个人主页💗 ⭐个人专栏——C学习⭐ 💫点击关注🤩一起学习C语言💯💫 目录 导读 一、stack 1. stack介绍 2. stack使用 二、queue 1. queue介绍 2. queue使用 三、deque 1. deque介绍 2. deque的…

软件安全漏洞分析与发现 复习笔记

1 绪论 本节无考点,仅供了解。 2 基础知识 考点: 汇编码理解和撰写,三种内存地址,不同的页管理方式。windows保护模式可能出题 汇编算法的阅读理解给出汇编片段,理解其意思,输入->输出保护模式…

基于MBD的大飞机模块化广域协同研制

引言 借鉴国外航空企业先进经验,在国内,飞机型号的研制通常采用基于模型定义(MBD)的三维数模作为唯一的设计制造协同数据源,从而有效减少了设计和制造部门之间的模型沟通成本和重构所需的时间,也减少或避免…

(2)图像识别yolov5—识别图片视频等文件

目录 一、识别示例图片 二、识别视频 三、修改 detect.py 代码以输出物体坐标,更改识别方式 四、更改后的演示代码: 一、识别示例图片 在yolov5文件夹中,有两个示例图片,这里我们对示例图片进行识别。 打开命令行,进入到当前yolov5目录,通过运行下面的指令,然后对…

ARM32开发--RTC内置实时时钟

知不足而奋进 望远山而前行 目录 系列文章目录 文章目录 前言 学习目标 学习内容 RTC时钟介绍 RTC结构框图 RTC原理图 RTC时钟电源 RTC的配置流程 RTC时钟 开发流程 RTC初始化 时钟配置 时钟获取 BCD格式转化 完整代码 RTC时钟备份寄存器 总结 前言 在嵌入式…

小众宝藏工作软件大公开

嘿宝贝们!👋 今天要跟大家种草几款超实用但相对小众的工作软件,让你的工作效率直线上升,还能享受工作的乐趣哦!💼🎉 1️⃣ 亿可达 - 作为一款自动化工具,亿可达被誉为国内版的免费Z…

MT2094 甜品供应

思路&#xff1a; 贪心策略&#xff1a;手下按r进行从小到大排序。用小根堆存储甜品。如果堆顶甜品无法被当前手下满足&#xff0c;则将甜品放回堆中&#xff0c;看下一个手下能不能满足。 代码&#xff1a; #include <bits/stdc.h> using namespace std; const int N …

新渠道+1!TDengine Cloud 入驻 Azure Marketplace

近日&#xff0c;TDengine Cloud 正式入驻微软云 Marketplace&#xff0c;为全球更多用户带来全托管的时序数据处理服务。这一举措也丰富了 TDengine 的订阅渠道&#xff0c;为用户提供了极大的便捷性。现在&#xff0c;您可以通过微软云 Marketplace 轻松订阅并部署 TDengine …

基于51单片机公交车报站系统—显示时间温度

基于51单片机公交车报站系统 &#xff08;仿真&#xff0b;程序&#xff09; 功能介绍 具体功能&#xff1a; 1.用LCD12864播报站台&#xff0c;显示当前站台和下一站&#xff0c;当前时间和温度&#xff1b; 2.站台名为一号到四号&#xff0c;下行从一号到四号&#xff0c;…

力反馈设备的融入让虚拟装配训练更具沉浸感

随着科技的快速发展&#xff0c;虚拟现实&#xff08;VR&#xff09;技术已经在各个领域得到了广泛应用。其中&#xff0c;虚拟装配训练作为虚拟制造的重要组成部分&#xff0c;对于提高装配效率、降低设计成本以及提升产品质量具有至关重要的作用。然而&#xff0c;传统的虚拟…

大模型排行榜出炉!第一名不是ChatGPT!

前言 现在科技圈什么最火&#xff1f;当属大模型。 如雨后春笋般冒出的大模型&#xff0c;每一个都在争做行业No.1&#xff0c;但你知道现在哪个大模型能力最强&#xff1f;哪个最受人喜欢吗&#xff1f; 近期&#xff0c;清华大学发布《SuperBench大模型综合能力评测报告》…

【启明智显分享】2D图形加速和JPEG解码如何实现高质量图形传输(以Model3A 7寸触摸屏为例)

自从1951年在旋风计算机上成功显示图形开始&#xff0c;人类致力于计算机处理图形的不发就从来没有停止过。随着技术的发展&#xff0c;人们对图形图像处理能力的期望也越来越高。计算机图形图像处理能力的提高与高运算能力的处理器和图像处理技术都有着紧密的联系。 今天&…

电脑意外出现user32.dll丢失的八种修复方法,有效解决user32.dll文件丢失

遇到与 user32.dll 相关的错误通常是因为该文件已损坏、丢失、或者与某些软件冲突。今天这篇文章寄给大家介绍八种修复user32.dll丢失的方法&#xff0c;下面是一步步的详细教程来解决这个问题。 1. 重新启动电脑 第一步总是最简单的&#xff1a;重新启动你的电脑。许多小问题…

MQTT通讯协议接入

1.MQTT协议概述 MQTT是一种基于发布/订阅模式的轻量级消息传输协议&#xff0c;常用于低带宽、不可靠网络环境下传输消息&#xff0c;适用于物联网设备之间的通信。 1.1 MQTT协议的组件 客户端&#xff08;Client&#xff09;&#xff1a;连接到MQTT代理服务器的设备&#xff…

怎么把flv格式转成mp4?教你四种简单好用的转换方法!

怎么把flv格式转成mp4&#xff1f;FLV文件格式&#xff0c;曾经以其独特的方式在视频传输领域崭露头角&#xff0c;如今却似乎被时代的洪流逐渐淹没。其新颖之处虽然为视频传输界带来了一抹亮色&#xff0c;但随之而来的挑战也不容忽视&#xff0c;首当其冲的便是兼容性问题。由…

HLS入门---流水灯闪烁

文章目录 1.HLS简介2.led闪烁实验2.1 函数撰写 1.HLS简介 HLS&#xff08;High-Level Synthesis&#xff0c;高级综合&#xff09;是一种将高级硬件描述语言&#xff08;如C/C&#xff09;转换为硬件描述语言&#xff08;如Verilog或VHDL&#xff09;的过程。这种技术允许设计…

推荐一款WPF绘图插件OxyPlot

开始 使用 NuGet 包管理器添加对 OxyPlot 的引用&#xff08;如果要使用预发布包&#xff0c;请参阅下面的详细信息&#xff09;向用户界面添加PlotView在代码中创建一个PlotModel绑定到你的属性PlotModelModelPlotView 例子 您可以在代码存储库的文件夹中找到示例。/Source/Ex…

录取查询小程序怎么制作?

招生老师往往需要花费大量的时间和精力去手动整理学生的录取信息&#xff0c;并一一通知学生。那时的录取查询系统&#xff0c;复杂而繁琐&#xff0c;要处理大量的数据&#xff0c;还要确保信息的准确无误和安全。经常为了发布录取结果&#xff0c;不得不加班到深夜&#xff0…

盲盒小程序 跨平台兼容性测试策略:打造无缝体验

在盲盒小程序的开发过程中&#xff0c;跨平台兼容性测试是确保应用在不同设备和操作系统上都能提供无缝体验的重要步骤。本文将探讨一些关键的跨平台兼容性测试策略&#xff0c;以助力开发者打造稳定、流畅的小程序。 一、明确测试目标 在进行跨平台兼容性测试之前&#xff0…