专栏首页专知脉冲神经网络,下一代机器学习?

脉冲神经网络,下一代机器学习?

【导读】近日,Devin Soni撰写了一篇博文,讲解了第三代神经网络的构思,脉冲神经网络(Spiking Neural Networks, SNN),目的是在填补神经科学和机器学习之间的鸿沟,能够使用仿真生物的神经元模型进行计算。脉冲神经网络(SNN)与机器学习大众所熟知的神经网络有着本质上的区别。文章中,作者会讲解脉冲神经网络的意义和当前机器学习中神经网络的区别和联系,也探讨了未来脉冲神经网络在实际应用中的可能性。希望通过阅读本文,给您带来新的感悟。专知内容组编辑整理。

Spiking Neural Networks, the Next Generation of Machine Learning

脉冲神经网络,下一代机器学习

每个对机器学习方面的最新进展有所了解的人都听说过目前用于机器学习的第二代人工神经网络,这个网络通常是全连接的,输入连续的值,并输出连续的值。虽然这让我们在许多领域都取得了突破性进展,但它们在生物学上是不准确的,而且并没有模拟我们大脑神经元的实际机制。

第三代神经网络,脉冲(spiking)神经网络,旨在填补神经科学和机器学习之间的鸿沟,使用仿真生物的神经元模型进行计算。脉冲神经网络(SNN)与机器学习大众所熟知的神经网络有着本质上的区别。SNN使用脉冲来运行,脉冲是在时间点发生的离散事件,而不是连续的值。脉冲的产生是由表示各种生物过程的微分方程决定的,其中最重要的是神经元的膜电位(membrane potential)。从本质上说,一旦神经元达到一定的电位,它就会出现峰值,并且神经元的电位就会被重置。最常见的模型是Leaky integrate-and-fire (LIF) 模型。另外,SNN通常是稀疏的连接,并且利用了专门化的网络拓扑。

图:LIF模型中膜电位的微分方程

乍一看,这似乎是一种倒退。我们从连续的输出变成了二进制,这些脉冲不是很容易解释的。然而,脉冲序列(spike trains)为我们提供了更强大的处理时空数据的能力,换句话说,就是处理现实世界的感官数据的能力。空间方面是指神经元只与它们本地的神经元连接,因此它们固有地各自单独处理输入块(类似于CNN使用滤波器的方法)。时间方面指的是,脉冲序列(spike trains)会随着时间的推移而发生,所以我们在二进制编码中丢失的东西,会在峰值的时间信息中得到。这使我们能够自然地处理时间数据,而不需要RNNs增加的额外的复杂性。事实证明,与传统的人工神经元相比,spiking神经元是更强大的计算单元。

图:峰值期间的膜电位行为

图:一个由3个神经元组成的网络的尖峰信号(脉冲)序列

图: 一个完整的spiking神经网络

鉴于这些SNNs在理论上比第二代网络更强大,所以很自然地想知道为什么我们看不到它们的广泛使用。目前在SNNs实际使用中的主要问题是训练。虽然我们有无监督的生物学习方法,如Hebbian学习和STDP,但是暂时没有有效的监督训练方法来训练SNNs能够比第二代网络性能更好。由于脉冲序列(spike trains)是不可微的,所以我们不能使用梯度下降而不丢失脉冲序列中精确时间信息的方法来训练SNNs。因此,为了正确地将SNNs用于现实世界的任务,我们需要开发一种有效的监督学习方法。这是一项非常困难的任务,因为需要考虑到在这些网络中的生物现实主义,这将涉及到探究人类大脑如何真正地学习。

另一个我们更需要尽快解决的问题是,在普通硬件上模拟SNN是一项非常计算密集型的任务,因为它需要模拟微分方程。然而,像IBM的TrueNorth这样的神经形态硬件的目标是通过使用专门的硬件来模拟神经元来解决这一问题,这些硬件可以利用神经元脉冲信号的离散性和稀疏性的。

因此,脉冲神经网络的未来仍不明朗。一方面,它们是我们目前神经网络的理所当然的继承者,但另一方面,对于大多数任务来说,它们还不是实用的工具。目前,SNNs在实时图像和音频处理方面的实际应用还比较多,但实际应用的文献仍然很少。大多数关于SNNs的论文要么是理论上的,要么是在一个简单的完全连接的第二代网络中表现出来的。然而,有许多团队正在开发SNN监督学习规则,我仍然对SNN的未来持乐观态度。

参考链接:

https://towardsdatascience.com/spiking-neural-networks-the-next-generation-of-machine-learning-84e167f4eb2b

本文分享自微信公众号 - 专知(Quan_Zhuanzhi),作者:专知内容组(编)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-01-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【重温经典】吴恩达课程学习笔记一:监督学习

    【导读】前一段时间,专知内容组推出了春节充电系列:李宏毅2017机器学习课程学习笔记,反响热烈,由此可见,大家对人工智能、机器学习的系列课程非常感兴趣,近期,专...

    WZEARW
  • 构建AI知识体系-专知主题知识树简介

    【导读】主题知识树是专知的核心结构之一,为构建结构化、体系化、链路化的知识内容库提供基础设施,以及进一步支持个性化主题定制、主题链路知识学习、智能搜索、探索发现...

    WZEARW
  • Facebook FAIR实验室田渊栋等人最新论文:别担心深度网络中的虚假局部极小值

    【导读】近日,Facebook FAIR实验室、南加州大学与卡耐基梅隆大学提出《Gradient Descent Learns One-hidden-layer...

    WZEARW
  • 第3章代码-光栅化与裁剪

    步行者08
  • 别开心太早,Python 文档的翻译差远了

    近几天,很多公众号发布了 Python 官方文档的消息。然而,一个特别奇怪的现象就发生了,让人啼笑皆非。

    Python猫
  • 【每日一摩斯】-Shared Pool优化和Library Cache Latch冲突优化 (1523934.1)-系列5

           在使用大量literal SQL的系统中,shared pool随时间推移会产生大量碎片进而导致并发能力的下降。Flushing shared p...

    bisal
  • 数据结构和算法——kd树

    一、K-近邻算法 K-近邻算法是一种典型的无参监督学习算法,对于一个监督学习任务来说,其mm个训练样本为: {(X(1),y(1)),(X(2),y(2)),⋯...

    zhaozhiyong
  • Wannafly挑战赛26

    题目大意: 平面坐标中有$$n$$个点.是否可以选择一个点作为圆心.其他$$n-1$$个点在这个圆上.

    xiaohejun
  • 戴上虚拟现实头显,多发性硬化病人也能重圆梦想

    镁客网
  • 代码块相关的题,特么再也不会做错了!

    代码块包括静态代码块和非静态代码块,另外还有构造函数,它们的执行顺序是面试中经常考的,理解了下面这些基本知识,特么再也不会做错了。

    Wizey

扫码关注云+社区

领取腾讯云代金券