Transformer 动画讲解:数据处理的四大关键步骤

节前,我们组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、今年参加社招和校招面试的同学。

针对大模型技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备面试攻略、面试常考点等热门话题进行了深入的讨论。

汇总合集

《大模型面试宝典》(2024版) 发布!
《大模型实战宝典》(2024版) 发布!


Transformer 大模型,一种基于自注意力机制的神经网络架构,已被广泛应用于各种自然语言处理任务,比如:机器翻译、文本摘要、生成问答等。

从端到端的角度来看,Transformer 大模型中数据的处理流程主要包括四个阶段:首先是嵌入阶段 (Embedding),随后是注意力机制阶段 (Attention),然后是通过多层感知机 (MLPs)进行处理,最后是从模型的表示转换到最终输出的解嵌入阶段(Unembedding),如下图所示:

图:Embedding -> Attention -> MLPs -> Unembedding

下面是对这四个阶段的简要介绍。

Embedding(嵌入)阶段

大模型的输入通常由离散的词汇或符号组成(比如:在英文文本中,每个单词或标点符号都是一个单独的符号)。嵌入层的作用是将这些离散的符号转换成连续的、具有固定维度的向量(通常称为词嵌入)。这些向量能够捕获符号的语义以及上下文信息。

在Transformer 大模型中,无论是编码器(Encoder)还是解码器(Decoder),都包含一个嵌入层。此外,在解码器中,还会添加一个位置嵌入(Positional Embedding)层,用于记录序列中单词的位置信息,这是因为 Transformer 大模型不通过 RNN 或 CNN 等传统结构来直接捕捉序列的顺序信息。

Attention (注意力机制)阶段

注意力机制构成了 Transformer 大模型的基石,它使得大模型能够在产生当前输出时聚焦于输入序列中的各个部分。Transformer 大模型采用了多种类型的注意力机制,其中包括自注意力(Self-Attention)、编码器-解码器注意力(Encoder-Decoder Attention)以及掩码多头注意力(Masked Multi-Head Attention)。

自注意力机制使得大模型能够识别序列内不同位置之间的相互关系,进而把握序列的内在结构。编码器-解码器注意力机制则使得大模型在输出生成过程中能够针对输入序列的特定部分给予关注。在注意力机制的运算过程中,会生成一个注意力权重矩阵,该矩阵揭示了输入序列中每个位置对于当前位置的贡献程度。

MLPs(多层感知机,也称为前馈神经网络)阶段

在注意力机制处理之后,大模型会利用一个或多个全连接层(也称为前馈网络或 MLPs)来进行更深层次的变换和特征提取。

这些全连接层能够捕捉输入数据中的非线性关系,并辅助模型识别更复杂的模式。在 Transformer 大模型中,MLPs 一般被置于自注意力层和归一化层之间,共同构成了所谓的"编码器块"或"解码器块"。

Unembedding(从模型表示到最终输出)阶段

这一过程可以被视作从大模型的内部表示到最终输出格式的转换。

在文本生成任务中,比如:机器翻译,解码器的输出将通过一个线性层和一个 Softmax 函数,以产生一个概率分布,该分布反映了下一个输出词(token)的概率。

而在其他类型的任务中,比如:文本分类,解码器的输出可能直接用于损失函数的计算(比如:交叉熵损失),或者通过其他方法转换成最终的预测结果。

技术交流

前沿技术资讯、算法交流、求职内推、算法竞赛、面试交流(校招、社招、实习)等、与 10000+来自港科大、北大、清华、中科院、CMU、腾讯、百度等名校名企开发者互动交流~

我们建了算法岗面试与技术交流群 , 想要进交流群、需要源码&资料、提升技术的同学,可以直接加微信号:mlc2040。加的时候备注一下:研究方向 +学校/公司+CSDN,即可。然后就可以拉你进群了。

方式①、微信搜索公众号:机器学习社区 ,后台回复:技术交流

方式②、添加微信号:mlc2040 ,备注:技术交流+CSDN

用通俗易懂的方式讲解系列

相关推荐
劲夫学编程37 分钟前
leetcode:杨辉三角
算法·leetcode·职场和发展
毕竟秋山澪39 分钟前
孤岛的总面积(Dfs C#
算法·深度优先
深度学习实战训练营41 分钟前
基于CNN-RNN的影像报告生成
人工智能·深度学习
昨日之日20063 小时前
Moonshine - 新型开源ASR(语音识别)模型,体积小,速度快,比OpenAI Whisper快五倍 本地一键整合包下载
人工智能·whisper·语音识别
浮生如梦_3 小时前
Halcon基于laws纹理特征的SVM分类
图像处理·人工智能·算法·支持向量机·计算机视觉·分类·视觉检测
深度学习lover3 小时前
<项目代码>YOLOv8 苹果腐烂识别<目标检测>
人工智能·python·yolo·目标检测·计算机视觉·苹果腐烂识别
热爱跑步的恒川4 小时前
【论文复现】基于图卷积网络的轻量化推荐模型
网络·人工智能·开源·aigc·ai编程
励志成为嵌入式工程师5 小时前
c语言简单编程练习9
c语言·开发语言·算法·vim
捕鲸叉5 小时前
创建线程时传递参数给线程
开发语言·c++·算法
A charmer5 小时前
【C++】vector 类深度解析:探索动态数组的奥秘
开发语言·c++·算法