基于transformer的NLP入门 day02

1 图解Attention

资料:datawhalechina/learn-nlp-with-transformers: we want to create a repo to illustrate usage of transformers in chinese (github.com)

seq2seq模型

  seq2seq(序列到序列模型)接收的输入是一个(单词、字母、图像特征)序列,输出是另一个序列。
  seq2seq模型是由编码器和解码器组成的。其中,编码器会处理输入序列中的每个元素,把这些信息转换为一个向量(称为上下文(context))。当我们处理完整个输入序列后,编码器把上下文(context)发送给解码器,解码器开始逐项生成输出序列中的元素。


encoder-decoder
  1. 注意力模型的解码器 RNN 的输入包括:一个embedding 向量,和一个初始化好的解码器 hidden
    state(隐藏层状态)。
  2. RNN 处理上述的 2 个输入,产生一个输出和一个新的 hidden state(隐藏层状态 h4 向量),其中
    输出会被忽略。
  3. 注意力的步骤:我们使用编码器的 hidden state(隐藏层状态)和 h4 向量来计算这个时间步的上
    下文向量(C4)。
  4. 我们把 h4 和 C4 拼接起来,得到一个向量。
  5. 我们把这个向量输入一个前馈神经网络(这个网络是和整个模型一起训练的)。
  6. 前馈神经网络的输出的输出表示这个时间步输出的单词。
  7. 在下一个时间步重复这个步骤

2 图解transformer

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?
多头注意力机制
位置编码来表示序列的顺序
残差链接

decoder

线性层,softmax层

损失函数

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容