CNN和RNN结合
一.CNN和RNN
1.CNN和RNN
2.CNN和RNN异同点
(1)相同点
a.传统神经网络的扩展;
b.前向计算产生结果,反向计算模型更新;
c.每层神经网络横向可以多个神经元共存,纵向可以有多层神经网络连接。
(2)不同点
a.CNN空间扩展,神经元与特征卷积;RNN时间扩展,神经元与多个时间输出计算;
b.RNN可以用于描述时间上连续状态的输出,有记忆功能,CNN用于静态输出;
c.CNN高级100+深度,RNN深度有限。
3.CNN和RNN组合
(1)CNN和RNN组合意义
a.大量信息同时具有时间和空间的特性:视频,图文结合,真实对话场景;
b.带有图像的对话,文本表达更具体;
c.视频相对图片描述的内容更具体。
(2)CNN和RNN组合方式
a. CNN 特征提取,用于RNN语句生成(图片标注);
b. RNN特征提取用于CNN内容分类(视频分类);
c. CNN特征提取用于对话问答(图片问答)。
(3)CNN和RNN组合方式实现
a. 特征提取: LSTM输出(考虑不同时间研究对象的特征),FC层输出。
b. 特征合并:Concatenate层(合并在一起形成更长的向量),Attention相乘(某些区域加强,某些区域削弱)。
c. 结果输出:连续语句输出LSTM,组合分类回归DNN。
二.图片标注
1.问题描述
拥有大量图片及其标注信息,能够通过学习建立一个能够自动图片标注的模型。
2.基本思路
a.目标是产生标注语句,是一个语句生成的任务,根本上来说是一个RNN的任务,使用LSTM。
b.描述的对象是大量的图像信息,进行图像信息的表达,使用CNN。
c.CNN网络中全连接层利用特征进行图片的描述,特征与LSTM输入进行结合。
3.模型设计
(1)整体结构
)
(2)特征提取
a.全连接层特征用来描述原图片;
b.LSTM输入:word+图片特征;输出下一word。
(3)数据准备
a. 图片CNN特征提取
b. 图片标注生成Word2Vect 向量
c. 生成训练数据:图片特征+第n单词向量:第n+1单词向量。
(4)模型训练
a. 运用迁移学习,CNN特征,语句特征应用已有模型;
b.最终的输出模型是LSTM,训练过程的参数设定:梯度上限(gradient clipping), 学习率调整(adaptivelearning);
c. 训练时间很长。
(5)模型运行
a. CNN特征提取;
b. CNN 特征+语句开头,单词逐个预测。
三.视频行为识别
1.问题定义
视频中在发生什么?
2.常用方法总结
(1)CNN特征简单组合
(2)3D版本CNN
(3)RNN+CNN
a.RNN 用于 CNN 特征融合
b.RNN 用于 CNN 特征筛选+融合
c.RNN 用于 目标检测
四.图片/视频问答
1.问题定义
给定一张图片,提出图片内容相关问题,问答模型给出答案。
2.问题种类
3.方法流程
a.按照语言问答路程解决;
b.图片特征同语言特征融合;
c.训练数据:问题+图片->答案