Llama架构比不上GPT2?神奇token提升10倍记忆?

这篇具有很好参考价值的文章主要介绍了Llama架构比不上GPT2?神奇token提升10倍记忆?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

近日,朱泽园 (Meta AI) 和李远志 (MBZUAI) 的最新研究《语言模型物理学 Part 3.3:知识的 Scaling Laws》用海量实验(50,000 条任务,总计 4,200,000 GPU 小时)总结了 12 条定律,为 LLM 在不同条件下的知识容量提供了较为精确的计量方法。

一个 7B 规模的语言模型 LLM 能存储多少人类知识?如何量化这一数值?训练时间、模型架构的不同将如何影响这一数值?浮点数压缩 quantization、混合专家模型 MoE、以及数据质量的差异 (百科知识 vs 网络垃圾) 又将对 LLM 的知识容量产生何种影响?

近日,朱泽园 (Meta AI) 和李远志 (MBZUAI) 的最新研究《语言模型物理学 Part 3.3:知识的 Scaling Laws》用海量实验(50,000 条任务,总计 4,200,000 GPU 小时)总结了 12 条定律,为 LLM 在不同条件下的知识容量提供了较为精确的计量方法。

Llama架构比不上GPT2?神奇token提升10倍记忆?,物联网 / 互联网 / 人工智能 / 其他,llama

作者首先指出,通过开源模型在基准数据集 (benchmark) 上的表现来衡量 LLM 的 scaling law 是不现实的。例如,LlaMA-70B 在知识数据集上的表现比 LlaMA-7B 好 30%,这并不能说明模型扩大 10 倍仅仅能在容量上提高 30%。如果使用网络数据训练模型,我们也将很难估计其中包含的知识总量。

再举个例子,我们比较 Mistral 和 Llama 模型的好坏之时,到底是他们的模型架构不同导致的区别,还是他们训练数据的制备不同导致的?

综合以上考量,作者采用了他们《语言模型物理学》系列论文的核心思路,即制造人工合成数据,通过控制数据中知识的数量和类型,来严格调控数据中的知识比特数 (bits)。同时,作者使用不同大小和架构的 LLM 在人工合成数据上进行训练,并给出数学定理,来精确计算训练好的模型从数据中学到了多少比特的知识。

Llama架构比不上GPT2?神奇token提升10倍记忆?,物联网 / 互联网 / 人工智能 / 其他,llama

  • 论文地址:https://arxiv.org/pdf/2404.05405.pdf
  • 论文标题:Physics of Language Models: Part 3.3, Knowledge Capacity Scaling Laws

对于这项研究,有人表示这个方向似乎是合理的。我们可以使用非常科学的方式对scaling law 进行分析。

Llama架构比不上GPT2?神奇token提升10倍记忆?,物联网 / 互联网 / 人工智能 / 其他,llama

也有人认为,这项研究将 scaling law 提升到了不同的层次。当然,对于从业者来说是一篇必读论文。

Llama架构比不上GPT2?神奇token提升10倍记忆?,物联网 / 互联网 / 人工智能 / 其他,llama

研究概览

作者研究了三种类型的合成数据:bioS、bioR、bioD。bioS 是使用英语模板编写的人物传记,bioR 是由 LlaMA2 模型协助撰写的人物传记(22GB 总量),bioD 则是一种虚拟但可以进一步控制细节的知识数据(譬如可以控制知识的长度、词汇量等等细节)。作者重点研究了基于 GPT2、LlaMA、Mistral 的语言模型架构,其中 GPT2 采用了更新的 Rotary Position Embedding (RoPE) 技术

Llama架构比不上GPT2?神奇token提升10倍记忆?,物联网 / 互联网 / 人工智能 / 其他,llama

左图为训练时间充足,右图为训练时间不足的 scaling laws

上图 1 简要概述了作者提出的前 5 条定律,其中左 / 右分别对应了「训练时间充足」和 「训练时间不足」两种情况,分别对应了常见知识(如中国首都是北京)和较少出现的知识(如清华物理系成立于 1926 年)。

如果训练时间充足,作者发现,不论使用何种模型架构,GPT2 或 LlaMA/Mistral,模型的存储效率均可以达到 2bit/param—— 即平均每个模型参数可以存储 2 比特的信息。这与模型的深度无关,仅与模型大小有关。换言之,一个 7B 大小的模型,如果训练充足,可以存储 14B 比特的知识,这超过了维基百科和所有英文教科书中人类知识的总和!

更令人惊讶的是,尽管传统理论认为 transformer 模型中的知识主要存储在 MLP 层,但作者的研究反驳了这一观点,他们发现即便移除了所有 MLP 层,模型仍能达到 2bit/param 的存储效率。

Llama架构比不上GPT2?神奇token提升10倍记忆?,物联网 / 互联网 / 人工智能 / 其他,llama

图 2:训练时间不足情况下的 scaling laws

然而,当我们观察训练时间不足的情况时,模型间的差异就显现出来了。如上图 2 所示,在这种情况下,GPT2 模型能比 LlaMA/Mistral 存储超过 30% 的知识,这意味着几年前的模型在某些方面超越了今天的模型。为什么会这样?作者通过在 LlaMA 模型上进行架构调整,将模型与 GPT2 的每个差异进行增减,最终发现是 GatedMLP 导致了这 30% 的损失。

强调一下,GatedMLP 并不会导致模型的「最终」存储率变化 —— 因为图 1 告诉我们如果训练充足它们就不会有差。但是,GatedMLP 会导致训练不稳定,因此对同样的知识,需要更长的训练时间;换句话说,对于较少出现在训练集里的知识,模型的存储效率就会下降。

Llama架构比不上GPT2?神奇token提升10倍记忆?,物联网 / 互联网 / 人工智能 / 其他,llama

图 3:quantization 和 MoE 对模型 scaling laws 的影响

作者的定律 8 和定律 9 分别研究了 quantization 和 MoE 对模型 scaling law 的影响,结论如上图 3 所示。其中一个结果是,将训练好的模型从 float32/16 压缩到 int8,竟然对知识的存储毫无影响,即便对已经达到 2bit/param 存储极限的模型也是如此。

这意味着,LLM 可以达到「信息论极限」的 1/4—— 因为 int8 参数只有 8 比特,但平均每个参数可以存储 2 比特的知识。作者指出,这是一个普遍法则(universal law),和知识的表现形式无关。

最引人注目的结果来自于作者的定律 10-12(见图 4)。如果我们的 (预) 训练数据中,有 1/8 来自高质量知识库(如百度百科),7/8 来自低质量数据(如 common crawl 或论坛对话,甚至是完全随机的垃圾数据)。

那么,低质量数据是否会影响 LLM 对高质量知识的吸收呢?结果令人惊讶,即使对高质量数据的训练时间保持一致,低质量数据的「存在本身」,可能会让模型对高质量知识的存储量下降 20 倍!即便将高质量数据的训练时间延长 3 倍,知识储量仍会降低 3 倍。这就像是将金子丢进沙子里,高质量数据被严重浪费了。

有什么办法修复呢?作者提出了一个简单但极其有效的策略,只需给所有的 (预) 训练数据加上自己的网站域名 token 即可。例如,将 Wiki 百科数据统统加上 wikipedia.org。模型不需要任何先验知识来识别哪些网站上的知识是「金子」,而可以在预训练过程中,自动发现高质量知识的网站,并自动为这些高质量数据腾出存储空间。

作者提出了一个简单的实验来验证:如果高质量数据都加上一个特殊 token(任何特殊 token 都行,模型不需要提前知道是哪个 token),那么模型的知识存储量可以立即回升 10 倍,是不是很神奇?所以说对预训练数据增加域名 token,是一个极其重要的数据制备操作

Llama架构比不上GPT2?神奇token提升10倍记忆?,物联网 / 互联网 / 人工智能 / 其他,llama

图 4:预训练数据「知识质量不齐」情形下的 scaling laws,模型缺陷以及如何修复

结语

作者认为,通过合成数据,计算模型在训练过程中获得的知识总量的方法,可以为「评估模型架构、训练方法和数据制备」提供了一套系统且精确的打分体系。这和传统的 benchmark 比较完全不同,并且更可靠。他们希望这能帮助未来 LLM 的设计者做出更明智的决策。 文章来源地址https://www.toymoban.com/news/detail-859023.html

到了这里,关于Llama架构比不上GPT2?神奇token提升10倍记忆?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • GPT2训练自己的对话问答机器人

    这里我搭建了虚拟的3.6环境 基于GPT2的中文闲聊机器人,模型实现基于HuggingFace的transformers ,精读GPT2-Chinese的论文和代码,获益匪浅。 data/train.txt:默认的原始训练集文件,存放闲聊语料;data/train.pkl:对原始训练语料进行tokenize之后的文件,存储一个list对象,list的每条数据表示一个

    2024年02月12日
    浏览(64)
  • 如何用 500 行 SQL 实现 GPT2学习

    俄罗斯有个大佬每年都会用 SQL 来实现一个挑战庆祝新年,已经坚持了 10 多年了。而 2023 年年底他完成了一件非常了不起的事情, 即用 500 行 SQL 实现了 GPT2:https://explainextended.com/2023/12/31/happy-new-year-15/ 整个项目的代码参见:https://github.com/quassnoi/explain-extended-2024 这里搬运总结

    2024年01月23日
    浏览(41)
  • 陈巍:LLaMA-2的多模态版本架构与训练详解(收录于GPT-4/ChatGPT技术与产业分析)

    陈巍 :2023年9月,Meta的研究人员推出了AnyMAL(任意模态增强语言模型,Any-Modality Augmented Language Model)。该模型能够理解多种模态信号并生成文本回应,即多模态输入,单模态输出。输入的模态可包括图像、视频、音频和IMU(惯性测量单元,Inertial Measurement Unit)传感器数据。

    2024年04月10日
    浏览(68)
  • 学习如何使用GPT2进行文本生成(torch+transformers)

    GPT2是OPen AI发布的一个预训练语言模型,见论文《Language Models are Unsupervised Multitask Learners》,GPT-2利用单向Transformer的优势,做一些BERT使用的双向Transformer所做不到的事。那就是通过上文生成下文文本。 理论部分的文章有很多,这里不做深究,下面直接看代码吧 对给出的文本

    2024年02月12日
    浏览(40)
  • 基于GPT2_Chinese文本自动生成

    基于 GPT2-Chinese 模型的中文文本生成项目,可用于中文生成任务。 当下市面上很多文本自动生成业务都是基于该模型二次开发的,可以很少有那种特定垂直领域的模型用于该领域的创作,也就导致大家在使用类似产品的时候会发现很多的问题,这种问题多数会导致写出来的文

    2024年02月03日
    浏览(39)
  • 【预训练语言模型】使用Transformers库进行GPT2预训练

    基于 HuggingFace的Transformer库,在Colab或Kaggle进行预训练。 本教程提供:英文数据集wikitext-2和代码数据集的预训练。 注:可以自行上传数据集进行训练 目的 :跑通自回归语言模型的预训练流程 注意:在Colab上训练时,最好将datasets更新到最新版(再重启kernel),避免版本低报

    2024年03月14日
    浏览(44)
  • 浅析GPT2中的autoregressive和BERT的autoencoding源码实现

    经常使用BERT来做研究,因此对Encoder的架构较为熟悉,但是从来没有了解过GPT这样的Decoder架构,尤其对自回归的形式不知道源码是如何实现的。 为了方便对比和讨论,接来下所探讨的源码都是基于HuggingFace这个框架的。 先看一看Bert这个Encoder架构是如何实现autoencoding的。在

    2024年02月09日
    浏览(31)
  • 从 GPT2 到 Stable Diffusion:Elixir 社区迎来了 Hugging Face

    上周,Elixir 社区向大家宣布,Elixir 语言社区新增从 GPT2 到 Stable Diffusion 的一系列神经网络模型。这些模型得以实现归功于刚刚发布的 Bumblebee 库。Bumblebee 库是使用纯 Elixir 语言实现的 Hugging Face Transformers 库。 查看 Elixir 社区的发布文章: https://news.livebook.dev/announcing-bumblebee-g

    2024年02月11日
    浏览(28)
  • GPT2-Chinese 文本生成,训练AI写小说,AI写小说2

    GPT-2 (Generative Pre-trained Transformer 2) 是由 OpenAI 开发的一种基于 Transformer 模型的自然语言处理(NLP)模型,旨在生成自然流畅的文本。它是一种无监督学习模型,其设计目标是能够理解人类语言的复杂性并模拟出自然的语言生成。 GPT-2 是目前最先进的自然语言处理模型之一,因

    2024年02月13日
    浏览(38)
  • 大语言模型的预训练[2]:GPT、GPT2、GPT3、GPT3.5、GPT4相关理论知识和模型实现、模型应用以及各个版本之间的区别详解

    在自然语言处理问题中,可从互联网上下载大量无标注数据,而针对具体问题的有标注数据却非常少,GPT 是一种半监督学习方法,它致力于用大量无标注数据让模型学习 “常识”,以缓解标注信息不足的问题。其具体方法是在针对有标签数据训练 Fine-tune 之前,用无标签数据

    2024年02月16日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包