清华大学综述:基于 Transformer 的大语言模型

语言建模作为语言模型(LMs)的基本功能,涉及对单词序列的建模以及预测后续单词的分布。

近年来,研究人员发现,扩大语言模型的规模不仅增强了它们的语言建模能力,而且还产生了处理传统NLP任务之外更复杂任务的新兴能力。

这些扩大规模的语言模型被称为大型语言模型(LLMs)。

主流的LLMs基于Transformer架构设计

具体来说,一个典型的Transformer架构由多个堆叠的Transformer块组成。

通常,一个Transformer块由一个多头自注意力(MHSA)模块、一个前馈网络(FFN)和一个层归一化(LN)操作组成。

对于每个块,它接收前一个块的输出特征作为输入,并通过每个子模块传递特征以获得输出。

特别地,在第一个块之前,使用分词器将原始输入句子转换为一系列标记,随后的嵌入层用于将标记转换为输入特征。

然后,将额外的位置嵌入添加到输入特征中,以编码每个输入标记的顺序。

Transformer架构的核心概念是自注意力机制,它在MHSA模块中采用。具体来说,表示输入特征为X = [x1, x2, ..., xn],MHSA模块对它们进行线性投影并获得一组查询Q、键K和值V,如公式所示:

其中WQi、WKi和WVi分别是第i个头的投影矩阵。

然后自注意力操作应用于每组(Qi, Ki, Vi)并得到第i个头的特征Zi,如公式所示:

其中dk是查询(键)的维度。

注意,自注意力操作包含矩阵乘法操作,其计算复杂度是对输入长度的二次方。最后,MHSA模块将所有注意力头的特征连接起来,并通过线性投影形成其输出Z,如公式所示:

其中WO是投影矩阵。

可以看到,自注意力机制允许模型识别不同输入部分的重要性,无论距离如何,并且可以捕捉输入句子中的长距离依赖和复杂关系。

Transformer块中的另一个重要模块是FFN。

通常,FFN位于MHSA模块之后,由两个带有非线性激活函数的线性变换层组成。它接收MHSA模块的输出特征X,如公式所示:

其中W1和W2表示两个线性层的权重矩阵,σ(·)表示激活函数。

本文翻译自清华大学最新成果论文:《A Survey on Efficient Inference for Large Language Models 》,arxiv.org/pdf/2404.14...


更多关于大模型的介绍,可以查看《Transformer最后一公里》专栏。

相关推荐
冲帕Chompa14 分钟前
图论part09dijkstra算法
算法·图论
·云扬·23 分钟前
【PmHub后端篇】PmHub中基于Redis加Lua脚本的计数器算法限流实现
redis·算法·lua
周Echo周25 分钟前
20、map和set、unordered_map、un_ordered_set的复现
c语言·开发语言·数据结构·c++·算法·leetcode·list
zkmall29 分钟前
推荐算法工程化:ZKmall模板商城的B2C 商城的用户分层推荐策略
算法·机器学习·推荐算法
矿渣渣1 小时前
AFFS2 的 `yaffs_ext_tags` 数据结构详解
数据结构·算法·文件系统·yaffs2
workflower1 小时前
使用谱聚类将相似度矩阵分为2类
人工智能·深度学习·算法·机器学习·设计模式·软件工程·软件需求
cwywsx1 小时前
Linux:进程控制2
linux·运维·算法
真的想上岸啊1 小时前
c语言第一个小游戏:贪吃蛇小游戏06
c语言·算法·链表
边跑边掩护2 小时前
LeetCode 648 单词替换题解
算法·leetcode·职场和发展
小森77672 小时前
(七)深度学习---神经网络原理与实现
人工智能·深度学习·神经网络·算法