循环神经网络(RNN)及其变体:原理、应用与优化
1. 循环神经网络(RNN)基础
在探讨神经网络时,除了权重,RNN 还引入了“状态”这一概念。权重用于将输入处理为输出,而状态包含了 RNN 到目前为止所见过信息的痕迹,影响着 RNN 的功能。状态是一种短期记忆,在一个序列完成后会重置。
当 RNN 单元接收到序列的各个部分时,会执行以下操作:
1. 处理这些输入,每次输入都会改变状态。
2. 输出结果。
3. 在看到最后一个输出后,RNN 使用反向传播学习将输入映射到正确输出的最佳权重。
1.1 RNN 在语音识别与翻译中的应用
随着全球经济日益全球化,语言识别和翻译能力变得愈发重要。在语言翻译领域,人工智能相较于人类具有明显优势。要实现有效的翻译,从神经网络架构的角度来看,有两种选择:
- 保留 RNN 单元提供的所有输出。
- 仅保留最后一个 RNN 单元的输出。
最后一个输出是整个 RNN 的输出,因为它是在完成序列检查后产生的。不过,如果需要预测另一个序列,或者打算在当前 RNN 单元之后堆叠更多单元(如在使用卷积神经网络 CNN 时),可以使用之前的输出。垂直堆叠 RNN 能使网络学习复杂的序列模式,提高预测效果;水平堆叠 RNN 可以让多个 RNN 从序列中学习,获取更多数据信息,类似于 CNN 中每个单层使用卷积深度来学习图像的细节和模式。
使用多个 RNN 有以下几种输入/输出配置:
| 配置类型 | 输入 | 输出 | 应用示例 |
| — | — | — | — |
| 一对一 | 一个输入 | 一个输出 | 对一
RNN及其变体原理与应用
超级会员免费看
订阅专栏 解锁全文
1561

被折叠的 条评论
为什么被折叠?



