【问题标题】:Does a pulsed (spiking) neural network outperform a recurrent neural net?脉冲(尖峰)神经网络是否优于循环神经网络?
【发布时间】:2011-07-24 12:48:59
【问题描述】:

脉冲和循环神经网络都可以对时变信息进行建模。但我不确定哪个模型相对于计算成本更好。使用更复杂的 pusled 神经网络是否值得,或者循环神经网络是否可以在所需的计算量少得多的情况下正常工作?脉冲网络收敛更快吗?

谢谢

【问题讨论】:

  • 您能否详细说明您要建模的内容?
  • 我正在尝试复制定位单元,以识别正在查看的图像流是新颖的还是熟悉的,并在 2D 地图上对其认为的位置和朝向的方向进行分类。还有许多其他随时间变化的信号,例如音频处理和运动规划,它们将受益于模式识别的时间模型。
  • 您以前用什么平台来模拟这些现象?
  • 既然我拿不回赏金,如果你想自己回答,请继续。

标签: artificial-intelligence machine-learning neural-network


【解决方案1】:

我不相信您以正确的方式看待问题。神经网络(或任何预测模型)最重要的特性是它的准确性。如果模型更加准确(和预测),我宁愿花费 10 倍的时间来构建模型。

有许多标准技术可用于评估模型的预测能力,例如
* 留一法交叉验证
* 多出交叉验证
* Fisher 随机化 (http://en.wikipedia.org/wiki/Ronald_Fisher)

还有许多构建预测模型的指导原则,例如
* 奥卡姆剃刀
* 避免过拟合 (http://web.engr.oregonstate.edu/~tgd/classes/534/slides/part10.pdf)
* 过度拟合的惩罚 (http://en.wikipedia.org/wiki/Regularization_(mathematics))

这里有几个地方可以查找更多信息
http://predictivemodelingblog.blogspot.com/
http://www.statsoft.com/textbook/data-mining-techniques/

底线:选择可以解释数据的最简单模型

【讨论】:

    【解决方案2】:

    让我尝试回答最初的问题,该问题专门针对尖峰神经网络的性能。我最近才开始熟悉尖刺网络,但迄今为止我发现的关于它们性能的最佳评论是 Hélène Paugam-Moisy 和 Sander Bohte 的专着“用尖刺神经元网络计算”,无需付费即可获得 @ 987654321@等网站。

    从这个来源看来,总的来说,就其先天能力而言,它们表现良好;尖峰网络是通用逼近器,就像它们在普通神经网络中的一些同类一样,它们的“计算能力胜过图灵机”。 (第 5 页,Paugam-Moisy 和 Bohte)。事实上,对于 B 型尖峰神经元,Wolfgang Maass “得出结论,尖峰神经元网络在计算上比第一代和第二代神经网络都更强大”,即感知器家族和具有连续激活的网络类别(p. 21,Paugam-Moisy 和 Bohte)。另一方面,它们容易出现加载问题,在论文中讨论的某些条件下,这可能是 NP-Complete 的。

    在计算性能方面,尖峰网络的各种子类型在资源需求方面差异很大。在第 12、14-15 页,Paugam-Moisy 和 Bohte 对处理操作中的一些差异进行了很好、快速的总结:

    “霍奇金-赫胥黎模型 (HH) 是现实的,但过于复杂 用于模拟 SNN。虽然可以应用 ODE9 求解器 直接到微分方程组,它将是 难以计算神经元之间的时间相互作用 霍奇金-赫胥黎模型的大型网络。”

    "...复杂度范围也可以用 模拟的计算要求。由于它由四个定义 微分方程,Hodgkin-Huxley 模型需要大约 1200 每 1ms 模拟的浮点计算 (FLOPS)。简化为 两个微分方程,Morris-LeCar 或 FitzHugh-Nagumo 模型 仍然有一个到几百个 FLOPS 的计算成本。仅有的 LIF 模型需要 5 FLOPS,变体需要大约 10 FLOPS 例如 LIF-with-adaptation 和二次或指数 Integrate-and-Fire 神经元,Izhikevich 的 FLOPS 约为 13 模型。”

    正如预期的那样,计算能力和这些计算成本之间存在权衡; LIF 可能需要很少的 FLOPS,但在文章的后面,他们详细说明了它如何无法达到其他扣球所享受的准确性。计算要求也会受到尖峰网络编码方式的显着影响(我打算自己做,但还没有机会尝试)。在第 38-39 页,Paugam-Moisy 和 Bohte 强烈建议使用可以最大限度地利用并行性的事件驱动架构。我还建议查看他们广泛的参考书目,我相信这会导致许多其他实用的性能技巧。我希望这会有所帮助。

    【讨论】: