当前位置:首页|资讯|大语言模型|ChatGPT|GPT-4

【花师小哲】当代炼金术(神经网络)前沿(59)语言模型可能根本没学会预测下个token

作者:花师小哲-中二发布时间:2024-03-26

好久没更这个系列了。今天看到一篇有意思的论文。

众所周知,像现在的强大的大语言模型(Large language model,LLM),例如ChatGPT、GPT-4、Gemini,它们训练的主要目标是“预测下一个token”,可以说“预测下一个token”就是这些LLM的秘籍,它就像“想要成为影之实力者”这个目标一样,看似简单,但是经过不断训练优化过后就可以带来很多意想不到的效果,甚至“震惊世界”。

但,其实对于“预测下一个token”这个任务,学界的批评意见也非常非常多,本文也是其中的一篇。

1.对“预测下一个token”的批评意见

批评意见很多,我们简单说几个。

一个批评意见当然就是对“预测下一个token”这个任务本身的批评。很简单,想想我们平时是怎么写字或者打字的,为了写好一篇文章,我们往往是需要多次回头修改的,甚至可能一大段删掉重来,而“预测下一个token”只能是从左到右,不能回头,也就是说如果生成错误,那这个错误是不能在一次生成中就被改正的。换句话说,如果我们要求一个人从今往后写文稿只能从左往右,写完了发现错别字后也只能从头开始写,那么这个要求是极高的。

当然,抛开剂量谈效果都是耍流氓,“预测下一个token”任务难就难一点嘛,只要模型和数据量足够大,不也一样能获得一个很强的模型?所以很多人认为效果不好那就是缺乏训练。

另一种批评意见就要涉及到一些细节了,那就是训练阶段的教师强迫推理阶段(就是我们实际使用的时候,模型根据我们给的输入产生回复的过程)的自回归解码实际上是不一样的,不能混淆起来。

可能在外人看来,不管是训练还是推理,不都是在预测下一个token吗?但实际上还是有些不一样的,因为训练一般采用的是teacher forcing,或者说教师强迫。

先放一张训练的图(来源CS241N,教师强迫):

再放一张推理的图(假设这里是贪婪解码,也就是每次都选择概率最大的,实际上解码策略可以非常多,例如使用采样的方法就可以对于同一个问题生成不同的回答):

可能有朋友还没有搞清楚。我们举一个例子,对于同样的一句话“旺财是一只狗,狗是人类的好朋友”,并且假设每个token都是一个字,这时候我们给模型输入“旺财是一只”,然后模型输出层的最高概率的token是“猫”,这时候,在训练和推理时发生的事情是不一样的。在训练时,我们是根据“狗”对应的token的概率值来算损失的,并且算完之后的下一步输入给模型的是“旺财是一只狗”,而推理阶段下一步输入给模型的是“旺财是一只猫”,那么后者就有可能生成“旺财是一只猫,猫是人类的主子”。

所以一个批评意见就是错误累积,即在解码的时候即使是微小的错误也可能慢慢累积,最后就会出现严重的问题(也就是滚雪球

但,这个批评意见其实也有问题,因为这个批评意见实际上假设了我们在训练阶段可以得到一个接近完美的预测下一个token的模型,作者认为这个假设是有问题的,模型可能根本没有学会预测下一个token,于是就有了这篇论文。

2.聪明的汉斯

可能大家也在什么神奇动物盘点中了解过,汉斯是一匹马,据说会算算数,也就是答案是几就会跺几下蹄子这样,但后续人们研究发现实际上汉斯可能并不会算数,可能只是会“读空气”(例如主人不经意间的点头之类的)。

在计算机领域,“聪明的汉斯”一般是一种取巧方案。例如我想要训练一个LLM,让它能够逃过一些AI生成文本检测工具,结果模型学会了生成很短的句子(这个应该很好理解,对于“你好”这样的短文本,几乎不存在什么方法能够检测其来源于人类还是AI),而不是我们所期望的生成不会被检测的正常句子。这就是所谓的逃课、取巧,或者说“聪明的汉斯”策略。

而作者认为,“预测下一个token”训练也会存在“聪明的汉斯”策略

3.实验设计

本文设计了这样一个任务,即星型路径预测:

我们可以看到,对于这么一张有向图(也可以说是一棵树了),中心有一个节点,在这个节点上我们有多条路可以选择,但每一条都是“一条道走到黑”。

输入先是图的边,a,b就是从a到b有一条边,然后输入起点和终点,要求模型预测路径。

训练目标一共有三个,一个是标准教师强迫,一个是无教师,另一个是反向生成路径。

我们分析这个问题,实际上设计的非常巧妙。因为从非起点选择下一个节点是简单的,例如当前节点是A,那么模型只需要找到输入中以A为起点的边就可以了(attention的原理也介绍过了,这对于语言模型来说并不难);而从起点选择下一个节点是比较难的,因为有好几条路可以选择。但说是困难,实际上仍然属于一个简单任务,毕竟更复杂的图(网状结构的、甚至是包含环的)都还没上呢。

我们的目标就是看语言模型(LM)能否学会“从起点选择下一个节点”,还是只会“聪明的汉斯”策略。

反向路径是最简单的,基本上只要学会“聪明的汉斯”策略就可以解题。

4.实验

大家可能知道“涌现”,或者说“顿悟”(现在大家好像更喜欢用后者了)现象,也就是经过很长时间的训练(或模型规模足够大),模型会突然拥有之前没有的能力,而且往往是“完全掌握”(在测试集上准确率100%),本文当然要避免这个现象,只需要证明没有教师能够在一定程度上比教师强迫好就够了。

这个系列我一般不放结果的,不过本篇还是放一下(这篇专栏放了好多图啊):

实验测试了MambaGPT-2,可以看出反向生成路径是最简单的,而教师强迫正确的几率基本上是1/d(d是路径数,G下标第一个数字就是路径数d,第二个是路径长度),也就是模型没有学会第一步怎么走,基本上是随机选择,但是选择正确后就可以一路走到黑。而没有教师的情况虽然大部分都完全走不正确路,但在一些情况下还是可以达到100%准确率(也就是模型完全掌握了这个问题),这足以说明有教师还不如没有好。

5.结语

不过,这也就是一个批评意见了。毕竟这个任务也算是人工设置陷阱,而大模型是在超巨量、多样性超强的文本上进行预训练的。更重要的是,作者也没有提出更具体的修改“预测下一个token”的意见,像“预测多个token”又不现实,这样的方法当然不是没有,但问题是搞不到那么大量的标注数据。

不过实验设计的确实不错,可以参考。



Copyright © 2024 aigcdaily.cn  北京智识时代科技有限公司  版权所有  京ICP备2023006237号-1