当前位置: 首页 > news >正文

大模型之语言大模型技术

本文作为大模型综述第篇,介绍语言大模型基本技术。

近年来,在 Transformer 架构基础上构建的预训练语言模型为自然语言处理领域带来了一系列突破式进展,成为人工智能主流技术范式。预训练语言模型采用“预训练+微调”方法,主要分为两步: 1)将模型在大规模无标注数据上进行自监督训练得到预训练模型, 2)将模型在下游各种自然语言处理任务上的小规模有标注数据进行微调得到适配模型。由于预训练语言模型参数越大模型表现越好,这激发了语言大模型(Large Language Model, LLM)研究热潮。

目录:

1.Transformer 架构

2.语言大模型架构

3.语言大模型关键技术

1.Transformer 架构

Transformer 架构是目前语言大模型采用的主流架构, 其基于自注意力机制(Self-attention Mechanism)模型。其主要思想是通过自注意力机制获取输入序列的全局信息,并将这些信息通过网络层进行传递。标准的 Transformer 如图所示,是一个编码器-解码器架构,其编码器和解码器均由一个编码层和若干相同的 Transformer 模块层堆叠组成,编码器的 Transformer 模块层包括多头注意力层和全连接前馈网络层,这两部分通过残差连接和层归一化操作连接起来。与编码器模块相比,解码器由于需要考虑解码器输出作为背景信息进行生成,其中每个 Transformer 层多了一个交叉注意力层。相比于传统循环神经网络(Recurrent Neural Network, RNN)和长短时记忆神经网络(Long Short-Term Memory Network, LSTM), Transformer 架构的优势在于它的并行计算能力,即不需要按照时间步顺序地进行计算。Transformer 架构包含编码层与 Transformer 模块两个核心组件。

编码层

主要是将输入词序列映射到连续值向量空间进行编码,每个词编码由词嵌入和位置编码构成,由二者加和得到:

1) 词嵌入

在 Transformer 架构中,词嵌入是输入数据的第一步处理过程, 它将词映射到高维空间中的向量, 可以捕获词汇的语义信息,如词义和语法关系。每个词都被转化为一个固定长度的向量,然后被送入模型进行处理。

                                                             Transformer 架构

2)位置编码

由于自注意力机制本身对位置信息不敏感,为了让模型能够理解序列中的顺序信息,引入了位置编码。标准Transformer 架构的位置编码方式是使用正弦和余弦函数的方法。对于每个位置 i,对应的位置编码是一个长度为 d 的向量,其中 d 是模型的嵌入维度。这个向量的第 j 个元素由以下公式计算:如果 j 是偶数,那么编码的第 j 个元素为sin( i/10000 ) j/ d ; 如果 j 是奇数,那么编码的第 j 个元素为 cos( i/10000 ) j/ d 。

         Transformer 自注意力网络

Transformer模块

通过自注意力机制获取输入序列的全局信息,并将这些信息通过网络层进行传递, 包括多头注意力层和全连接前馈网络层,这两部分通过残差连接和层归一化操作连接起来 ,Transformer 模块,由自注意力层、全连接前馈层、残差连接和层归一化操作等基本单元组成:

添加图片注释,不超过 140 字(可选)

添加图片注释,不超过 140 字(可选)

http://www.lryc.cn/news/413094.html

相关文章:

  • 浮点数例外 (核心已转储) 的问题记录
  • Vite项目中根据不同打包命令配置不同的后端接口地址,proxy解决跨域
  • Java新手启航:JDK 21 版本安装,开启编程之行
  • Redis学习[5] ——Redis过期删除和内存淘汰
  • 书生大模型学习笔记 - Python
  • spring security和核心流程
  • JavaScript青少年简明教程:面向对象编程入门
  • 电话号的标准
  • 项目实战_表白墙(升级版)
  • 创意无限:11个设计圈热议的UI设计灵感网站集锦
  • C# Solidworks二次开发------综合小设计-1
  • nginx rtmp服务器搭建
  • 打卡第31天------贪心算法
  • jenkins服务器重启,构建记录消失
  • Linux系统部分问题处理方案
  • C语言指针与数组
  • Stream 33
  • 【Python Loguru】实现日志工具和日志饶接
  • 【Linux】-----进度条小程序
  • 普通人有必要学Python吗?学了之后能做什么?
  • 2023-2024年 Java开发岗面试题经验分享
  • JavaScript中URL和Blob
  • 平舌、翘舌音学习: z、c、s--zh、ch、sh
  • Windows(Win10、Win11)本地部署开源大模型保姆级教程
  • 快速排序(下)
  • LazyLLM:长上下文场景下提高LLM推理效率
  • PDF文件点击打印无反应?是何原因造成能解决吗?
  • 初学者友好!从零到一快速上手PyCharm安装的超详细图解+避坑指南教程
  • AI大模型需要什么样的数据?
  • Java每日一练_模拟面试题1(死锁)