中科院发布大模型想象增强法IAG,无需外部资源,想想就能变强

news2024/11/25 18:26:43

在人工智能领域,尤其是自然语言处理(NLP)的子领域——问答系统(QA)中,知识的获取和利用一直是推动技术进步的核心问题。近年来,大语言模型(LLMs)在各种任务中展现出了惊人的能力,但它们在处理知识密集型任务时仍然存在局限性。为了解决这一问题,研究者们提出了多种知识增强方法,如检索增强生成(Retrieval-Augmented-Generation, RAG)和生成增强生成(Generation-Augmented-Generation, GAG)。然而,这些方法不仅依赖外部资源,而且需要将显式文档整合到上下文中,导致更长的上下文和更多的资源消耗。

最新的研究表明,LLMs内部已经建模了丰富的知识,只是这些知识没有被有效地触发或激活。受此启发,研究者提出了一种新的知识增强框架——想象增强生成(Imagination-Augmented-Generation, IAG),它模拟人类在回答问题时,仅通过想象来弥补知识缺陷的能力,而不依赖外部资源。在IAG的指导下,研究者提出了一种问答方法——想象丰富上下文的方法(IMcQA),通过两个模块获得更丰富的上下文:通过生成短虚拟文档的显式想象和通过HyperNetwork生成适配器权重的隐式想象。实验结果表明,IMcQA在开放域和闭卷设置中,以及在分布内性能和分布外泛化中都展现出显著优势。

分享几个网站

GPT-3.5研究测试:
https://hujiaoai.cn

GPT-4研究测试:
https://higpt4.cn

Claude-3研究测试(全面吊打GPT-4):
https://hiclaude3.com

论文标题:
Imagination Augmented Generation: Learning to Imagine Richer Context for Question Answering over Large Language Models

论文链接:
https://arxiv.org/pdf/2403.15268.pdf

知识增强方法的发展回顾

1. RAG与GAG方法简介

Retrieval-Augmented-Generation (RAG) 和 Generation-Augmented-Generation (GAG) 是两种旨在增强大语言模型(LLMs)在问答任务中所需知识的方法。

RAG 方法通过检索外部资源(如辅助工具和领域文档)中的相关文档,并将这些文档与问题一起输入到 LLMs 中。例如,FiD 方法就是一种典型的 RAG 方法,它需要处理大量的检索文档,随着文档数量的增加,计算资源和推理时间也随之增长。

相比之下,GAG 方法则利用像 InstructGPT 这样的 LLMs 生成相关文档,避免了对外部资源的依赖,但仍需要额外的财务成本(如 API 调用)并且同样需要大量的计算资源和时间。

图片

2. 现有方法的局限性

尽管 RAG 和 GAG 方法在多个任务上展示了强大的性能,但它们都存在一些局限性。

  • 首先,RAG 方法不仅需要预设的外部资源,而且还需要更多的计算资源和更长的处理时间。

  • 此外,RAG 和 GAG 方法都使用了更多的显式外部资源(象征性文档),而获取的内容质量显著影响下游任务。例如,文档中的噪声会对性能产生负面影响。

因此,迫切需要探索新的知识增强方法。

提出IAG框架的动机与概念

1. IAG框架的定义与目标

Imagination-Augmented-Generation (IAG) 是一种新的知识增强框架,旨在模拟人类在问答任务中仅通过想象来弥补知识缺陷的能力,而不依赖外部资源。IAG 框架的目标是充分利用 LLMs 内在的知识,通过两个主要模块——显式想象和隐式想象——来激活 LLMs 中的各种潜在知识建模,并获取更丰富的上下文。

2. 与RAG和GAG的对比

与 RAG 和 GAG 相比,IAG 框架不依赖外部资源,而是完全利用 LLMs 的内在知识。IAG 通过显式想象模块生成一个简短的虚拟文档,并通过隐式想象模块使用 HyperNetwork 生成适配器权重,从而激活 LLMs 的任务处理能力。这种方法不仅避免了对外部资源的依赖,而且在提取和激活内部知识方面更为高效。实验结果表明,IAG 在开放域和闭卷设置中都展现出显著优势,无论是在分布内性能还是分布外泛化方面。

IMcQA方法详解

1. 显式想象与长文本压缩

IMcQA方法的显式想象模块首先使用符号蒸馏来获取压缩的上下文,然后指导大语言模型(LLMs)生成一个简短且有用的虚拟文档。这个过程使得LLMs能够构想与问题知识需求紧密相连的压缩知识。在这个模块中,通过预训练Imagine Model来激活LLMs的长文本建模能力,使得处理短文本的QA模型也能像处理长文本的QA模型一样具有丰富的上下文理解能力。

图片

2. 隐式想象与HyperNetwork的应用

隐式想象模块利用提出的HyperNetwork来生成LoRA权重,以激活LLMs的任务处理能力。与LoRA存储任务知识和能力的模块不同,HyperNetwork学习为每个问题想象隐藏的知识。HyperNetwork的架构详细描述在Figure 3中,它接受连接的特征向量和位置嵌入作为输入,并生成LoRA适配器的权重。这类似于在提示中重复问题,并加入特定的主题线索来刺激模型回忆相关问题,但我们生成的是模型参数。

图片

3. 训练过程中的长文本蒸馏

在知识蒸馏的框架下,考虑长文本蒸馏(LCD) 作为主要指导学生模型的上下文化知识。具体来说,教师模型FiD利用较长的上下文输入并理论上包含更多信息(更丰富的上下文),将激活更具体的内部知识并作为监督模型。教师模型帮助学生模型T5(具有与教师相同大小的模型)利用短文本输入,以激活更丰富的特征表示和知识。学生模型在每个小批量zr = (xr, yr)上的优化目标是最小化教师和学生模型之间隐藏状态的余弦距离和注意力矩阵的均方误差。

实验设置与评估指标

1. 数据集介绍

研究者们在三个公开的问答数据集上评估提出的方法:NaturalQuestions (NQ)、WebQuestions (WQ) 和 TriviaQA (TQA)。为了评估模型性能,研究者们使用精确匹配(EM)分数来评估预测答案。

2. 基线方法与对比

研究者考虑了中等大小的语言模型(< 1B)和大语言模型(LLM)(≥ 3B)。选择T5作为中等大小语言模型的骨干。研究者将提出的IMcQA与几种知识增强方法进行比较,包括RAG模型如DPR、RAG和FiD,以及GAG模型GENREAD和参数高效微调方法LoRA。

对于LLMs的零样本设置(≥ 3B),研究者使用Llama2-7B和Llama2-13B作为基础模型。在四种不同的设置下进行评估:无检索、有检索、使用LoRA和使用提出的IMcQA。

图片

在预训练阶段,使用T5-large初始化的Imagine Model使用生成的问题压缩对。在第二阶段,教师模型使用不同大小的FiD阅读器在目标数据集的训练分割上进行微调。学生模型冻结了骨干网络,仅更新HyperNetwork、前馈神经网络(FFN)和归一化层。

图片

主要实验结果与分析

1. IMcQA的性能表现

IMcQA方法在三个开放域问答数据集上的实验结果表明,该方法能够有效地激活LLMs内部的相关知识,从而在开放域和闭卷设置下都展现出显著的优势。具体来说,在闭卷设置中,IMcQA相比基线方法平均提高了2%的准确率,这表明IMcQA能够通过想象来更有效地利用内部知识。在开放域设置中,尽管IMcQA只处理一个短的虚构文档,但其性能仍然与处理10个文档的RAG和GAG方法相当或更好,这进一步证明了IMcQA通过想象压缩文本来平衡效率和开销。

2. 开放域与闭卷设置下的表现

开放域和闭卷设置下,IMcQA展现出了卓越的性能。在闭卷设置中,IMcQA通过激活LLMs内部的知识,达到了优于传统闭卷模型的性能。在开放域设置中,IMcQA利用单个想象的文档就能达到或超过处理多个文档的传统方法,这一结果凸显了IMcQA在提高问答性能方面的有效性。

3. 超出分布(OOD)性能分析

IMcQA在超出分布(OOD)的泛化能力上也展现出了优异的性能。通过在NQ数据集上训练并在其他两个数据集上测试,IMcQA在使用单个想象文档时与使用10个检索文档的FiD方法性能相近,且在使用10个检索文档时,IMcQA的性能普遍优于FiD方法。这表明IMcQA通过HyperNetwork生成的LoRA适配器权重,能够根据问题激活和访问内部知识,从而在OOD场景下展现出更好的性能。

图片

零样本设置下的实验结果

1. Llama2模型的性能提升

在零样本设置下,Llama2模型通过自主想象知识,展现出了性能的显著提升。尽管通过显式想象的上下文能够使平均准确率提高1%,但这种提升不如通过检索10个文档所实现的显著。IMcQA通过两种主要的想象过程,分别在NQ、TQA和WQ数据集上将EM提高了+15.33%、+11.97%和+16.38%。这表明即使在零样本设置下,IMcQA方法仍能为LLMs带来实质性的性能提升

图片

2. 显式与隐式想象的作用分析

通过对IMcQA中显式想象(EI)和隐式想象(II)的分析,发现这两种想象过程对于激活LLMs内部知识至关重要。长文本蒸馏(LCD)和EI在HyperNetwork中的应用对总体结果有边际贡献,这验证了更广泛的上下文倾向于优化性能,尽管收益有限。

训练成本与推理速度分析

在评估IMcQA方法的有效性的同时,训练成本和推理速度也是重要的考量因素。根据实验结果,IMcQA在训练和推理阶段都展现出了一定的优势。

具体来说,IMcQA通过共享的HyperNetwork生成LoRA适配器权重,从而减少了参数更新的需求。尽管由于知识蒸馏的限制,训练过程中并没有显著的速度优势,但在推理阶段,IMcQA的设计极为轻量级,显著降低了处理令牌的数量,同时在性能上要么超过了其他方法,要么与之相差无几。这表明IMcQA在效率和计算需求之间取得了良好的平衡

此外,与GAG方法相比,IMcQA不需要额外的财务成本(例如API调用),并且由于模型尺寸的减小,生成速度更快。在NQ数据集上,使用T5-Base作为基础模型,在单个RTX 3090 GPU上进行的实验表明,标准批量大小为8的训练和批量大小为1的推理,IMcQA在5000步训练时间和GPU时间上的推理速度都有所提升。

图片

总的来说,IMcQA方法在训练成本和推理速度上都显示出了其优势,尤其是在推理阶段的轻量级设计,使其在保持竞争力的性能的同时,大幅减少了资源消耗。

总结与未来工作方向

IAG与IMcQA方法的贡献

本研究提出了一种新颖的知识增强框架——想象增强生成(IAG),以及一个基于此框架的问题回答方法——IMcQA。IAG框架模拟人类在回答问题时补偿知识缺陷的能力,仅通过想象而不依赖外部资源。

IMcQA方法通过显式想象和隐式想象两个主要模块,有效激活并利用LLMs内在的知识,获得更丰富的上下文。实验结果表明,IMcQA在开放域和闭卷设置中都显示出显著优势,无论是在分布内性能还是在分布外泛化方面。

面临的挑战与未来研究方向

尽管IMcQA在问题回答任务中取得了显著成就,但仍存在一些限制和挑战。

  • 首先,目前的方法专门针对QA任务,其在其他知识密集型任务(如事实核查或对话系统)中的有效性尚未得到验证。

  • 其次,本研究仅考虑了想象文本和隐藏表示,未来工作需要探索包括想象图像在内的多模态信息对性能的影响。

  • 此外,目前的方法依赖于LLMs在预训练阶段学到的知识,这可能限制了模型快速适应新信息的能力。IAG中的内部知识激活可能导致模型决策过程不够透明,使得生成答案的逻辑难以解释。

因此,未来需要继续探索适应性知识增强方法,以进一步优化结果。

综上所述,未来的研究方向将包括将IAG应用于更多NLP任务,探索多模态知识增强生成,并改进方法以适应新信息,同时提高模型决策过程的透明度。

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

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

相关文章

【C语言】扫雷【附源码】

欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 一、扫雷游戏规则 尽快找到雷区中的所有不是地雷的格子,而不许踩到地雷。点开的数字是几&#xff0c;则说明该数字旁边的8个位置中有几个雷&#xff0c;如果挖开的是地雷&#xff0c;则会输掉游戏。 二、代码思路&…

Laravel 项目如何运行

如有一个 Laravel 项目&#xff0c;在配置好 PHP 版本和运行环境后&#xff0c;可以直接在项目下直接运行&#xff1a; php artisan serve 来启动你的项目。 通过浏览器查看 当项目运行后&#xff0c;默认的启动端口为 8000&#xff0c;可以通过浏览器来进行查看运行的 Larav…

C++性能测试工具

使用示例main.cpp // g-13 -O3 -stdc17 main.cpp profile.cpp #include <iostream> #include <chrono> #include <stdint.h> #include <mutex> // std::mutex#include "profile.h" #include "profile_rdtsc.h"std::mut…

GlusterFS分布式文件系统

一、GlusterFS简介 GlusterFS 是一个开源的分布式文件系统。由存储服务器、客户端以及NFS/Samba存储网关(可选&#xff0c;根据需要选择使用)组成。没有元数据服务器组件&#xff0c;这有助于提升整个系统的性能、可靠性和稳定性 二、GlusterFS特点 2.1 扩展性和高性能 Glu…

Tensorboard以及Transforms初步学习

一.前情提要 1.本文是代码结合知识点&#xff0c;注释即为知识点 2.主要详细讲解Tensorboard以及Transforms代码以及基础知识 3.若想深入学习&#xff0c;建议阅读 P3. Python学习中的两大法宝函数&#xff08;当然也可以用在PyTorch&#xff09;_哔哩哔哩_bilibili 二.简述…

Scala中如何使用Jsoup库处理HTML文档?

在当今互联网时代&#xff0c;数据是互联网应用程序的核心。对于开发者来说&#xff0c;获取并处理数据是日常工作中的重要一环。本文将介绍如何利用Scala中强大的Jsoup库进行网络请求和HTML解析&#xff0c;从而实现爬取京东网站的数据&#xff0c;让我们一起来探索吧&#xf…

云智慧发布对象关系型数据库CloudPanguDB,打破传统技术壁垒

近日&#xff0c;云智慧推出关系型数据库CloudPanguDB&#xff08;中文名称&#xff1a;盘古数据库&#xff09;&#xff0c;旨在通过高兼容性能和创新技术架构&#xff0c;降低企业项目整体运营成本。 无论是处理海量复杂数据&#xff0c;还是构建清晰有序的数据结构关系&…

c++ 谷歌glog日志库使用

效果如图&#xff1a; 本次使用qt环境演示&#xff0c;相关库文件和头文件下载链接&#xff1a;https://download.csdn.net/download/bangtanhui/89108477 将相关库文件和头文件&#xff0c;丢到工程目录下 然后需要在工程pro文件当中引入库文件和头文件&#xff1a; …

创建型模式--2.简单工厂模式【人造恶魔果实工厂1】

1. 工厂模式的特点 在海贼王中&#xff0c;作为原王下七武海之一的多弗朗明哥&#xff0c;可以说是新世界最大的流氓头子&#xff0c;拥有无上的权利和无尽的财富。他既是德雷斯罗萨国王又是地下世界的中介&#xff0c;控制着世界各地的诸多产业&#xff0c;人造恶魔果实工厂就…

Java Web这一路走来

大部分Java应用都是Web或网络应用&#xff0c;MVC框架在Java框架中有着举足轻重的地位&#xff0c;一开始的Web应用并不现在这样子的&#xff0c;一步一步走来&#xff0c;每一步都经历了无数的血和泪的教训&#xff0c;以史为镜可以知兴替。 1. 草莽时代 早期的Java服务端技…

使用ollydbg还原密码程序的密码

前言&#xff1a;我们上次用ida pro破解了程序密码这次我们换个工具来还原程序密码 第一步 和上次一样把找到的程序拖到ollydbg里面 第二步 右键点击查找所有引用字符串 第三步 找到报错代码双击进入 第五步 找到上面的jnz双击将其改成jz 第六步 将所修改的保存点击空白…

FPGA(Verilog)实现uart传输协议传输数据(含仿真)

目录 实现功能&#xff1a; 1.接收uart串行数据&#xff0c;输出并行数据(1byte)。 2.输入并行数据(1byte)&#xff0c;输出uart串行数据。 3.完成uart传输的1次环回。 uart协议的1帧数据传输 模块封装-port设置 Verilog代码实现 1.uart接收模块:接收串行数据,输出并行数…

基于Java+SpringBoot+Vue企业员工管理系统(源码+文档+部署+讲解)

一.系统概述 随着社会的发展&#xff0c;系统的管理形势越来越严峻。越来越多的用户利用互联网获得信息&#xff0c;但各种信息鱼龙混杂&#xff0c;信息真假难以辨别。为了方便用户更好的获得信息&#xff0c;因此&#xff0c;设计一种安全高效的员工管理系统极为重要。 为设计…

swiftui macOS实现加载本地html文件

import SwiftUI import WebKitstruct ContentView: View {var body: some View {VStack {Text("测试")HTMLView(htmlFileName: "localfile") // 假设你的本地 HTML 文件名为 index.html.frame(minWidth: 100, minHeight: 100) // 设置 HTMLView 的最小尺寸…

【攻防世界】php_rce (ThinkPHP5)

进入题目环境&#xff0c;查看页面信息&#xff1a; 页面提示 ThinkPHP V5&#xff0c;猜测存在ThinkPHP5 版本框架的漏洞&#xff0c;于是查找 ThinkPHP5 的攻击POC。 构造 payload: http://61.147.171.105:50126/?sindex/think\app/invokefunction&functioncall_user_f…

续写Groq

这章写点Groq干货,理性的分析。 首先是Articical Analysis的关于Mixtral8*7B的吞吐比较 上图是有Mixtral 8*7BPaaS服务的AI服务商,Mistral自己居然排倒数第三 ,Groq是真的遥遥领先啊。 另外这个图是比较每100万tokens的cost,无论是推理速度还是cost,Groq都是遥遥领先…

如何把1G多的视频压缩到500兆以内?3个方法轻松减小文件内存~

微信已经成为了我们上班交流沟通时必不可少的通讯工具之一&#xff0c;在使用微信时&#xff0c;常常会遇到系统提示发送的word、ppt、pdf文件、视频、压缩包等文件超过1G&#xff0c;无法发送。有没有什么办法可以缩小文件的体积呢&#xff1f;今天给大家介绍几款可以用于视频…

Python中Python-docx 包的run介绍

先对run做一个简单地介绍。每个paragraph对象都包含一个run对象的列表。举例&#xff1a; 这是一个简短的段落。 from docx import Document doc Document("1.docx") #上面这段话保存在1.docx中 print("这一段的run个数是&#xff1a;",len(doc.paragr…

leetcode热题100.划分字母区间

Problem: 763. 划分字母区间 文章目录 题目思路复杂度Code 题目 给你一个字符串 s 。我们要把这个字符串划分为尽可能多的片段&#xff0c;同一字母最多出现在一个片段中。 注意&#xff0c;划分结果需要满足&#xff1a;将所有划分结果按顺序连接&#xff0c;得到的字符串仍…

基于Leaflet.js和Turf.js的等值线区间自定义及颜色自适应实践

目录 前言 一、Turf.js等值线相关制作 1、生成方法 2、主要参数 二、实际案例开发 1、新建展示页面 2、等值线生成 3、基于Leaflet的再优化 总结 前言 在气象方面的GIS应用当中&#xff0c;会根据实际的工作需要建立不同的监测站点。气象监测站的主要功能包括&#xff1…