2021-09-16

task 02,attention和seq2seq

RNN

假设序列输入是一个句子,这个句子可以由 n n n个词表示: s e n t e n c e = w 1 , w 2 , . . . , w n sentence = {w_1, w_2,...,w_n} sentence=w1,w2,...,wn
RNN首先将句子中的每一个词映射成为一个向量得到一个向量序列: X = x 1 , x 2 , . . . , x n X = {x_1, x_2,...,x_n} X=x1,x2,...,xn,每个单词映射得到的向量通常又叫做:word embedding。

然后在处理第 t ∈ [ 1 , n ] t \in [1,n] t[1,n]个时间步的序列输入 x t x_t xt时,RNN网络的输入和输出可以表示为: h t = R N N ( x t , h t − 1 ) h_{t} = RNN(x_t, h_{t-1}) ht=RNN(xt,ht1)

输入:RNN在时间步 t t t的输入之一为单词 w t w_t wt经过映射得到的向量 x t x_t xt
输入:RNN另一个输入为上一个时间步 t − 1 t-1 t1得到的hidden state向量 h t − 1 h_{t-1} ht1,同样是一个向量。
输出:RNN在时间步 t t t的输出为 h t h_t ht hidden state向量。编码器逐步得到hidden state并传输最后一个hidden state给解码器。接着,结合编码器处理输入序列,一起来看下解码器如何一步步得到输出序列的l。与编码器类似,解码器在每个时间步也会得到 hidden state(隐藏层状态),而且也需要把 hidden state(隐藏层状态)从一个时间步传递到下一个时间步。

seq2

seq2seq模型由编码器(Encoder)和解码器(Decoder)组成。绿色的编码器会处理输入序列中的每个元素并获得输入信息,这些信息会被转换成为一个黄色的向量(称为context向量)。当我们处理完整个输入序列后,编码器把 context向量 发送给紫色的解码器,解码器通过context向量中的信息,逐个元素输出新的序列。
seq2seq模型中的编码器和解码器一般采用的是循环神经网络RNN(Transformer模型还没出现的过去时代)。编码器将输入的法语单词序列编码成context向量(在绿色encoder和紫色decoder中间出现),然后解码器根据context向量解码出英语单词序列。

attention

attention可以简单理解为:一种有效的加权求和技术,其艺术在于如何获得权重。需要注意的是:注意力模型不是无意识地把输出的第一个单词对应到输入的第一个单词,它是在训练阶段学习到如何对两种语言的单词进行对应。

。。。。。

未完待续,时间挤一挤还是有的。关于transforme。r

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值