提示学习 | Let’s think step by step

本文介绍了Zero-shot-CoT,一种无需调整的零样本推理方法,通过两次提示引导模型进行多步推理,显著提升大规模语言模型在算术和常识推理任务上的表现。它通过'Let's think step by step'巧妙地控制模型预测方向,尤其在系统2任务中表现出色。实验结果显示,它超越传统方法,且不依赖于任务特化prompt。
摘要由CSDN通过智能技术生成

每天给你送来NLP技术干货!


来自:NLP日志

提纲

1 简介

2 背景

3 Zero-shot-CoT

4 实验结果

5 讨论

6 总结

参考文献

1 简介

    Prompt learning中的prompt如同一种心理暗示,可以驱使语言模型按照特定的方向去预测。就像一种解题技巧,只要加入了它,就能更准确的解决问题。在之前prompt系列的文章中,我们介绍过各种形式的prompt,也强调过一个合适的prompt对于下游任务的效果影响重大,为此如何寻找一个合适的prompt的显得尤为重要。

    今天介绍一个最近刚被发现的“宝藏prompt”,Let’s think step by step,通过使用特定的prompt“Let’s think step by step”和相应的两阶段prompt技巧,提高了大规模语言模型在的推理能力,在多个推理相关的zero-shot任务取得惊人的提升,远超之前的zero-shot方法。

2 背景

    大规模预训练语言模型借助于针对特定任务设计的prompt(无论是few shot还是zero shot),在单步骤的system-1任务上有着出色表现,但是对于那些缓慢和需要多步推理的system-2任务表现不佳。(system-1跟system-2是心理学家定义的一些推理任务,可以理解为system-1是那些一步就可以推出答案的任务,,而system-2则是那些需要通过多步推理才能解决的任务)。

    为了解决大规模语言模型在system-2任务中表现不佳的问题,CoT(Chain of thought prompting)被提出来,它将原本的few shot的样例,调整为逐步推理的答案,从而让语言模型去学习few shot样例的逐步推理过程,从而控制模型推理能力的方向,在复杂的system-2任务中获得明显提升。细节可以见下图中的样例,其中左上角就是原本的few shot prompt,而右上角就是将few shot样例调整为逐步推理样例的CoT(为了跟后面的Zero-shot-CoT区分而称为Few-shot- CoT),可以看出Few-shot-CoT是将few shot样例里的推理过程展开了,让语言模型能更好的学习其中的细节。

f9c86d5e041ab909fc24e904098dfebc.png

图1: Few-shot,  Few-shot-CoT,  Zero-shot, Zero-shot-CoT示例

3 Zero-shot-CoT

    跟前面提及的Few-shot Cot不同,Zero-shot-CoT不需要经过调整的逐步推理的few shot样例,也不同大多数prompt,它不依赖于特定的任务,可以利用当前问题逐步的推理过程推导得到一个简单的prompt模版,从而控制语言模型预测的方向。Zero-shot Cot的核心是利用“Let’s think step by step”去抽取当前问题的逐步推理过程。虽然Zero-shot-CoT的概念很简单,它的巧妙之处在于整个过程使用了两次prompt,具体过程如下,同时可以查看下图样例加深理解。

  1. a) 推论抽取

    首先将问题X通过一个简单的模版”Q:[X].A:[Z]”调整为一个prompt,其中[X]是一个输入槽位,通过问题X来填充,而[Z]是一个触发器槽位,用一个人工构建的触发器句子来填充,使得语言模型可以从中抽取回答问题X所需的逐步推理过程,论文中用的触发器句子是“Let’s think step by step.”。然后将构造好的模版输入到语言模型,从而生成后续的句子Z(可以使用任何解码策略,论文为了简便使用了贪婪解码策略)。

  1. b) 答案抽取

    将第一步构造好的模版Q:[X].A:[Z],生成的句子Z,和一个新的触发器句子[A]拼接到一起输入到同一个语言模型,利用语言模型生成的结果进行解析得到最终的答案。这一步的触发器句子[A]跟第一步的触发器句子不同,它依赖于具体的答案形式,例如图中样例用的触发器句子是“Therefore, the answer (arabic numerals) is”

864921ad9283fd97bcea68d3fd904e5d.png

图2: Zero-shot-Cot全过程

    Zero-shot-CoT跟Few-shot-CoT的区别在于,对于每个任务,Few-shot-CoT需要谨慎的人工工程将few shot样例转化为特定的答案格式,就是其中的逐步推理过程,而Zero-shot-CoT则不需要这些工程,只需要调用两次语言模型即可实现。Zero-shot-CoT跟Zero-shot的区别在于,Zero-shot-Cot多了生成多步推论的过程,最终输入语言模型的文本会更加丰富,语言模型能按照逐步推论的方向进行预测,从而更好的控制语言模型的输出。

4 实验结果

    论文在算术推理跟常识推理相关的任务做了实验,有以下一些实验结论。

    a) Zero-shot-CoT在需要多步推理的算术推理任务,符号推理任务,其他逻辑推理任务上大幅超越zero-shot,在不需要多步推理的算数推理任务上(SingleEq和AddSub)上跟zero-shot水平相当。在常识推理任务上,Zero-shot-Cot表现没有提升。

454da30e824e3489d9d16e2ea3f8663b.png

图3: Zero-shot-CoT跟Zero-shot在多个任务上的表现

    b)在算术推理任务中,虽然Zero-shot-CoT不及Few-shot-CoT,但明显优于标准的Few-shot,即便是带8个样例的Fes-shot方法。

9ad67b2bcbeb30b632a29a46053d5872.png

图4: 在多步算法推理任务上多种方法的效果对比

    c) 对于常识推理问题,Zero-shot-CoT通常能生成灵活合理的推论,即便最终预测是错误的(下图左边样例)。同时当模型发现很难将答案选项缩小时,Zero-shot-CoT经常输出多个答案选项(下图右边样例)。

b5da4ad7b646916197fe673c1049a906.png

图5: Zero-shot-CoT在常识推理任务的若干bad case

5 讨论

  1. a) 语言模型规模跟zero-shot推理是否相关?

    大规模语言模型能带来更合理的推理。对于不需要多步推理的任务,zero-shot表现随着语言模型规模的增长可能不增长或者增长非常缓慢,但是对于需要多步推理的任务,随着语言模型规模的增长,zero-shot的效果飞速增长。

62786747f4024aa862dd91823d10ff92.png

图6:模型规模的影响

  1. b) Prompt的选择是否影响Zero-shot-CoT

    如果文本被撰写成有利于深度推理的样子,模型效果也会得到提升。不同的prompt会驱使模型表示出迥然不同的推理能力,具体的差异取决了实际句子。在论文实验中,其中一个prompt”Let’s think step by step”取得最优的效果。

c1509ea36aecb392adc9f0adf757ae08.png

图7:不同prompt对于Zero-shot-CoT的影响

  1. c) 大规模语言模型的推理能力

    部分研究表明预训练模型通常不擅长推理任务,但是通过让它进行逐步推理可以极大程度的提升它的推理性能,而不是通过微调。论文的实验也佐证了大规模语言模型是一个合适的zero-shot推理器。

  1. d) Multi-task prompting

    大多数prompt都是针对特定任务而设计的,但是Zero-shot-CoT是支持多任务的,具有更强的泛化能力,能应用到更多不同的任务中去。Zero-shot-CoT可以为作为一种参考,不仅加速应用大规模语言模型进行逻辑推理的研究,也加速发现其他大规模语言模型的广泛感知能力的研究。

6 总结

    个人觉得,相比其他prompt相关的文章,Zero-shot-CoT通过两阶段的prompt过程设计,摆脱了prompt工程的限制,也不受限于具体的任务,更好的控制模型的预测方向。虽然思想跟Few-shot-CoT很像,但是摆脱了其中的精心设计的将few shot样例转化为合适的prompt的过程。这一点还是很有价值的。

    但是,看完这个文章还是有不少的疑问。文章提及Zero-shot-CoT是multi-task的方法,但是只在推理相关的任务上进行实验,Let’s think step by step”在非推理的任务上也会是最优选择吗?在其他任务上,Zero-shot-CoT能取得多少增益?对于其他语言而言,找到自身最佳的“Let’s think step by step”只能把所有可能的prompt都测试一遍吗?有其他自动化的手段吗?有没有跨语言的“Let’s think step by step”?

参考文献

1.(2022,) Large Language Models are Zero-Shot Reasoners

https://arxiv.org/pdf/2205.11916.pdf

最近文章

EMNLP 2022 和 COLING 2022,投哪个会议比较好?

一种全新易用的基于Word-Word关系的NER统一模型

阿里+北大 | 在梯度上做简单mask竟有如此的神奇效果

ACL'22 | 快手+中科院提出一种数据增强方法:Text Smoothing

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值