入选NeurIPS 2024!关于LLM能否通过教学学习(Learn by Teaching, LbT)提升推理能力的研究

依靠更强的人类标注或模型教授学生模型,可以提高学生模型的能力。这类改进大语言模型(LLM)的方法(例如,“知识蒸馏”)已被广泛研究。而对人类而言,在教学的过程中,不仅学生能获得提高,教师也往往能从中受益,尤其是对于那些需要强推理和长学习过程的主题。那么,LLM 也可以通过教学来学习(Learn by Teaching, LbT)吗?如果可以,我们或许能获得一种不依赖人类生成数据、不依赖更强大的模型,却能不断改进现有模型的途径。

来自清华大学、无问芯穹、微软研究院、上海交通大学等机构的研究团队被 NeurIPS 2024 会议接收的文章《Can LLMs Learn by Teaching for Better Reasoning? A Preliminary Study》探究了这一问题。

作为初步尝试,文章使用LbT思想设计了三种方法,目标包括在不经过训练的情况下提高推理结果,或者通过微调训练提高模型的推理能力。其中方法一(M1)和方法二(M2)将LbT思想实现为现有 LLM 推理和训练流程中的评分模块;而方法三(M3)将LbT思想实现为一个迭代的提示词示例优化流程,根据学生反馈优化示例从而提升老师自己推理结果。从流程上来看,这三个方法可以类比为人类教学过程的三个流程级别:观察学生的反馈、根据学生的反馈学习、迭代地根据学生的反馈学习。

从实验结果中可以看到一些信息:

(1)在题目相似以及教师给出具体解题逻辑情况下,学生才能通过上下文学习跟随解题逻辑,从而其考试性能才能反映教学材料的质量,为教学材料评分;

(2)可能有以弱助强泛化的潜力(weak-to-strong generalization):强模型可以通过教授其他弱模型来进一步改进自己;

(3)学生的多样性可能有所帮助:教授多个学生的效果可能优于教授单个学生、或者教师本身。

该文章还讨论了此研究中各个研究选择背后的逻辑,包括目标、路线制定、具体任务选择、具体方法设计、以及未来可能拓展方向,希望通过这些分享这些初步尝试和思考能激发更多对将教育学理念应用在 LLM 上的研究。

文章:https://arxiv.org/abs/2406.14629

网站:https://sites.google.com/view/llm-learning-by-teaching

代码:https://github.com/imagination-research/lbt

视频:https://www.bilibili.com/video/BV1f6UoYQEqw

图片

总体研究框架图

本论文的作者来自清华大学 NICS-EFC EffAlg 团队、无问芯穹、微软研究院、鲁汶大学、阿尔伯塔大学、上海交通大学。清华大学 NICS-EFC 实验室由汪玉教授带领,实验室的高效算法团队(Efficient Algorithm Team,EffAlg)由宁雪妃助理研究员带领。EffAlg 团队的研究关注点主要为高效深度学习,目前也开始关注增强模型推理和学习,团队网站为https://nics-effalg.com/。欢迎有相关研究兴趣的同学申请加入。

图片

序言

“要是不能把一个概念讲得让一个大学新生也能听懂,那就说明你自己对这个概念也是一知半解。” ——理查德·费曼

学生模型“向教师学习”是机器学习、特别是大语言模型领域一种常见的范式。例如,在知识蒸馏中,教师模型通过提供输出概率、特征、或者合成数据来教授学生模型,将知识从教师模型转移到学生模型。

事实上,在人类的学习过程中,教学不仅能让学生受益,还能提高教师自身的水平,尤其是对于那些需要强推理和长学习过程的主题。实践和研究证明,“通过教学来学习”(Learn by Teaching,LbT)有助于教师本身构建更严谨、更清晰的推理过程和知识结构。这种教学相长的学习方法又称为“费曼学习法”、“教中学”、“以教助学”。图 1 展示了“学生LLM向教师学习”和“教师LLM通过教学来学习”两种学习流程的概念比较。

受此启发,为了提升LLM的精确推理这一关键能力,我们想问:LLM 也能通过教学来学习、从而提升推理能力吗?除了能提升推理能力以外,不难想象,LbT 还蕴含了重大潜力:模型可以通过教其他(可以比自身更弱的)模型来持续提升,而不用依赖于人类生成的数据或更强的教师模型来改进。

图片

图1:左:学生模型“向教师学习”的过程。利用教师LLM的知识提高学生LLM。这是知识蒸馏、通过合成数据蒸馏等常见方法背后的基本思想。右:“通过教学学习”的过程。利用教学过程中学生LLM的反馈来提高教师LLM。

图片

表 1:本文探索的 M1、M2、M3 方法。

如何将“LbT”思想合理地实现进LLM的推理和学习过程?为何能期待其带来提升?为了回答这两个问题,需要先分析在我们的学习过程中,“LbT”是怎么帮助提升教师的学习表现的。我们总结了三类“LbT”的好处:

(a)增强责任感和动力:教学学生这一任务给教师带来了社交压力和激励,鼓励个人提高标准并更加努力。

(b)需要用清晰有序的语言表达模糊跳跃的思考:在准备教学材料时,教师需要使用语言来将模糊跳跃的思考显式表达出来,其中需要使用定义明确的概念、清晰有序的逻辑,才能让学生理解。这里我们提出一个关于教学材料质量的假设 -- LbT-TMQ假设:使学生的学习更加容易的教学材料具有更清晰、更准确的逻辑。

(c)来自不同学生的迭代反馈:在教学过程中,不同能力水平和知识背景的学生的反馈提供了宝贵的信息,能帮助老师发现教学材料甚至自己知识里的缺口、发现新的连接等。

本文试图将好处(b)和(c)应用到大型语言模型(LLM)的推理和学习过程中,实现了三个方法:M1、M2、M3。对于(b),基于LbT-TMQ假设,采用学生的考试成绩作为评估教学材料的依据,研究这种评分机制是否能够筛选出具有更高准确率的教学材料,或者进一步微调教师模型以提升教师模型的能力。对于(c),本文将LbT实现为一个迭代的提示词示例优化流程,让教师分析学生的考试错误,并据此调整自己的提示词(教学材料),研究最终得到的提示词是否也能提高教师在未见过的数据上的推理准确率。

若从流程类比的角度来看,可以认为三个方法分别对应了人类教学过程中的三个流程级别:

M1对应L1:从学生获得反馈。教师指导学生,然后由学生提供反馈(例如,学生参加测验考试并汇报得分、就不清晰的地方提问)。

M2对应L2:从反馈中学习。根据反馈,教师可以分析学生可能正确理解或错误理解了哪些逻辑和概念。这些信息有助于教师改进教学策略,进一步提高教师自身对概念的理解。

M3对应L3:从反馈中迭代学习。教师可以迭代地进行向学生传授然后从反馈中学习这一过程。

具体来说,这三个方法的目标和实现总结如下:

M1 通过直接利用学生的反馈来提高LLM的回答质量。具体来说,给定一组LLM生成的答案及其解题思路(解题思路即推导过程、逻辑依据),我们根据这样的标准对每个答案进行评分得到LbT分数:用这一答案及解题思路来教学生模型(使用上下文学习)正确回答类似问题的效果。我们发现,基于 LbT 分数筛选解题思路和答案可以提高答案准确性。

M2 通过从学生的反馈学习来提高LLM的内在能力。我们使用 M1 中的方法对教师生成的解题思路进行评分。然后,我们应用直接偏好优化(DPO)来使用这些“解题思路-分数”数据微调教师模型。我们发现,相比于仅依据答案正确性来评分解题思路,同时也使用LbT分数来评分解题思路能使直接偏好优化(DPO)在提升模型性能上取得更好效果。

M3 通过迭代地从学生的反馈学习来提高LLM的回答质量。具体来说,我们让教师 LLM 分析多个学生的失败案例,并依此设计新的示例用作下一轮的提示词(教学材料)。我们发现,教师 LLM 可以根据多个学生的反馈改进示例。将这些改进的示例用在提示词中可以提高教师LLM的表现。

我们揭示了一些和 LbT 有关的有趣发现:

(1)能让学生更容易学会的教学材料有更准确的逻辑(LbT-TMQ 假设)。我们提出的基于 LbT 的评分模块依赖于这一假设。我们的实验结果和检验都支持这一假设。需要注意的是,只有在题目相似以及教师给出具体解题逻辑情况下,学生才能通过上下文学习跟随解题逻辑,从而其考试性能才能反映教学材料的质量,为教学材料评分。

(2)LbT可能有帮助“以弱助强”泛化的潜力(weak-to-strong generalization):强模型作为教师时,即使学生是能力较弱的模型,强模型也能在教学中获得提升。这表明 LbT 有望被用来改进比人类更强的模型,支持模型的持续演进。

(3)学生的多样性可能有所帮助:比起教师模型自己教自己,使用和教师不同的模型作为学生、使用多个学生模型时可能会得到更好的效果。这表明了 LbT 可能可以用来整合多个模型的能力和知识。

图片

本文中 LbT 具体实现的相关工作

如表1所示,我们研究两类目标:不通过训练提高答案质量、通过训练提高模型的内在能力。§ 2.1 和 § 2.2 分别描述了 M1、M2 和 M3 与针对这两个目标的已有工作的关系。

图片

图 2:用于提高答案质量和模型能力的两种通用流程。“P”代表“问题”;“R”代表“解题思路”;“A”代表“答案”。左:“基于搜索的生成”流程,用于提高答案质量。右:“生成-评分-微调”流程,用于提升模型能力。

2.1 不通过训练提高答案质量

现有研究已经借鉴了人类解决问题的思路和方法,开发了多种基于提示词的技术,这些技术能够在不进行训练的情况下提升推理结果的质量。这些技术包括显式写出思考过程(CoT)、子问题分解(Least-to-most Prompting、SoT)、获取抽象原理并根据它们进行回答(Take a step back)、基于自我反思做答案迭代改进(Self-Refine、Reflexion)等等。我们结合 LbT 思想探索了两种新的不进行训练的方法:

M1将LbT评分模块接入图 2(左) 所示的“基于搜索的生成”流程。这一流程迭代地采样和评估新的解题思路(或者解题思路中的一步)来搜索最优输出,过程中维护的“搜索历史”以多链、树、或图的形式组织,最终从搜索历史导出最后的解题思路和答案。评估器是其中的重要组成部分,负责评估每个解题思路(或者解题思路中的一步)的质量。我们设计了一个 LbT 评估器对每个解题思路进行评分:评估这一解题思路(作为教材)能否教会另一个学生模型正确回答类似问题。M3 和现有的提示词优化方法相似,这些方法根据提示词的表现迭代地改进提示词。 M3测试了提示词用在其他学生模型时的情况,并根据这些情况改进教师的提示词。

2.2 通过训练提高模型内在能力

为了提高模型的内在能力,M2 将 LbT 评分模块接入“生成-评分-微调”流程中。图 2(右)说明了该流程中的三个步骤:

(1)让目标 LLM 或教师 LLM为给定问题生成多个解题思路;

(2)使用评估器对解题思路进行评分;

(3)利用解题思路和分数训练验证器(可选);通过强化学习、DPO及其变种、先过滤再监督微调(SFT)、条件在分数上的监督微调(score-conditioned SFT)中的某种方式来微调目标LLM。

在这些工作中,解题思路的评分通常是通过人工标注、真实答案匹配、一致答案匹配、或自我评估来实现。相比之下,LbT评分模块的依据是解题思路教学生模型正确回答类似问题的能力。这样,M2可以为解题思路提供自动化、细粒度的质量评估。

图片

M1:“LbT层次L1-从学生获得反馈”的实现

3.1 方法

教育中,教师教学生某一类问题的一种常见教学策略是:首先,教师针对这类问题中的一个特定问题(称为教学问题 Teaching Problem,简称 TP),给学生提供示例解题思路(称为教学解题思路 Teaching Rationale,简称 TR)和答案(称为教学答案 Teaching Answer,简称 TA),从而教学生举一反三、解决这一类问题;接下来,教师要求学生解决其他类似的问题(称为考试题 Exam Problem,简称EP),以测试学生是否理解概念。在这一过程中,教师也可以通过观察学生获得反馈(即 LbT 1 级)从中学习:如果学生能够很好地回答 EP,那么很可能意味着 TR-TA 组合是高质量的。

M1 在 LLM 中实现了这一策略,用来从 TP 对应的一组 TA 中选择最优 TA,从而达到更高的回答准确率。如图 3 所示,我们首先令教师模型多次求解给定的 TP,从而产生多个 TR-TA 组合。然后,每个 TR-TA 组合用作上下文学习(in-context learning, ICL)示例来指导学生模型解决一系列考试题。根据学生生成的试题解题思路 (Exam Rationale, ER) 和试题答案 (Exam Answer EA)每个学生会得到考试得分(例如 EA 的准确性),记作 LbT 分数。 LbT 分数可以用来评估相应 TR-TA 组合的质量。我们考虑两种方法来选择最终的 TA :

(1)选择 LbT 分数最高的 TR-TA 组合;此方法称为“M1(MAX)”

(2)如果很容易检查答案等价性 (例如数学推理中可以用字符串匹配),我们可以分别对每组等价的 TA 的 LbT 分数进行求和,找到总和最大的 TA。我们将此方法称为“M1 (SUM)”。

图片

图 3:M1 - 目标是从教师 LLM 生成的 TR-TA 组合中得出最佳 TA

3.2 数学推理评估 

3.2.1 实验设置

我们使用 MATH 数据集的扩展 MATH()。MATH() 通过给变量赋不同的值,为 MATH 数据集中的数学问题生成了若干变体。我们使用和《Let’s verify step by step》一文同样的训练-测试集切分方式。在 MATH 测试集的 500 个问题中,有 181 个问题在 MATH() 数据集里有 3 个变体。我们用这 181 个问题作为 TP。对于每个 TP,我们采样 256 个 TR-TA 组合。然后,使用每个 TR-TA 组合作为 ICL 范例,我们利用 TP 的 3 个变体作为 EP。每项考试均使用学生模型随机解码重复 3 次,产生 9 个 ER-EA 组合。每个 TA 根据 9 个 EA 的正确性进行评分。

3.2.2 结果

图片

表 2:181 个 MATH 测试问题的结果,每个问题生成 256 个 TR-TA 组合。每行的最佳结果以绿色标出。“Improv.”一列计算的是 M1 (SUM) 相对于自洽性(self consistency)的平均性能提升。

图片

图 4:使用 LLaMA3-8B 作为教师和学生,在 181 个数学测试问题上,M1 相对于 SC 的相对改进。其中横坐标为(左)TR-TA 组合的数量(误差条在 10 次重复运行中计算);(中)难度级别;(右)将 TP 根据与训练集中最接近的 2 个问题的余弦距离排序后,取排名最前的 TP 的比例。

M1 在各种模型设置下都很有效,并且超过基线。M1 在各种模型设置下都超过了自洽性(self consistency, SC)这一基线方法:无论是强-教-弱(如 LLaMA3-70B 教 LLaMA3-8B)、弱-教-强(如 Mistral-7B 教 LLaMA3-8B),还是自学(如 LLaMA3-8B 教自己)。在大多数情况下,M1 (SUM) 优于 M1 (MAX)。基于 LbT 的评分方式超过了基于自我评估的评分方式。保持 TA-TR 数量一致时,和基于自洽性的方法相比,M1 有更高的生成/推理开销;因此,我们额外对比了使用同样或更少计算资源时 M1 的性能:M1 仅使用 24 个 TA-TR 组合就能比使用 256 个 TA-TR 组合的基于自洽性的方法提高 0.17%-8.29% 的准确度。

M1 能够识别不常见但正确的 TA。M1 可以从许多教学样本中有效地发现正确答案,而基于自洽性的方法则必需要正确答案占多数。图 4(左,中)显示了 M1 在不同 TR-TA 对数量和难度水平下相比自洽性的改进。在实验范围内,随着 TR-TA 组合数的增加、随着难度的提升,M1 带来改进逐渐增加。

TP 和相应的 EP 应该相似。选择与 TP 相似的 EP 至关重要,这样学生才能运用 TR 中的逻辑来解决 EP。我们使用 MATH 问题 在 MATH() 中的对应变体作为 EP,它们与 TP 非常相似。为了验证 TP-EPs 相似性的必要性,我们进行了一项实验,从原始 MATH 训练集中选择相似的 EP。我们使用 “all-mpnet-base-v2 ”模型计算每个 TP 的 embedding,从 MATH 中选择最接近的两个问题作为 EP。我们把 TP 按照和 EP 的余弦距离排序,然后计算距离排前 p% 的 TP 带来的相对改进。图4 (右)显示,只有 TP 在训练集中有相似问题时,M1 才能带来改进。

3.3 竞赛级代码合成评估

3.3.1 实验设置

我们使用 LeetCode 上 “Grandmaster Dynamic Programming(动态规划大师)”这一学习计划。这个学习计划分为六组数据集(博弈论、1维动态规划等等),每个数据集有 5∼10 个相似问题,每个问题有 2∼3 个可见测试用例和许多隐藏测试用例。我们给通过所有可见测试用例的代码赋 1 分的可见分数(V-score),给未通过任何可见测试用例的代码赋 0 分。为了评估代码的实际是否正确,我们将代码提交到 LeetCode,并将隐藏测试用例的通过率记录为提交分数(S-score)。对于一个 TP,我们从教师模型采样 8 对 TR-TA,其中 TR 是自然语言描述的解题思路,TA 是 Python 代码。每个 TR-TA 组合都有一个 LbT 分数,赋分方法是教学生解决数据集中的其余问题。为了避免提交 LeetCode 的额外开销,我们只用可见测试用例测试学生的答案,将学生答案的可见分数 V-score 计为 LbT 分数。

3.3.2 结果

图片

表 3:LeetCode “Grandmaster Dynamic Programming”学习计划中博弈论数据集的 S-score。“SG-1”到“SG-4”、“PW”是数据集里单个算法题的标题缩写。M1 的成绩提高(降低)超过 0.01 的部分用绿色(红色)标出。

我们在这里分析博弈论数据集的结果:

M1 可以比基于一致性/自洽性的方法更通用。M1 (SUM) 和基于一致性/自洽性的方法都需要有办法判断答案等价性,而判断代码是否等价很难。所以,我们在这里只考虑 M1 (MAX) ,用 M1 (MAX) 的通过率(S-Score)对比所有 TA 的平均通过率(“Avg.”);我们对比的另一种情形是先根据可见测试用例对 TA 进行筛选,去掉可见分数 != 1 的答案(“Avg. (V-score=1)” 和 “M1 (MAX) (V-score=1)”)。当然,如果有办法判断代码是否等价,我们也可以用效果更好的 M1 (SUM) ;这方面的探索留作后续工作。

大多数情况下,M1 选择的 TR-TA 比基线方法选的更好。如果学生严格遵循 TR-TA 中的策略来解决 EP,则学生的考试成绩可以显示出 TR-TA 的质量。

 (1) 当 TR-TA 具有高质量时,学生会模仿老师的策略,用正确的动态规划代码解决 EP。

 (2) 当 TR-TA 逻辑上不正确时,比如 TA 使用了动态规划,但用了错误的递归方程、或是没有使用动态规划的错误代码,学生也会遵循错误的 TR-TA ,生成带有错误的 ER 和 EA。 

 (3) 当TR-TA逻辑正确但复杂度较高,例如没有用动态规划而是递归重新计算时,学生模型也会编写一个复杂度很高的递归。

如表 3 中所示,利用少量可见的测试用例确实可以过滤掉一些低质量的代码(过滤掉 V-Score != 1的代码),但 M1 在大多数情况下可以找出更好的 TA。这是因为基于 LbT 的评分可以利用学生在相似考试题上的分数,从而利用更丰富的信息对 TA 进行评估。注意到,M1 在中等难度的 TP 上显示出最大的改进。对于非常简单(例如,GPT-3.5 做 SG-4)或非常难(例如,SG-2)的问题,M1 带来的改进并不明显。

自调试(Self-Debugging, SD)既是 M1 的补充,也有利于 M1。我们使用提示词,让 LLM 进行一次自调试。在 TA 上应用自调试可以与 M1 互补,带来 S-Score 的提升,因为自调试可以修复简单的非逻辑错误:缺少 import、变量名写错和库函数使用不当等等,而 M1 主要评估的是代码的逻辑。此外,对 EA 应用自调试还能获得更有参考价值的 LbT 分数,因为修复非逻辑错误可以使学生的考试 V 分数更能反映 TR-TA 的质量。表 3 显示,在 M1 和基线方法中加入 SD 后,M1 总能带来效果提升。

图片

M2:“LbT层次L2-从反馈中学习”的实现

4.1 方法

如图 5 所示,由于基于 LbT 的评分能为 TR-TA 组合的质量提供有价值的反馈(已在第 3 节中验证),我们收集了许多 TR-TA 组合的 LbT 评分,并利用这些评分通过 DPO 微调教师模型。

图片

图 5:基线方法对比 M2。两种方法都使用 TR 的得分来生成偏好数据,并利用 DPO 对教师 LLM 进行微调。左图:TA 的正确性得分。右图:TR 和 TA 的 LbT 分数。

4.2 实验设置

我们使用 MATH()  中的 1564 个训练问题作为 TP。对于每个 TP,我们从教师模型采样 32 个 TR-TA 组合。对于每个 TR-TA 组合,我们计算 0.5 × 正确性 + 0.5 × LbT 分数作为其最终分数,其中当相应 TA 正确或错误时,正确性分别为 1 或 0。为了运行DPO,我们从 32 个 TR-TA 组合中选择分数差超过阈值 0.3 的组合,并为每个 TP 保留最多 8对 TR-TA 组合。

4.3 结果

表 4 显示,比起在 DPO 中仅使用正确性得分,M2 取得了更好的结果。这种改进是因为 LbT 比纯粹基于正确性的分数提供了更多的信息。例如我们发现,通过 LbT 生成的偏好数据中存在这样一些情况:虽然两个 TR 都得出了正确的 TA,但分数低的 TR 过于冗长,无法推广到其他类似问题。另一种情况是,虽然两个 TR 都得出了错误的 TA,但获胜的 TR 在逻辑上比失败的 TR 更优。LbT 可以分辨出这些 TR-TA 组合之间的正确偏好,从而改进 DPO 结果。

图片

表 4:采用贪婪解码回答 MATH 测试集 500 道题的答案正确率。

图片

M3:“LbT层次L3-从反馈中迭代学习”的实现

5.1 方法

我们已经证明,学生的考试分数可以反映出教学材料(解题思路)的推理质量。这一信号在 M1 中被用来选择更好的答案,在 M2 中被用来进一步微调教师模型。在 M3 中,我们探索:对学生具体的应试表现进行反思,能否帮助教师迭代地优化教材。尤其重要的是,我们旨在验证这些优化能否通过提供更多有效知识来提高教师自身的表现。如果可以的话,我们就可以断言,“教学-反思-改进教学材料”这一迭代过程可以帮助教师从某种形式上做到“知识构建”。另外我们也想知道,如果使用多个 LLM、多样的 LLM 作为学生,能否带来额外的好处。

具体来说,我们引导教师迭代地改进教学材料。在这里,教学材料的形式是一组正反面的示例。教师迭代地改进教学材料的依据是这组教学材料作为上下文学习的示例时,学生 LLM 和教师 LLM 的表现。如图 6 所示,给定一个二分类问题,我们首先从教师模型采样 K = 8 个初始示例,然后对示例进行多轮迭代优化。最后,我们使用最终的示例,令教师模型进行上下文学习,并汇报这时教师模型在测试集的表现。

每轮迭代包括以下步骤:

(1)将当前样本作为上下文学习样本,来教学生回答一组考试题 EP。在每轮迭代中,这组考试题是从训练集中重新抽样得到的。

(2)挑选学生回答错误的考试题,用提示词让教师模型反思:当前样本导致学生答错考试题的可能原因。

(3)根据反思结果,教师模型生成多组改进后的样本集合。

(4)评估新生成的改进后的样本集合,将他们分别作为上下文学习样本,指导教师模型回答训练集中的问题,最终保留使得教师模型在训练集上表现最好的那组样本。

图片

图 6:M3 概述。教师模型通过一组上下文学习的正、反示例来指导学生。教师根据学生的反馈反复、迭代地完善这组正、反示例。

5.2 实验设置

我们在两个文本二分类任务中对 M3 进行了评估:Liar 和 Logical Fallacy。Liar 是一个用于检测政治媒体中虚假言论的数据集,包含 4,574 条言论,以及这些言论对应的说话人和上下文信息。Logical Fallacy 是一个包含 13 种逻辑谬误类型的 2,449 个样本的数据集,我们对其调整为二分类问题:区分一个样本是否是最常见的逻辑谬误:“草率归纳”。我们报告了教师在验证集和测试集上的 F1 分数。在每一次迭代中,我们选择能使得教师模型在训练集上得到最高 F1 分数的那组示例集。我们报告了 14 次随机实验中 F1 的平均值和标准误差。我们进行了五轮教材迭代改进。

5.3 结果

图片

表 5(a) :M3 第 T 轮迭代结束时,教师模型 Liar 验证测试集上的 F1 分数。最佳结果以粗体显示。教师模型为 LLaMa3-70B。

图片

表 5(b):M3 第 T 轮迭代结束时,教师模型 Logical Fallacy 测试集上的 F1 分数。最佳结果以粗体显示。教师模型为 LLaMa3-70B。

如表 5 和表 6 所示,将 LbT 应用于迭代提示优化是可行的:LLMs 能够对学生的失败案例进行反思,并提出修改后的范例,从而提高教师自身的表现。这与”迭代优化任务描述“这类已有工作中所汇报的情况类似。

更重要的是,我们观察到,专门设置一个学生模型可以带来性能提升(而不是像已有工作那样,在提示词优化中仅仅使用单个 LLM)。与教师和学生使用同一个模型的情况相比,让一个或多个与教师不同的 LLM 作为学生,能更快地提高教材的质量。这也是表明 LbT 可以做到以弱助强泛化(weak-to-strong generalization)的一个案例。我们推测,选用的学生模型和教师不同的、能力更差时,他们所犯的错误类型更多样化,从而带来了好处。

图片

更多讨论

6.1 有关上下文学习的新认识

目前我们是让学生通过上下文学习来“学到东西”,基于的假设是学生能从上下文样本中有效地“学到东西”,然后用类似的策略解决考试问题。有趣的是,之前有工作发现,上下文学习中单个正确的输入-输出对并不很重要。乍一看,这一发现似乎和我们的设计、论证相悖,因为根据他们的发现,TA 的正确性可能不能不会影响 EA 的正确性,这也意味着 LbT 分数并不能反映 TR+TA 组合的质量。然而我们发现,和在上下文学习中只提供正确答案相比,提供解题思路更为重要。LLM可以非常好地遵循上下文样本中的详细解题思路。这也许是因为解题思路提供了更多信息,使得上下文样本更容易效仿。正因为此,我们看到学生在解决考试题的时候,能用到个教师解题思路相似的逻辑。这意味着更好的 TR+TA 确实可以带来更好的 ER,从而带来更高的 EA 正确性( EA 正确性即 LbT 得分)。

针对“让模型更好地效仿上下文学习样本”和“在 EA 准确性和TR质量/TA准确性间建立联系”这两个研究目标,我们的研究发现了两点关键之处:(1)TP 和 EP 之间的相似性 和 (2) 思维链的使用(详细的解题思路)。论文附录中更详细地阐述了在代码合成任务中,自然语言解题思路是如何影响 LLM 效仿上下文学习样本的能力。

6.2 局限性和近期扩展

M1 和 M2 依赖于生成或选择相似的考试题。基于 LbT 的评分可以帮助选择高质量的 TR-TA 对,但需要 TP 和 EP 有相似的解题策略。在实验中,我们是根据数据集作者构建数据集时手工提供的元信息选择合适的 EP。一种扩展是让模型自动从很大的备选题库中找到类似于 TP 的 EP(图 4)。另一个可能的方向是基于一组问题来合成相似的问题,然后用 LbT 原则给这些新问题的多种解题思路评分。具体来说,可以用类似 self-instruct 的方式扩展 M2:我们可以基于一组已知相似的问题 S={P1,···,Pk} 生成一个新问题 P。接下来,对 P 使用“生成-评分”这一流程,从而多组解题思路-得分。只需要简单地将 S 作为考试题 EP ,我们就能得到某个解题思路的 LbT 得分。

额外 LLM 推理(inference)成本。M1、M2 中基于 LbT 的评分步骤需要额外的推理(inference)开销——近期一些工作也同样指出,增加推理开销可能是一种行之有效的提升模型逻辑推理能力(reasoning)的方法。然而,为了提高这些方法的实用性,我们仍需设计高效的 LLM 推理(inference)算法、推理系统。

更多讨论请参见arXiv原文。

6.3 借鉴教育学中的教学策略来提高 LLM

借鉴教材的设计策略。我们在图 7 中展示了一个 LbT 流程。每次迭代包括六个步骤:(1) 教师生成教材(TM)。(2) 学生从教材中学习。我们的工作中,学生是通过上下文学习 In-Context Learning 从教材学习,但探索其他学习策略也是一个有趣的未来方向。(3) 学生提供反馈。如图所示,反馈可以有多种形式。我们的工作主要探讨了考试作答细节、考试分数这两种形式的反馈。(4) 教师对反馈进行反思,找出教材或教师自身的知识疏漏。(5) 教师可以选择参考一些外部数据源来弥补自身的知识疏漏。(6) 教师改进其知识的严谨性、清晰性和完整性,并在下一次迭代中更新教材。

一方面,改进教材可以提高教师自身的知识水平。例如,M3 将优化更新后的示例保存,作为教师模型的提示词的一部分,从而提高了教师模型的推理能力。另一方面,高质量的教材可以帮助学生更好地学习,以便学生可以为老师提供更有意义的反馈。为了创建高质量的教材,借鉴人类教育中的教材设计策略可能会有所帮助。图7总结了各种教材设计策略,其中我们的工作探索了三种类型(以黑色标记)。

图片

图 7:LbT 流程,以及对知识种类、教材设计策略、反馈模式的总结。

借鉴教学流程。我们还可以借鉴教育学中教学流程设计的思路来为设计 LLM 训练和推理流程。这里举几个例子:

(1)任务导向的多 agent 协作学习:多个 LLM agent 可以组成一个协作学习小组,以任务导向的方式学习一个困难的话题。类似的多角色协作思想已经在 LLM agent 研究中有所应用。

(2)选择合适的教师模型、学生模型以实现更好的 LbT:“teachable agent”方向的文献指出,恰当地调节学生的知识水平可以给教师带来更有用的反馈。这个发现启发我们思考,能否通过提示词来让学生 LLM “限制”自己的知识水平,从而强化 LbT 对教师模型的效果。更进一步思考,一个初级模型 M 可以从教一个比自己更强的“学生”开始。此时更强的学生能理解、能批判模型 M 教学过程中的错误和歧义。随着 M 逐渐变强,它可能能逐渐能过渡到教比自己弱的模型,以此提高自己的知识水平。这个过程可以看作是任务难度从易到难过渡这种形式的 curriculum learning。

(3)灵活的教学质量评估方式:人类学习过程中,反馈的形式不仅局限于考试,也可以有其他形式:同伴推荐、满意度调查等等。这些机制运用到 LLM 中可能会帮助到一些开放性任务。

图片

总结

以提高 LLM 推理(reasoning)能力为目标,我们进行了初步探索验证 LLM 能否受益于人类常用的一种学习方法:通过教学来学习(learn by teaching,LbT)。我们把 LbT 的思想与几种成熟的 LLM 推理、训练流程相结合,设计了三种方法 M1-M3,并评估了他们能否在诸如数学推理、竞赛级代码合成这类复杂任务中提升模型的推理表现。

总结来说,我们用 LbT 的想法在 M1 和 M2 中实现了一种评分方式,在 M3 中实现了一个迭代优化流程。实验结果展示出 LbT 有潜力在推理任务中利用到多个学生带来的多样性、帮助实现弱模型到强模型的泛化(weak-to-strong generalization)。

随着大语言模型智能水平的与日俱增,“用教育学理念应用到改进 LLM”类的方法会否更有用武之地?我们在论文的第6节及附录中进一步阐释了这篇工作背后的想法,更欢迎大家指正、探讨。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值