1 图解Attention
seq2seq模型
seq2seq(序列到序列模型)接收的输入是一个(单词、字母、图像特征)序列,输出是另一个序列。
seq2seq模型是由编码器和解码器组成的。其中,编码器会处理输入序列中的每个元素,把这些信息转换为一个向量(称为上下文(context))。当我们处理完整个输入序列后,编码器把上下文(context)发送给解码器,解码器开始逐项生成输出序列中的元素。
- 注意力模型的解码器 RNN 的输入包括:一个embedding 向量,和一个初始化好的解码器 hidden
state(隐藏层状态)。 - RNN 处理上述的 2 个输入,产生一个输出和一个新的 hidden state(隐藏层状态 h4 向量),其中
输出会被忽略。 - 注意力的步骤:我们使用编码器的 hidden state(隐藏层状态)和 h4 向量来计算这个时间步的上
下文向量(C4)。 - 我们把 h4 和 C4 拼接起来,得到一个向量。
- 我们把这个向量输入一个前馈神经网络(这个网络是和整个模型一起训练的)。
- 前馈神经网络的输出的输出表示这个时间步输出的单词。
- 在下一个时间步重复这个步骤
2 图解transformer
transformer的优点:
优点,就是使得模型训练过程能够并行计算。在 RNN 中,每一个 time step (时间步)的计算都依赖于上一个 time step 的输出,这就使得所有的 time step 必须串行化,无法并行计算
transformer输入:embedding词向量
encoder:多层编码器:1.self-attention Layer 2. feed forward Neural Network
如何计算Q,K,V?
如何计算attention Score?
多头注意力机制
位置编码来表示序列的顺序
残差链接