神经拟态技术会与 AI 芯片形成竞争吗?
云栖号资讯:【点击查看更多行业资讯】
在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来!
早在 20 世纪 70 年代,科学家就已经设想将人类大脑的功能映射到硬件上,就是直接用硬件来“模拟”人类大脑的结构,这种方法称为神经拟态计算。经过近 50 年的发展,目前神经拟态技术终于开始走向商业化,这类硬件被称为神经拟态芯片。而人工智能加速器(或称“AI 芯片”)是一类专用于人工智能(特别是人工神经网络、机器视觉、机器学习等)硬件加速的微处理器或计算系统。在这样的发展背景下,一个新的问题产生了:神经拟态芯片会与 AI 芯片发生竞争吗?
乍看之下,这种新型的神经拟态(neuromorphic)芯片与人工智能加速器这一类似的尖端领域有几个共同点。这两者都是为了处理人工神经网络而设计的,与 CPU 相比,这两者都提供了性能上的改进,而且都声称更为节能。
不过,这种相似性也就到此为止了:神经拟态芯片只为被称为脉冲网络(spiking networks)的特殊神经网络而设计。而且它们的结构与传统计算机中看到的任何结构都有着本质上的区别(没有什么比乘积累加运算(multiply-accumulate)单元更传统的了)。随着新的应用和技术不断涌现,现在讨论这些设备的市场将会是什么样子的,可能还为时尚早。
《电子工程专辑》(EE Times)就这些技术是真正互补还是有所重叠这一问题,请教了多名领先人工智能加速器公司首席执行官。
最大的问题是,这些计算范式最终会不会进一步形成相互竞争的局面呢?
市场定位不同
Intel 可不这么认为。这家芯片巨头凭借其 Loihi 芯片在神经拟态计算研究方面的地位,以及凭借其数据中心 CPU 系列产品,加之收购了人工智能加速器公司 Habana Labs ,Intel 在人工智能加速领域独占鳖头。
Intel 的神经元计算实验室主任 Mike Davies 认为,神经拟态计算并不能直接与传统的人工智能加速器相提并论,比如 Habana Labs 开发的那些加速器。Davies 称:“与大数据、监督式学习问题相比,神经拟态计算在不同的制度、不同的计算利基中是有用的。”
目前的人工智能加速器是为深度学习而设计的,深度学习需要使用大量的数据来训练大型网络。这需要巨大的 I/O 带宽和内存带宽。
Davies 补充说,“神经拟态模型与此完全不同,它们处理的是单个数据样本……当真实世界的数据到达芯片时,需要以尽可能低的延迟和功耗立即进行处理。”
“与边缘计算设备的深度学习人工智能芯片相比,边缘计算设备的不同之处在于,我们也在研究能够适应并能够实时学习的模型,这些模型是基于深度学习范式不太支持的单个数据样本生成的。”
换句话说,Intel 的观点是,“我们谈论的是针对完全不同类型的神经网络两种不同计算方法。”
愿景相似
在人工智能加速器方面,Kalray 首席执行官 Eric Baissus 表示,他认为该公司的大规模并行处理器阵列(massively parallel processor array,MPPA)架构与一些新兴的神经拟态方法之间存在一些相似之处。
“神经拟态计算非常有趣,这种新的思维方式非常接近我们的设想。”Baissus 表示,“人类大脑有很多功能是并行进行各自的计算,然后你将这些结果一点一点地整合起来,这和我们的架构设计方式非常接近。”
Kalray 的最新芯片 Coolidge 可用来加速人工智能在数据中心和汽车领域中的应用。虽然 Coolidge 并不是一个纯粹的人工智能加速器,在边缘计算领域有更广泛的应用,但大规模并行处理器阵列确实适合人工智能加速,该公司在 CES 2020 上展示了 Coolidge 的人工智能用例。
“我相信,我们会看到有趣的神经拟态产品。对此,我不会感到不安,因为首先,我认为我们的技术非常接近这种类型的方法。”Baissus 说,“我相信,市场如此之大,你将会看到许多不同类型架构的应用程序。”
经济视野
XMOS 首席执行官 Mark Lippet 表示,神经拟态计算的商业化应用仍需时日,尤其是针对其目标市场,包括物联网和消费设备。
他说道:“我认为,这对我们来说太过遥远,短期内我们的经济视野不会出现这种情况的。”
XMOS 的 Xcore 人工智能芯片 将该公司的 IP 集成到了人工智能加速器中,用于语音接口应用,这些应用需要人工智能实现关键词检测或字典功能。它适合于一个新的类别,即跨界处理器(crossover processors),它将应用处理器的性能与单片机的易用性、低功耗和实时操作相结合起来。
Lippett 还表示,任何涉及到改变人们对编程系统的思维方式的技术,一旦进入市场,都将面临挑战。
即使是基于 RISC 架构的 Xcore,也面临着市场挑战。Lippett 称,任何涉及新编程范式的技术都会遇到阻力。
“我们得出的关键结论是,你需要非常接近现有的、熟悉的编程模型,才能快速采用。因此,我认为这就是一个挑战,从成本的角度来看,让这些技术的好处变得可行,同时还要让社区现有技能能够利用这些技术,否则,采用起来会非常缓慢。”他补充道,“我很高兴,我们在短期内不会与神经拟态计算竞争,但很明显,神经拟态计算是一项令人兴奋的技术,值得关注。”
灵感来自大自然
Hailo 首席执行官 Orr Danon 指出,软件是一个潜在的问题。
他说,“我在软件领域工作了很多年,我一直关注那些在硬件层面上看起来不错,但在实际开发场景中却不可行的想法,我并不是说情况会如此,但这是一个主要的担忧。”
Hailo 最近完成了 6000 万美元的 B 轮融资,其中部分资金将用于继续开发 Hailo-8 人工智能加速器芯片的软件。该架构混合了计算、存储和控制块,并依靠软件将相邻块分配到神经网络的不同层,具体取决于它们各自的需求。
“我们不应该美化工具,而应该美化目的,”他说,“我们不想根据鸟类飞翔的原理来制造飞机。从大自然中获得灵感是好事,但问题是,你能得到什么价值?你是否真正解决了问题的正确部分?”
Danno 表示,将新的计算架构限制在模仿大脑的某个特定部分,可能会导致瓶颈,他怀疑这可能比性能优势更重要。他称:“另一方面,我认为,如果你想带来创新和重大改进,你就必须采取大胆的方法。从这个意义上来说,我很喜欢神经拟态的做法,但在实现它们的承诺之前,它们确实必须证明之前的观点。”
边缘计算与云计算
Graphcore 首席执行官 Nigel Toon 表示,该公司的人工智能加速器是为不同的垂直领域设计的。“我们认为这些神经拟态计算的公司不一定是我们直接的竞争对手。”他说,“就市场表现而言,它们通常都处于非常边缘的位置,试图开拓低功耗、接近传感器应用的领域……也许以更传统的方式构建的神经网络会更适合这些应用,但它们肯定不能与 Graphcore 直接竞争,因为我们构建的是更大的、基于云计算的训练和大规模部署的推理系统。”
至于神经拟态计算所面临的挑战,Toon 的话听起来似曾相似。他说:“软件,软件,还是软件!构建任何处理器的挑战都属于软件领域的范畴。太多时候,人们都是制作出有趣的处理器,然后就琢磨怎么在这些处理器上进行编程。而现实情况是,你需要弄清楚你要如何编程,然后去构建一个能有效支持的处理器。你必须了解软件编程方法,并构建一个处理器来实现这一点。”
Graphcore 的方法始于这样一种认识,即机器学习模型本质上是大型的高维图,其中顶点是计算,边缘是计算元素之间的通信。该公司最初开发了在计算机级别上对图进行描述的软件,然后设计了一个处理器来处理它们。图的高维性在一般存储空间中很难处理,因为只有两块存储空间可以相邻存储。数据最终变得非常稀疏,问题的碎片散落在内存中。因此,Graphcore 在其智能处理单元芯片中放置了大量的内存和内存带宽。
“最终,我们会发现的是,作为研究项目,神经拟态计算是有趣的。但这可能不是用硅制作高效处理器的方法。”Toon 说,“引用分子计算作为未来的范式,可能会与目前正在开发的神经拟态方法产生协同作用。分子计算是一个新兴的领域,利用 DNA 等生物分子作为计算机,以减少 Landauer 限制,即擦除一位信息所需的能量。”
译注:Landauer 原理指出,擦除一位信息就要消耗能量 kTln2。它语言了计算过程物理极限的存在。Landauer 建立信息擦除原理的关键是引入逻辑不可逆 (logical irreversibility) 的概念。从计算的角度讲,任何普适的计算都必须包括初始化步骤。初始化擦除计算机已存的信息,使得计算机从任意一个可以达到的态 A 回到参考初态 R。由于计算机的每个逻辑状态必须对应于一个物理态,逻辑不可逆在物理上表现为自由度约化的耗散效应,是一种典型的不可逆过程。这就意味着,计算必然要消耗一定的能量,并以热量的形式散发掉。计算的速度越快,产生的热量就越多。当计算机芯片单位面积上集成的元件数目越多,发热的功率就越大。这种不可逆计算的耗热机制大大限制了计算机芯片的尺度,给出其物理极限,从而导致摩尔经验定律的终结。更为详细的解释可查阅 Wikipedia 的 Landauer’s principle 词条。
Toon 说,“但是,半导体产业已经投资了数万亿美元来用硅制造计算机,我们知道如何做到这一点,也知道如何批量生产。也许最好的途径是研究出我们如何构建使用不同架构的硅计算机,并构建这些新的机器智能方法。”
【云栖号在线课堂】每天都有产品技术专家分享!
课程地址:https://yqh.aliyun.com/zhibo立即加入社群,与专家面对面,及时了解课程最新动态!
【云栖号在线课堂 社群】https://c.tb.cn/F3.Z8gvnK
原文发布时间:2020-04-28
本文作者:Sally Ward-Foxton
本文来自:“InfoQ”,了解相关信息可以关注“InfoQ”
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
IDEA 中 30 秒生成 Spring Cloud Alibaba 工程
作者 | 图恩 阿里云技术专家 如果你想使用Spring Cloud Alibaba,那么你遇到的第一个问题一定是如何快速的创建一个脚手架工程。 近日,阿里巴巴发布了 Spring 的国内脚手架定制版 Aliyun Java Initializer,因为全中文界面和流畅速度,被广大开发者热传。Spring 脚手架为开发者提供了丰富的可选组件,并且可以选择多种打包方式,大大方便了开发人员的使用。Web 端 Spring 脚手架可以帮助用户快速上手,但很多开发者也面临一个问题:在 Web 版本 Spring 脚手架生成工程最终要导入 IDE 中,开发者需要进行 IDE 切换,在一定程度上,增加了开发时间。 无需切换 IDE 为了更加贴近用户开发场景,提高开发效率,让开发者无需从 IDE 切换出去,通过插件功能 30 秒直接生成 Sprin
- 下一篇
Java同步方法:synchronized到底锁住了谁?
Java同步方法:synchronized到底锁住了谁? 目录前言同步方法类的成员方法类的静态方法同步代码块总结其他同步方法参考资料前言相信不少同学在上完Java课后,对于线程同步部分的实战,都会感到不知其然。 比如上课做实验的时候,按着老师的实验指导书中的描述完成了多线程的同步操作,就感觉自己已经掌握这个知识点了,实际运用中再次手足无措,就像我一样。 这里提问一下:synchronized对方法修饰,在别处调用这个方法时,谁被锁定了呢?另外,在新建线程中使用synchronized(this){ }结构时,如: void methodA() { new Thread(() -> { synchronized (this) { this.methodB(); } }).start(); }这个被锁的this又是谁呢? 这篇博文来详细介绍一下线程同步中涉及synchronized修饰的两种用法:同步方法和同步代码块。 才不会说这篇是我对一个项目代码中的线程同步机制感到迷惑而搜资料写的笔记( 同步方法先开始介绍synchronized修饰符本身的特性: synchronized关键字...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS6,CentOS7官方镜像安装Oracle11G
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- 设置Eclipse缩进为4个空格,增强代码规范