谷歌的深度学习在AI芯片中找到了一条关键路径

来源:AI前线  

作者:Tiernan Ray

译者:Sambodhi

策划: 刘燕

一年前,ZDNet 与谷歌大脑总监 Jeff Dean谈到 了该公司如何使用人工智能来推进定制芯片的内部开发,从而加快软件开发。Dean 指出,在有些情况下,与人类相比,人工智能的深度学习能够更好地决定如何在芯片中布置电路。 

人工智能加速器芯片的所谓搜索空间,意味着芯片的结构必须优化功能模块。很多人工智能芯片的特点是拥有用于大量简单数学运算的并行、相同的处理器单元,这里称为“PE”,用于执行大量的矢量矩阵乘法运算,而这些运算是神经网络处理的主要工作。

上个月,谷歌在 arXiv 文件服务器上发布了一篇题为《Apollo:可迁移架构探索》(Apollo: Transferable Architecture Exploration)的论文,并由主要作者 Amir Yazdanbakhsh 发表了一篇 博文,公开展示了其中一个名为 Apollo 的研究项目。Apollo 是一项很有意义的进展,它超越了 Dean 一年前在国际固态电路研讨会(International Solid State Circuits Conference)上的正式演讲以及在 ZDNet 上的发言中所暗示的含义。

从 Dean 当时提供的例子来看,机器学习可以被用来做一些低级的设计决定,也就是所谓的“位置和路线”。芯片设计者利用软件来确定构成芯片操作的电路布局,在位置和路线上,与建筑物的平面图设计相似。相反,在 Apollo 项目中,更多的是 Yazdanbakhsh 和他的同事所谓的“架构探索”,而非建筑物的平面图设计。

芯片的架构是设计芯片的功能元素,它们如何相互作用,以及软件程序员应该如何获取这些功能元素。例如,典型的英特尔 x86 处理器有一定数量的片内存储器、专用的算术逻辑单元和一些寄存器等等。这些部分的组合方式,赋予了所谓英特尔架构的意义。

当被问及 Dean 的描述时,Yazdanbakhsh 通过电子邮件对 ZDNet 说:“我将看到我们的工作和位置路线项目是正交且互补的。”在谈到康奈尔大学 Christopher Batten 的演讲时,他对此解释道:“架构探索远远高于 计算栈 中的位置和路线。”

Yazdanbakhsh 说:“我相信,在架构探索方面,还有更大的性能提升空间。”他和他的同事把 Apollo 称为“第一个可迁移的架构探索基础设施”,它是第一个可以在不同芯片上工作的程序,它对可能的芯片架构的探索能力越强,就越能把学到的东西迁移到每一个新的任务中。

Yazdanbakhsh 和团队正在开发的芯片本身就是用于人工智能的芯片,即人工智能加速器芯片。它与英伟达 A100 “Ampere” GPU、Cerebras Systems 的 WSE 芯片以及现在上市的许多其他初创公司的芯片属于同一类。所以,使用人工智能设计芯片来运行人工智能,就是一种“对称性”。

考虑到设计人工智能芯片的任务,Apollo 项目所探索的架构适合运行神经网络。它意味着大量的线性代数,大量的简单的数学单元,执行矩阵乘法和结果的求和。

该团队定义这一挑战是为了找出这些数学模块的适当组合,以适应给定的人工智能任务。他们选择了一项相当简单的人工智能任务,一种叫做 MobileNet 的卷积神经网络,它是一种资源高效网络,由谷歌的 Andrew G. Howard 和他的同事在 2017 年推出。另外,他们还利用内部设计的几个网络来测试工作负载,如对象检测和语义分割等任务。这样的话,目标就变成了:芯片的架构有哪些合适的参数,使得芯片能够满足给定的神经网络任务的某些标准,比如速度?

该搜索涉及到超过 4.52 亿个参数的排序,包括要使用多少数学单元(称为处理器元素),以及有多少参数内存和激活内存最适合给定模型。 

Apollo 的优势在于,它可以将各种已有的优化方法结合起来,并观察它们如何叠加来优化新颖的芯片设计架构。这张小提琴图展示了相对的结果。

译注:小提琴图(Violin Plot)是用来展示多组数据的分布状态以及概率密度。这种图表结合了箱形图和密度图的特征,主要用来显示数据的分布形状。跟箱形图类似,但是在密度层面展示更好。在数据量非常大不方便一个一个展示的时候小提琴图特别适用。

Apollo 是一种框架,它可以使用文献中开发的各种方法进行所谓的黑盒优化,它可以根据特定的工作负载调整这些方法,并比较每种方法在解决目标方面的表现。

Yazdanbakhsh 和他的同事们用一些优化方法来实现另一种对称性,它实际上是为开发神经网络架构而设计的。它们包括谷歌的 QuocV. Le 及其同事在 2019 年开发的所谓 进化方法;基于模型的强化学习,以及由谷歌的 Christof Angermueller 等人开发的所谓基于群体的方法的集成,目的是“设计” DNA 序列;以及一种贝叶斯优化方法。

这样,Apollo 就包含了令人愉悦的对称性的主要层次,它把神经网络设计与生物合成设计的方法结合起来,从而设计出可反过来用于神经网络设计与生物合成的电路。

将所有这些优化进行比较,这也是 Apollo 框架的亮点。其存在的根本原因是要有条理地运用各种不同的方法,并确定哪些方法最有效。Apollo 测试的结果详细说明了进化和基于模型的方法如何优于随机选择和其他方法。

但是 Apollo 最显著的发现是,运行这些优化方法可以让过程比暴力搜索更加高效。举例来说,他们比较了基于群体的集合方法和他们称为体系结构方法的解决方案集的半穷举搜索。Yazdanbakhsh 和他的同事发现,基于群体的方法可以找到使用电路来折衷的解决方案,比如计算和内存,这通常需要了解特定领域的知识。因为基于群体的方法是一种学习型方法,所以它可以找到半穷尽式搜索所不能找到的解决方案:

P3BO(基于群集的黑盒优化)实际上是 在 3K 样本的搜索空间中找到一个比半穷举法稍好的设计。我们发现这个设计使用了一个很小的内存(3MB)来支持更多的 计算单元。它使用了视觉工作负载的计算密集型特性,这是最初的半穷尽式搜索空间没有包含的特性。研究结果表明,半穷尽式算法需要人工搜索空间工程,而基于学习的优化算法利用了较大的搜索空间,减少了人工工作。

因此, Apollo 可以计算出芯片设计中各种优化方法的表现。但是,它还可以做得更多,即运行所谓的迁移学习,以展示如何反过来改进这些优化方法。

为了改进芯片的设计点,如最大芯片尺寸(以毫米为单位),通过运行优化策略,这些实验的结果可以作为输入反馈给后续的优化方法。Apollo 团队发现,各种优化方法都是通过利用初始(或种子)优化方法的最优结果来改进它们在面积受限电路设计等任务中的性能。

这一切都要靠为 MobileNet 或任何其他网络或工作负载设计芯片这一事实来支持,因为设计过程限制了特定工作负载的适用性。事实上,作者之一 Berkin Akin 曾帮助开发过 MobileNet 的一个版本 MobileNet Edge,他曾指出,优化是芯片优化和神经网络优化的产物。

“神经网络架构必须了解目标硬件架构,从而优化整体系统性能和能效。”Akin 去年与同事 Suyog Gupta 在一篇 论文 中写道。

“问题很好,”Akin 在电子邮件中回答。“那得看情况了。”

Akin 说, Apollo 也许可以满足给定的工作负载,但是芯片和神经网络之间的协同优化,将来也会带来其他好处。

Akin 的答复全文如下:

我们针对给定的固定神经网络模型套件设计了硬件,当然也有一些用例。在硬件目标应用领域,这些模型可能是已经被高度优化的代表性工作负载的一部分,也可能是用户定制的加速器所需要的。本课题就是要解决这个问题,我们使用机器学习来为给定的工作负载组合寻找最佳硬件架构。当然,在某些情况下,硬件设计和神经网络体系结构可以灵活地联合优化。实际上,我们在这种联合协同优化方面已经取得了一些进展,我们希望能够做出更好的权衡……

最终结论是,即使芯片设计受到人工智能的新工作负载的影响,但芯片设计的新过程也可能对神经网络的设计产生可测量的影响,而且这种辩证关系可能在今后几年中以有趣的方式发展。

 作者介绍:

Tiernan Ray,毕业于普林斯顿大学,从事技术和商业报道超过 24 年。现为 Barron 技术编辑,为 Tech Trader 博客撰写每日市场报道。曾供职于彭博社、SmartMoney 和 ComputerLetter,报道科技领域的风险投资。

原文链接:

https://www.zdnet.com/article/googles-deep-learning-finds-a-critical-path-in-ai-chips/

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

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

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

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

相关文章

脑机接口猴子通过“意念”打游戏!马斯克:未来能让瘫痪者用意念玩手机

来源:新智元它是Pager,一只9岁的恒河猴,来自Neuralink,最近它刚刚get了新技能——用意念玩乒乓球游戏。6个星期前,Pager的脑袋里被植入了两个叫N1 Link的装置,工作人员用香蕉奶昔诱惑它玩游戏,屏…

struts2_HelloWorld

第一个Struts2程序-Hello 1.创建web工程struts2-01-Hello 2.导入jar包到bin目录,jar地址: https://files.cnblogs.com/files/aihuadung/struts%E6%89%80%E9%9C%80jar%E5%8C%85.zip 3.配置web.xml文件 <?xml version"1.0" encoding"UTF-8"?><!DO…

centos 7 网络设置与图像化界面下载

①打开虚拟机的设置&#xff0c;找到网络设置。再启用网卡1&#xff0c;选择连接方式为Host-only&#xff0c;界面名称选择VirtualBox Host-Only Ethernet Adapter&#xff0c;设置如下图 提示&#xff1a; 1.对虚拟机网络设置&#xff0c;需要先关闭虚拟机&#xff1b; 2.这里…

逻辑的计算进路--从莱布尼茨到图灵的逻辑发展

来源&#xff1a;图灵人工智能【作者单位&#xff1a;北京语言大学信息科学学院中国社会科学院哲学所】摘要&#xff1a;现代逻辑肇始于莱布尼茨&#xff0c;在布尔和弗雷格处发生了分流&#xff0c;形成了所谓的逻辑的代数传统和逻辑的语言传统&#xff0c;然而&#xff0c;无…

c# 窗体启动后自动执行 Form_Load事件注册及调用

很多时候我们需要在程序一开始后立即触发执行一些程序。这时候需要调用Form_Load。 首先编写事件程序块&#xff0c;编写完后即可再里面添加需要执行的代码。 在结构体之后写就行。添加之前的代码如下&#xff1a; using System;using System.Collections.Generic;using Syste…

上海交大与《Science》发布125个最具挑战的科学问题

来源&#xff1a;澎湃新闻“我们可以预测下一次流行病吗&#xff1f;”“我们会找到治疗感冒的方法吗&#xff1f;”“什么是重力&#xff1f;”“人类有一天会不得不离开地球吗&#xff1f;”“什么是成瘾&#xff1f;”《Science&#xff08;科学&#xff09;》/美国科学促进…

离体猪脑实验的困惑

© Thomas Prior来源&#xff1a;利维坦文&#xff1a;Philip Jaekl译&#xff1a;Yord校对&#xff1a;药师令人意外的是&#xff0c;死亡的定义不太牢靠。20世纪50年代之前&#xff0c;人们对死亡的定义通常是心跳停止且没有自主呼吸。但在1968年&#xff0c;哈佛医学院特…

刚刚,我国智能科学技术最高奖揭晓!

第十届“吴文俊人工智能科学技术奖”颁奖典礼现场来源&#xff1a; 深城物联 4月10日&#xff0c;我国智能科学技术最高奖“吴文俊人工智能科学技术奖”十周年颁奖盛典北京举办。军事科学院系统工程研究院研究员、中国工程院院士李德毅荣获“吴文俊人工智能最高成就奖”&#…

Kubernetes原理浅析

传统部署时代&#xff1a; 早期&#xff0c;组织在物理服务器上运行应用程序。无法为物理服务器中的应用程序定义资源边界&#xff0c;这会导致资源分配问题。例如&#xff0c;如果在物理服务器上运行多个应用程序&#xff0c;则可能会出现一个应用程序占用大部分资源的情况&am…

mac上python3安装HTMLTestRunner

下载支持python3版本的HTMLTestRunner.py文件后&#xff0c;拷贝到python3的lib目录下 在终端输入如下命令&#xff1a; 将HTMLTestRunner.py文件拷贝到如下目录后&#xff0c;pycharm中就可以import HTMLTestRunner 转载于:https://www.cnblogs.com/yrxns/p/9857812.html

从Bengio的NPS模型看AGI的实现通路

来源&#xff1a;混沌巡洋舰这两天深度学习祖师Yoshua Bengio 的 Neural Production System 刷新了AI圈子。与以往的深度学习套路不同的是&#xff0c; 这篇文章有效的把符号主义AI对人类认知的模拟与深度学习结合&#xff0c; 得到了一个能够学习规则的神经机器。我们先来看下…

burp的intruder报错Payload set 1: Invalid number settings

使用burp对某一参数进行测试时&#xff0c;当类型为numbers时&#xff0c;报如下错误&#xff1a; 解决方法&#xff1a; 先点击Go back 之后&#xff1a;在Decimal&#xff0c;Hex两个选项之间来回点就好了

机器学习漫谈:深度学习的辉煌

来源&#xff1a;王宏琳科学网博客如今&#xff0c;当有人提到人工智能引起社会变革潜力时&#xff0c;他们很可能是在谈论机器学习中的人工神经网络。当一篇文章谈人工神经网络突破性进展时&#xff0c;作者很可能指的是深度学习。人工神经网络是一种非线性统计建模工具&#…

idea中每次push/pull都需要输入账号密码

在terminal中输入git config --global credential.helper store 之后再输入一次账号密码 以后就可以免输入账号密码了

μ子刷屏的背后:说「新物理学即将现身」还为之过早

用于 μ 子 g-2 实验的巨型电磁体抵达费米实验室。这个磁体于 1990 年代制造于布鲁克海文实验室&#xff0c;并在 2000 年代早期由该实验室使用&#xff0c;但之后被运送到了费米实验室&#xff0c;进行这个新的且目前仍在持续的实验。来源&#xff1a;机器学习研究组订阅对一个…

mybatis自学笔记-1

从昨天开始对mybatis突然有了很深的兴趣&#xff0c;主要原因在于这几天的项目采用的是smm&#xff0c;以后使用mybatis的概率也是非常大&#xff0c;抱着一劳永逸的想法&#xff0c;选了这几天的黄道吉日就把mybatis给办了吧。笔记主要参考mybatis的官网&#xff0c;在此给出链…

迈向智能世界2030的九大技术挑战与研究方向

来源&#xff1a;华为在2021华为全球分析师大会上&#xff0c;华为董事、战略研究院院长徐文伟发布了迈向智能世界2030的九大技术挑战与研究方向&#xff0c;呼吁产学研精诚合作&#xff0c;以开放包容、协同创新的机制&#xff0c;汇集全人类的智慧和创新能力&#xff0c;满足…

VM虚拟机下配置centos linux系统

如果配置中出现错误,请参照下列文档参照: 1. linux关于connect: network is unreachable 问题的解决 https://blog.csdn.net/liu911025/article/details/73431468/ 2. Centos 配置eth0 提示Device does not seem to be present https://blog.csdn.net/xiaobei4929/article/de…

2021年AI将改变制造业的6大应用趋势

来源&#xff1a;先进制造业▍一、用于缺陷检测的深度学习在制造中&#xff0c;生产线中的缺陷检测过程变得越来越智能。深度神经网络集成使计算机系统可以识别诸如刮擦&#xff0c;裂纹&#xff0c;泄漏等表面缺陷。通过应用图像分类&#xff0c;对象检测和实例分割算法&#…

RequestMapping注解的继承问题

RequestMapping注解被用来注明访问路径&#xff0c;例如: RequestMapping("/data") RequestMapping("/user/list") 在写代码的时候遇到了there is already xxxx been method的错误&#xff0c;显示之前已经被注入&#xff0c;发现是父类中有相同的Reque…