@lateinteraction: 把链接放在这里,给那些想直接看长文的人:https://jacobxli.com/blog/2026/machine-stud…
摘要
介绍“Machine Studying”作为一个问题,AI代理必须从语料库中自主发展专业知识,超越RAG或长上下文,并提出了StudyBench基准进行评估。
查看缓存全文
缓存时间: 2026/06/18 06:03
把链接放在这里,方便想直接看长文的朋友:https://jacobxli.com/blog/2026/machine-studying/…
Machine Studying | Jacob Xiaochen Li
来源:https://jacobxli.com/blog/2026/machine-studying/
目录
我们越来越需要AI agent在训练时从未见过的领域中工作,比如使用一个新的编程库,或者利用围绕一种新疾病涌现的最新文献。这样的领域最自然地以文档语料库的形式出现,就像一本关于某个技术主题的教科书,或者描述一个新工具的手册。
面对这样的语料库,当前的agent主要依赖推理计算,立即把这个问题简化为“RAG”或“长上下文”,然后简单地依赖上下文学习、通过权重更新来近似它(https://arxiv.org/abs/2506.06266)(https://arxiv.org/abs/2512.23675)(https://arxiv.org/abs/2602.16284),或者依赖能够将搜索扩展到更长上下文的agent搜索和递归(https://arxiv.org/abs/2512.24601)。如果一个领域足够重要,当今的最佳实践是手动构建一个RL环境(https://arxiv.org/abs/2508.06813)(或者买一个!),这样agent可以通过试错来练习相关技能。在所有这些方法中,我们不禁注意到,我们的agent当前以浅显、手工设计的方式接触新领域。人类可以通过阅读教科书并积极思考材料,将其转化为深层知识甚至专业技能。为什么agent还做不到?
我们把这个问题称为Machine Studying。仅给定一个语料库 \mathbf{D} = (d_1, \ldots, d_n),AI系统能否自主发展出对底层领域的专长?一个学习算法就是agent在了解任何下游评估之前,利用 \mathbf{D} 对自身所做的任何事情**。学习可能会更新agent的权重或它的任何“套件”中的内容。重要的是,Machine Studying在定义上并不等同于“将语料库内化到权重中”:几乎每个agent在测试时仍然可以完全访问语料库!问题在于,它能在多大的程度上发展出对该语料库的专长。
我们首先定义专长。一个在领域 \mathbf{D} 中的专家是一个能够高效地将推理计算转化为准确工作的agent。一个敏锐的新手或许最终能通过纯粹的蛮力通过开卷考试,但只有专家才能轻松地产生高质量答案,并在更多时间下超越预期。具体来说,我们将专长度量为agent随着推理计算增长的表现曲线的加权面积。(这反过来给了我们一个关于agent的智能的概念:聪明的agent可以快速在一个新学科上发展出专长。以此标准衡量,当前的agent似乎还不够聪明。)
我们在StudyBench(https://huggingface.co/datasets/jacobli/studybench) 中实现了这个想法,这是我们正在构建的一个基准测试,用于研究agent的学习能力。我们目前只在小规模上触及了表面,但想在这篇短文里分享一些初步的想法和发现。首先,我们发现,同样“有能力的”前沿agent,在具备搜索能力时,可以在训练截止日期之后才流行起来的领域上表现出巨大的专长差距。其次,我们报告了我们尝试将流行的自监督或监督方法用于学习时的一些子集。我们发现,要让这些方法实质性提高agent(而非原始模型)的专长,至少是非常困难的。总体而言,我们预计权重更新对于深度学习至关重要(并且我们认为我们有几个好的想法——见(https://noahziems.com/pedagogical-rl)——来朝这个方向努力),但我们怀疑近似长上下文注意力是不是正确的目标。
我们在项目早期就分享想法和数据,因为Machine Studying当前是下游AI成功的一个核心且未被充分认识的瓶颈。“持续学习”目前被广泛讨论,但大多数解释都集中在诸如在工作中改进(https://www.dwarkesh.com/p/timelines-june-2025)和跨会话改进(https://www.letta.com/blog/continual-learning)、在学习新任务流时避免灾难性遗忘(https://arxiv.org/abs/2302.00487)(https://arxiv.org/abs/2606.05661),或者仅仅是更好的上下文管理(https://www.interconnects.ai/p/contra-dwarkesh-on-continual-learning)。StudyBench是我们尝试创建一个具体的目标,让我们所有人共同攀登,朝着仅从语料库就能发展出新领域专长的agent迈进。
1. 学习将语料库转化为专长
在预训练和后训练结束之后,人们和组织期望他们的agent能使用新的库、基于新的研究论文工作,并且在训练时不可用的私有语料库上运行。
人类经常面临学习新领域的问题,而我们的默认答案之一就是学习。在考试之前,即使是开卷考试,我们也会阅读课本或文献,大声思考,自我测验,并写下自己的笔记。这种准备即使在没有“考试”问题分布的情况下也通常会带来回报。通过试错(比如使用过去的试卷进行RL)的动手实践通常只占努力的一小部分。大部分专长来自于阅读和思考本身的主动努力。
我们希望AI agent具备同样的能力。给定一个由文档组成的语料库 \mathbf{D},这些文档共同定义了一个领域,没有额外的信息(比如问答对或奖励函数),一个智能的agent应该能够学习 \mathbf{D} 来建立对该领域的深入理解。一个agent只是一个模型和一套工具 \Sigma = (\mathbf{M}, \mathbf{H}),学习算法可以改变权重或agent的提示、工具,以及它在环境中维护的索引和笔记。关键的是,语料库在测试时仍然是世界的一部分:agent仍然可以使用它,但有效的学习应该使这种使用更加有针对性且高效。
某种程度上,机器学习问的是,当我们有一个精确的目标需要优化时,系统如何从数据中改进。Machine Studying问的是,当agent被赋予一个声明性语料库且没有下游任务时,它应该做什么。 当然,这需要预训练agent拥有关于世界的准确先验。agent在学习时可能会提出自己的问题和评估标准,就像学生自我测验一样,但它不能假设我们会告诉它太多关于任务分布或最终会用来评分的奖励函数的信息。
2. agent难道不能直接搜索语料库吗?
对于当前的agent以及推理计算扩展的兴起,当今最诱人的方法是完全跳过准备阶段。agent可以在测试时grep、读取文件和运行代码,那么为什么不针对每个问题花费更多的推理token呢?但这混淆了“能够访问语料库”与“发展出深层专长”:你不会仅仅因为我们能非常聪明地通过谷歌搜索法律文献就雇佣我们中的任何人当律师。至少,使律师成为好律师的因素是知道要寻找什么、在哪里寻找,以及在找到一段文字后如何处理它。
你可能认为推理和搜索与知识是不可分割的(https://x.com/lateinteraction/status/1909011076605518124)。一个决定搜索什么或打开哪个文件的agent是根据其当前权重行动的,而这些权重可能与语料库中编码的世界存在积极冲突。图1显示了一个有趣的例子:我们让Sonnet 4.6给出一个加载Qwen 3.6的代码片段,这是一个在Sonnet训练之后发布的模型。但它的先验太强了,以至于它没有搜索Qwen 3.6,而是认为我们的提示是拼写错误,转而搜索了Qwen3 0.6B。
图1. 要求提供加载Qwen 3.6(一个在其训练截止日期之后发布的模型)的代码时,Sonnet 4.6判断该名称一定是笔误,并悄悄搜索了Qwen3 0.6B。一个已经学习了新领域的agent搜索更少,且每次搜索收获更多,因为它知道语料库包含什么,知道自己哪些先验应该被质疑,甚至知道哪些抽象概念可以作为问题来询问。
3. 专长:将计算转化为准确率的效率
大多数基准测试报告的是agent在任何推理预算下取得的准确率。最近,越来越多的人开始推动报告跨推理计算级别的质量(https://aclanthology.org/2023.findings-acl.738.pdf)(https://aclanthology.org/anthology-files/anthology-files/pdf/findings/2025.findings-emnlp.1172.pdf)(https://x.com/polynoamial/status/2064210146558136827)。
在Machine Studying中,这种质量与成本之间的权衡正是我们试图测量的精确量。我们并不关心agent在某个特定任务上的能力本身,而是关心它们在新领域上快速培养专长的能力。毕竟,如果一个用例足够流行,下一代模型可能开箱即用就能完美解决它,但在部署过程中总会遇到新的领域。
为了理解这种对质量与成本权衡的强调,请注意由于语料库在测试时始终可用,即使是一个新手agent原则上也可以在考试期间学习,例如在每个答案之前重新阅读所有相关文件,并且只要有足够的时间就可能做得任意好。借用一些关于扩展定律的直觉,学习算法承诺的是整个质量/成本曲线的移动,例如在相同预算下实现更高的准确率,或者以更小的预算实现相同的准确率。
尽管如此,直接比较整条曲线是很麻烦的。最好能在最后将“专长”量化成一个数字。实际上,在许多情况下,两条曲线会收敛甚至交叉,而交叉是否使上升的线比另一条“更好”取决于实际可行的推理预算。因此,在Machine Studying中,我们认为你应该先决定昂贵的预算应该以多快的速度被折扣(即赋予较小的权重),一旦你这样做了,就将每条曲线简化为其加权面积。我们将这个加权面积称为专长:
\[ \text{专长} = \int \text{在某个推理预算下的表现} \times \text{该预算的重要性} \]一个仅在广泛搜索后才变得准确的agent可以达到峰值性能,但我们会说它在该领域的专长较低。将这个加权面积记为 \mathcal{E}(\Sigma; \mathbf{D}),我们也因此得到了学习是否成功的标准。一个学习算法 \pi 将一个agent和一个语料库映射到一个新的agent,它有效当且仅当
\[ \mathcal{E}\big(\pi(\Sigma, \mathbf{D});, \mathbf{D}\big) ;>; \mathcal{E}\big(\Sigma;, \mathbf{D}\big), \]专长 = 表现 vs. 推理计算
说明性曲线 · 每个曲线后的数字 = 专长(加权面积,强调更便宜的预算)
推理计算(token,对数尺度)
图2. 定义专长的说明性表现 vs. 推理计算曲线。
图2展示了四个理想化的agent:一个普通有能力的非专家agent、一个已经学习了语料库但只是“浅层”学习(临时抱佛脚)的agent、一个蛮力套件,以及我们理想化的专家。普通曲线随着计算量的增长而缓慢上升。专家曲线位于其上方和左侧,在几乎每个预算上都更好。临时抱佛脚曲线开始时很高,因为浅层学习者死记硬背了材料但没有理解,然后趋于平缓。对于它来说,额外的开卷时间几乎没带来什么收益,我们将在下面通过对合成问题训练模型时实证看到这种形状。蛮力套件(基本上是在考试期间学习的那一种)最终达到顶部,但只在应该被极度折扣的预算下才会如此。
注意我们如何计算专长专长是表现对对数计算的平均加权值,
\mathcal{E}(\Sigma; \mathbf{D}) = \int p_{\Sigma,\mathbf{D}}(x)\, w(x)\, dx, \qquad w(x) \geq 0, \quad \int w(x)\, dx = 1,
其中 p_{\Sigma,\mathbf{D}}(x) 是agent \Sigma 在领域 \mathbf{D} 上、在对数token轴的位置 x 处的表现。权重 w 表示每个预算的相对重要性。归一化 w 确保专长与表现是同一尺度。在本文中,x=0 对应 3\text{k} 个生成的token,这通常是现代推理模型读取问题并提供完整答案所需的最小值。每增加 +1 表示token数量增加十倍。我们使用指数衰减 w(x) = (\ln 10)\, 10^{-x},这样计算量每翻一倍,预算的权重就减半。
在实际操作中,我们评估一组有限的预算,并将 p_{\Sigma,\mathbf{D}}(x) 解释为agent使用最多 x 个token所能达到的最佳分数。对于低于第一个测量点的预算,分数默认为最小值(对于选择题是零或随机概率),反映的是agent无法用更少的token回答问题的假设。能够做到这一点的agent将能够获取权重最高的区域。超过最后一个测量预算后,我们将最终分数无限期地延续下去,因为尾部无论如何权重都很小。
作为一个实例,预算为 5\text{k}, 10\text{k}, 20\text{k}, 100\text{k} token,得分分别为 10\%, 20\%, 30\%, 40\%,对应的权重为 0.30, 0.15, 0.12, 0.03,得到 \widehat{\mathcal{E}} \approx 10.8\%。这些权重之和为 0.60,不是 1。剩下的 0.40 分配给低于 5\text{k} token的区域,那里的分数为零。因此,即使在所有测量预算上表现完美的agent也无法超过 60\%。这个差距反映了无法用更少的token回答问题的代价。下图说明了这个计算。
权重分布
3k10k100k1M3k–5k 截断为 0权重 w(x)推理计算(token,对数)重要性每 2× 计算量减半(每翻倍减半),因此它集中在便宜的末端——但对于这个系统,3k–5k 块被截断为 0,所以这部分权重被浪费了。
专长矩形
1005005k10k20k100k截断块 3k–5k,分数 0阴影面积 = 专长 = 10.8%条形宽度 = 权重(重要性)· 总和为 1每个测量预算是一个矩形:宽度 = 其权重,高度 = 其分数。阴影阶梯是专长分数。截断块(3k–5k,约 40% 权重)位于零高度,所以它没有贡献。
将专长定义为以这种方式计算的标量,使我们能够定义学习智能。就Machine Studying而言,一个智能的agent是能够快速在全新领域中获得专长的agent。这不过是将专长与针对特定agent使用特定学习算法的学习计算绘制成的曲线。绘制这条曲线需要在许多学习预算上运行训练,这超出了本文的范围,但提高我们agent的智能确实是最终目标。
注意关于学习智能的概念对于每个学习计算量,我们首先绘制agent的完整表现曲线,并将其简化为一个专长分数,然后将专长作为学习计算量的函数来解读。在这第二条曲线下的加权面积(在更高一层使用相同的构造)就是(学习的)智能:
\text{智能} = \int \text{某个学习预算后的专长} \times \text{该预算的重要性}。
智能 = 专长 vs. 学习计算
说明性曲线 · 每个曲线后的数字 = 智能(加权面积,强调更便宜的学习)
学习计算(token,对数尺度)
说明性专长 vs. 学习计算曲线,定义了智能。
相似文章
@jacobli99: 为了比较 Machine Studying 的流程,我们首先定义专业知识。语料库在测试时始终可用…
Jacob Li 引入了 'Machine Studying' 作为持续学习中的一个新问题:AI系统如何仅凭文档语料库在不熟悉的领域发展专业知识,这与避免灾难性遗忘不同。
@DSPyOSS: 一种更清晰的持续学习操作化方案,适用于那些被错误地归类为“RAG”或“RL”的问题…
提出了一种名为“Machine Studying”的新型持续学习框架,其中AI系统能够自主从语料库中发展专业知识,并引入了StudyBench用于评估。
@jacobli99: 持续学习目前被广泛讨论,但大多是关于在职提升或避免灾难性遗忘…
Jacob Li介绍了'Machine Studying'这一概念,将其视为一种独特且紧迫的持续学习形式,其中AI系统必须仅凭文档语料库在一个新领域发展专业知识。
@lateinteraction: 对 @jacobli99 的这项工作感到非常兴奋!我们对当前智能体在新领域获取专业知识的方式感到失望…
探讨了让AI系统像人类阅读教科书一样从文档中发展深层专业知识的挑战,强调了一种持续学习的形式。
@jacobli99: 学习给我们带来第二条曲线:专业知识作为学习计算的函数。你可以考虑其加权面积为一种注……
引入了“Machine Studying”概念,即从文档语料库中发展专业知识的问题,与持续学习不同。