在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
Google一直以来都走在人工智能开发浪潮的最前沿,目前引领着人工智能技术的应用。可以说,谷歌的核心技术就是AI的机器学习和神经网络。那么为什么Google是人工智能发展的主要动力?主要是由于谷歌投资了大量资金在云平台能够高效运作的硬件开发上。下面我们来详细分析Google在人工智能开发上做出的努力和贡献。
谷歌的云平台正在不断努力,利用这个日益流行的计算领域。但是,这个新领域需要新的硬件才能更高效的运行,而且谷歌自己在硬件开发上也投入了大量的资金,并且将其命名为Cloud TPU。那么它是如何运作的呢?谷歌在I/O开发者大会上推出了第二代TPU,为更强的集群提供了更高的性能和更好的扩展能力。TPU是一种特定于应用程序的集成电路,它是专门为特定用例设计的自定义集成电路,而不是像CPU那样一般的处理单元。该单元的设计目的是处理常见的机器学习和神经网络计算,用于训练和推理,特别是矩阵相乘、点积和量子化的变换,通常只有8位的精度。
虽然这些计算同样可以在CPU上完成,有时甚至在GPU上效率更高,但是在夸操作类型的扩展时,这些架构在性能和能源效率方面非常有限。例如IEEE 754 8位证书相乘优化设计可以比16位浮点优化设计性能高出5.5倍,具有6倍的预期效率。它们在能量方面的效率缩小了27倍,IEEE 754是用于所有现代CPU浮点计算的技术标准。
此外,许多神经网络用例需要从用户的角度来进行低延迟和几乎瞬时的处理。这支持特定任务的专用硬件,而不是试图将典型的高延迟图形架构适用于新的用例。而访问外部RAM内存延迟也非常昂贵。在大型数据中心,用CPU或GPU执行神经网络功能时,电力和区域的低效率可能导致出现巨大的成本支出。不仅仅是在硅和设备上,而且还会长时间浪费能源。谷歌知道,如果机器学习能以一种有意义的方式发挥作用,它需要的硬件不仅能提高性能,而且还能提供比CPU和GPU更好的能源效率。
为了解决这一问题,谷歌着手专门设计了TPU,以提供比现有GPU更好的10本成本性能改进。最终的设计是一个可以附加到通用PCIe总线上的协同处理器。它可以与普通的CPU一起工作,可以通过它的指令和处理流量,以及通过设计成为一种附加组件来加速时间部署。结果在进行5个月的研发之后,这项设计就被使用在了谷歌的数据中心。
谷歌发布了一个全面的对比,将TPU性能与效率与Haswell架构CPU和NVIDIA Tesla K80 GPU进行对比,让我们更加深入的了解了处理器的设计。谷歌TPU的核心是一个矩阵相乘单元,该单元包含了65538八位倍增器硬件单元,专门用于计算两个数字的乘积,并将其添加到一个累加器中。当使用浮点数进行操作的时候,这被称作FMA。也许你还记得,这是ARM为优化其最新的Cortex A75和A55CPU以及Mali-G72努力的结果。
与CPU或GPU不同,在将数据发送到算数逻辑单元时,每个操作都可以访问多个寄存器,这个Mac实现了一种收缩设计,它可以读取一次寄存器,并在长时间的计算中重新使用该价值。在TPU中,这是可能的结果,因为它的简化设计可以让我们看到在相邻的连接中,ALU执行乘法和加法,而不需要任何内存访问。折现值了设计在可能的功率上表现,但是极大的提高了它们的性能和效率。
在数字方面,谷歌的TPU可以除了65536个多数据,并且为每个周期添加8位证书。考虑到TPU运行在700MHz的情况下可以计算65536×7亿次或者在矩阵单元中每秒92兆(万亿次操作)。谷歌表示,它的第二代TPU可以提供最多180兆浮点性能。与典型的标量RISC处理器相比,它的并行吞吐量要高得多,后者通常只在一二时钟周期或更多的指令下传递一个操作。
矩阵相乘单元的16位产品在矩阵单元下的32位累积器收集。还有一个24MB的SRAM的统一缓冲区,它作为寄存器工作。控制处理器的指令通过PCIe总线从一个CPU发送到TPU。这些都是非常复杂的CISC类型指令,专门用来运行每个指令的复杂任务,例如大量的多添加计算。这些指令被传递到一个4阶段的管道中。TPU总共只有12条指令,其中最重要的5条是简单的读写结果。
总体来说,谷歌的TPU更现实浮点协处理器的原始想法,而并非GPU。它是一个让人意外的精简版硬件,只包含了一个主要的处理元素和一个简单的简化控制方案。没有缓存、分支预测器、多处理连接,或者将一个普通CPU中找到的其他微架构特性,这也有助于在硅和电力消耗上节省大量的能源。
性能方面,谷歌表示自己的TPU设计通常比CPU能提供更好的性能与瓦特比,比在GPU上运行的性能高出29倍。这种芯片设计不仅能提高能源效率,而且还能提供更好的性能。在六种常见的参考神经网络工作负载中,TPU在所有测试中都提供了显著的性能优势,通常比GPU快20倍或更多,比CPU处理快了71倍。当然,这些结果会根据CPU和GPU的类型而有所不同,但都经过了谷歌的测试。谷歌还专门对高端的英特尔Haswell e5-2699 v3和NVIDIA K80进行了测试,更深入的了解硬件特性。
谷歌在硬件上的努力让它在云计算领域有了一个良好的开始,但并不是所有的人工智能技术都能很好地将数据传输到如此遥远的距离。一些应用实例,比如自动驾驶汽车,需要几乎即时计算,因此不能依赖于互联网上的高延迟数据传输,即使云计算的计算能力非常快。相反这些类型的应用程序需要在设备上本地完成,同样的道理适用于许多智能手机应用程序,比如摄像头对图像的处理。
最近一段年时间,英特尔收购了多家人工智能公司,比如2016年的Nervana Systems、去年9月的Movidius、今年3月的Mobile。我们也知道英特尔有自己的神经网络处理器,位于它的神经网络之下。这一产品是英特尔收购Nervana公司的结果。我们对这种处理器不太了解,但它是为服务器设计的,使用一种称为Flexpoint的低精度数字格式,,并且以每秒8兆的速度进行内存访问。并且将与谷歌的TPU竞争。
第一眼看上去,Pixel的硬件与谷歌的硬件设计完全不同,考虑到不同的预算,这也并不让人感到意外。尽管我们对谷Coud TPU Visual Core架构并不了解,但我们可以发现一些类似的功能。设计中的每个图像处理单元都提供512个算术逻辑单元,总共有4096个。
同样,这意味着一个高度并行的设计,能够同时处理大量的数据,即使是经过缩减的设计,也可以每秒执行3万亿次操作。很明显,这个芯片的数字单元比谷歌的TPU要少得多,但毫无疑问它的不同之处在于主要是为了增强图像的功能而设计,不是谷歌在云计算中运行的各种神经网络。然而它是一种类似的、高度并行的设计,能够执行特定的操作。谷歌未来是否坚持这一设计,并继续与英特尔合作,以获得边缘计算能力,还是依赖于其他公司开发的硬件,还有待观察。
为什么Google是人工智能发展的主要动力?一方面是由于谷歌研发的TPU提供了大型云平台计算能力,另一方面是因为Google在人工智能的硬件开发领域也是同样成绩斐然。因此Google不愧为推动人工智能的发展的主要动力。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
小白学习神经网络入门讲解
当下大热的人工智能技术的核心技术,其实就是机器学习,而神经网络就是模仿人脑处理方式的一种机器学习算法。因此想要了解人工智能,首要条件就是理解什么是神经网络。它是人工智能的底层模型,许多复杂的应用和高级模型都基于此。本文将用小白都能理解的话,为大家深入浅出的讲解神经网络的运作过程,让大家都能轻松入门神经网络的学习。
5883
2019-12-09 16:43:46
AI人脸识别SDK技术新增功能分析
佩戴口罩AI人脸识别技术分析,由于肺炎疫情医院、机场、火车站、地铁站等公共场所实现对进出人员戴口罩情况进行检查,人脸离线识别SDK Android版 V4.0 系统可以实现对进出人员戴口罩情况精准而快速的筛选,降低人员聚集交叉感染的风险。
5573
2020-02-28 15:12:53
零基础入门深度学习要了解什么内容?
如今,人工智能已经是一个频频被大众所提及的网络热词,但是不少人仍旧不知道人工智能并不等于深度学习。通常来说人工智能包括:机器学习、深度学习,它们之间有一定的交集但是我们一定要区分开它们。如果你是零基础想要入门深度学习,不妨一起来了解深度学习的概念、发展历程以及应用场景。
4956
2020-08-14 18:14:03
人工智能的未来趋势
随着云计算、大数据以及互联网网络的逐渐成熟与普及应用,人们对人工智能的期望值越来越高。甚至我国对人工智能的发展高度重视,已经陆续出台一系列人工智能产业发展政策。甚至全国各地对人工智能产业的发展已经开始执行各种具体的措施,国内AI领域发展已经形成了中央联动效应,促进了产业应用的加速落地,更快的和骑车、医疗、物料、制造业等关键产业融合。
4241
2020-09-16 16:26:03
学习人工智能都需要学什么?
人工智能课程需要学习python编程基础、web基础、web-Django框架与项目、 Web-Flask框架与项目、人工智能、机器学习等方面的知识。掌握计算机原理、网络、Web前端、后端、架构、 数据库、项目部署、数据获取、数据提取、数据清洗、数据挖掘、机器学习、深度学习、图像识别等领域所需要的全部技术的前沿课程。
5519
2020-11-23 17:38:19