欢迎来到YC数据俱乐部。这次我希望你们喜欢我们的小插图。保罗·格雷厄姆不喜欢我在那顶小皇冠上偷懒,但他现在知道我的名字了,这很好。那么,为什么是数据?为什么数据值得专门用一个晚上来讨论呢?2016年,我离开了博士项目,创办了Focal Systems。当时普遍认为数据是一种商品。“我已经下载了ImageNet数据集,我还需要多少数据?”关于规模价值十亿美元的讨论很多。当时有人说这没戏,除了做Scale Series A融资的那位(我想是Excel的Levy),其他风险投资人都认为数据业务的终端价值为零美元。

但自那以后,市值创造了约一千亿美元的价值。所以请放心,整个风投界对这一点的看法已经改变。为什么呢?我在Focal时通常问的面试问题是:假设我要面试斯坦福或麻省理工学院的博士,这些超级聪明的人。我会说:“好吧,你训练了你的模型,在‘热狗还是非热狗’分类上达到了85%的F1分数。接下来你做什么?”如果你的回答是:“哦,我会去读一些论文。”“我想试试ReLU还是GELU激活函数。”或者“我想增加更多层数。”我的回答是:“不,下一个。”

原因很简单:你必须看数据。正确的答案是查看数据。查看所有假阳性样本,查看所有假阴性样本,将它们放入不同的桶中,然后问:“最大的问题是什么?”对于我们的库存检测任务来说,问题是当冰箱上有雾气看不清时、有人挡住视线或发生其他情况时。增加层数并不能解决被人挡住的难题,你也无法判断此时是缺货还是备货充足。

安德烈·卡帕西(Andrej Karpathy)在这方面非常坚持,他 famously 首次测量了ImageNet上的人类水平表现,并亲自查看试图看看自己能做得多好。我们并不擅长此道:我无法区分爱斯基摩牧羊犬和西伯利亚哈士奇,而ImageNet中约有30-40%的图片是各种狗。人们往往不了解这一点,因此训练数据的质量比架构本身重要得多,尤其是在架构表达能力很强的情况下。

在博士期间,他可能只花5%的时间思考数据,而95%的时间专注于架构。但进入生产环境后情况反转了:以前可能是25%对74%,而现在大概是3%对97%。现在真正重要的是数据,因为Transformer已经非常有效了。为什么数据如此重要?因为在ImageNet这样的训练集中一切都很完美,训练分布非常理想。

但当你将其投入生产时——如果你有过这种经历请举手:测试集中出现了训练集里没有的数据点,模型就会崩溃失效。如果要实现经济自动化(以GDP计),我们需要专家级数据和可验证奖励的强化学习环境。对于偏好类数据(如主观的设计喜好、可用性判断),代码可能功能正常但风格糟糕且难以维护。

在医疗领域,两位医生对同一病人的诊断可能不一致;法官也是如此。这些偏好型答案支撑着很大一部分经济活动。正确看待数据集和环境的方式是:它们是产品。如果你和ArcGI的Greg谈谈,Prime Intellect刚刚碾压的那些游戏中的工艺水平是难以置信的。制作真正优秀、全面的数据集非常困难。

即使是Focal这样简单的“库存/缺货”检测,花费的时间也很多:如何处理产品前推(看起来像有货但只是把商品推到前面)?这在本体论中应作为单独类别,还是归类为缺货(尽管技术上确实是缺货但会混淆模型)?处理这些问题非常困难。很多人以为数据只是压缩包,事实并非如此。

另一个我在批量数据处理中经常遇到的问题:假设你在自动化Salesforce流程,拥有大量人类使用Salesforce的轨迹和屏幕截图。即使你有1000亿小时的数据,如果Salesforce更新了界面呢?你必须获取更多数据,否则模型将失效。拥有所有能捕获的数据是不够的,你仍然需要更多数据。“终端价值为零”的想法是完全错误的。

Brendan Eich在红杉资本展示过这张幻灯片,我非常赞同:数据是目前的核心瓶颈。它不是架构问题,也不是GPU或功耗问题。这就是为什么ChatGPT至今仍能领先的原因(我刚在推特上做了分析)。没有任何模型能击败随机猜测来预测标普500指数未来七天的回报。如果你抛硬币,效果比目前生产中使用的任何AI模型都好。

如果我们拥有高盛交易员的轨迹数据(肯定优于随机),我认为它们会表现更好,但他们没有这类数据。会计师、医生和律师也是如此:你需要每个领域的专家,才能让AI匹配或超越人类能力。正如我之前所说,在过去十年中,尽管大多数风投对此视而不见,但数据领域创造了超过一千亿美元的市值。这很可能是YC投资过的最佳类别之一。

思考这个问题的正确心智模型是什么?嗯,我不知道,但我在这里提出一种观点。如果我是苹果公司,制造了这些设备,并希望它们能够把杂货送到你家门口、送来墨西哥卷饼、开车来接你、开启手电筒功能或提供导航指引,你就需要被称为“应用程序”的东西。如果你希望大语言模型成为优秀的医生、会计师、律师、木匠、交易员或治疗师,很多人也用它来做这些事。那么你就需要强化学习环境中的数据;如果你没有最新、经过精心策划的高质量数据,你的语言模型就无法做到这些。因此很多人问:在这个领域我们能有多少家数据公司?答案是你手机里有多少个应用程序,这大概就是答案。我真的这样看待这个问题。

在这个类比中更进一步的思考是:是否应该存在仅适用于苹果系统的Instacart(生鲜配送平台)和仅适用于安卓系统的Instacart?还是应该只有一家公司,或者苹果公司是否该进入Instacart业务开始配送杂货?这毫无意义。因此,有些功能如手电筒,苹果和安卓都应该具备,因为这很容易实现。但对于许多其他事情来说,要建立整个Instacart网络并与之竞争是非常困难的,如果你只是苹果的话。为什么?因为那不是你擅长的领域。同样地,深入成为一位优秀的医生涉及处理HIPAA(健康保险流通与责任法案)等复杂事务。Anthropic、OpenAI、Google、Apple所有这些公司都应该专注于策划一个优秀的“AI医生”,还是应该使用一家擅长创建环境、拥有医生网络并整理所有准备数据(如针对特定患者的不同轨迹及偏好)的公司?可能只需一家公司专注于此。

这正是我们看到的趋势。我对今晚的演讲者感到非常兴奋。May没能来,她不幸生病了。我们将尝试把她安排在下一次活动中。我们有Vincent Chen,他是Hazy校友、Snorkel的创始团队成员之一,将其发展至市值十亿美元以上。还有Vololo,Inception Labs创始人、康奈尔大学教授及冲浪专家。以及Shane,麻省理工学院博士生,刚完成答辩,专注于预训练领域,创立了数据溯源倡议(Data Provenance Initiative),最近加入了Anthropic。请和我一起为这些演讲者鼓掌。(掌声)Francois:精彩。

非常感谢François精彩的介绍,也感谢让数据获得应有的关注。我觉得我们一直在试图大声疾呼这一点,很高兴看到它如今成为焦点。我叫Vincent,是Snorkel的创始团队成员之一。我在公司启动了前沿实验室业务,目前负责领导公司在基准测试和评估方面的研究工作。我将谈论专家监督的扩展问题。我会稍微“作弊”,谈谈几个研究主题及其随时间的演变。我们在Snorkel从事数据工作已超过十年,这要追溯到我们在斯坦福人工智能实验室的根源。我们的核心论点是:扩展专业知识——实际上赋予该领域的专家(如医生、临床医师、记者等)杠杆作用,这些人脑海中清楚什么是“好”的标准——才是构建真正有效数据集的真正瓶颈。

这实际上是我们公司所有研究的核心内容,所以我稍后会对此进行一些探讨。如我所说,我们是一家专注于数据的前沿实验室。我们对与几乎所有全球前沿实验室以及财富10强企业在数据问题上合作感到兴奋,每一次参与都围绕扩展专业知识这一关键瓶颈展开。我们如何将这些人的判断和知识从他们脑海中提取出来,放入他们正在处理的数据集中?首先我想通过框架问题及其随时间的演变来切入。专家监督,即将存在于专家脑海中的内容、杂乱文档或知识库转化为真正有效数据的过程,是一个真正的瓶颈。从原始数据到可用于评估和训练的数据之间有一个真实的过程演变,这随时间发生了变化:Data 1.0(我称之为这样)是基本的标注。

例如在问答任务中,这可能是针对偏好的“点赞”或“点踩”,或者是基本的提示与响应对。假设产生一个这样的标签需要30秒的人类判断力,正如François所暗示的,今天数据的形态正在发生显著演变。现在我们构建了整个环境来代表任务、评分标准、验证器以及非常细微的分级机制,所有这些都被打包在Docker环境中。这些环境实际上需要代表智能体将要操作的类型空间。人类单独开发它们可能需要从个位数到三位数不等的工时。因此,这里的关键瓶颈是如何扩展专业知识,以便在专家数量有限且每天时间有限的情况下有效构建这类数据集。让我们从Data 1.0开始,我知道这个问题今天依然存在,但当我们启动Snorkel时。

我想分享一下我们当时如何看待这个问题的思路:关于手动标注的问题,正如François给出的ImageNet例子所示。存在一些问题:首先,这不是一个可扩展的方法;你可以将手动标注的成本视为每个数据点都需要一个新标签的O(n)问题,需要新的认知努力来开发。其次,这类方法对噪声不鲁棒;你可以想象,减少这些设置中噪声的唯一方法是引入冗余。因此你需要K倍的重标 effort 来实际降低噪声,随着规范的变化……

Schema任务定义需要从零开始,关键在于缺乏溯源。没有概念说明我的推理依据是什么?我究竟是如何思考这个问题的?因此,这是我们直到十年前以及至今在许多方面仍面临的关键挑战:在专家领域,手动标注的问题只会加剧。想象一下医学博士或心脏病学专家在一个非常细分的亚领域,你如何让他们生成大量的MRI数据集或电子健康记录数据?在许多此类场景中,这实际上是根本不可行的。因此,这是在这些手动标注设置中需要解决的关键问题。

我们在此开展的工作线被称为数据编程(Data Programming)。我们的CEO Alex当时是一名研究生,我们都为这项工作做出了贡献。这里的关键直觉是:我们希望将专家监督编码到软件中。这样做有几个好处,你获得了软件的规模效应;现在可以以编程方式标注数据;你获得软件的可适应性,随着规范的变化,你可以重构和调整它。关键在于,实际上可以审计它、对其进行讨论并与其协作。

简而言之,我们研究生期间的一些关键工作如下:左侧的主要思想是首先将专业知识建模为标注函数(labeling functions)。这可以有多种形式,这是一种相当通用的抽象。主要思想是,如果你将人们标注垃圾邮件与非垃圾邮件的理由表达为特定的启发式规则,这有助于将这些知识从人的头脑中提取出来,转化为一种更具可重复性和可扩展性的形式。

中间部分的挑战在于,这些信号、这些监督来源存在重叠且不准确。因此,我们引入了一系列理论和研究来处理弱监督(weak supervision)的概念:在信号重叠且来源微弱或非完全真实的情况下,你如何真正理解质量?最后,利用这些噪声信号并在对噪声敏感的模型中使用它们,有助于将覆盖范围扩展到初始标注函数之外。

关于标签模型的直觉(不深入繁琐细节):目标是完全无监督地建模每个投票者的准确性。我喜欢的类比是,你班上有许多技能或质量水平不同的学生。你没有评分标准或答案键,如何仅根据每个学生的投票来估计真实的答案?这就是你要引入的基本建模问题。你想学习这个噪声模型并理解每个来源的质量,前提是你最初没有任何真实数据。

第一步是学习投票者的准确性;第二步(这是基础),你试图计算给定每个投票者实际投票的情况下真实解决方案的概率;第三步,如果你训练一个对噪声敏感的模型,你能够扩展该标签模型的覆盖范围,最小化更广泛分布中的一些噪声,并以更有效的方式对其进行扩展。

我将视角拉远一点。我们早期工作的主要直觉是通过将标签和专家判断引入软件来扩展专业知识规模。其中的一个关键瓶颈实际上是去噪这些信号来源,特别是在缺乏真实数据的情况下。其中一些技术我们今天仍在许多生产设置中使用。现在我想简要谈谈2.0时代的数据。随着数据范围和前沿进展的扩大,其复杂性和重要性也随之增长。

让我们以编码为例。我在X轴上绘制了复杂性:输入复杂性,即你给模型的提示和规范有多复杂;输出复杂性;环境复杂性,你是仅在问答环境中工作,还是进入了全新的环境(例如允许YOLO访问你的桌面)?在Y轴上,我们有序列长度。这些智能体在实际工作中持续的时间有多长?

对于软件或编码领域,你可能会认为评估和数据已经饱和。但我主张随着前沿的推进,数据挑战实际上仍在增长。我们看到像HumanEval这样的基本评估在此时点已经饱和,这是事实,但我们仍然看到基于终端的智能体大幅增长。ProgramBench方面,我认为最新的模型刚刚突破了1%的准确率。我们引入了名为Senior SWE-Bench的基准测试,我稍后会谈到它。

随着智能体复杂性和责任感的增加,你用于训练和评估这些模型的数据的重要性也随之增长。考虑到这一点,我想聚焦于我们最近的一些工作(比上一个十年稍晚),即Senior SWE-Bench。关键在于,我们有幸与普林斯顿的原始SWE-Bench团队合作。主要思想是:我们已经像高级工程师一样使用编码智能体,进行“氛围编程”(vibe coding),信任它们做出架构决策并重构大量代码,但我们缺乏良好的评估方法。我们仍然像对待初级工程师一样评估它们。

因此,我们要解决的关键挑战是构建一个基准测试和真正代表高级工程师实际产出的数据集。我们需要扩展生产此类数据集所需的专业知识,并构建一个能体现所有这些因素的高质量基准测试。接下来我将介绍我们使用的一些方法论,虽然无法涵盖所有内容,但希望能提供清晰的思路。

我们对一些方法随时间演变的方式有了直观的理解。关于任务本身,我想稍微介绍一下。在 SWE-bench 中,任务设计特别需要大量的专家监督或专家接触点。以左侧的 Harbor 任务为例,我们是 Harbor 作为评估框架的热情粉丝。这些是自然语言指令。这里的关键区别在于:如果你熟悉 SWE-bench 或传统的编码基准测试,你会发现很多样本过度指定(overspecified),达到了 EDDD 级别的指导细节。我们希望在实践中与这些智能体交互时,代表更现实、更高抽象层次的内容。

例如,这里更像是一条 Slack 消息:“这是一些日志转储,请找出该如何处理它”,或者“关于我有一个想法的用户故事,你能帮我实现吗?”因此,将专业知识和现实感注入指令中是构建这一部分的极具挑战性的工作。在右侧,你会看到一个完整的奖励阶段(reward phase),我们花了大量时间进行设计和校准。

这里的直觉是,我们希望捕捉在实际评估这些智能体时的多个不同组成部分。不仅仅是“这是否正确或可合并”,还要看它是否展现出品味?是否表现出你会完全无监督地信任初级、高级或首席工程师在代码库中实际执行的行为?让我们更深入地了解具体的奖励设计。

这是一个微妙之处,也是我们需要发挥创意以扩展专业知识的地方。我们有 Snorkel 工程师和研究人员,我们拥有非常资深的首席、Staff 级别工程师的强大网络,但时间有限。因此,我们希望找到方法来扩展他们的直觉和努力,而不是让他们手动对每一个样本和由此产生的智能体轨迹进行评分。

我们试图阐述的轴心是:在传统验证器和奖励方面,特别是在软件领域,存在可靠性与灵活性之间的权衡。在顶部是高可靠性和低灵活性。这些是预写的验证器,你可以将其视为单元测试。它们针对你的代码库可靠地执行,实际上是在运行代码,因此你知道它们在做什么。

但挑战在于它们并不能适应任何解决方案。如果你有 Post/Profile 实现,或者另一种更新用户信息的方式,验证器可能会产生假阴性。如果你的验证方法过于受限,实际上会惩罚那些完全合理且有效的行为。而在光谱的另一端,即低可靠性、高灵活性方面,你有 LLM 裁判(LLM judges)。

这是一种在许多情况下非常常见且有效的方法,能够适应不同的解决方案形态。代码可以更加灵活,你只是要求智能体或 LLM 查看代码,并使用其校准或未校准的直觉对其进行评分。显然,这里的挑战是这可能非常不可靠,因为你并没有实际执行任何解决方案,也没有直接运行代码路径。

你可能只是要求智能体瞥一眼代码,很难控制假阳性。你可能会过度奖励看似合理但错误的解决方案。因此,我们找到了一个中间地带(我将在稍后详细说明),并引入了“验证智能体”的概念。该概念特别试图捕捉和扩展我们许多高级研究人员、工程师以及社区和网络中专家的专业知识。

一方面,表达用户故事或他们认为“良好”的规范;另一方面,利用该规范编写针对相关代码表面的确定性测试。这是一个简单的想法,但为了提出这一概念——即如何捕捉定义特定任务用户故事的人的专业知识,同时实际执行真实的代码路径——确实需要大量的校准和努力。

再详细一点看:这在实践中是什么样子的?这个验证智能体的输入是代码补丁(patch),它针对指令集生成。专家产生了我们所谓的“验证规范”(validation spec)。这就像几条要点,类似于 Slack 消息:“这是我的用户故事”,“这是几个功能或非功能性要求”。它不是过度指定或过于规定具体解决方案,而是足够高层,以捕捉我们希望模型做或不做的空间。

然后我们让验证智能体获取补丁和验证规范,并具体实现测试脚本。这些是确定性脚本,会在代码本身上执行运行。最后,我们会根据执行情况评分,并使用裁判来确保运行是合理的(sane),或者避免产生共谋、奖励黑客行为或其他我们认为在试验中无效的行为。

这种以可扩展的方式编码专业知识的想法,正是我们试图设计此验证智能体以映射到代码库中动态实现的核心。因此,我们做了大量工作来进行校准。我们将这些与内部和网络中的特定测试工程师进行了对齐。

我们引入了 LLM 裁判来衡量保真度、完整性、共谋等指标,最终每个测试都经过参数化。你可以将验证规范视为一种“漫谈”,说明我想捕捉的用例和边缘案例的类型,而不必在最终写出完整的规范或测试——后者可能需要数天、数周甚至数月才能完成。目前这已上线,在进一步讨论之前,我想指出一点……

这些结果挺有趣的。我们引入了“得体通过”这一概念,这是我们在该基准测试中提出的一项新指标,旨在不仅衡量正确性或可合并性,还要更细致地评估这是否确实是符合你代码实践规范的代码。它实际上映射到了资深工程师在实践中会如何行事吗?它在补丁大小方面是否最大限度地减少了冗余代码量?我们将这些与正确性的概念相结合,对众多模型进行了排名。令人惊讶的是,经过反复核查,截至上周,Fable、Opus 和 Soul 并列第一。这令人振奋,因为这意味着前沿水平在这些案例中确实得到了提升。这是一个实时的动态仪表板和持续更新的基准测试,如果你感兴趣,欢迎联系并查看。这是我们在该主题上的一些近期工作,我要特别感谢团队中的亨利,我们的联合创始人是这里的负责人。我们很荣幸能与普林斯顿大学的卡里卡特小组合作,他们领导了最初的 SweetBench 项目;还要感谢首席科学家弗雷德,他在威斯康星大学麦迪逊分校拥有实验室,他的部分学生也参与了其中。

现在我将视角拉远并做总结。随着我们进入数据 2.0 时代,我们会看到更多的复杂性。我们需要大量的数据研究,对吧?这不仅仅是把人类投入到这些任务中的问题。如今,我们需要深思熟虑的设计,以便让专家——软件工程师、医生、律师等真正理解规范的人——能够行使自己的监督和判断权。这张幻灯片至少展示了复杂性将继续增长的各个维度:环境将变得更加复杂和动态,输出将变得愈发难以验证、细致入微且主观;这些代理的自主性也将持续扩展。你可以想象,每一个维度都会引入累积性的复杂性,因此如何规模化并赋予专家更多的判断力确实是一个研究问题。这正是我们关注的焦点,也鼓励社区共同致力于此。

这里有一个非常具体的诉求:我们需要更多的基准测试,我们认为这是推动新数据研究的一个高效途径。我们很荣幸能与屏幕上显示的来自伯克利 Agents/Exam、Continual Learning Bench 以及 Terminal Bench 的各位合作。与这些人共事让我们受益匪浅,总体而言,我们非常期待看到更多的基准测试出现。因此,我们要言行一致,推出了“开放基准测试资助”的概念。希望这能成为社区研究人员的一项资源。我们非常兴奋,希望能加速并聚焦于现有的更多研究,帮助你们加快数据开发进程,并以研究团队的身份进行合作。是的,我们对 2.0 时代基准测试和数据的未来感到非常兴奋,非常感谢大家。(掌声)

接下来有请 Volo。好的,谢谢大家邀请我。非常高兴今天能在这里与大家分享我们在 Inception 所做的一些工作,特别是与联合创始人斯蒂法诺和阿迪蒂亚以及一支才华横溢的工程师和研究团队一起,训练现实世界的大规模扩散语言模型。简而言之,我们正在开发新一代由扩散技术驱动的语言模型。这意味着与从左到右逐个顺序生成标记不同,扩散模型从序列的初始猜测开始一次性生成所有标记。也就是说,从一个嘈杂的输出版本出发,然后在多次细化步骤中并行产生所有标记。我们对这项技术感到非常兴奋,认为它是语言模型的未来。特别是这些模型目前的一个巨大优势是速度。由于每个步骤可以生成多个标记,它们每秒能产生的标记数量更多,速度超过每秒一千个标记,这远远超出了传统自回归模型所能达到的水平。

超快速推理在实时 AI 中有各种应用,我们重点研究的一个领域是实时语音。例如客服中的语音代理,以及教育等其他领域的语音交互。这些代理能够合成声音并与你实时对话。通常,最先进的语音管道仍建立在级联架构之上:输入端有语音转文字系统,输出端有文字转语音系统,中间则是大语言模型。整个系统的延迟严重受限于大语言模型。这是工作流程中的关键部分。如果你能让 LLM 快得多,比如达到我们 Mercury 2 模型实现的每秒一千个标记的速度,那么实时语音交互会感觉更流畅;或者你可以部署更大的模型,让模型进行更长久的推理,从而显著提高质量。这张幻灯片展示了 Mercury 2 在语音基准测试中与其他模型的性能对比。你可以看到,Mercury 2 开创了质量和延迟的新前沿:横轴为延迟,纵轴为质量。

我还想强调一些作为基线的其他模型。例如这里有一个在 Cerebras 上运行的 1200 亿参数的 GPT-4o 模型,而扩散 Mercury 模型不仅能达到更高的质量(至少在这里通过 ToBench 衡量如此,我将在真实数据上论证也是如此),而且运行速度更快。这令人兴奋,因为 Cerebras 是专为让自回归模型快速运行而设计和制造的专用芯片。如果使用扩散技术,你可以通过更智能的软件在 GPU 上实现类似的速度。你可以构建软件让模型真正变快,而不是依赖硬件。这非常令人兴奋,因为你可以将这些模型部署在更容易获得的更多 GPU 上。但要构建优秀的语音模型,算法和扩散技术是其中之一。

组件,但另一部分真正重要的是数据。你需要数据来训练模型和进行评估(eval)。目前最广泛使用和具有代表性的基准测试是T-Bench。不过,TabBench有几个问题:首先,它并不能完全捕捉现实世界数据中看到的各种复杂性。如果你观察TabBench的环境,它的规范数量可能比真实商业场景中的少一个数量级,比如企业进行的实际客户支持。TabBench的工具较少,也不具备你想要提供的一些特定规范类型。

另一个问题是Towbench存在严重的“基准测试过拟合”(benchmaxed)现象。如果你查看你喜欢的基准测试网站,可能会看到大多数模型得分都在90分以上。然而,如果将这些相同的模型应用于真实的生产日志中,得到的分数会低得多,而且不同规模模型的得分差异也会更大。因此,数据是构建高性能模型的关键要素之一,除了算法之外,这一点至关重要。

为了获取良好的训练数据,我们采用了一种名为Dowo Forge的系统。它基于真实数据和真实的用户交互生成各种逼真的强化学习环境(类似于Towbench)。这些数据来源于我们的数据提供商,或者通过与在生产环境中使用我们模型的公司合作获得。因此,我们能够获取大量真实世界数据,进而合成跨领域的类Towbench环境,这些环境既可用于评估,也可用于模型训练。

这张幻灯片总结了Dow Forge的整体概览。它是一个智能体系统(agentic system),作为一个编排器,协调大量不同的智能体,并产出合成的强化学习环境输出。Dow Forge的输入是你想要生成的环境描述以及代表该目标领域中用户实际使用情况的工件。例如,你可以要求它生成一个银行环境及其相应的真实使用情况数据。

第一步是合成基于该数据的初始环境,这包括制定策略(policy),指定模型希望运行的任务或领域类型。例如,如果要模拟银行客户支持,可以生成描述银行运营方式、营业时间、用户群体、不同账户类型的小型数据库的策略。同时,它还会创建模型可用于与环境交互的工具。关键在于,这可以基于对模型的真实使用情况来进行条件化设置,确保该环境能代表模型在生产中的使用方式。

如果缺乏此类数据,我们还创建了所谓的“商业知识图谱”,这是从互联网各处爬取的数据,描述了各种代表性企业。因此,即使没有真实世界数据,我们也能通过互联网爬取获取关于这些企业的现实知识,从而合成相应领域的模拟环境。在给定一个环境后,接下来最重要的一步是生成任务(tasks)。

这意味着我们将拥有模拟用户,他们试图在该环境中实现某些目标,而智能体将协助他们达成这些目标。我们需要合成这些目标是什么。为此,我们从一个称为“种子数据库”(database of seeds)的东西开始。这些是抽象场景,例如我想开立账户、关闭账户、更改电话号码或获取某些信息;以及人格(personas),即可能与模型交互的特定类型人类。

鉴于我们已有环境,我们可以通过调用智能体,将我们的场景库和其他种子专门化到该领域。一旦拥有良好的数据库后,我们就可以开始生成任务。这些是用户与模型之间的真实交互场景,我们将使用其他智能体来模拟这些用户。然而,获得一组良好的任务并非易事;我们需要在任务的难度上取得谨慎平衡:如果模型能始终解决该任务,则对学习无用。

反之,如果任务太难,也缺乏足够的学习信号。因此存在一个迭代过程:根据模型解决任务的能力来过滤和重构任务。为此,我们使用所谓的“加固陷阱”(hardening traps),即我们可以修改任务以增加难度。例如,你可以移除某些信息或使请求更复杂;你也可以采取各种手段加固任务,或者过滤掉过于困难的任务,直到找到在现实性和为模型提供学习信号之间取得良好平衡的点。

因此,这里的输出是强化学习任务,并且通过查看真实世界数据对其进行持续检查。环境仍可通过更新编排器进行验证;从该环境中产生的模型也会获得来自用户的真实世界反馈,我们可以利用这些反馈进一步优化编排器和合成生成流程。作为该模型能力的示例,这里展示了一项实验:我们使用了最新的预览版模型Mercury 2.5。

在针对任何特定领域数据进行训练之前,它的准确率约为50%;而在基于TForge合成的初始任务集上进行训练后,其在另一组环境上的性能提升了23%以上,达到了与各种最先进的开源或闭源模型相当的水平。为了澄清设置:存在多样化的环境和业务场景,例如银行、预订机票或预约医生等;你可以将这些业务范围划分为测试集和训练集。

在一个业务集合上进行爬山式优化(hill climb),并在不同的业务集合上进行测试。

这一系列业务举措有助于减少过拟合。这些任务,特别是测试集,紧密源自真实世界日志,这让我们确信部署到生产环境后,模型表现将与实际性能高度相关。以上简要介绍了可用于提升模型质量的技术:不仅追求速度,还要在语音等特定优先领域增强智能。如果您想试用这些模型,它们现已可用,运行速度可达每秒1000个token。尽管本次演讲主要聚焦语音领域,但我们也有来自搜索及代码等其他领域的客户。Mercury 2模型在延迟敏感型任务中表现优异,欢迎会后交流反馈。此外,我们为初创企业提供支持;若您在YC加速器,我们可提供50万美元的免费额度。

谢谢大家的关注。我是Shane,刚刚从MIT获得博士学位,这五年间我最喜欢的研究项目正是在Google实习期间完成的。感谢TPU使这项成果成为现实。我们主要研究了多语言预训练及跨语言的迁移,包括不同数据集来源间的协同、干扰与交互。在接下来的十分钟里,您可以将这些实验和方法推广到数据中的不同来源——不仅是语言,也可以是领域或质量各异的数据源。随着我们对模型能力、风险及局限性的思考日益深入,理解这些不同部分如何交互与融合变得至关重要。

我将简要阐述其重要性(超越英语语境),快速回顾研究问题及结论,最后进行总结。这项工作今年早些时候在iClar会议上展示,与Google、Udub、斯坦福等机构的同事合作。目前文献中的扩展定律和混合定律论文99%关注英语训练数据与评估,这令人震惊。我们探索了非英语单语言或多语种集群的目标差异。关键在于:当超出少数几种在线数据丰富的主要语言后,会面临严重约束;同时我们提供了用于扩展定律、混合定律及微调与预训练决策的工具与方法。

这关乎为自身文化和社会开发模型,例如土耳其语模型的预训练约束及其相对于英语模型的滞后程度。让我们从问题设定开始:选择泰语,全球约有8亿使用者。在Madlad 400这一流行的Common Crawl预训练语料库中,泰语的token数量仅为英语的0.6%,不足百分之一。主流模型(如CHBT)的训练混合中,英语占比最高,随后是其他丰富且异质性强的语言。到了泰语时,其在整体混合中仅占极小比例(远低于6%),导致对泰语的支持表现较差。

虽然模型整体性能可能因规模庞大而不错,但对泰语使用者而言体验不佳。若仅用泰语数据进行单语言训练,由于数据量极少,模型会反复重复学习同一内容(过拟合),导致效果不佳。理想解决方案是混合训练:在泰语数据收益递减时,引入高质量、具有协同效应的其他语言数据(如英语、印尼语、马来语等)。这并非基于语言学谱系,而是实证发现这些数据来源噪声少且主题相关。这种分布具有不确定性,需通过实证测量而非理论推测来确定最佳混合比例与模型规模。

语言协同效应,而这正是论文贡献的主要来源。思考实现这一目标的方法有很多,而我们最终确定的方案是这样的:想象一条训练曲线。横轴为训练步骤,红线代表仅使用泰语数据进行单语言训练的情况。这种模式表现尚可,但曲线会很快趋于平缓。相比之下,请想象那些以50:50比例混合泰语与英语、泰语与泰卢固语或其他语言训练的模型。你会发现这些模型的损失曲线更高,意味着性能较差。因此,这两条曲线之间的距离实际上反映了该语言对泰语任务的帮助程度。

我们可以得出结论:印尼语的协同效果优于英语,而英语又优于泰卢固语,因为前者的距离更长。这种效率差距可以形式化为一个数值指标:如果两条曲线非常接近,该数值为大正数;若距离很远,则表现为负迁移(Negative Transfer),即存在干扰。这意味着这些语言在争夺用于彼此表征和表现的Token或神经元资源,从而产生竞争关系。

通过对多种技巧进行反复实验(此处略去细节),我们得到了一个大型跨语言迁移矩阵。其中红色代表高协同效应,蓝色代表强干扰。以西班牙语行为例(虽屏幕显示不清,但可想象放大后的效果),实证发现葡萄牙语、意大利语和法语呈现出明亮的红色斑点,表明协同性强。而日语则是最具破坏性的语言:若将其加入训练,会损害西班牙语的表现。这些结果均源于实证数据,其中不乏惊喜与有趣的现象。

该矩阵揭示了一个重要规律:不同语言对整体的帮助程度各不相同,情况颇为复杂。此外,该矩阵基于固定规模的模型得出。若增大语言模型的规模,许多蓝色区域会转为红色或深红,因为更大的模型能容纳同时理解多种语言并捕捉其共同模式,从而提升协同效应。反之,若模型过小,所有区域均变为蓝色,因资源有限而产生干扰竞争。

现场提问环节:谁认为如果葡萄牙语对西班牙语有帮助,那么西班牙语也对葡萄牙语有帮助?即这种对称性是否存在?请举手。现场大致五五分。实际上,屏幕后方显示这并非完全对称。存在一种复杂的分支因子现象,这对实践者至关重要:若发现泰卢固语对斯瓦希里语有帮助,不能直接假设反向也成立,必须另行测量。

第二个问题:哪种情况更有益?是共享相同文字系统(Script),还是属于同一语系(Family)?请投票。恭喜“文字组”获胜!两者都有影响,但文字系统的影响略大,这可能源于分词器(Tokenizer)的伪影及其表示方式。关于演示文稿和代码,请勿担心,所有资源均在线提供,稍后我会指引大家获取。

接下来三分钟快速讲解部分数学原理。我们拥有包含语言间关系的大型矩阵,最后一步是如何从中构建缩放定律(Scaling Law),以预测损失或确定针对特定目标的最佳语言混合比例。熟悉Chinchilla缩放定律的听众可能记得,我们根据模型大小和数据量来预测损失并拟合参数。

然而,对于多语言数据源(如评估法语表现),最关键的是法语数据的数量以及其他大量数据如何纳入考量。一维模型不再适用,需要建立更复杂的建模方式。我们探索了多种选项,发现一种简单且有效的方案是将Chinchilla中的数据量D分解为单语言迁移源(如泰语)、矩阵中定义的近缘迁移语言以及“其他”类别的复合体。

该模型还考虑了多次迭代特定数据时的收益递减效应。简而言之,公式包含一个可从矩阵中学习到的权重因子。由于时间紧迫,我快速带过细节:最终结果如表格所示的加粗数据,达到了当前最佳水平。这非常有效,或许是因为大多数人无法运行700次预训练实验,或者该领域尚属服务不足。

总之,这套工具对于混合多源数据、理解其相互作用以预测模型最终损失至关重要。回到最初的问题:面对可用的大型多语言预训练模型,你是应该仅进行微调(Fine-tune),还是针对特定语言从头开始预训练?我们根据计算资源给出建议。此外,我们还研究了“多语言诅咒”:若要将模型从四种语言扩展到八种并保持性能不变,需要多少额外数据和算力?

我们通过大量数学推导给出了具体操作指南,且在不同目标语言上均表现稳健。有兴趣的观众建议参考这些内容。非常感谢大家的聆听!