吴恩达深度学习——Seq2Seq模型

内容来自https://www.bilibili.com/video/BV1FT4y1E74V,仅为本人学习所用。

基础模型

在这里插入图片描述
翻译模型:输入一个法语句子“Jane visite l’Afrique en septembre” ,经模型转换后输出对应的英语句子“Jane is visiting Africa in September.” 。分别用 x < 1 > x^{<1>} x<1> x < 2 > x^{<2>} x<2> x < 3 > x^{<3>} x<3> x < 4 > x^{<4>} x<4> x < 5 > x^{<5>} x<5> 表示输入序列的各个元素(单词),用 y < 1 > y^{<1>} y<1> y < 2 > y^{<2>} y<2> y < 3 > y^{<3>} y<3> y < 4 > y^{<4>} y<4> y < 5 > y^{<5>} y<5> y < 6 > y^{<6>} y<6> 表示输出序列的各个元素。

seq2seq模型由编码器和解码器组成:

  • 编码器:左侧黑色部分,由RNN构成,RNN单元可以是GRU,也可以是LSTM。初始隐藏状态为 a < 0 > a^{<0>} a<0> ,依次接收输入序列元素 x < 1 > x^{<1>} x<1> x < T x > x^{<T_x>} x<Tx> T x T_x Tx 为输入序列长度),对输入序列进行编码,将序列信息编码到隐藏状态中。
  • 解码器:右侧蓝色部分,基于编码器的输出,逐步生成输出序列 y < 1 > y^{<1>} y<1> y < 2 > y^{<2>} y<2> 等,生成过程中各时间步之间存在依赖关系。
    在这里插入图片描述

图像描述模型:输入的图像是一张猫坐在椅子上的图片,模型要生成描述这张图片内容的文本,如“A cat sitting on a chair”。

CNN部分,初始的卷积层使用大小为 11 × 11 11\times11 11×11,步长(s)为4的卷积核,输出特征图大小为 55 × 55 × 96 55\times55\times96 55×55×96。接着进行最大池化操作,池化核大小为 3 × 3 3\times3 3×3,步长为2,输出特征图变为 27 × 27 × 96 27\times27\times96 27×27×96。后续又经过多个卷积层和最大池化层,如 5 × 5 5\times5 5×5(same填充)的卷积层、 3 × 3 3\times3 3×3(步长为2)的最大池化层等,特征图尺寸和通道数不断变化,最终得到大小为 6 × 6 × 256 6\times6\times256 6×6×256的特征图。再经过进一步处理,将特征图展开为一维向量,维度从 6 × 6 × 256 6\times6\times256 6×6×256(即9216)经过全连接层变换到4096,再经过一次全连接层,到4096,最后通过接入RNN,而不是softmax层。

RNN部分,CNN处理后的信息输入到RNN中,RNN逐步生成描述文本的各个单词,如 y < 1 > y^{<1>} y<1> y < 2 > y^{<2>} y<2> y < 3 > y^{<3>} y<3> y < 4 > y^{<4>} y<4> y < 5 > y^{<5>} y<5> y < 6 > y^{<6>} y<6> ,最终形成完整的图像描述语句“A cat sitting on a chair” 。

选择最可能的句子

在这里插入图片描述

语言模型旨在计算一个句子出现的概率 P ( y < 1 > , … , y < T y > ) P(y^{<1>}, \ldots, y^{<T_y>}) P(y<1>,,y<Ty>) 。输入初始隐藏状态 a < 0 > a^{<0>} a<0> ,接收输入序列 x < 1 > , x < 2 > , … , x < T x > x^{<1>}, x^{<2>}, \ldots, x^{<T_x>} x<1>,x<2>,,x<Tx> ,通过一系列处理逐步输出预测的单词 y ^ < 1 > , y ^ < 2 > , … , y ^ < T y > \hat{y}^{<1>}, \hat{y}^{<2>}, \ldots, \hat{y}^{<T_y>} y^

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值