阅读列表:5
涌现、复杂推理和 agent
涌现相关
复杂推理:大语言模型的北极星能力 | Ai导航 Emergent Abilities of Large Language Models | OpenReview
chain of thought 思想延伸的论文 Timothyxxx/Chain-of-ThoughtsPapers: A trend starts from "Chain of Thought Prompting Elicits Reasoning in Large Language Models".
- Chain-of-Thought Prompting Elicits Reasoning in Large Language Models
Jason Wei, Xuezhi Wang, Dale Schuurmans, Maarten Bosma, Brian Ichter, Fei Xia, Ed Chi, Quoc Le, Denny Zhou
这篇论文一个特点是,全文中 abs 或 intro 就把最好的结论说出来,每一节也是这样先给出重要结果。 另外由于 idea 简单,因此突出实验丰富性,通用性,几乎都是实验设计工作,数学和常识问题分别用了五个数据集,五个模型的不同规模(共 15 个),因此每个类型实验结果有 75 个。
- 把最突出的 3 个数据集和 3 个模型的结果绘制成图片,其他放在附录
- 由于覆盖面广,更多子领域都需要参考这篇文章,比如常识推理中有自然语言转机器人序列的论文,因此想用 LLM 做机器人序列规划的领域也很可能要引用该论文,因此论文引用量会变得很高。此外还设计数学推理、状态跟踪、句子形式识别等等不同粒度的任务。
着重关注的是:
- 实验设计和论证方面
- comonsese 和 symbolic reasoning 都是些什么问题,用哪些数据集?
- figure3 有各个类型任务的例子,看完后有总体了解。数据集则在附录 E.3 统一列出
首先,在本文之前,已经有论文用带中间推理步骤的数据集来训练或微调模型,而 GPT3 也提到了 incontext learning 思路 本文是把这两个领域结合在一起,实际是 in context intermediate steps learning, 而 chain of thought 又是一个很好的名字。
The chain of thought in this case resembles a solution and can interpreted as one, but we still opt to call it a chain of thought to better capture the idea that itmimics a step-by-step thought process for arriving at the answer (and also, solutions/explanations typically come after the final answer (Narang et al., 2020; Wiegreffe et al., 2022; Lampinen et al., 2022, inter alia)) 这几篇 cite 是说什么的,难道是解释 step-by-step 相关?
- 数学问题:基本是小学数学形式,比如小明有两个桃子,后来得到了两个袋子,每个袋子里有 3 个桃子,问当前共多少桃子。
- 消融实验:这里更像是对比实验,用不同类型的 prompt 进行对比(不过也算是消融,因为作者把 COT 中可能涉及的元素单独拎出来设计 prompt, 比如公式部分)
- Robustness 实验
- 常识推理:
- 同行涉及物理和人类交互的场景(比如判断踢篮球是否合理)
- 五个数据集:其中 StrategyQA 包括 multi-hop 推理(这个多跳性质看过很多); SayCan 是一个将自然语言转换成机器人动作序列
我看 chain of thought 这篇文章实际更像是认知实验设计,只不过测试对象是大模型,如果把它换成:
- 一年级非英语母语学生(表示小模型)
- 一年级母语学生(表示中等模型)
- 三年级母语学生(表示大模型)
那么就是认知实验设计了。
Emergent Abilities of Large Language Models | OpenReview
- Jason Wei, Yi Tay, Rishi Bommasani, Colin Raffel, Barret Zoph, Sebastian Borgeaud Sebastian_Borgeaud1, Dani Yogatama, Maarten Bosma, Denny Zhou, Donald Metzler, Ed H. Chi, Tatsunori Hashimoto, Oriol Vinyals, Percy Liang, Jeff Dean, William Fedus
- intro 提到更大的模型可以提高 sample efficiency, 这里是如何验证的,参考 GPT3 论文
- 基于 scaling law 论文(Kaplan)的结论以及
- Predictability and surprise in large generative
models. arXiv preprint arXiv:2202.07785, 2022. URL https://arxiv.org/abs/2202.07785.
- 还引用了一篇 blog: Jacob Steinhardt. Future ml systems will be qualitatively different, 2022. URL https://bounded-regret.ghost.io/future-ml-systems-will-be-qualitatively-different/. Accessed May 20, 2022. 注意这里引用形式写的是访问时间(这是严谨的)
(NO_ITEM_DATA:weiEmergentAbilitiesLarge2022)
In context Learning
[2301.00234] A Survey on In-context Learning
- Qingxiu Dong, Lei Li, Damai Dai, Ce Zheng, Zhiyong Wu, Baobao Chang, Xu Sun, Jingjing Xu, Lei Li, Zhifang Sui
- Ar5iv
- 读之前的问题: ICL 看上去就是在任务之前加上某些引导性的指令,技术上非常简单,几乎没有实施难度,但真的是这样吗? 要了解如何设计一个引导指令(prompt),似乎变成了一种教育或者文化问题吗?这里面还会涉及到网络的训练吗? 以后模型更加通用,真的只要用靠设计指令做研究了吗?综述中要如何回答或者表达以上提到的问题?
- ICL 的优点:
- 因为直接以自然语言作为 prompt, 因此解释性好,容易融合现有知识;
- 与人类通过类比进行决策相似(这里有待商榷,需解释什么是类比吗?);
- 不需要训练,language-model-as-a-service 成为可能
- 提升点:
- 尽管推理时直接加 prompt 就能在许多任务上获得好成绩,但通过目的性预训练或微调可以继续提升 ICL 效果 针对性训练被称为 warmup approach. 包括 instruction finetuning
- ICL 受 prompt 的选择和数量的影响
- ICL 的机制还是需要解释
- 涉及的模块:
- instruciton: 比如给定以下句子和情感判断的样例,请判断最后一个句子的情感,是正还是负
- example: 样例对(x,y)
- 选择指标:根据句子 embedding 的距离或互信息,或者纯粹是样本的 perpexity, 多样性等。实际是 retrieval augment prompting 了。目前研究基本在 instance level. 但作者认为 corpus-level selection strategy 缺乏研究且更重要。
- 样例的形式:CoT 就属于对样本例子形式的研究,一方面要加上 let's think step by step, 另一方面要分解样例,写出中间步骤,而后者可以是人为设计也可以是自动生成(比如 LLM 生成)
- score function: 比如对词正和负的 logit 得分,或者模型输出的不是正或负,而是其他表示情感的词汇,此时要对一些候选词做一个得分表
- 对于要估计某些类别的任务,需要把自然语言转成概率分布。
- 包括 direct, PPL, channel, 采样规则也是 socre function, 即可控序列生成
- 可解释性:可以研究不同元素对 ICL 效果影响,比如
- 预训练时数据集大小,数据集 domain 分布多样性,参数数量(scale)
- prompt demo 形式,顺序,是否一致,与问题的 embedding 距离等
- ICL 可能和梯度下降效果类似, attention 充当了临时地梯度更新机制
- ICL 可以看作是 prompt tuning 的特例,是可文字表达层面的 Ptuning, Ptuning 还包括训练微调 prompt 词的 embedding 参数, Few shot learning 则更多偏向微调少量样本,而不是拿样本作为样例。
开源工具和多模态之后的内容没有看了
[2306.01707] Learning Multi-Step Reasoning by Solving Arithmetic Tasks
- Tianduo Wang, Wei Lu; ACL2023-short; Ar5iv
论文目的是为了能使得的 gpt-2/bert 类量级的 LM 具有更好的数学能力,构造了一个 MaST 数据集,输入是问题描述,输出是赋值语句和计算序列(也就是 step by step 的对问题的解答描述),因此属于 seq2seq 范式。该数据集不是下游认为而是用来继续预训练大模型的
用 adaptive finetuning 去训练 roberta 预测计算不周序列,理由是为了把预测 step 的能力注入到预训练模型中,而用 adaptive 的原因是为了减缓灾难性遗忘,全模型微调容易破坏预训练模型。
接着用这个能够生成分步解题过程的模型去下游任务上再做微调和测试。
MAWPS 第 7 个例子如下:
Question: The school cafeteria had number0 apples . If they used number1 to make lunch for the students and then bought number2 more , how many apples would they have ? Equation: - + number0 number2 number1 Answer: 50.0 Numbers: 14.0 13.0 49.0
测试解码阶段,由于直接用的是 python 代码因此用以下代码直接执行:
# utils.py calculate_acc_code 函数 gold_code = re.sub(r'<SEP>', '\n', gold_code) exec(gold_code)
分析方法:
- 对比了输出是 steps 或者直接给出答案,后者差很多(这实际说明小一点的 LM 还是有局部的知识的,只是需要串起来)
- 对比 seq2seq 输出格式是数学表达式或者代码形式,发现代码形式准确率更高
- 对比了 adaptive pretrain 和纯 pretrain 方法,后者会遗忘导致效果更差
- 对比了 pretrain 的时候用不同难度的题目
问题:
- 作者做的事情和 Can Large Language Models Infer Causation from Correlation? 有点类似,用符号算法构建出一个数学计算数据集 MsAT.
- 下游数据集是什么,在做什么任务,如何微调?
- 怎么对比 PaLM, 如何使用?如何对比 codex?
- DAG 模型如何预测数学题?
- 作者如何分析预训练模型,分析是否有说服力?
- [2305.10601] Tree of Thoughts: Deliberate Problem Solving with Large Language Models
- Shunyu Yao, Dian Yu, Jeffrey Zhao, Izhak Shafran, Thomas L. Griffiths, Yuan Cao, Karthik Narasimhan
-
Implementing the Tree of Thoughts in LangChain’s Chain | by Astropomeai | Medium
类似 LLM agent, 但感觉任务限制的比较窄
- Can LLMs Really Reason and Plan? | blog@CACM | Communications of the ACM
- [2310.01714] Large Language Models as Analogical Reasoners
- Michihiro Yasunaga, Xinyun Chen, Yujia Li, Panupong Pasupat, Jure Leskovec, Percy Liang, Ed H. Chi, Denny Zhou
Deepmind, Ar5iv
读前疑问:普通 ICL 也是类比,为什么这个就单独叫做类比呢? 如果做这种 prompt 方式的研究?
就是在回答问题前让 LLM 回忆相似的问题和解法,再做回答,核心还是实验论证,要哪些方面来证明,对比数据集等
problem, describe it and explain the solution.
因果科学
Investigating causal understanding in LLMs — LessWrong
Kosoy, E., Towards understanding how machines can learn causal overhypotheses. Evaluating the logical reasoning ability of chatgpt and gpt-4, zhang. Understanding causality with large language models: Feasibility and opportunities, Long, S., Schuster, T., Piché, A., Research, S., et al. Can large language models build causal graphs?
[2305.00050] Causal Reasoning and Large Language Models: Opening a New Frontier for Causality
- Emre Kıcıman, Robert Ness, Amit Sharma, Chenhao Tan
- 2023; Ar5iv;
[2306.05836] Can Large Language Models Infer Causation from Correlation?
- Zhijing Jin, Jiarui Liu, Zhiheng Lyu, Spencer Poff, Mrinmaya Sachan, Rada Mihalcea, Mona Diab, Bernhard Schölkopf
- 2023; Ar5iv
构造了一个数据集,输入条件独立的语言,希望预测出因果语言 解读可以参考 [Paper Reading] 大模型可以从相关性中推出因果关系吗? - 知乎
[2210.13382] Emergent World Representations: Exploring a Sequence Model Trained on a Synthetic Task
- Kenneth Li, Aspen K. Hopkins, David Bau, Fernanda Viégas, Hanspeter Pfister, Martin Wattenberg
- 2023; Ar5iv
用 gpt 在 othello 游戏序列数据上训练,并检查出其内部有一个对该游戏世界的非线性表征
检查世界模型的时候,使用了干预实验(interventional experiments),用来构造 latent saliency map 构造了一个和棋谱类似的图片,而通过该图片可以看出模型预测的思路。
作者们期望的是本文论中使用到的 nonlinear probes, layerwise interventions, and latent saliency maps 可以在自然语言场景中得到验证,即通过自然语言反推出背后的运行机制。
读完摘要和结论后的核心问题是: 这个内在世界模型是如何检测出来的,如何设计实验?为什么是非线性的内部表征?
intro 部分,这里的论证逻辑是这样的:
- 假设这个世界正在发生某些事情,而这些事情会留下痕迹(比如文字记录或者行星运动的轨迹)
- 某些人认为光对这些痕迹进行建模是不够的,这种模型无法捕捉到产生这个痕迹的机制
- 比如哲学角度的反驳(Bender & Koller, 2020) 和数学角度的反驳(Merrill et al., 2021).
- 一种说法是这种对痕迹进行建模只会学习到"表层统计"现象,获得的是相关性而非因果,而如果学习到这类虚假相关会导致在 OOD 任务中失败
- 另外一些人认为有些微妙的线索显示,痕迹模型不单单只学习到伪相关,而是能学到背后的“世界模型”
- “世界模型”的定义是:该模型能够展示出它学习的序列数据是如何生成的。这些线索包括
- Abdou et al.(2021) 发现痕迹模型可以理解颜色
- Patel & Pavlick (2022) 发现痕迹模型可以理解方向
- (Li et al., 2021) 肺癌西岸痕迹模型可以追踪 0/1 状态机
在方法方面,Toshniwal et al. (2021) 在 chess move sequences 上探索世界模型,发现首先只要训练象棋描述序列,模型就可以比较好地下象棋,并且其内部似乎在追踪棋盘状态。 但作者 stop short 了,没有进一步探索模型内在结构。
可以看到,本文基本是对 Toshniwal 的扩展,并且作者也承认本文最大的局限是没有进入自然语言(但哪种足够小的模型能够留下复杂度足够小的自然语言痕迹呢?),或者先从形式语言入手,能推出自动机模型吗?
- 某些人认为光对这些痕迹进行建模是不够的,这种模型无法捕捉到产生这个痕迹的机制
- 具体来说,作者用 otello 棋的落子序列训练一个 gpt, 然后去 probe 该模型,发现线性 probe 不太行,非线性 probe 是可行的,通过干预的方式构造反事实
- 为什么选择 Othello: 足够简单,但搜索空间足够大,使得网络无法完全记住所有移动路径(如何定义足够大)
- We compute this dataset by uniformly sampling leaves from the Othello game tree. 不应该是 sample path 吗,为什么是 leaves?
- 另外,作者如何保证验证集里就是新数据(对于下棋来说,开局部分应该非常相似,或许这是作者采样叶子节点的原因?)
- how do the authors prove that Othello-GPT is not memorizing all possible transcripts. 作者构造了一个数据集,其序列中第一个 token 不可能是 C5.
- 正文读完后,构造显著图的部分细节需要看代码和附录,但是否继续深入还需要思考?
- 本文在一个 toy model 上做了对 gpt 序列模型的解释性工作(grounding)
- 解释性借助了当前的一个"热词" – 世界模型,论文中具体形式就是棋盘状态。
- 从棋盘到更复杂的自然语义场景是一个挑战性问题
- 实验图标都很丰富
- 技术涉及到:干预的概念、梯度更新隐藏层,绘制干预图,probe, attribution 等解释性手段
- 这里干预和 causal 的概念必须小心对待,论文中似乎展示了对内部的棋盘表征的改变会导致序列预测结果的改变, 这像是因果在数据科学里的定义–即数据生成过程描述,但问题在于,这里的生成是一种描述性生成,从"现实对象"到"语言描述",而不是"现实对象"之间的因果关系。问题是,对于下棋来说,有因果吗?更像是逻辑推理的选择。
[2308.13067] Causal Parrots: Large Language Models May Talk Causality But Are Not Causal
- Accepted by TMLR
- Matej Zečević, Moritz Willig, Devendra Singh Dhami, Kristian Kersting
- Ar5iv
本文试图把真正的因果和语言上的"因果描述"给区分开?因果描述不能取代真实的因果。
提出了 meta SCM 的概念,元层面的因果模型,而元是一种语言指向
提到了柏拉图的洞穴隐喻(allgory),LLM 就像在洞穴中看到皮影戏,能够通过皮影戏来理解外部真实世界事物的交互规律吗?
该文章想处理的核心问题是:
- 如果因果假设已经在数据里,因果推断怎么做?
- 开始进入有趣的部分了,因果图里的节点可以是概念,比如是 "因为" 或者是一个 embedding, 作者称它为元 SCM, 问题是,这种 SCM 能被操作吗,操作一个概念意味着什么?或者这个 meta SCM 是无法进行 do 运算的。
- 作者的理论假设部分关键是理解 Example2
- 实验部分,作者用谓词逻辑作为常识推理的框架,考虑是比较周到的:
- 用符号变量、存在性名词变量、虚构变量、混合变量
- 为什么 gpt3 准确率比较高,但仍然被作者认为是记住表象?如何论证的?gpt4 可以理解,因为 gpt4 可能看过更多数据。
- meta 级别信息,比如场景等,作者认为这实际是一种在传统算法上加启发
- [2310.00809] Towards Causal Foundation Model: on Duality between Causal Inference and Attention
- Jiaqi Zhang, Joel Jennings, Cheng Zhang, Chao Ma
- 微软
- [2310.19677] MoCa: Measuring Human-Language Model Alignment on Causal and Moral Judgment Tasks
- Allen Nie, Yuhui Zhang, Atharva Amdekar, Chris Piech, Tatsunori Hashimoto, Tobias Gerstenberg
- NeruIPS2023
- [2311.17438] CLOMO: Counterfactual Logical Modification with Large Language Models
- Yinya Huang, Ruixin Hong, Hongming Zhang, Wei Shao, Zhicheng Yang, Dong Yu, Changshui Zhang, Xiaodan Liang, Linqi Song