多家机构将阿里云估值上调至千亿以上,高盛给予最高估值1238亿美元
06-17
日前,谷歌发布了一款专门为其深度学习算法Tensor Flow设计的专用集成芯片,名为TensorProcessingUnit(TPU)。
我们都知道,相比谷歌的软件产品,其自主设计的硬件产品的亮相往往不那么高调,偶尔也会以一声大爆炸而落下小雨而告终。
但这一次的新硬件涉及深度学习,而谷歌在这方面极其擅长并处于领先地位。
结合近期谷歌与各大技术在AI方面的动向,不难猜测这款芯片对于谷歌以及AI开发者来说都具有重要意义,将会对行业产生深远的影响。
但为什么谷歌在通用硬件性能已经非常强大的情况下,仍然要开发一款专门用于深度学习算法的硬件,以及这款芯片对其他巨头意味着什么,并不是一件容易解释的事情。
。
深度学习的计算过程 对于任何计算来说,更换新硬件有两个目的:更快的速度和更低的能耗。
深度学习,一个看似神秘的术语,本质上无非就是大量的计算。
我们都知道一句老话:通用工具永远不如专用工具有效。
无论是CPU、GPU还是FPGA,其特性都被认为是通用工具。
因为他们都可以处理许多不同的任务。
专用的TPU自然应该比之前的硬件更加高效。
这里的高效率意味着更快的速度和更低的能耗。
但我们不能只讲事实,我们还需要提供一些数据。
事实上,Xilinx曾表示,在特定的FPGA开发环境下,深度学习的能效比将达到CPU/GPU架构的25倍。
不是两次、两次,而是25次!学生可以拿出纸和笔。
让我们举一个实际的例子来解释一下这种效率提升的原因:以深度神经网络(DNN)上的图像识别为例,整个网络的结构大致是这样的: 图片来源:gitbooks.io 除了输入层用于提取图像的特征作为函数,输出层用于输出结果,其他隐藏层用于识别和分析图像的特征。
当输入图像时,第一个隐藏层首先逐像素对其进行分析。
此时的分析首先会提取图像的一些一般特征,比如一些粗糙的线条、色块等。
如果输入是人脸的图像,首先得到的将是一些倾斜的颜色变换。
第一层中的节点将根据对获得的信号的分析来决定是否向下一层输出信号。
所谓分析过程,从数学上讲,是指每个隐藏层中的节点通过特定的函数对相邻节点的加权数据进行处理。
并决定是否将结果输出到下一层。
通常每层分析完成后,有些节点不会向下一层输出数据。
当下一层接收到上一层的数据后,可以识别出一些比较复杂的特征,比如眼睛、嘴巴、鼻子等,并逐渐提高识别级别,在最高级别时,算法就会完成识别对所有面部特征进行分析,并在输出层给出结果判断。
根据不同的应用,这个结果可能会有所不同。
就像说出那张脸是谁的一样。
图片来源:Heart of the Machine 不难想象,由于每一层分析都要对极其大量的数据进行操作,因此处理器的计算性能要求极高。
这时CPU的缺点就明显体现出来了。
经过多年的演变,CPU根据自身的定位需要,不断强化其执行逻辑运算(If else等)的能力。
相比之下,纯粹的计算能力并没有太大的提升。
因此,CPU在面对如此大的计算量时,难免会感到吃力。
很自然地,人们会想到使用GPU和FPGA进行计算。
FPGA和GPU的实际计算能力不仅与硬件的计算速度有关,还与硬件能够支持的指令有关。
我们知道,将某些高阶运算分解为低阶运算会导致计算效率的下降。
但如果硬件本身支持这样的高阶运算,就没有必要对其进行分解。
可以节省大量的时间和资源。
FPGA和GPU都拥有大量的计算单元,因此计算能力都非常强。
在进行神经网络运算时,速度会比CPU快很多,但两者还是有一些区别。
GPU出厂后,由于架构固定,硬件原生支持的指令实际上是固定的。
如果神经网络运算中有GPU不支持的指令,例如GPU只支持加减乘除,而我们的算法要求它执行矩阵向量乘法或卷积等运算, GPU无法直接实现,只能使用软件模拟方法,例如使用加法和乘法运算的循环,速度会比编程的FPGA慢。
对于FPGA来说,如果FPGA没有标准的“卷积”指令,开发人员可以在FPGA的硬件电路中对它们进行“现场编程”。
相当于改变了FPGA的硬件结构,让FPGA原生支持卷积运算,所以效率会比GPU更高。
其实到这里,我们就更接近Google开发TPU的原因了。
TPU是一种ASIC,是一种类似于FPGA但不具有可定制性的专用芯片。
正如谷歌所描述的,它是一款专门为其深度学习语言 Tensor Flow 开发的芯片。
因为它是专门为 Tensor Flow 准备的,所以 Google 并不要求它具有任何可定制性,只要它能够完美支持 Tensor Flow 所需的所有指令即可。
同时,TPU运行Tensor Flow的效率无疑将是所有设备中最高的。
这就是谷歌开发TPU最明显的目的:追求极致的效率。
会对其他厂商产生什么影响?目前,不少厂商在AI领域投入了大量精力,并表现出了一定的野心。
在TPU发布之前,该领域的大多数制造商都在使用FPGA和GPU来改进和训练自己的神经网络算法。
NVIDIA是其中比较特殊的一个:它是全球最大的GPU制造商之一,一直不遗余力地推动其产品在深度学习领域的应用。
但实际上,GPU设计的最初目的并不是主要执行神经网络运算,而是图像处理。
更多的是因为它的特殊结构恰好更适合神经网络的运算。
虽然NVIDIA也在推出一些自己的深度学习算法,但GPU本身的特性却一直被FPGA所掩盖。
这款TPU会凭空给市场增加一个竞争对手,所以如果让我投票的话,我认为这款TPU对NVIDIA的影响最大。
虽然谷歌表示不会将这款芯片出售给其他公司,但这意味着它不会与其他公司直接竞争。
但如果谷歌的芯片性能更好,开发商和服务提供商将越来越多地转向谷歌提供的服务,而不是使用其他制造商的服务和硬件。
这也会间接影响到其他厂商,尤其是NVIDIA。
商业冲击。
其次,还有以英特尔为代表的“中层”厂商。
Intel去年底收购了全球知名FPGA厂商Altera,显然不会忽视其在深度学习方面的潜力。
但到目前为止,英特尔还没有明确表明进军人工智能领域的决心,也没有说明将推出哪些人工智能产品。
相反,它只是表示愿意将相关功能应用到现有产品中。
事实上,对于这样的厂商来说,除非他们自己长期在秘密研发人工智能产品。
否则,其实市场竞争只会给他们带来更好的工具,不会对他们的利益产生任何影响。
当然,如果谷歌未来计划设计自己的CPU,那就另当别论了。
但谷歌目前表示没有这样的意图,那就是另一回事了。
其他在人工智能领域取得与谷歌类似水平成就的公司预计不会受到太大影响,例如微软和苹果。
微软一直在探索FPGA对人工智能相关运算的加速,并拥有自己开发的算法。
经过长时间的调试,这些基于FPGA的算法在最终性能上不一定会输给Google太多。
如果微软愿意,它实际上可以随时开始开发自己的人工智能芯片。

毕竟微软已经开发了很多自己的专有硬件。
NVIDIA的困境 NVIDIA大力宣传自家GPU对深度学习算法的加速效果,却在宣传文章中从未提及FPGA。
这无疑是因为它明白,自己的产品与FPGA相比不仅没有明显的优势,还存在一些不足。
TPU的入局无疑会加大NVIDIA的压力。
GPU的特性短时间内可能不会发生很大的变化。
短期内NVIDIA在人工智能领域最应该做的可能是找到适合GPU性能的特殊场景,然后将其发扬光大。
至于与FPGA、TPU的直接竞争,可能还要再等几代。
版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。
标签:
相关文章
06-17
06-17
06-18
最新文章
Android旗舰之王的过去与未来
智能手表不被开发、AR眼镜被推迟,Meta的产品经历了一波三折
为什么Cybertruck是特斯拉史上最难造的车?
更新鸿蒙3后,文杰允许你在车里做PPT了
新起亚K3试驾体验:追求“性价比”,韩系汽车仍不想放弃
阿维塔15登场!汽车配备了增程动力,理想情况下会迎来新的对手吗?
马斯克宣布创建 ChatGPT 竞争对手! OpenAI的CEO给他泼了冷水, GPT-5可能会发生巨大变化
骁龙无处不在,是平台也是生态