深度学习第一章(rnn)

cnn与rnn区别:

cnn需要固定长度的输入、输出,rnn的输入和输出可以是不定长、不等长的

cnn只有one to one ,rnn有onetoone,onetomany(图像生成文字),manytoone(分类),manytomany(最常用的RNN)

n to m(机器翻译,文本摘要,语音识别),n to n(图像每一帧分类)

h1 = f(U*X+W*h+b),y = softmax(V*h1+c),其中U,W,V是共享的,即每一步都是相同的

rnn处理序列数据

encoder-decoder缺点

编码,解码唯一的联系是上下文变量c

编码需要将序列压缩成一个定常变量c

先输入的信息经过经过激活函数,会被稀释掉

为了弥补encoder-decoder的缺陷提粗了attention机制

每个c都会选择与当前输出最相关的上下文信息

c1 = h(1)*a(11)+h(2)*a(12)+h(3)*a(13)+h(4)*a(14),其中h(i)表示encoder中的隐含状态,a(i j)表示第j阶段的编码h(j)对当前 i 阶段decoder的重要程度。

a(i j)的计算和解码decoder时第 i-1阶段的隐含状态h‘,编码encoder时第j阶段的隐含状态相关

a(11) = h‘(0)与h(1)经过变换得到

a(12) = h‘(0)与h(2)经过变换得到

a(13) = h‘(0)与h(3)经过变换得到

a(14) = h‘(0)与h(4)经过变换得到

a(11),a(12),a(13),a(14)再经过exp(a(11))/exp(a(11)+a(12)+a(13)+a(14)),保证和为1.

attention的优点

不要求编码器将所有信息编码成一个定长上下文向量

每一次输出都充分利用输入携带的信息,根据关注焦点不一样,语义向量Ci不一样

缺点

解码阶段需要计算每个输入输出的attention组合,50个单词的输入输出就需要计算2500词的attention

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值