LLM-大模型演化分支树、GPT派发展阶段及训练流程图、Infini-Transformer说明

本文主要是介绍LLM-大模型演化分支树、GPT派发展阶段及训练流程图、Infini-Transformer说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大模型是怎么演进的?

  • Encoder Only: 对应粉色分支,即BERT派,典型模型: BERT
    • 自编码模型(Autoencoder Model):通过重建句子来进行预训练,通常用于理解任务,如文本分类和阅读理解
    • 模型像一个善于分析故事的专家,输入一段文本,能拆解的头头是道,本质上是把高维数据压缩到低维空间,
  • Decoder Only: 对应蓝色分支,GPT派, 典型模型: GPT4, LLaMA
    • 自回归模型(Autoregressive Model):通过预测序列中的下一个词来进行预训练,通常用于文本生成任务
    • 模型像一个会讲故事的专家,给点提示,就能流畅的接着自说自话
  • Encoder-Decoder: 对应绿色分支,T5派, 典型模型: T5, ChatGLM
    • 序列到序列模型(Sequence to Sequence Model):结合了编码器和解码器,通常用于机器翻译和文本摘要等任务
    • 模型像一个“完型填空专家”,是因为它特别擅长处理这种类型的任务。通过将各种NLP任务统一转换为填空问题,T5派能够利用其强大的语言理解和生成能力来预测缺失的文本。这种方法简化了不同任务之间的差异,使得同一个模型可以灵活地应用于多种不同的NLP任务,并且通常能够在多个任务上取得很好的性能
      在这里插入图片描述

GPT派发展阶段

  • GOOGLE 的Gopher验证了通过扩大模型规模,有效处理复杂任务的可行性
  • Chinchilla模型 验证了增加数据比增加模型参数更有效
  • LLaMA模型:用不到1/10的参数,实现了堪比GPT系列模型的性能,成为当下最流行的开源大模型
    在这里插入图片描述

大模型训练流程图

  • 第一步 预训练是鸿沟,算力占全部的99%以上,【LLaMA 模型开源后,为众多以LLaMA 为基础模型的其它模型节约的成本】
  • 数据集: LLaMA 2采用互联网公开数据集,经2万亿token, 每个单词约1.3个token,相当于1.5万亿个单词,约55亿页书,
  • 算法:LLaMA 及其子孙模型在传统的解码器架构上,进行了多个改进,
    • 输入数据使用了均方层规一化函数 RMSNorm,大大提升了训练的稳定性
      在这里插入图片描述
    • 激活函数用swiGLU替换了ReLU,提升了非线性的表征能力
    • 不再使用位置嵌入,而是在网络每层增加了旋转嵌入RoPE,速度更快,效果更好
  • 奖励建模和强化学习都是基于人类反馈强化学习RLHF【Reinforcement Learning from Human Feedback】
    • 先训一个二元分类器,给出奖励,判断人类的偏好,
    • 然后再训一个强大学习算法,最大化奖励,并据此进一步微调模型,
  • SFT Model【Supervised Fine-Tuning Model】

在这里插入图片描述

Infini-Transformer架构

4月10日,为解决大模型(LLMs)在处理超长输入序列时遇到的内存限制问题, Google发布下一代Transformer模型Infini-Transformer
详见论文:Leave No Context Behind: Efficient Infinite Context Transformers with Infini-attention

在这里插入图片描述
Infini-Transformer是一种为了扩展基于Transformer的大型语言模型(LLMs)以处理无限长输入而设计的高效方法。其核心技术是Infini-attention,这是一种新的注意力机制,它通过将压缩记忆(compressive memory)整合到传统的注意力机制中,从而实现了对长序列数据的有效处理。

Infini-Attention机制

Infini-attention机制包含以下几个关键组件:

  1. 局部注意力(Local Attention):在每个输入段(segment)内,Infini-Transformer计算标准的因果点积注意力(causal dot-product attention)。这种局部注意力确保了在处理每个段时,模型仅关注当前段内的token。
  2. 压缩记忆(Compressive Memory):Infini-attention通过重用点积注意力计算中的关键(key)、值(value)和查询(query)状态,将它们存储在压缩记忆中。这种记忆允许模型在处理后续序列时,通过查询状态从记忆中检索值,从而保持对之前上下文的长期记忆。
  3. 长期线性注意力(Long-term Linear Attention):Infini-attention引入了一种线性注意力机制,它使用关联矩阵(associative matrix)来存储和检索信息。这种机制使得模型能够在保持固定数量参数的同时,处理任意长度的序列。

长期上下文建模

Infini-Transformer通过以下步骤实现长期上下文建模:

  1. 记忆检索(Memory Retrieval):在处理新的输入段时,Infini-attention使用当前的查询状态从压缩记忆中检索与之前上下文相关的信息。
  2. 记忆更新(Memory Update):随着新信息的加入,压缩记忆会被更新以反映最新的上下文信息。这个过程涉及到将新的键值对与记忆矩阵相结合,同时保持记忆的压缩性质。
  3. 上下文注入(Context Injection):Infini-attention通过学习门控标量(gating scalar)β来平衡局部注意力状态和从记忆中检索到的内容,将它们融合到最终的上下文表示中。

实验结果

在长上下文语言建模、1M长度的密钥上下文块检索和500K长度的书籍摘要任务中,Infini-Transformer展示了其有效性。实验结果表明,Infini-Transformer在长上下文任务上的性能超过了基线模型,并且在内存大小方面实现了114倍的压缩比。

总结

Infini-Transformer通过引入Infini-attention机制,使得Transformer LLMs能够有效地处理无限长的输入序列,同时保持有界的内存占用和计算资源。这种方法通过在单个Transformer块中结合局部注意力和长期线性注意力机制,实现了对长距离依赖关系的高效建模。Infini-Transformer的提出,为长序列数据的处理提供了一种新的解决方案,具有重要的理论和实践意义。

这篇关于LLM-大模型演化分支树、GPT派发展阶段及训练流程图、Infini-Transformer说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/903077

相关文章

Tomcat版本与Java版本的关系及说明

《Tomcat版本与Java版本的关系及说明》:本文主要介绍Tomcat版本与Java版本的关系及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat版本与Java版本的关系Tomcat历史版本对应的Java版本Tomcat支持哪些版本的pythonJ

Java的IO模型、Netty原理解析

《Java的IO模型、Netty原理解析》Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等,这篇... 目录1.什么是IO2.同步与异步、阻塞与非阻塞3.三种IO模型BIO(blocking I/O)NI

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

Nginx指令add_header和proxy_set_header的区别及说明

《Nginx指令add_header和proxy_set_header的区别及说明》:本文主要介绍Nginx指令add_header和proxy_set_header的区别及说明,具有很好的参考价... 目录Nginx指令add_header和proxy_set_header区别如何理解反向代理?proxy

JAVA SE包装类和泛型详细介绍及说明方法

《JAVASE包装类和泛型详细介绍及说明方法》:本文主要介绍JAVASE包装类和泛型的相关资料,包括基本数据类型与包装类的对应关系,以及装箱和拆箱的概念,并重点讲解了自动装箱和自动拆箱的机制,文... 目录1. 包装类1.1 基本数据类型和对应的包装类1.2 装箱和拆箱1.3 自动装箱和自动拆箱2. 泛型2

MySQL常见的存储引擎和区别说明

《MySQL常见的存储引擎和区别说明》MySQL支持多种存储引擎,如InnoDB、MyISAM、MEMORY、Archive、CSV和Blackhole,每种引擎有其特点和适用场景,选择存储引擎时需根... 目录mysql常见的存储引擎和区别说明1. InnoDB2. MyISAM3. MEMORY4. A

MyBatis的配置对象Configuration作用及说明

《MyBatis的配置对象Configuration作用及说明》MyBatis的Configuration对象是MyBatis的核心配置对象,它包含了MyBatis运行时所需的几乎所有配置信息,这个对... 目录MyBATis配置对象Configuration作用Configuration 对象的主要作用C

在Dockerfile中copy和add的区别及说明

《在Dockerfile中copy和add的区别及说明》COPY和ADD都是Dockerfile中用于文件复制的命令,但COPY仅用于本地文件或目录的复制,不支持自动解压缩;而ADD除了复制本地文件或... 目录在dockerfile中,copy 和 add有什么区别?COPY 命令ADD 命令总结在Doc

C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)

《C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)》本文主要介绍了C#集成DeepSeek模型实现AI私有化的方法,包括搭建基础环境,如安装Ollama和下载DeepS... 目录前言搭建基础环境1、安装 Ollama2、下载 DeepSeek R1 模型客户端 ChatBo

SpringBoot快速接入OpenAI大模型的方法(JDK8)

《SpringBoot快速接入OpenAI大模型的方法(JDK8)》本文介绍了如何使用AI4J快速接入OpenAI大模型,并展示了如何实现流式与非流式的输出,以及对函数调用的使用,AI4J支持JDK8... 目录使用AI4J快速接入OpenAI大模型介绍AI4J-github快速使用创建SpringBoot