基于 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 》,https://arxiv.org/pdf/2404.14294。


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

相关推荐
北极的树几秒前
从源码看Google LangExtract如何应对长文本数据挖掘的挑战
人工智能
coding者在努力2 分钟前
深度学习核心技巧
人工智能·深度学习
我家大宝最可爱14 分钟前
动态规划:入门思考篇
算法·动态规划·代理模式
肉夹馍不加青椒25 分钟前
第三十三天(信号量)
java·c语言·算法
掘金一周28 分钟前
被老板逼出来的“表格生成器”:一个前端的自救之路| 掘金一周 8.21
前端·人工智能·后端
yzx99101330 分钟前
从机器视觉到图像识别:计算机视觉的多维探索
人工智能·深度学习·机器学习
是Dream呀32 分钟前
GPT-5时代的AI工具:AiOnly一站式平台深度体验报告
人工智能·深度学习·机器学习
古译汉书1 小时前
嵌入式-SPI番外之按钮驱动程序的编写-Day15
c语言·stm32·单片机·嵌入式硬件·mcu·算法
网安INF1 小时前
【论文阅读】-《SIGN-OPT: A QUERY-EFFICIENT HARD-LABEL ADVERSARIAL ATTACK》
论文阅读·人工智能·网络安全·对抗攻击
快去睡觉~1 小时前
力扣48:旋转矩阵
算法·leetcode·矩阵