当prompt方略遇上分治算法,南加大、微软让大模型炼成「火眼金睛」

近年来,大语言模型(LLMs)由于其通用的成绩处理能力而引起了大量的关注。现有研究表明,适当的提醒设计(prompt enginerring),例如思维链(Chain-of-Thoughts),可以解锁 LLM 在不同领域的强大能力。然而,在处理涉及重复子使命和 / 或含有欺骗性内容的使命(例如算术计算和段落级别长度的虚假旧事检测)时,现有的提醒方略要么受限于表达能力不足,要么会受到幻觉引发的中间毛病的影响。为了使 LLM 更好地分辨并尽可能避免这种中间毛病,来自南加州大学、微软的研究者提出了一种鉴于分治算法的提醒

近年来,大语言模型(LLMs)由于其通用的成绩处理能力而引起了大量的关注。现有研究表明,适当的提醒设计(prompt enginerring),例如思维链(Chain-of-Thoughts),可以解锁 LLM 在不同领域的强大能力。

然而,在处理涉及重复子使命和 / 或含有欺骗性内容的使命(例如算术计算和段落级别长度的虚假旧事检测)时,现有的提醒方略要么受限于表达能力不足,要么会受到幻觉引发的中间毛病的影响。

为了使 LLM 更好地分辨并尽可能避免这种中间毛病,来自南加州大学、微软的研究者提出了一种鉴于分治算法的提醒方略。这种方略利用分治次序来引导 LLM。

当prompt方略遇上分治算法,南加大、微软让大模型炼成「火眼金睛」

论文地址:https://arxiv.org/pdf/2402.05359.pdf

具体来讲,我们将一个大使命的解决过程解耦为三个子过程:子成绩分别、子成绩求解以及子成绩合并。理论分析表明,我们的方略可以赋予 LLM 超越固定深度 Transformer 的表达能力。实验表明,我们提出的方法在受到中间毛病和欺骗性内容困扰的使命中(例如大整数乘法、幻觉检测和毛病信息检测)可以比经典的提醒方略获得更好的性能。

太长不看版:我们发现在应用 LLM 处理较长的成绩输出时,把输出拆分然后分而治之可以取得更好的效果。我们从理论上解释了这一现象并实验角度举行了考证。

研究动机

本文的研究动机来自于实验中观察到的有趣现象。具体来说,我们发现对于涉及重复子使命和 / 或含有欺骗性内容的使命(如段落级别长度的虚假旧事检测),对输出举行拆分可以提升模型对于毛病信息的分辨能力。下图展示了一个具体的例子。

在这个例子当中,我们调用大语言模型来评价一段总结性文本是否与完整的旧事报道存留事实性摩擦。

当prompt方略遇上分治算法,南加大、微软让大模型炼成「火眼金睛」

在这个使命中,我们尝试了两种方略:耦合方略和分治方略。在耦合方略下,我们直接为模型提供完整的旧事报道和整段总结性文本,然后要求模型评价二者是否存留摩擦。模型毛病地认为二者不存留摩擦,并且忽视了我们标红的摩擦点(旧事中明确表示调查人员否定了录像的存留,然而总结中的第一句话表示录像已被成功复原)。

而当我们采取分治方略,也就是简单地将总结性文本拆分成多句话,然后分别对每句话举行评价,模型成功地识别出了摩擦。

这个例子向我们展示了:对长输出举行分别可以帮助我们更好地解锁模型的能力。鉴于这一点,我们提出利用分治次序来引导 LLM,从而赋予模型更强的分辨力。

鉴于分治的提醒(prompting)方略

我们提出使用分治(Divide-and-Conquer, DaC)次序来引导 LLM。该次序包括三个不同的子过程:子成绩分别、子成绩求解以及子解答合并

在子成绩分别,我们提醒 LLM 将使命分解为一系列具有较小规模的并行同质子使命(例如将长段落分解为句子)。这里的并行原则保证模型可以分别处理这些子使命而不依赖于某些特定的求解顺序。也因此,一个子使命的解答不会依赖于其它子使命的解答的正确性,这增强了模型对于中间毛病的鲁棒性,使模型获得更强的分辨力。

之后,在子成绩求解阶段,我们提醒 LLM 分别求解每个子使命。

最后,在子解答合并阶段,我们提醒 LLM 将每个子使命的答案组合起来并获得最终答案。在这个过程中,所有三个阶段的推理过程都被隔离开来以避免干扰。它们都由一个次序而不是 LLM 来引导,以避免幻觉或来自输出上下文的欺骗。

在下面的示意图中,我们将自己的方法和目前流行的提醒方略举行了对比。

当prompt方略遇上分治算法,南加大、微软让大模型炼成「火眼金睛」

为了解决不同规模的使命,我们提出了两种变体:单级分治方略 (Single-Level Divide-and-Conquer) 多级分治方略 (Multi-Level Divide-and-Conquer)。单级方略中,我们只对输出举行一次分别,然后就开始举行求解。在多级方略中,我们可以递归调用分治次序,从而把求解过程展开成一棵多层的树。

当prompt方略遇上分治算法,南加大、微软让大模型炼成「火眼金睛」

当prompt方略遇上分治算法,南加大、微软让大模型炼成「火眼金睛」

理论分析

我们通过理论分析展示了为什么分治方略能够提升大语言模型的分辨力。

此前的工作(Feng et al 2023, Merrill & Sabharwal 2023)已经证明,现有的通用大语言模型所普遍采用的固定深度与对数精度的预训练 Transformer,存留表达能力上的限制。

具体来说,假设 NC1 类成绩严格难于 TC0 类时(TC0 和 NC1 是并行计算理论中的两大类成绩,其关系类似 P 与 NP),那么这些 Transformer 模型在处理 NC1 完全成绩时,其模型宽度需要以超多项式(如指数)级别的速度随成绩规模增长。NC1 完全成绩包含了很多常见的成绩,比如两色 2 叉子树匹配成绩。

而我们此前提到的评价两段文本是否存留事实性摩擦的成绩,恰好可以被视为判断总结文本所对应的语义树是否匹配旧事材料的语义树的一棵子树。因此,当总结性文本足够长时,大语言模型会面临表达能力不足的成绩。我们的理论分析严格证明了,在鉴于分治的提醒方略下,存留一个宽度和深度均为常数的 Transformer,可以在 log(n)的时间复杂度下解决任意规模的两色 2 叉子树匹配成绩

实验结果

我们考虑了三个使命:大整数乘法、幻觉检测、旧事考证。我们鉴于 GPT-3.5-Turbo 和 GPT-4 举行评价。对于大整数乘法,此前的工作已经证明,ChatGPT 难以正确计算 4 位以上的整数乘法成绩。因此我们使用 5 位乘 5 位的乘法来考证我们的提醒方略的有效性。

结果如下图所示,可以看出,无论是准确率指标还是编辑距离指标,我们的方法相对其他 baseline 都具有明显优势。

当prompt方略遇上分治算法,南加大、微软让大模型炼成「火眼金睛」

对于幻觉检测,我们采用 HaluEval 数据集中的 Summarization Hallucination Detection 子集。对于该子集,模型需要根据一段旧事材料判断一段总结性文本是否包含幻觉。我们将总结性文本分别为单句并分别举行检测。

检测结果如下,可以看到,我们的方法相对 baseline 更好的平衡了精确度和召回率,从而取得了更好的准确率和 F1 score。

当prompt方略遇上分治算法,南加大、微软让大模型炼成「火眼金睛」

对于旧事考证,我们鉴于 SciFact 数据集构造了一个段落考证数据集。对于该数据集,模型需要根据一篇学术论文中的段落判断一段旧事报道是真旧事还是假旧事。我们将旧事报道分别为单句并分别举行检测。

检测结果如下,可以看到,我们的方法相对 baseline 取得了更好的准确率和 G-Mean score。

当prompt方略遇上分治算法,南加大、微软让大模型炼成「火眼金睛」

引用

Merrill, W. and Sabharwal, A. The parallelism tradeoff: Limitations of log-precision transformers. Transactions of the Association for Computational Linguistics.

Feng, Guhao, et al. "Towards revealing the mystery behind chain of thought: a theoretical perspective." Advances in Neural Information Processing Systems 36 (2024).

给TA打赏
共{{data.count}}人
人已打赏
工程

怎么劝ChatGPT干活效果最好?我们尝试了100种方法,有图有真相

2024-3-11 11:49:00

工程

王室修图何必用PS?Midjourney上新「换脸魔法」,奥特曼一秒COS罗马将军

2024-3-12 14:33:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
搜索