Transformer模型

📁机器学习📆2023-11-01 🤯PH 👀412 次浏览

Transformer 模型是一种深度学习架构,自2017年推出以来,彻底改变了自然语言处理(NLP)领域。该模型由Google提出,并已成为NLP界最具影响力的模型之一。在自然语言处理任务中,输入文本由多个词嵌入(Word Embeddings)组成,每个词嵌入包含词汇信息和位置编码,Transformer使用自注意力机制(Self-Attention)来处理输入序列中的不同位置之间的依赖关系,即“上下文关系”。

具体来说,自注意力机制是对每个位置进行Query、Key、Value的线性变换,计算关注其他位置的分数(也叫注意力分数)。这些分数经过Softmax归一化,产生每个位置对其他位置的注意力权重。再使用这些权重来加权平均输入序列的表示,从而获得每个位置的上下文表示,见图1。自注意力机制的计算是并行的,因此能够处理输入序列中的所有元素。这是Transformer的核心。

Transformer模型-BtoAI
图1 Attention机制的本质思想
Transformer模型-BtoAI
 图2 Transformer模型架构

Transformer模型通常还会引入多头注意力机制,允许模型学习多个不同的注意力表示。每个头都有自己的一组查询、键和值权重矩阵,从而使模型可以关注不同类型的关系和特征(依赖关系)。图2解释了模型架构,可以分为输入、编码、解码、输出。

·输入 输入数据后,转化为“词嵌入”,并添加位置编码(Posiutional Encoding)确保语义正确。Inputs是指输入任务,Outputs是指训练时的Target,在进行预测时解码块不会接收Outputs。

·编码 一个编码过程由多头注意力和前向传播构成,同时添加一个残差块X(ResNet,防止梯度消失)并归一化(提高稳定性,加快训练速度)。

·解码 比编码多了一个掩码多头自注意力(Masked Multi-Head Attention)目的是确保生成的文本不依赖未来信息。解码器会接收到来自训练的输入和预测时的输入。

·输出 解码后进行线性变换,通过Softmax得到概率分布,输出预测。

总而言之,Transformer优势在于效果好、速度快、很好解决了“上下文问题”。但完全基于自注意力机制,对于词语位置之间的信息有一定的丢失,仍然存在可以优化的地方。

更多文章

回到顶部