所有大模型正在趋同

所有大模型正在趋同,合成数据导致大模型缺乏原创性

在 GPT 3.5 和 GPT4 出台后,绝大多数开源微调都是在 GPT 系列的合成数据上训练出来的。显然,Llama 2 也是在同样的合成数据基础上训练出来的,这就导致了同样干巴巴的说话方式和 GPT 模式。这在当时并不是问题,因为开源在当时远远落后于 OpenAI。

然而,对合成数据的严重依赖导致大多数模型实际上都是 GPT 的提炼版。较新的模型,如 llama 3 和 Gemma 2,似乎解决了 GPT-4 干巴巴的说话方式的问题,但实际上,它们只是通过 DPO 和其他方法变得更讨人喜欢了,同时仍然严重依赖合成数据。

与 GPT4o 竞争的模型出现了,如 Claude 和 Mistral Large,但 Mistral 似乎仍然保持着合成数据的趋势,而 Claude 在 Claudisms 方面也有自己的问题。

因此,我们在开源领域真正拥有的是几个大型模型和一堆伪提炼模型。这就导致了一种被称为 GPT slop 的瘟疫非常普遍,而且模型之间明显缺乏原创性。


背景历史
最初的 LLM(即 GPT-3.5/4 和 llama 1)使用网络爬虫来抓取大量互联网内容,并将其格式化为数据集。然后,他们使用这些数据作为预训练数据,生成一个基础模型,这实际上是一个高质量的文本自动完成模型。

然后对基础模型进行指令调整,教它按照指令与人聊天。

就 chatgpt 而言,他们教它以专业、干练、机器人式的企业方式进行回应。他们还使用 RLHF 对其回复进行排序,并根据人类的偏好进行优化。

然而,在 Llama One 的案例中,由于当时合成数据还没有被大规模使用,它的语言实际上非常丰富多彩、逼真、像人类使用的语言,但与 GPT 相比,它的智能却非常糟糕。

在 Llama one 泄密之后,llama one 的第一批微调版本问世,这些版本纯粹以研究为导向,但最初的 Alpaca 和 Vicuna 则是研究表明,在 GPT 3.5 聊天记录上训练大型语言模型能显著提高其性能。人们开始收集 GPT 聊天记录,并将其转化为海量数据集,这就是我们现在所说的合成数据,换句话说,就是由 llm大语言模型生成的数据。

合成数据的使用本质上是一种提炼,即利用一个大模型,在其输出上训练一个小模型,以优化最小模型的智能和响应,使其尽可能接近大模型。

Meta 公司几乎立即意识到了使用合成数据的有效性,并将其用于《llama 2 》的训练数据集中,从而使智能能力得到了飞速提升,但 GPT 的说话方式和言语抽搐现在也被纳入了《llama 》系列。在此之后,一个小型开源初创公司推出了 Mistral 7b,这是一个小型开源模型,但它表明,如果训练得当,即使是小型模型也能明显优于大型模型。Mistral 是一家资源并不多的法国公司,一直以来都非常依赖合成数据。

Mistral 7B 掀起了小模型热潮,在这股热潮中,实验和新的优化技术层出不穷,而 RLHF 在开源公司社区和企业社区普遍失宠,因为它需要人力、速度慢、成本高,因此只能由大公司来完成,这对开源社区来说是个巨大的问题。取而代之的是 DPO(直接偏好优化)等更新的技术,以及 SimPO 或 KTO 等实验性技术。

在这个时代,最常见的抱怨之一就是每个模型说话的语气都和聊天工具一模一样。Meta 意识到了这一点,在发布 llama 3 时,他们在训练阶段使用了 DPO,使模型看起来更加友好和人性化。这提升了它在人类偏好排行榜 lymsys 上的排名,并迅速流行开来。其他机型也纷纷效仿,Claude  3.5 也选择了类似的友好语音,Gemma  2 也是如此。如今,这已成为标准。

现代合成数据收集一般是通过创建问题数据集,找出当时被认为是 “最佳 ”的模型,然后并行调用大量 API,并将 llms 响应添加到数据集中。目前,这就是Claude  3.5 方式。不过,有些人更喜欢在本地打开一个运行 pod 实例或主机,在这种情况下,他们会得到他们能得到的最好的本地模型,即 Mistral Large 123b 或 llama 3.1 405b,并让它生成数据集的答案。