📜  Tensorflow 中的递归神经网络 (RNN) 类型

📅  最后修改于: 2022-05-13 01:54:45.353000             🧑  作者: Mango

Tensorflow 中的递归神经网络 (RNN) 类型

循环神经网络 (RNN)更像人工神经网络 (ANN),主要用于语音识别和自然语言处理 (NLP)。深度学习和模拟人脑神经元活动的模型构建使用 RNN。

来自传感器、股票市场和政府机构的文本、基因组、笔迹、口语和数字时间序列数据是循环网络用于识别模式的数据示例。循环神经网络类似于常规神经网络,并添加了神经元的记忆状态。计算中将包含一个简单的内存。

递归神经网络是一种使用顺序方法的深度学习方法。我们总是假设神经网络中的每个输入和输出都依赖于所有其他级别。递归神经网络之所以如此命名,是因为它们以连续的顺序执行数学计算。

RNN 的类型:

1.一对一的RNN:

一对一 RNN

上图表示香草神经网络的结构。它用于解决只有一个输入和输出的一般机器学习问题。

示例:图像分类。

2. 一对多 RNN:

一对多 RNN

一个输入和几个输出描述了一个一对一的循环神经网络。上图就是一个例子。

示例:图像被发送到 Image Captioning,生成一个单词句子。

3.多对一RNN:

多对一 RNN

此 RNN 从给定的一系列输入创建单个输出。

示例:情感分析是此类网络的示例之一,其中将文本识别为表达积极或消极的感受。

4.多对多RNN:

多对多 RNN

该 RNN 接收一组输入并产生一组输出。

示例:机器翻译,其中 RNN 扫描任何英文文本,然后将其转换为法语。

RNN 的优点:

  1. RNN 可以以这样一种方式表示一组数据,即假设每个样本都依赖于前一个样本。
  2. 为了扩展活动像素邻域,循环神经网络与卷积层相结合。

RNN 的缺点:

  1. RNN 训练是一个艰难的过程。
  2. 如果它使用 tanh 或 ReLu 之类的激活函数,它将无法处理非常长的序列。
  3. RNN 中的梯度消失或爆炸问题