文章目录
RNN架构
RNN模型含义
RNN(Recurrent Neural Network), 中文称作循环神经网络, 它一般以序列数据为输入, 通过网络内部的结构设计有效捕捉序列之间的关系特征, 一般也是以序列形式进行输出.
RNN模型结构
一般的神经网络
RNN单层个网络结构
RNN以时间步展开单层网络结构
从动态图中可以看出,RNN的输入有
- 当前的INPUT
- 上一步的隐藏层的输出结果
RNN模型作用
- 可以有效处理连续性输入的序列,如人类语言
- 适用于文本分类、情感分析、意图识别和机器翻译
举例
从该动图可以看出当分析到"?“时,其实网络得出的答案O5已经结合了这句话所有的单词,并不只是分析了”?"。
RNN模型的分类
- 角度
-
输入输出的结构进行分类
输入规模 输出规模 模型 N N RNN N 1 RNN 1 N RNN N M RNN -
按照RNN的内部构造进行分类
RNN模型 传统RNN模型 LSTM(长短期记忆模型) Bi-LSTM GRU Bi-GRN
N-N
特点
- 输入输出序列等长
- 使用范围小
使用场景
- 生成等长的合辙诗句
示意图
N-1
特点
- 输入N个数据,输出1个数据
- 为了更好的明确结果, 还要使用sigmoid或者softmax进行处理.
使用场景
- 用户问一个问题,其实想要一个答案,如今天多少度?34摄氏度。
- 电影评论得分
示意图
1-N
特点
- 输入1个数据,输出N个数据
使用场景
- 图片生成文字任务
示意图
N-M
特点
- 输入N个数据,输出M个数据
- 由解码器和译码器组成,被称为Seq2Seq
- 实际上是由N-1和1-N模型组成
使用场景
- 机器阅读
- 机器翻译