前馈神经网络和递归神经网络有什么区别?

机器算法验证 机器学习 神经网络 术语 循环神经网络 拓扑
2022-01-24 01:58:15

前馈神经网络和递归神经网络有什么区别

你为什么要使用一个而不是另一个?

是否存在其他网络拓扑?

3个回答

前馈人工神经网络只允许信号以一种方式传播:从输入到输出。没有反馈(循环);,任何层的输出都不会影响同一层。前馈人工神经网络往往是将输入与输出相关联的简单网络。它们广泛用于模式识别。这种类型的组织也称为自下而上或自上而下。

前馈网络

通过在网络中引入环路,反馈(或循环或交互)网络可以使信号在两个方向上传播。反馈网络功能强大,并且可能变得极其复杂。从早期输入派生的计算被反馈到网络中,这给了它们一种记忆。反馈网络是动态的;他们的“状态”不断变化,直到达到平衡点。它们保持在平衡点,直到输入发生变化并且需要找到新的平衡点。

反馈架构

前馈神经网络非常适合建模一组预测变量或输入变量与一个或多个响应或输出变量之间的关系。换句话说,它们适用于我们想知道许多输入变量如何影响输出变量的任何函数映射问题。多层前馈神经网络,也称为多层感知器(MLP),是实践中研究和使用最广泛的神经网络模型。

作为反馈网络的一个例子,我可以回忆一下Hopfield 的网络Hopfield 网络的主要用途是作为联想记忆。关联存储器是一种接受输入模式并生成输出作为与输入最密切相关的存储模式的设备。关联存储器的功能是调用相应的存储模式,然后在输出端生成模式的清晰版本。Hopfield 网络通常用于解决二进制模式向量的问题,输入模式可能是存储模式之一的噪声版本。在 Hopfield 网络中,存储的模式被编码为网络的权重。

Kohonen 的自组织图(SOM) 代表另一种与前馈多层网络明显不同的神经网络类型。与前馈 MLP 中的训练不同,SOM 训练或学习通常被称为无监督,因为在 SOM 中没有与每个输入模式相关联的已知目标输出,并且在训练过程中,SOM 处理输入模式并学习对数据进行聚类或分割通过调整权重(这使其成为降维和数据聚类的重要神经网络模型)。通常以保留输入之间相互关系的顺序的方式创建二维映射。可以根据训练过程生成的输出分布直观地确定聚类的数量和组成。在训练样本中只有输入变量,

(图表来自 Dana Vrajitoru 的C463 / B551 人工智能网站。)

George Dontas 所写的内容是正确的,但是今天在实践中使用 RNN 仅限于一类更简单的问题:时间序列/顺序任务。

虽然前馈网络用于学习数据集,例如(i,t)在哪里it是向量,例如iRn, 对于循环网络i将始终是一个序列,例如i(Rn).

RNN 已被证明能够表示任何可测量的序列到 Hammer 的序列映射。

因此,RNN 现在被用于各种顺序任务:时间序列预测、序列标记、序列分类等。可以在Schmidhuber 的 RNN 页面上找到一个很好的概述。

问这个问题真正有趣的是什么?

与其说RNN和 FNN 的名字不同。所以他们是不同的。,我认为更有趣的是在建模动力系统方面,RNN与FNN有很大不同吗?

背景

对于循环神经网络和前馈神经网络之间的动态系统建模存在争议,具有附加特征作为先前时间延迟(FNN-TD)。

在阅读了 90 年代~2010 年代的那些论文后,据我所知。大多数文献更喜欢 vanilla RNN 优于 FNN,因为 RNN 使用动态内存,而 FNN-TD 是静态内存。

然而,比较这两者的数值研究并不多。早期的 [1] 表明,对于动态系统建模,FNN-TD 在无噪声时表现出与普通 RNN 相当的性能,而在有噪声时表现稍差。在我对动态系统建模的经验中,我经常看到 FNN-TD 已经足够好了。

如何处理 RNN 和 FNN-TD 之间的记忆效应的关键区别是什么?

不幸的是,我在任何地方都看不到,任何出版物理论上都显示了这两者之间的区别。这很有趣。让我们考虑一个简单的情况,使用标量序列Xn,Xn1,,Xnk预测Xn+1. 所以这是一个序列到标量的任务。

FNN-TD 是处理所谓记忆效应的最通用、最全面的方法由于它是残酷的,它理论上涵盖了任何种类,任何种类,任何记忆效应。唯一的缺点是它在实践中需要太多的参数。

RNN 中的记忆只不过表示为先前信息的一般“卷积”我们都知道,两个标量序列之间的卷积通常不是一个可逆过程,反卷积通常是病态的。

我的猜想是这种卷积过程中的“自由度”是由RNN状态下隐藏单元的数量决定的s. 这对一些动力系统很重要。请注意,“自由度”可以通过状态 [2] 的时间延迟嵌入来扩展,同时保持相同数量的隐藏单元。

因此,RNN实际上是通过卷积来压缩之前有损失的记忆信息,而FNN-TD只是在某种意义上将它们暴露出来,没有记忆信息的损失。请注意,您可以通过增加隐藏单元的数量或使用比普通 RNN 更多的时间延迟来减少卷积中的信息损失。从这个意义上说,RNN 比 FNN-TD 更灵活。RNN 可以实现与 FNN-TD 一样的无记忆损失,并且可以简单地显示参数的数量在相同的顺序上。

我知道有人可能会提到 RNN 具有长期效应,而 FNN-TD 则不能。为此,我只想提一下,对于一个连续自主的动力系统,从 Takens 嵌入理论来看,对于具有看似短时间记忆的 FNN-TD 来说,嵌入是一个通用属性,以实现与看似长时间记忆相同的性能RNN 中的内存。它解释了为什么 RNN 和 FNN-TD 在 90 年代初的连续动力系统示例中没有太大差异。

现在我将提到 RNN 的好处。对于自主动力系统的任务,使用更多的前项,虽然在理论上有效地与使用更少的前项的 FNN-TD 相同,但在数值上它会有所帮助,因为它对噪声更鲁棒。[1]中的结果与此观点一致。

参考

[1]Gençay、Ramazan 和 Tung Liu。“使用前馈和循环网络进行非线性建模和预测。” 物理学 D:非线性现象 108.1-2 (1997):119-134。

[2] 潘绍武和 Karthik Duraisamy。“闭包模型的数据驱动发现”。arXiv 预印本 arXiv:1803.09318 (2018)。