赞
踩
本文将从Seq2Seq工作原理、Attention工作原理、Transformer工作原理三个方面,详细介绍Encoder-Decoder工作原理。
Encoder-Decoder工作原理
Seq2Seq(Sequence-to-Sequence):输入一个序列,输出另一个序列。
在2014年,Cho等人首次在循环神经网络(RNN)中提出了Seq2Seq(序列到序列)模型。与传统的统计翻译模型相比,Seq2Seq模型极大地简化了序列转换任务的处理流程。
Seq2Seq
Seq2Seq模型通过端到端的训练方式,将输入序列和目标序列直接关联起来,避免了传统方法中繁琐的特征工程和手工设计的对齐步骤。这使得模型能够自动学习从输入到输出的映射关系,提高了序列转换任务的性能和效率。
Seq2Seq
Seq2Seq模型中的编码器使用循环神经网络将输入序列转换为固定长度的上下文向量,而解码器则利用这个向量和另一个循环神经网络逐步生成输出序列。
Seq2Seq的工作原理
Seq2Seq的工作原理
Attention Mechanism(注意力机制):Attention Mechanism是一种在深度学习模型中用于处理序列数据的技术,尤其在处理长序列时表现出色。最初引入注意力机制是为了解决机器翻译中遇到的长句子(超过50字)性能下降问题。
传统的机器翻译在长句子上的效果并不理想,因为固定长度的向量难以包含句子的所有语义细节。注意力机制的核心思想是在生成每个输出词时,模型都能够关注到输入序列中的相关部分。
Attention Mechanism
通过计算Decoder的隐藏状态与Encoder输出的每个词的隐藏状态的相似度(Score),进而得到每个词的Attention Weight,再将这些Weight与Encoder的隐藏状态加权求和,生成一个Context Vector。
Attention的工作原理
Encoder(编码器)
计算 Score、Attention Weight
计算Context Vector
Transformer:通常Attention会与传统的模型配合起来使用,但Google的一篇论文《Attention Is All You Need》中提出只需要注意力就可以完成传统模型所能完成的任务,从而摆脱传统模型对于长程依赖无能为力的问题并使得模型可以并行化,并基于此提出Transformer模型。
注意力机制的演化过程
主要由输入部分(输入输出嵌入与位置编码)、多层编码器、多层解码器以及输出部分(输出线性层与Softmax)四大部分组成。
Transformer架构
输入部分:
编码器部分:
解码器部分:
输出部分:
左边是N个编码器,右边是N个解码器,图中Transformer的N为6。
Transformer工作原理
Encoder(编码器)架构
Decoder(解码器)架构
参考:架构师带你玩转AI
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。