【大模型基础_毛玉仁】2.4 基于 Encoder-Decoder 架构的大语言模型


更多内容:XiaoJ的知识星球


目录

    • 2.4 基于 Encoder-Decoder 架构的大语言模型
      • 2.4.1 Encoder-Decoder 架构
      • 2.4.2 T5 语言模型
        • 1)T5 模型结构
        • 2)T5 预训练方式
        • 3)T5 下游任务
      • 2.4.3 BART 语言模型
        • 1)BART 模型结构
        • 2)BART 预训练方式


2.4 基于 Encoder-Decoder 架构的大语言模型

Encoder-Decoder 架构在 Encoder-only 架构的基础上引入 Decoder 组件,以完成机器翻译等序列到序列(Sequence to Sequence, Seq2Seq)任务。

.


2.4.1 Encoder-Decoder 架构

Encoder-Decoder架构:编码器+解码器

编码器Encoder

  • 多个编码模块组成,每个编码模块包含:一个自注意力模块、一个全连接前馈模块

  • 模型的输入序列在通过编码器部分后,会被转变为固定大小的上下文向量,这个向量包含了输入序列的丰富语义信息。

解码器Decoder:

  • 多个解码模块堆组成,每个解码模块包含:一个带掩码的自注意力模块、一个交叉注意力模块和一个全连接前馈模块

  • 带掩码的自注意力模块:引入掩码机制防止未来信息的“泄露”,确保解码过程的自回归特性。

  • 交叉注意力模块:实现了解码器与编码器之间的信息交互,对生成与输入序列高度相关的输出至关重要。

图 2.10: Encoder-Decoder 架构
在这里插入图片描述

自注意模块在编码器和解码器中的注意力目标不同的。

  • 在编码器中,采用双向注意力机制以全面捕捉上下文信息。

  • 在解码器中,自注意力机制则是单向的,仅以上文为条件来解码得到下文。通过掩码操作避免解码器“窥视”未来的信息。

交叉注意力通过将解码器的查询(query) 与编码器的键(key)值(value) 相结合,实现了两个模块间的有效信息交流。

通过自注意力和交叉注意力机制的结合,Encoder-Decoder 架构能够高效地编码输入信息生成高质量的输出序列

  • 自注意力机制:确保了输入序列和生成序列内部的一致性和连贯性。

  • 交叉注意力机制:确保解码器在生成每个输出 Token 时都能参考输入序列的全局上下文信息,从而生成与输入内容高度相关的结果。

在这两个机制的共同作用下,Encoder-Decoder 架构不仅能够深入理解输入序列,还能够根据不同任务的需求灵活生成长度适宜的输出序列,在机器翻译、文本摘要、 问答系统等任务中得到了广泛应用。

本节将介绍两种典型的基于 Encoder-Decoder 架构的代表性大语言模型:T5 和 BART。

.


2.4.2 T5 语言模型

T5(Text-to-Text Transfer Transformer)

通常,每种自然语言处理任务都需要对训练数据、模型架构和训练策略进行定制化设计。这不仅耗时耗力,而且模型难复用。

为了解决这一问题,Google 提出基于 Encoder-Decoder 架构的大型预训练语言模型 T5(Text-to-Text Transfer Transformer), 其采用统一的文本到文本的转换范式来处理多种任务。

1)T5 模型结构

T5 模型的核心思想:将多种 NLP 任务统一到一个文本转文本的生成式框架中

在此统一框架下,T5 通过不同的输入前缀来指示模型执行不同任务,然后生成相应的任务输出,这种方法可以视为早期的提示Prompt)技术。

图 2.11: 传统语言模型和 T5 统一框架
在这里插入图片描述

在模型架构方面,T5 与原始的包括一个编码器和一个解码器的 Transformer 架构相同。每个编码器和解码器又分别由多个编码模块和解码模块堆叠而成。

T5 模型根据不同的参数,提供 T5-Small、T5-Base、T5- Large、T5-3B 以及 T5-11B 五个版本

2)T5 预训练方式

T5收集了C4 数据集(Colossal Clean Crawled Corpus)进行训练,其覆盖了各种网站和文本类型。

T5 提出了名为 Span Corruption 的预训练任务。从输入中选择 15% 的 Token 进行破坏,每次都选择连续三个 Token 作为一 个小段(span)整体被掩码成 [MASK]。

与 BERT 模型中采用的单个 Token 预测不同,T5 模型需要对整个被遮挡的连续文本片段进行预测。这一设计要 求模型不仅等理解局部词汇的表面形式,还要可以捕捉更深层次的句子结构和上 下文之间的复杂依赖关系。

3)T5 下游任务

T5 模型可以在完全零样本Zero-Shot)的情况下,利用 Prompt 工程技术直接适配到多种下游任务。

同时,T5 模型也可以通过微调(Fine-Tuning)来适配到特定的任务。

如今,T5 模型已 经衍生了许多变体,例如,mT5[43] 模型扩展了对 100 多种语言的支持,T0[31] 模型通过多任务训练增强了零样本学习(Zero-Shot Learning) 能力,Flan-T5[8] 模型专注于通过指令微调,以实现进一步提升模型的灵活性和效率等等。

.


2.4.3 BART 语言模型

BART(Bidirectional and Auto-Regressive Transformers)

  • 中文解释:双向自回归Transformers

  • 通过多样化的预训练任务,来提升模型在文本生成任务和文本理解任务上的表现。

1)BART 模型结构

BART 的模型结构同 Transformer 架构,包括一个编码器和一个解码器。每个编码器和解码器分别由多个编码模块和解码模块堆叠而成。

BART 模型有两个版本,分别是 BART-Base 以及 BART-Large。

2)BART 预训练方式

在预训练数据上,BART 使用了与 RoBERTa 相同的语料库。

在预训练任务上,BART 以重建被破坏的文本为目标。

通过以下五个任务来破坏文本,然后训练模型对原始文本进行恢复。

  • Token 遮挡任务(Token Masking):在原文中随机将一部分 Token 替换为 [MASK],从而训练模型推断被删除的 Token 内容的能力。

  • Token 删除任务(Token Deletion):在原文中随机删除一部分 Token,从而训练模型推断被删除的 Token 位置以及内容的能力。

  • 连续文本填空任务(Text Infilling):在原文中选择几段连续的 Token(每段作为一个 span),整体替换为 [MASK]。span 长度服从 λ = 3 的泊松分布,如长度为 0 则直接插入一个 [MASK]。 这一任务旨在训练模型推断一段 span 及其长度的能力。

  • 句子打乱任务(Sentence Permutation):将给定文本拆分为多个句子,并随机打乱句子的顺序。旨在训练模型推理前后句关系的能力。

  • 文档旋转任务(Document Rotation):从给定文本中随机选取一个 Token,作为文本新的开头进行旋转。旨在训练模型找到文本合理起始点的能力。

BART 不仅在文本生成任务上表现出色,也能适应文本理解类任务的挑战。

.


小结:

综上所述,基于 Encoder-Decoder 架构的大语言模型,在生成任务中展示了良好的性能表现。表2.2从模型参数量和预训练语料规模的角度对本章提到的基于 Encoder-Decoder 架构的模型进行了总结。可以看出此时模型参数数量的上限已达 110 亿。

表 2.2: Encoder-Decoder 架构代表模型参数和语料大小表。

模型发布时间参数量(亿)语料规模
T52019.100.6-110 亿750GB
mT52020.103-130 亿9.7TB
T02021.1030-110 亿约 400GB
BART2019.101.4-4 亿约 20GB
mBART2020.060.4-6.1 亿约 1TB

在模型结构和参数规模的双重优势下,相较于基于 Encoder-only 架构的模型,这些模型在翻译、摘要、问答等任务中取得了更优的效果。

.


其他参考:【大模型基础_毛玉仁】系列文章


声明:资源可能存在第三方来源,若有侵权请联系删除!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/34469.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI智能代码疫苗技术,赋能数字化应用内生安全自免疫

“DevSecOps市占率持续领先,IAST探针覆盖率十倍增长,代码疫苗技术已成功帮助上千家行业用户成功抵御‘Log4j2.x’等重大未知漏洞的利用攻击。”子芽在腾讯专访中透露。 这是2021年悬镜安全交出的一张成绩单。悬镜安全是DevSecOps敏捷安全先行者&#xf…

【初级篇】如何使用DeepSeek和Dify构建高效的企业级智能客服系统

在当今数字化时代,企业面临着日益增长的客户服务需求。使用Dify创建智能客服不仅能够提升客户体验,还能显著提高企业的运营效率。关于DIfy的安装部署,大家可以参考之前的文章: 【入门级篇】Dify安装+DeepSeek模型配置保姆级教程_mindie dify deepseek-CSDN博客 AI智能客服…

【机器学习-基础知识】统计和贝叶斯推断

1. 概率论基本概念回顾 1. 概率分布 定义: 概率分布(Probability Distribution)指的是随机变量所有可能取值及其对应概率的集合。它描述了一个随机变量可能取的所有值以及每个值被取到的概率。 对于离散型随机变量,使用概率质量函数来描述。对于连续型随机变量,使用概率…

正点原子[第三期]Arm(iMX6U)Linux移植学习笔记-4 uboot目录分析

前言: 本文是根据哔哩哔哩网站上“Arm(iMX6U)Linux系统移植和根文件系统构键篇”视频的学习笔记,在这里会记录下正点原子 I.MX6ULL 开发板的配套视频教程所作的实验和学习笔记内容。本文大量引用了正点原子教学视频和链接中的内容。 引用: …

视频AI方案:数据+算力+算法,人工智能的三大基石

背景分析 随着信息技术的迅猛发展,人工智能(AI)已经逐渐渗透到我们生活的各个领域,从智能家居到自动驾驶,从医疗诊断到金融风控,AI的应用正在改变着我们的生活方式。而数据、算法和算力,正是构…

MySQL -- 表的约束

概念引入:真正的约束表字段的是数据类型,但是数据类型的约束方式比较单一的,所以需要一些额外的一些约束,用于表示数据的合法性,在只有数据类型一种约束的情况下,我们比较难保证数据是百分百合法。通过添加…

嵌入式Zephyr RTOS面试题及参考答案

目录 Zephyr RTOS 的主要设计目标是什么?适用于哪些领域? Zephyr 支持哪些内核对象类型?举例说明其应用场景。 Zephyr 支持哪些线程同步机制?举例说明其适用场景。 Zephyr 内核支持哪些任务状态?状态转换的条件是什么? Zephyr 如何实现低延迟中断处理?(如直接中断服…

《TCP/IP网络编程》学习笔记 | Chapter 18:多线程服务器端的实现

《TCP/IP网络编程》学习笔记 | Chapter 18:多线程服务器端的实现 《TCP/IP网络编程》学习笔记 | Chapter 18:多线程服务器端的实现线程的概念引入线程的背景线程与进程的区别 线程创建与运行pthread_createpthread_join可在临界区内调用的函数工作&#…

C++相关基础概念之入门讲解(上)

1. 命名空间 C中的命名空间(namespace)是用来避免命名冲突问题的一种机制。通过将类、函数、变量等封装在命名空间中,可以避免不同部分的代码中出现相同名称的冲突。在C中,可以使用namespace关键字来定义命名空间。 然后我们在调…

创新技术引领软件供应链安全,助力数字中国建设

编者按 随着数字化转型的加速,针对软件供应链的攻击事件呈快速增长态势,目前已成为网络空间安全的焦点。如何将安全嵌入到软件开发到运营的全流程,实现防护技术的自动化、一体化、智能化,成为技术领域追逐的热点。 悬镜安全作为…

PyTorch 系列教程:使用CNN实现图像分类

图像分类是计算机视觉领域的一项基本任务,也是深度学习技术的一个常见应用。近年来,卷积神经网络(cnn)和PyTorch库的结合由于其易用性和鲁棒性已经成为执行图像分类的流行选择。 理解卷积神经网络(cnn) 卷…

【2025】基于python+django的驾校招生培训管理系统(源码、万字文档、图文修改、调试答疑)

课题功能结构图如下: 驾校招生培训管理系统设计 一、课题背景 随着机动车保有量的不断增加,人们对驾驶技能的需求也日益增长。驾校作为驾驶培训的主要机构,面临着激烈的市场竞争和学员需求多样化等挑战。传统的驾校管理模式往往依赖于人工操作…

【JavaWeb】快速入门——HTMLCSS

文章目录 一、 HTML简介1、HTML概念2、HTML文件结构3、可视化网页结构 二、 HTML标签语法1、标题标签2、段落标签3、超链接4、换行5、无序列表6、路径7、图片8、块1 盒子模型2 布局标签 三、 使用HTML表格展示数据1、定义表格2、合并单元格横向合并纵向合并 四、 使用HTML表单收…

MySQL 优化方案

一、MySQL 查询过程 MySQL 查询过程是指从客户端发送 SQL 语句到 MySQL 服务器,再到服务器返回结果集的整个过程。这个过程涉及多个组件的协作,包括连接管理、查询解析、优化、执行和结果返回等。 1.1 查询过程的关键组件 连接管理器:管理…

服务性能防腐体系:基于自动化压测的熔断机制

01# 背景 在系统架构的演进过程中,项目初始阶段都会通过压力测试构建安全护城河,此时的服务性能与资源水位保持着黄金比例关系。然而在业务高速发展时期,每个冲刺周期都被切割成以业务需求为单位的开发单元,压力测试逐渐从必选项…

六十天前端强化训练之第二十天React Router 基础详解

欢迎来到编程星辰海的博客讲解 看完可以给一个免费的三连吗,谢谢大佬! 目录 一、核心概念 1.1 核心组件 1.2 路由模式对比 二、核心代码示例 2.1 基础路由配置 2.2 动态路由示例 2.3 嵌套路由实现 2.4 完整示例代码 三、关键功能实现效果 四、…

grad_traj_optimization 开源项目

开源项目 grad_traj_optimization 使用教程-CSDN博客 ubuntu如何切换到root用户_ubuntu切换到root用户-CSDN博客 catkin_make: command not found 解决办法_catkin-make not found-CSDN博客 这就说明需要编译的package虽然存在,但不在指定的目录下。catkin_make命…

深圳南柯电子|净水器EMC测试整改:水质安全与电磁兼容性的双赢

在当今注重健康生活的时代,净水器作为家庭用水安全的第一道防线,其性能与安全性备受关注。其中,电磁兼容性(EMC)测试是净水器产品上市前不可或缺的一环,它直接关系到产品在复杂电磁环境中的稳定运行及不对其…

要登录的设备ip未知时的处理方法

目录 1 应用场景... 1 2 解决方法:... 1 2.1 wireshark设置... 1 2.2 获取网口mac地址,wireshark抓包前预过滤掉自身mac地址的影响。... 2 2.3 pc网口和设备对接... 3 2.3.1 情况1:... 3 2.3.2 情…

GHCTF web方向题解

upload?SSTI! import os import refrom flask import Flask, request, jsonify,render_template_string,send_from_directory, abort,redirect from werkzeug.utils import secure_filename import os from werkzeug.utils import secure_filenameapp Flask(__name__)# 配置…