ICLR 2024,reviewer评分 6666
1 intro
1.1 背景
-
当下LLM的限制
- 限制1:对非结构化文本的依赖
- ------>模型有时会错过明显的逻辑推理或产生错误的结论
- 限制2:LLMs本质上受到它们训练时间的限制,将"最新"信息纳入到不断变化的世界状态中可能会很困难
- 限制1:对非结构化文本的依赖
-
图结构化数据是表示信息最灵活的方式之一,可能是解决这两个挑战的有希望的解决方案
- 目前图和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提供了更好的任务理解
- ZERO-COT提示在基本图任务上的模型性能比ZERO-SHOT提示差
- 图编码函数对LLM推理有显著影响
- 图编码函数的选择对LLMs在图相关任务上的性能有显著影响
- 这是因为不同的编码函数捕捉到了图结构的不同方面
- 例如,在zero-shot场景下,对于在图中找到节点的连接节点,邻接达到了19.8%的准确率,而关联达到了53.8%的准确率
- 对于节点度和连接的节点,关联编码比其他编码函数表现更好。
- 这可能是因为关联编码以一种使相关信息更容易获得的方式编码图结构
- 图编码函数的选择对LLMs在图相关任务上的性能有显著影响
- 整数节点编码提高了算术性能
- 节点的整数编码(例如,节点0)可以提高LLMs在整数输出任务上的性能,如预测节点度、节点计数和边计数
- 这是因为LLM的输入和输出处于同一空间,使得模型更容易学习两者之间的关系
- 具有特定名称的编码函数(例如,David)在非整数输出任务中表现更好,如GOT中的边存在或Friendship中的成环检查
- 节点的整数编码(例如,节点0)可以提高LLMs在整数输出任务上的性能,如预测节点度、节点计数和边计数
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在处理连接节点之间的关系上表现更好,而在捕捉连接缺失上则表现不佳,导致在与断开连接相关的任务上性能不佳。
- LLMs缺乏对图的全局模型。
4 图结构对于LLM效果有影响嘛
- 为了能够在图上进行LLMs的实验,使用各种图生成算法生成随机图
4.1 图结构对LLM的性能有显著影响
- 在完全图上的成环检查任务达到了91.7%的准确率,在路径图上的准确率为5.9%
- 这是因为LLM对图存在环有强烈的先验
- 因此,对于始终有周期的完全图,准确率很高;而对于从不有周期的路径图,准确率非常低。
- 通过添加一些有周期和一些没有周期的少量示例,路径图上的周期检查准确率从5.9%提高到了19.7%
- 这是因为LLM对图存在环有强烈的先验
- 在边存在任务上,LLM在路径图上达到了60.0%的准确率,这些图不太可能有两个节点之间的边,而在完全图上的准确率为19.8%,完全图有所有节点对之间的边。
- 这表明LLM有一个先验,即图中的两个节点更有可能是未连接的。
4.2 图编码函数中的干扰性陈述打乱了LLM的性能
- 节点度、节点计数和连接节点任务的准确率对于星形和路径图最高
- 这可能是因为星形和路径图更可能有较少的边,它们的图编码很可能更短,对这些任务的干扰性陈述较少
- 这也从这些任务在完全图中的准确率是最低的事实中显而易见,完全图有许多要指定的边,因此有许多干扰因素。
4.3 添加分布外的少量示例帮助了LLM
- 添加少量示例及其思维链在COT提示中在大多数任务上有所帮助
- 少量示例不需要来自同一个生成器,对LLM来说,它们的主要作用是向LLM解释任务