论文笔记:TALK LIKE A GRAPH: ENCODING GRAPHS FORLARGE LANGUAGE MODELS

ICLR 2024,reviewer评分 6666

1 intro

1.1 背景

  • 当下LLM的限制
    • 限制1:对非结构化文本的依赖
      • ——>模型有时会错过明显的逻辑推理或产生错误的结论
    • 限制2:LLMs本质上受到它们训练时间的限制,将“最新”信息纳入到不断变化的世界状态中可能会很困难

 

  • 图结构化数据是表示信息最灵活的方式之一,可能是解决这两个挑战的有希望的解决方案
    • 目前图和LLMs的交集相对来说研究不足

1.2 论文思路

  • 对用于LLMs的图结构提示技术进行了广泛研究
  • 为将图编码为文本以供LLMs使用提供了见解和最佳实践
  • 为社区研究LLMs效果提供了新的图基准(GraphQA)

2 图推理中提示LLMs

2.0 符号

f

在这项工作中,我们将 f 通俗地称为预训练的大型语言模型(LLM)

接受高维离散输入令牌 W 并在相同的令牌空间中产生输出(f : W → W)

W令牌空间
G = (V, E)

V 是顶点(或节点)的集合,E ∈ (V × V) 是连接它们的边的集合

2.1 提示工程

  • 提示工程的目标是找到正确的方式来表述一个问题 Q,使得LLM f将返回相应的答案 A,(Q ∈ W, A ∈ W)
    • A = f(Q)
  • 在这项工作中,我们的目标是向 LLM f 提供图信息,以便它可以更好地推理出需要访问任意结构化关系信息的问题/答案对。
    • A = f(G, Q)
  • 存在多种方法修改 LLM f(.),使其在图数据任务上表现更好
    • 例如微调,软提示,和 LoRA;此外,许多方法修改模型以包含图信息。
    • 然而,这些方法都需要访问模型的内部(无论是其权重还是梯度),这可能限制了它们在许多实际场景中的适用性。
    • 在这项工作中,论文对以下这种情况更感兴趣:
      • f(.) 及其参数是固定的
      • 系统仅在黑盒设置中可用,其中 LLM 仅消费和产生文本(即,LLM f : W → W)。
      • 论文认为这种设置特别有价值,因为可用的专有模型数量及其硬件需求增加。
  • ——>引入图编码函数 g(G) 和问题重述函数 q(Q),其中 g : G → W 且 q : W → W
    • A = f(g(G), q(Q))

2.1.1 目标函数

  • 对基于图的提示系统的训练输入 D 是一组 G, Q, S 三元组
    • G 是一个图
    • Q 是一个问题
    • S ∈ W,是 Q 的一个解决方案
  • 目标是找到一个 g(.) 和 q(.),最大化模型对训练数据集 D 中答案的期望得分
  • 由于 W 是一个非常大的离散空间,许多当前的方法使用启发式进行这一优化(通过改变提示 Q)
    • 这项工作的新颖贡献是考虑图编码函数 g(.), 问题重述函数q(.),以及图结构 G 在目标函数优化中的作用。

2.2 启发式提示

  • 绝大多数启发式提示方法通过优化用于查询模型的提示文本 Q 来操作。
  • 论文进一步检查的方法有:
ZERO-SHOT简单地提供模型一个任务描述,并要求它生成所需的输出,无需任何先前的任务训练
FEW-SHOT

为模型提供少量任务示例及其期望输出。

然后模型从这些示例中学习,以便在新输入上执行任务

CoT

为模型提供一系列示例,每个示例展示如何逐步解决任务。

然后模型学习生成其CoTs来解决新问题

ZERO-SHOT CoT

与CoT提示类似,但它不需要任何先前的训练示例。

相反,模型使用简单的提示来生成其自己的CoTs

使用prompt:”Let’s think step by step“

COT-BAG通过在图描述后附加“Let’s construct a graph with the nodes and edges first”

3 通过文本编码图:像图一样交流

  • 图编码是将图结构信息转换为语言模型可理解序列的必要步骤
  • 本节将研究图编码函数 g(.) 的细节,该函数将图数据映射为LLM可理解的令牌

3.0 一些结论

• R1: LLMs 在基本图任务上表现不佳(§3.1)。

• R2: 图编码函数对LLM图推理有显著影响(§3.1)。

• R3: 模型容量对LLMs的图推理能力有显著影响(§3.4)。

3.1 图编码函数

  • 将图编码为文本的过程可以分为两个关键的询问:
    • 首先,图中节点的编码;
    • 其次,节点之间边的编码

3.1.1 编码节点

  • 关于节点的编码,检查了几种技术,包括:
    • 整数编码(例如,节点0)。
    • 使用著名的英文名字(例如,David)。
    • 使用电视剧《权力的游戏》和《南方公园》中流行角色的名字。
    • 使用美国政治家的名字。
    • 使用字母表字母进行表示。

3.1.2 编码边

关于边的编码,检查了以下技术:

  • 括号:描述边为(源节点,目标节点)。
  • 友谊:源节点和目标节点是朋友。
  • 合著:源节点和目标节点共同写了一篇论文。
  • 社交网络:源节点和目标节点相连。
  • 箭头:源节点 → 目标节点。
  • 关联:源节点与目标节点相连。

3.1.3 图编码

  • 邻接 Adjacency。使用整数节点编码和括号边编码。
  • 关联 Incident。使用整数节点编码和关联边编码。
  • 友谊 Friendship.。使用著名的英文名字作为节点编码和友谊边编码。
  • 共同作者 Co-authorship。使用著名的英文名字作为节点编码和共著边编码。
  • SP。使用《南方公园》角色名作为节点编码和友谊作为边编码。
  • GOT。使用《权力的游戏》角色名作为节点编码和友谊作为边编码。
  • 社交网络 Social network。使用著名的英文名字和社交网络边编码。
  • 政治家 Politician。使用美国政治家的名字和社交网络边编码。
  • 专家 Expert。使用字母表字母作为节点编码和箭头作为边编码。编码开始于“你是一个图分析师”。

3.2 图结构

3.3 实验1 预训练的LLMs在图任务上的性能

  • 测量了预训练的LLMs在图任务上的性能:边的存在、节点度、节点计数、边计数、连接的节点和周期检查

3.3.1 结果

  • 几乎所有基本图任务上,LLMs的表现都很差
    • LLMs的表现比大多数基线还要差
  • 简单的提示对简单任务最有效
    • ZERO-COT提示在基本图任务上的模型性能比ZERO-SHOT提示差
      • 这可能是因为ZERO-SHOT提示对这些不需要多跳推理的任务来说已经足够了
      • ZERO-COT提示对于需要多跳推理的任务(如算术问题)可能有效,但对大多数只需要LLM理解图结构(节点、边、路径等)和图任务的基本图任务来说不是必需的
    • 对于更复杂的任务,添加少量示例和CoT提示通常可以提高模型的性能。
      • 这主要是因为少数样本示例为LLM提供了更好的任务理解
  • 图编码函数对LLM推理有显著影响
    • 图编码函数的选择对LLMs在图相关任务上的性能有显著影响
      • 这是因为不同的编码函数捕捉到了图结构的不同方面
    • 例如,在zero-shot场景下,对于在图中找到节点的连接节点,邻接达到了19.8%的准确率,而关联达到了53.8%的准确率
    • 对于节点度和连接的节点,关联编码比其他编码函数表现更好。
      • 这可能是因为关联编码以一种使相关信息更容易获得的方式编码图结构
  • 整数节点编码提高了算术性能
    • 节点的整数编码(例如,节点0)可以提高LLMs在整数输出任务上的性能,如预测节点度、节点计数和边计数
      • 这是因为LLM的输入和输出处于同一空间,使得模型更容易学习两者之间的关系
    • 具有特定名称的编码函数(例如,David)在非整数输出任务中表现更好,如GOT中的边存在或Friendship中的成环检查

3.3.2 不同graph encoding 在不同prompring下表现的平均rank

3.2 实验2:不同的prompt 问题

  • 在这个实验中,将图编码函数固定为“友谊”,并使用两种不同的问题编码函数进行实验  
    •  图问题编码器
      • 负责编码与图相关的任务,例如确定特定节点的度(例如,“节点i的度是多少?”)
    • 应用问题编码器
      • 应用问题编码器以更实际、日常的上下文解释图问题
      • 在应用场景中,使用基于友谊的情景,将任务转换如下:
        • 边的存在变成了“评估友谊的存在”
        • 节点度变成了“计算个人的朋友数”
        • 节点计数变成了“计算提及的人数”
        • 边计数变成了“计算提及的友谊数”
        • 连接的节点变成了“列出朋友”。

3.2.1 结果

应用编码器在几乎所有任务上都优于图编码,尽管两个编码器都有相同的图编码函数,只是在提问方式上略有不同

3.3  实验3:不同的relation encoding

  • 在这个实验设置中,我们对友谊图编码函数进行了修改,基于一系列不同的关系类型来表征边
    • 包括朋友、同事、配偶、兄弟姐妹、邻居、熟人、队友、同学、同事或室友。
    • 关系类型的选择从这个预定义的集合中随机选取,从而使用多个词来引用节点之间关系的存在。
    • 这与之前的图编码实验中使用相同的令牌表示边的做法不同。
  • 结果:
    • 如表3所示,使用多个词来表示关系并没有损害LLM的性能,甚至在某些情况下还有所改进。
    • 这种改进很可能是因为多样的关系集合为LLM提供了更多的文本信息来执行任务
    • 且最终编码与LLM在训练期间可能看到的文本相比更为接近

3.4 实验4:模型容量与图推理能力

  • 测量了模型容量对图任务的影响。
  • 比较了PaLM 2 XXS、XS、S和L的结果,这些模型有着不同的参数数量,因此具有不同的容量

  • 结果
    • 模型容量对LLM的图推理能力有显著影响。
    • 更大的模型通常在图推理任务上表现得更好。这是因为它有更多的容量来学习和存储复杂信息。
    • 模型容量对边的存在影响较小。结果还显示,即使具有较大的容量,模型也未能超过边存在的多数基线。

3.5 在无边情况下的推理

  • 在这个实验中,我们评估LLMs在未连接节点任务上的表现。
    • 这项任务与之前的任务不同,因为它需要对图中隐含的信息进行推理,即,在图编码函数的输出中没有明确提及的信息。
  • 结果:
    • LLMs缺乏对图的全局模型。
      • ZERO-SHOT提示方法实现了0.5%的准确率
      • 而ZERO-COT、FEW-SHOT、COT和COT-BAG方法几乎达到了0.0%的准确率
    • 这些结果表明,LLMs在未连接节点任务上的表现显著低于连接节点任务。
      • 这是因为图编码函数主要编码了关于连接节点的信息,而没有明确编码关于未连接节点的信息。
      • 因此,LLMs在处理连接节点之间的关系上表现更好,而在捕捉连接缺失上则表现不佳,导致在与断开连接相关的任务上性能不佳。

4 图结构对于LLM效果有影响嘛

  • 为了能够在图上进行LLMs的实验,使用各种图生成算法生成随机图

 

4.1 图结构对LLM的性能有显著影响

  • 在完全图上的成环检查任务达到了91.7%的准确率,在路径图上的准确率为5.9%
    • 这是因为LLM对图存在环有强烈的先验
      • 因此,对于始终有周期的完全图,准确率很高;而对于从不有周期的路径图,准确率非常低。
    • 通过添加一些有周期和一些没有周期的少量示例,路径图上的周期检查准确率从5.9%提高到了19.7%
  • 在边存在任务上,LLM在路径图上达到了60.0%的准确率,这些图不太可能有两个节点之间的边,而在完全图上的准确率为19.8%,完全图有所有节点对之间的边。
    • 这表明LLM有一个先验,即图中的两个节点更有可能是未连接的。

4.2 图编码函数中的干扰性陈述打乱了LLM的性能

  • 节点度、节点计数和连接节点任务的准确率对于星形和路径图最高
    • 这可能是因为星形和路径图更可能有较少的边,它们的图编码很可能更短,对这些任务的干扰性陈述较少
    • 这也从这些任务在完全图中的准确率是最低的事实中显而易见,完全图有许多要指定的边,因此有许多干扰因素。

4.3  添加分布外的少量示例帮助了LLM

  • 添加少量示例及其思维链在COT提示中在大多数任务上有所帮助
    • 少量示例不需要来自同一个生成器,对LLM来说,它们的主要作用是向LLM解释任务

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何保证redis里的数据都是热点数据

MySQL 里有 2000w 数据,Redis 中只存 20w 的数据,如何保证 redis 中的数据都是热点数据? 1.Redis 过期删除策略 1)惰性删除:放任键过期不管,但是每次从键空间中获取键时,都检查取得的键是否过期&#xff0c…

FMEA与智能机器人:提升机器人可靠性与安全性的关键

随着科技的飞速发展,智能机器人已经深入到我们生活的方方面面,从工业生产到家庭服务,从深海探险到太空探索,处处都有它们的身影。然而,随着应用的日益广泛,机器人系统的复杂性和不确定性也在增加&#xff0…

学习笔记——C语言基本概念函数——(9)

今天开始函数的学习 目录 1、函数的基本概念 1.1函数的意义 1.2函数的分类 2自定义函数 2.1自定义函数的整个过程 函数定义 函数声明 函数调用 实参 形参和实参的关系 2.2函数传参 地址传递 2.3static的使用 1、函数的基本概念 1.1函数的意义 概念:一…

自定义协议 ,序列化和反序列化

目录 ​编辑 一,问题引入: 二,协议 三,自定义协议 1,协议 2, 序列化和反序列化 四,网络版本的计算器 1,协议的定制 2,计算逻辑 3,服务端 4,客户端 …

基于Spring Boot 3 + Spring Security6 + JWT + Redis实现接口资源鉴权

紧接上一篇文章,基于Spring Boot 3 Spring Security6 JWT Redis实现接口资源鉴权 系列文章指路👉 系列文章-基于SpringBoot3创建项目并配置常用的工具和一些常用的类 项目源码👉 /shijizhe/boot-test 文章目录 1. 修改 UserDetailsServic…

U盘文件突然消失:原因分析与恢复策略

U盘遭遇“幽灵”之手,文件不翼而飞 你是否曾遭遇过这样的诡异情况:前一天还好好存放在U盘里的文件,第二天却突然消失得无影无踪?这简直就像是一场无声的灾难,令人措手不及。U盘作为我们日常工作和生活中不可或缺的数据…

算法系列之数组里的双指针

文章目录 算法系列之数组里的双指针快慢指针代替双重循环暴力解法快慢指针法 用双指针来排序暴力解法双指针排序 算法系列之数组里的双指针 在数组和链表的算法中双指针常出现,这篇用两道题来看一下双指针在数组算法里的用处。 快慢指针代替双重循环 https://lee…

嵌入式3-29

今日作业&#xff1a;用fwrite 和 fseek功能&#xff0c;将一张bmp格式的图片更改成 德国国旗#include <stdio.h> #include <string.h> #include <stdlib.h> #include <math.h> typedef unsigned char bgr[3]; int main(int argc, const char *argv[])…

安装docker 并搭建出一颗爱心树

1、docker介绍 Docker 是⼀个开源的容器运⾏时软件&#xff08;容器运⾏时是负责运⾏容器的软件&#xff09;&#xff0c;基于 Go 语 ⾔编写&#xff0c;并遵从 Apache2.0 协议开源。 Docker可以让开发者打包⾃⼰的应⽤以及依赖到⼀个轻量的容器中&#xff0c;然后发布到任何…

开源大数据集群部署(十九)Hbase部署

作者&#xff1a;櫰木 1 HBASE 安装部署 hbase组件部署主机HMasterhd1.dtstack.com,hd2.dtstack.comHRegionServerhd3.dtstack.com,hd2.dtstack.com,hd1.dtstack.com 2 创建hbase Kerberos主体 在每台机器上进行生成 bash /data/kerberos/getkeytabs.sh /etc/security/key…

Kaggle注册验证码问题(Captcha must be filled out.)

Kaggle注册验证码问题 Captcha must be filled out.使用Edge浏览器 Header Editor 插件安装 下载插件Header Editor 导入重定向脚本 点击扩展插件&#xff0c; 打开Header Editor插件&#xff0c;进行管理 点击导入输入下载链接进行下载或者导入本地json文件(二者任选其一…

OpenHarmony系统开发之应用接口文件转换工具介绍

简介&#xff1a; 应用接口文件转换工具是根据异构格式接口文件(.h 文件)转换生成 OpenHarmony 系统应用层需要的 TS(type-script)接口文件(*.d.ts)的工具。若某个服务实现方式为 c&#xff0c;且供应用层访问的接口已在.h 文件中定义&#xff0c;此时&#xff0c;NAPI 接口开…