以下叙述只是简单的叙述,CNN+RNN(LSTM,GRU)的应用相关文章还很多,而且研究的方向不仅仅是下文提到的1. CNN 特征提取,用于RNN语句生成图片标注。2. RNN特征提取用于CNN内容分类视频分类。3. CNN特征提取用于对话问答图片问答。还有很多领域,比如根据面目表情判断情感,用于遥感地图的标注,用于生物医学的图像解析,用于安全领域的防火实时监控等。而且现阶段关于CNN+RNN的研究应用相关文章更加多样,效果越来越好,我们可以通过谷歌学术参阅这些文章,而且大部分可免费下载阅读,至于付费的那就另说咯。

CNN与RNN对比

CNN卷积神经网络与RNN递归神经网络直观图

相同点:

  传统神经网络的扩展。

  前向计算产生结果,反向计算模型更新。

  每层神经网络横向可以多个神经元共存,纵向可以有多层神经网络连接。

不同点:

  CNN空间扩展,神经元与特征卷积;RNN时间扩展,神经元与多个时间输出计算

  RNN可以用于描述时间上连续状态的输出,有记忆功能,CNN用于静态输出

  CNN高级100+深度,RNN深度有限

CNN+RNN组合方式

1. CNN 特征提取,用于RNN语句生成图片标注。

2. RNN特征提取用于CNN内容分类视频分类。

3. CNN特征提取用于对话问答图片问答。

具体应用

1.图片标注

基本思路:

目标是产生标注的语句,是一个语句生成的任务,LSTM?描述的对象大量图像信息,图像信息表达,CNN?CNN网络中全连接层特征描述图片,特征与LSTM输入结合。

具体步骤:

模型设计-特征提取全连接层特征用来描述原图片LSTM输入:word+图片特征;输出下一word。

模型设计-数据准备

图片CNN特征提取2. 图片标注生成Word2Vect 向量3. 生成训练数据:图片特征+第n单词向量:第n+1单词向量。

模型训练:

运用迁移学习,CNN特征,语句特征应用已有模型2. 最终的输出模型是LSTM,训练过程的参数设定:梯度上限(gradient clipping), 学习率调整(adaptivelearning)3. 训练时间很长。

模型运行:

CNN特征提取2. CNN 特征+语句开头,单词逐个预测

2.视频行为识别

视频中在发生什么?

常用方法总结:

RNN用于CNN特征融合1. CNN 特征提取2. LSTM判断3. 多次识别结果分析。

不同的特征不同输出。

或者:所有特征作为一个输出。

RNN用于CNN特征筛选+融合:

1.并不是所有的视频 图像包含确定分类信息

2. RNN用于确定哪些frame 是有用的3. 对有用的图像特征 融合。

RNN用于,目标检测:

1.CNN直接产生目标候选区

2. LSTM对产生候选区融合(相邻时刻位置近 似)

3. 确定最终的精确位置。

多种模型综合:

竞赛/应用中,为了产生最好结果,多采用 多模型ensemble形式。

3.图片/视频问答

问题种类:

图片问答意义:

1. 是对纯文本语言问答系统的扩展

2. 图片理解和语言处理的深度融合

3. 提高人工智能应用范围-观察,思考,表达

方法流程:

1.依旧按照语言问答流程解决

2.图片特征同语言特征融合

3.训练数据:问题+图片----答案

模型设计-纯文字问答系统:

1.背景故事特征生成(word embedding)

2.问题特征生成

3.背景,问题特征融合

4.标准答案回归

模型设计-图片问答系统:

1.背景故事特征生成CNN

2.问题特征生成

3.背景,问题特征融合

4.标准答案回归----用以训练的数据:真值是什么?

模型优化-1

对图片特征向量进一步处理,建立CNN特征的 fisher特征

提高特征表达效率,更容易同encoding 特征组合

模型优化-2

用问题作为“候选区域”对原始CNN 特征图局部识别

模型优化-3

注意力图对图片问答帮助,根据问题产生第一次注意力图,然后最终注意力图,最后进行回答

什么在筐子里?

1筐子范围, 2 筐子里范围, 3 识别

模型优化小结

1.不同的优化结构方便不同类型的问题回答,数字/种类/抽象/二值判断

2.仍然是很新的研究问题,上述例子来源于 CVPR2016,学术价值应用价值都很大

3.人机交互中图片问答在 盲人辅助/教育/智能助手等方面大有可为

深度学习-CNN+RNN笔记的更多相关文章

  1. 深度学习Keras框架笔记之TimeDistributedDense类

    深度学习Keras框架笔记之TimeDistributedDense类使用方法笔记 例: keras.layers.core.TimeDistributedDense(output_dim,init= ...

  2. 深度学习之 rnn 台词生成

    深度学习之 rnn 台词生成 写一个台词生成的程序,用 pytorch 写的. import os def load_data(path): with open(path, 'r', encoding ...

  3. 深度学习Keras框架笔记之AutoEncoder类

    深度学习Keras框架笔记之AutoEncoder类使用笔记 keras.layers.core.AutoEncoder(encoder, decoder,output_reconstruction= ...

  4. 深度学习Keras框架笔记之Dense类(标准的一维全连接层)

    深度学习Keras框架笔记之Dense类(标准的一维全连接层) 例: keras.layers.core.Dense(output_dim,init='glorot_uniform', activat ...

  5. [深度学习]理解RNN, GRU, LSTM 网络

    Recurrent Neural Networks(RNN) 人类并不是每时每刻都从一片空白的大脑开始他们的思考.在你阅读这篇文章时候,你都是基于自己已经拥有的对先前所见词的理解来推断当前词的真实含义 ...

  6. 深度学习 CNN CUDA 版本2

    作者:zhxfl 邮箱:zhxfl##mail.ustc.edu.cn 主页:http://www.cnblogs.com/zhxfl/p/4155236.html 第1个版本blog在这里:http ...

  7. 深度学习-TensorFlow2.0笔记(一)

    一.Tensor 1.1 什么是Tensor?Tensor的数据类型 Tensor是张量的意思,在TensorFlow中张量可以是标量(scalar).向量(vector).矩阵(matrix).高维 ...

  8. 《动手学深度学习》系列笔记—— 1.2 Softmax回归与分类模型

    目录 softmax的基本概念 交叉熵损失函数 模型训练和预测 获取Fashion-MNIST训练集和读取数据 get dataset softmax从零开始的实现 获取训练集数据和测试集数据 模型参 ...

  9. deeplearning.ai 神经网络和深度学习 week1 深度学习概论 听课笔记

    1. 预测房价.广告点击率:典型的神经网络,standard NN. 图像:卷积神经网络,CNN. 一维序列数据,如音频,翻译:循环神经网络,RNN. 无人驾驶,涉及到图像.雷达等更多的数据类型:混合 ...

随机推荐

  1. UDF——涡量

    用涡量的模来显示涡结构是一种很常用的方法 涡量: 针对二维,涡量场表示为如下的标量: 对于二维流动来说,涡量为正,表示逆时针旋转:涡量为负,表示顺时针旋转 三维涡量: 其中: 计算涡量的模: 二维涡量 ...

  2. 联想M7216NWA墨粉清零:

    在设备就绪状态下,按"功能"键,进入设置菜单,按上下键进行选择,屏幕出现"设备信息"项时按"确认"键,再按上下键选择,当屏幕出现" ...

  3. linux运维 技能 2018

    1.监控与日志 prometheus.grafana.zabbix ELK(elasticsearch logstash filebeat kibana) 2.容器类 harbor映像管理 docke ...

  4. [技术博客]使用CDN加快网站访问速度

    [技术博客]使用CDN加快网站访问速度 2s : most users are willing to wait 10s : the limit for keeping the user's atten ...

  5. Centos7下把python 2.7升级到python 3.6(升级过程遇到的一些相关问题)

    Centos 7 默认安装的Python 的版本是2.7的,现在不少人用的是3.x上的版本,故而需要了解下如何从Python2.7升级到Python 3.6. 在虚拟机安装时,网络不通会先遇到一个错误 ...

  6. 微信小程序 input 的 type属性 text、number、idcard、digit 区别

    微信小程序的 input 有个属性叫 type,这个 type 有几个可选值: text:不必解释 number:数字键盘(无小数点) idcard:数字键盘(无小数点.有个 X 键) digit:数 ...

  7. spark跑YARN模式或Client模式提交任务不成功(application state: ACCEPTED)(转)

    不多说,直接上干货! 问题详情 电脑8G,目前搭建3节点的spark集群,采用YARN模式. master分配2G,slave1分配1G,slave2分配1G.(在安装虚拟机时) export SPA ...

  8. 多线程--同步--方法块和同步块synchronized

    package com.sxt.syn; /** * 线程安全: 在并发时保证数据的正确性.效率尽可能高 * synchronized * 1.同步方法 * 2.同步块 * * */ public c ...

  9. Spring boot与Spring cloud之间的关系

    Spring boot 是 Spring 的一套快速配置脚手架,可以基于spring boot 快速开发单个微服务,Spring Boot,看名字就知道是Spring的引导,就是用于启动Spring的 ...

  10. 中国知网(cnki)上caj格式转pdf的方法 ----------------- 转载

    原文地址: https://blog.csdn.net/edogawachia/article/details/85340636 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议 ...