从Nature 封面文章“天机”芯片看脑科学与AI的融合

640?wx_fmt=jpeg

来源:混沌巡洋舰


7月31日Nature杂志封面刊登了清华类脑计算团队的最新成果:天机芯片以及由其操控的自行车。

Towards artificial general intelligence with hybrid Tianjic chip architecture

这则信息在一天之内在AI圈子引起了热议,而大部分吃瓜群众的状态则是云里雾里。这篇文章从脑与人工智能结合的潜力与背景, 看这系列最新工作的意义。

我们说这个新工作的核心是能够同时在芯片上高效实现人工神经网络ANN和脉冲神经网络SNN, 所谓的ANN和SNN, 事实上是神经网络发展过程的两个分支。欲了解其背景先了解其历史。

  1. 神经网络家族的分合故事。

神经网络的故事从模拟单个神经元开始:神经元是神经网络信息传输的“原子”。通过一定的方法连接这些原子,就可以得到具有智能的系统, 这算是整个人工智能“连接主义”流派的哲学根基。

那么如何构建这个认知的“原子” ?我们来看看最早的把连接主义引入机器学习的尝试。最早的模拟大脑的单个神经元的尝试, 是Warren McCulloch 和 Walter Pitts 在1943 提出而来神经元的模型。这个模型类似于某种二极管或逻辑门电路。一定的输入进来,被神经元汇集加和, 如何这个和的总量大于一个阈值,神经元就放电, 小于一个阈值,神经元就不放电。这个东西就好像某个微小的决策装置, 把很多因素加载在一起, 做一个最终的决策。我们想象无数的二极管可以构成一个计算机,那么无数这这样的神经元不就可以构成一个具有计算功能的大脑吗?这就是感知器的概念。

这个高度简化的神经元事实上就是后来的人工神经网络ANN的基础, 简化得到的神经元事实上每一个的数学形式等价于一个加入了非线性过滤的线性回归。

640?wx_fmt=jpeg

如果把无数这样的神经元连接起来, 就构成了所谓的人工神经网络(ANN)。

当下的深度学习工具, 无论是CNN还是RNN, 都是在这个方程基础上把更多的神经元连接起来加入不同的限制条件得来的。

然而事实上, 这个架构与真正的生物神经网络相差极远, 这个差距首要集中在单个神经元模型上。刚刚的方程是一个把原来的生化过程简化到不能再简的结果。这里面最致命的区别在于, spike。通过观察上述方程我们可以看出, 神经网络输出y是一个实数。而事实上, 真实的生物神经元输出, 更加基接近的是一个0,1过程, 当神经元经历的电压超过一个数值, 它就放电。那是不是说明这个spiking反而更简单?其实不是, 这里面人们忽略掉的一个信息就是spike timing以及背后的电压变化。真实神经元的放电过程由一组微分方程(Hodykin Huxley equations 1952)表达 :

640?wx_fmt=jpeg

这组微分方程的解就是spiking的过程, 如下图是电压随时间的变化, 当电压积累达到一定阈值, 这个爆发的尖峰就是spike,通过spike , 神经元可以向其它神经元发射信号。我们所谓的脑电波, 无非是大量这样的神经元的集体放电在颅外所检测到的一组信号。

640?wx_fmt=jpeg

如果用上述这种包含了重要生物细节spiking的神经元连接成网络, 我们就得到了SNN(脉冲神经网络) 也就是说, 无论SNN还是ANN,本质都是对生物神经网络的模拟, 但就其抽象程度且相差疏远。

我们看到用SNN可以用神经脉冲表达信息, 如果用ANN表达一个类似的事情是什么样的呢?我们用一个数字Y来表达时间窗的spike个数(频率), 而丢弃了所有其它信息, 比如波形,相位, 不同神经元之间spike和spike之间的同步等。这意味着什么?两种可能的解释:

1, 波形,相位, 不同的神经元之间的同步是没有意义的冗余, 去掉它们整个神经网络表达的信息没有变化, 神经元的系统等于取定时间窗后的平均发放。

2, 波形,相位, 不同神经元之间的同步包含很多有用的信息, 去掉它们, 可能丢失了一些关键性的信息。然而在最粗粒化的信息处理阶段, 这种保留是足够的。

那么哪一个更准确呢?普林斯顿的大牛Williams Bialek 的一系列作品都指出, 神经元spike间的同步(相关性)包含和神经编码相关的关键性信息,也就是说除了平均值外, spike所包含的不同神经元之间的发放同步(或相关性)依然包含了大量的信息。

1, Weak pairwise correlations imply strongly correlated network states in a neural population 2006 Nauture [2]

2, Collective Behavior of Place and Non-place Neurons in the Hippocampal Network 2017 Neuron[3]

640?wx_fmt=jpeg

Weak pairwise correlations imply strongly correlated network states in a neural population 2006 Nauture, 这张图说明了如果用0,1事件表达spike, 那么一个(视网膜网络)里的神经元的同步放电频率远高于用高斯独立假设得到的频率, 也就是说spike之间的同步不可忽略, 构成一种潜在编码

这两篇论文的共同特点是说, 神经元spike发放之间的spike correlation可以编码大量的信息, 如果记录这些spike之间的pairwise correlation, 那么我们就可以恢复出神经活动里的大部分有用信息。

这意味着什么?假如神经元spike间的同步可以编码信息, 那么我们就可能用更少的spike编码更多的信息, 而这无疑对用最少的神经元放电得到更多的信息(稀疏性)大有帮助。除此之外, 通过在spiking神经元的那组微分方程里加入更多的核膜常数(代表不同时间尺度的信息, 因为spike方程本身是一个包含大量不同时间尺度的非线性方程),我们可以得到大量局部存储的不同时间尺度的记忆(此处联想“忆阻器”), 我们甚至可以得到某些类似LSTM非线性门的特性。这些, 都代表着Spiking Neural Network(SNN)相比当下ANN的优势。

用一个不恰当的比喻, ANN的神经元用实数表达每个神经元的状态, 而SNN好比进入到了复数域,有了相位。在物理领域,实数到复数支撑了从经典力学到量子力学的升级。据此看, 把SNN看成下一代的神经网络技术不言而喻。当然如果SNN这么好为什么现在工业没有用呢?难点在于SNN依赖于对微分方程的模拟, 对于当下的冯诺伊曼结构的计算机, 这是一个成本消耗非常大的运算。也就是说计算机为了模拟本来节省能量的生物计算可能更加耗能,同时也更加不好训练。解决这个问题的方法, 显然是从基本硬件基础出发,去改良硬件的架构, 这也是神经拟态芯片的意义之所在。我们把树突和轴突直接用芯片来刻画, 无形之间, 就得到了一个长在硬件上的脉冲神经网络(SNN),它的能耗效率要比普通芯片高12-10000倍。

当然ANN也有一类专门的芯片来提高当下深度学习运行的效率,这就是深度学习芯片, 例如大家都了解得寒武纪等。

清华的这个天机芯片在于, 把神经拟态芯片和深度学习芯片得优势结合起来, 可以同时提高这两类神经网络ANN和SNN的效率。我个人背景不是芯片, 所以此处不在深谈, 我们多从算法角度谈谈两者结合得意义。

640?wx_fmt=jpeg

Towards artificial general intelligence with hybrid Tianjic chip architecture

这一次Nature文章里的例子是自动驾驶自行车, 当然这个例子被很多人诟病,认为这个不就是一个简单的平衡游戏吗。大家可以去github搜索cart pooling或者双足行走,这一类的toy model还不少吗?

然而我认为思考一个新发现的意义不在于它所干的那个任务low不low , 而是看它是如何完成的。最初的火车甚至跑不过马车,但是它的架构决定了它的上限和马车不可同日而语, 通过数年时间迭代,两者已是云泥之别。

那么我们来看一下让ANN和SNN同时在一个芯片上运行, 带来的潜力是什么。一言以蔽之,当下的深度学习模型,可以和大量没有被好好利用起来的计算神经科学模型, 天衣无缝的嫁接在一起。这从无人驾驶自行车的网络架构可以略知一二。

640?wx_fmt=jpeg

Towards artificial general intelligence with hybrid Tianjic chip architecture

我们来理解一下这个流程图, 首先, 这个架构可以把多模态信息融合比如视觉, 听觉。我们注意到, 处理听觉的是脉冲神经网络SNN(更多时间相关信息)。处理视觉信号的网络是经典的CNN卷积神经网络,属于人工神经网络ANN家族。然而故事还没有结束, 在CNN的下面, 有一个主管视觉追踪的CANN网络, 虽然只有一个字母之差, 这可不是卷积神经网络, 这四个字母的含义是continous attractor neural networks - 连续吸引子网络。

所谓空间吸引子, 说的是一种特化了的循环神经网络, 网络的动力学导致一系列可以根据外界信号连续变化的吸引子构成, 人们通常认为,海马体内的位置细胞就是由这种连续吸引子产生的, 它们可以天然的和速度信号进行耦合, 形成对空间的神经表示, 这个CANN,就是一种连续吸引子网络, 它直接把视觉物体(人)转化为一个可以追踪的空间目标(之后可以用于躲避行人)。大家注意, 这是一个典型的脱胎于计算神经科学的网络架构,矩阵的连接还用到了树突计算。

然后我们来看中间的那个模块, neural state machine:神经状态机。这个网络把连续的听觉和视觉信号转化为离散的事件, 这些事件构成一个有限状态的机器,也就是我们通常说的马尔可夫链。这一步大家已经可以看到和决策有关的网络的联系,因为一旦把连续变化的信号抽象成了这种离散的马尔可夫链, 下一步就可以交给决策网络来决策了, 这里的决策主动是动作输出, 可以控制自行车在保持平衡的同时躲避障碍, 并对周围物体发出警戒信号。这个网络也是由一个脉冲神经网络SNN构成。

在这里, 我们不难看出这是一个典型的人工设计与机器学习结合的模块化网络, 不能不让我们想起这类工作的先行之作:Science(Eliasmith, Chris, et al. "A large-scale model of the functioning brain."science338.6111 (2012): 1202-1205.) 在这个工作里, 研究人员构建了一个叫spaun的模块化网络, 可以进行多任务学习。

Spaun的每个部分都是一个人工神经网络, 且可以与真实的脑区对应上, 比如视觉输入对应V1-V4 视皮层,它把真实的视觉信息压缩成一种低维度的编码(每个图像称为这一空间的一个点, 被称为pointer)。这种低维的信息表示形式很容易放入到工作记忆模块里(working memory), 最终由解码网络转换(decoding), 被动作输出网络执行(motor)。

神经网络整体状态的调控由模拟basal ganglia的网络完成(Action Selection),它可以根据当下的任务整体调节信息的流动(如同一个综控系统, 调节每个网络之前的输入阀门), 从而让大脑在不同的工作状态间灵活转换。这也体现了功能大脑的概念, 我们不必拘泥于某个脑区的名称, 而是记住每个脑区对应信息处理的功能。最终我们通过监督学习或强化学习来让这个系统掌握8种截然不同的任务, 包括:1, 抄写数字 2, 图像识别 3, 奖励学习, 4, 多个数字的工作记忆 5, 数数 6, 回答问题 7 简单的数学推理。

640?wx_fmt=jpegA large-scale model of the functioning brain


而当下清华的工作, 正是打造了适合这一类执行多任务的“虚拟”生物的硬件系统, 在之上, 你可以自由的搭建无论是经典的深度学习模型, 还是那些超前了的计算神经科学模型, 把他们一起组成模块化的网络, 执行多种多样的功能。

这个潜力也就不只局限在自行车了, 可以是流水线的机器人, 陪护老人的机器人,随便你去发挥想象力,无论上述那个机器人, 都需要进行多模块的信息整合以及多任务执行。假如这种建立在神经网络芯片上的模块化的网络系统可以以较低能耗长时间在真实环境里运作, 那么它带来的好处显然是特别巨大的, 这相当于引入了一个实时不间断的训练数据, 如果结合无监督学习, 强化学习,甚至神经进化等算法实时对网络进行优化,其潜力是无可限量的。

事实上, 类脑计算和AI的结合之潜力此处仅是冰山一角, 在巡洋舰之前的一些文章里,进行了更详尽的论述:

2019计算与系统神经科学大会Cosyne 前沿研究汇总

模拟人类大脑 :人工智能的救赎之路 ?

参考

  1. https://www.nature.com/articles/s41586-019-1424-8
  2. https://www.nature.com/articles/nature04701
  3. https://www.ncbi.nlm.nih.gov/pubmed/29154129



640?wx_fmt=jpeg

张亚勤、刘慈欣、周鸿祎、王飞跃、约翰.翰兹联合推荐


这是一部力图破解21世纪前沿科技大爆发背后的规律与秘密,深度解读数十亿群体智能与数百亿机器智能如何经过50年形成互联网大脑模型,详细阐述互联网大脑为代表的超级智能如何深刻影响人类社会、产业与科技未来的最新著作。


《崛起的超级智能;互联网大脑如何影响科技未来》2019年7月中信出版社出版。刘锋著。了解详情请点击:【新书】崛起的超级智能:互联网大脑如何影响科技未来


未来智能实验室是人工智能学家与科学院相关机构联合成立的人工智能,互联网和脑科学交叉研究机构。


未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。


  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”640?wx_fmt=jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/490915.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[BZOJ4530][Bjoi2014]大融合 LCT + 启发式合并

[BZOJ4530][Bjoi2014]大融合 试题描述 小强要在N个孤立的星球上建立起一套通信系统。这套通信系统就是连接N个点的一个树。这个树的边是一条一条添加上去的。在某个时刻,一条边的负载就是它所在的当前能够联通的树上路过它的简单路径的数量。例如,在上图…

器件篇:步进电机

器件篇:步进电机 步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号&#xf…

pytorch中的参数初始化方法

参数初始化(Weight Initialization) PyTorch 中参数的默认初始化在各个层的 reset_parameters() 方法中。例如:nn.Linear 和 nn.Conv2D,都是在 [-limit, limit] 之间的均匀分布(Uniform distribution)&…

物理学走到尽头了吗?

图片来源:pixabay.com来源: 蔻享学术我的英雄理查德费曼(Richard Feynman)曾开玩笑地说:“爱因斯坦是个巨人。他的头虽然在云里,脚却踩在地上。而我们这些个子不高的人则必须做出一个选择!”可我…

QT示例:基于TCP点对点Socket通讯

QT示例:基于TCP点对点通讯一、 概述二、TCP 协议工作原理三、TCP 编程模型四、基于TCP点对点通讯示例1、客户端2、客户端Client示例3、服务器4、服务器server示例下载:基于TCP点对点通讯 一、 概述 二、TCP 协议工作原理 三、TCP 编程模型 四、基于TCP点…

50 年人类登月史:那些不为人知的故事

来源: CSDN2019年7月20日是纪念人类登月五十周年的好日子。人类于1969年首次正式登上月球,历史将永远铭记两位宇航员的名字:尼尔阿姆斯特朗与巴兹奥尔德林。 然后,这背后还有很多不为人知的故事。 在我们庆祝首次登月成功的同时&a…

物理学走到尽头了吗 | 维尔切克专栏

来源:环球科学撰文 | 弗兰克维尔切克(Frank Wilczek)翻译 | 胡风 梁丁当“物理学家沉迷于追求数学的优美,却正在丧失解决新问题的能力。” “顶级的物理学家不再关心物理现实——当然他们也不用关心这些。” “科学完了。”这几句…

C# “配置系统未能初始化” 异常解决

使用App.config配置参数,读取参数出现错误 “System.Configuration.ConfigurationErrorsException”类型的未经处理的异常在 System.Configuration.dll 中发生 其他信息: 配置系统未能初始化 验证App.config文件没有结构错误 解决办法: 如果配置文件中包…

从零到无穷——美国数学的崛起之路

来源:今日头条从十七世纪开始,大批各种各样的欧洲移民开始涌入北美新大陆,也是从这个时候开始,科技革命的号角在欧洲开始吹响。但在相当长的一段时间内,北美大陆的居民仍在为生存而挣扎,像数学这样的科学在…

IAR STM32报错Error[Pe147]:declaration is incompatible with“__nounwind __interwork __softfp unsigned

IAR STM32工程中报错: Error[Pe147]: declaration is incompatible with "__nounwind __interwork __softfp unsigned int __iar_builtin_REV16(unsigned int)" (declared at line 197 of "D:\STM32F103_Demo\Core\core_cm3.h 解决方法&#xff1…

JAVA设计模式之工厂模式

在面向对象编程中, 最通常的方法是一个new操作符产生一个对象实例,new操作符就是用来构造对象实例的。但是在一些情况下,new操作符直接生成对象会带来一些问题。举例来说,许多类型对象的创造需要一系列的步骤:你可能需…

纳米片晶体管是摩尔定律的下一步,也许是最后一步!

来源:云头条作者:Peide Ye是普渡大学的Richard J.和Mary Jo Schwartz电气与计算机工程教授,Thomas Ernst是法国格勒诺布尔CEA-Leti的科学主任,Mukesh V. Khare是IBM研究中心的半导体和AI硬件副总裁。纳米片器件计划最快在2021年用…

IAR STM32工程报错Error[Pe020]: identifier “GPIO_Pin_0”is undefined D:\STM32F103_Demo\App\main.c

IAR STM32工程报错: Error[Pe020]: identifier "GPIO_Pin_0" is undefined D:\STM32F103_Demo\App\main.c 解决方法: 右键下图工程名选择Options 在预处理里面加上下面这行

脑机接口技术的现状与未来!

来源:芯智讯一、前言通过在脑后插入一根线缆,我们就能够畅游计算机世界;只需一个意念我们就能改变“现实”;学习知识不再需要通过书本、视频等媒介,也不需要在花费大量的时间,只需直接将知识传输到大脑当中…

学籍管理系统系统流程图

转载于:https://www.cnblogs.com/whitelip/p/5406976.html

崛起的超级智能:是否会是下一个“麦克卢汉式”预言?

腾讯科技21世纪以来,前沿科技领域呈爆发式增长:从云计算到区块链、从谷歌大脑到华为EI智能体、从工业大脑到农业大脑、从城市神经网络到智慧社会……各种新技术和新概念层出不穷,如潮水般不断涌现,无论业界学界还是行业产业&#…

HttpClient Get/Post方式调用Http接口

HttpClient Get/Post方式调用Http接口 本节摘要:本节主要分别介绍如何用get方式、post方式向http接口发送数据。 preparation 1. 项目环境如下: myeclipse6.5 、tomcat5.0、system:xp、JDK:开发1.5,编译1.4 为了方便,在原来的web项目UpDown中新建了一个h…

python对Excel的操作 xlrd、xlwt包详解

文章更新中............. python中对Excel表格的操作,主要用到两个包,分别是xlrd和xlwt 1.xlrd主要用于读Excel表 2.xlwt则主要用于写Excel python—xlrd 这里我先准备了一些济南天气的一些数据通过python程序先对数据有一个基本的了解: path…

人造细胞能模仿天然细胞感知环境

来源:科技日报据英国帝国理工学院官网近日消息,该校一个研究团队成功开发出一种新型人造细胞,能够模仿天然细胞感知环境中的化学变化并产生反应。如果在未来发展成熟,这项技术可广泛用于生物科技等领域。相关成果已刊登在近期美国…

FileNotFoundError: [Errno 2] No such file or directory: 'test/条形图03.html'

这几天一直在搞百度的一个可视化的工具Echart,感觉确实挺不错的,比matplotlib的可视化好看多了。 今天遇到了两个问题 1、如何导入pyecharts中的get_all_options工具 解决方法: from pyecharts.echarts.option import get_all_options 2、在进…