- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
??
?
??
人工智能芯片分类及反思
?
??
?
?
?
?
?
?
?
???
?
?
?
?
?
缪希辰
摘要人工智能芯片是当前人工智能技术重要的载体之一,其实现人工智能的技术基础是其搭载的神经网络。文章从原理上对神经网络和人工智能芯片进行探究,在介绍人工智能芯片原理的同时对当前的人工智能芯片发展情况作出介绍,并在文章末尾对当前的人工智能芯片技术做出反思。
关键词人工智能;芯片;GPU:FPGA;ASIC
中图分类号TP3文献标识码A文章编号1674-6708(2019)230-0135-03
2018年以来,各大科技公司不断推出自己的人工智能芯片,例如谷歌的TPU、亚马逊云的Inderentia、高通的骁龙芯片等[1],可以说今年是人工智能芯片技术高速发展并逐步走向成熟的一年[2]。那么人工智能芯片是什么呢?人工智能技术又跟人工智能芯片有什么关系呢?
1什么是人工智能芯片
关于人工智能芯片的定义在历史的不同阶段都有过不同的定义,目前来看,最为从业人员所认可的定义为“AI加速器”或者称之为“神经网络加速芯片”[3]。即当前的人工智能芯片主要是为神经网络的计算所服务的,这可能跟很多人(尤其是业外人士)的认识相悖:人工智能芯片难道不是一个大脑的作用吗?为什么有着“计算加速器”之类的称号呢?在这里,笔者将从两个方面来介绍人工智能芯片。
1.1神经网络
人工智能的定义很早就有人提出,但直到本世纪初才逐渐成为社会热点,尤其近几年相关行业得到了井喷式的发展,相关人才也成为各大互联网、科技公司争相招聘的对象。似乎不跟人工智能挂钩的公司就算不上有技术竞争力的公司。这种现象发生的直接原因是神经网络算法的大规模开发应用,根本原因是计算机性能的大幅提高。
那么什么是神经网络呢?神经网络算法是机器学习诸多算法中的一支,这种算法其实很早就有应用,例如在经济学中它常被用来建立模型,或者说常被用于解决“黑箱问题”。从本质上来说,神经网络其实是通过大量的计算来拟合出一个函数,该函数符合我们为它设下的诸多限制。例如,在人脸识别问题中,我们为神经网络的训练准备了大量的“样本”(样本即训练集,用于神经网络的函数调整,每个训练样本都有一个“标签”,该标签就是评价我们的函数是否合理的重要指标)。在最初,我们的函数的各个参数都是随机、错误的,完全不具备实际意义,但通过将我们的输出结果与标签作比较,就可以得到我们当前的函数与理想函数之间的差距。
通过对神经网络各层权重的求偏导,就可以得到神经网络的梯度,进而以实际函数与理想函数之间的差距作为参考,实现随机梯度下降,进而实现计算结果与实际结果的差距越来越小。最终,我们可以得到一个经过拟合的函数,该函数可以相对准确地对输入进行判断和预测。
总结来说,神经网络可以这样理解:输入数据就像生产原料,从源头输入,在不同的生产线得到了不同的加工,最后汇聚为一个整体的产品。而神经网络的构建就像生产线的构建,需要反复的试验才能得到一个效率最高、产能最好的生产线,而构建这个生产线的目的则是为了得到一个成熟的生产过程,使得我们后来的生产原料都能够准确、快速地得到处理。因此,所谓的神经网络过程其实分为两个阶段,第一个阶段是神经网络的训练,该过程需要大量的、反复的计算;第二个阶段是“预测”,或者说实际应用,在该阶段中神经网络已经“成熟”并投入应用,开始对新的数据进行预测。
显然,上述过程(不论训练还是预测)都伴随着大量的计算,但我们需要注意的是这些计算虽然规模上很大,但是每一次计算都不复杂(即便将非线性的激活函数考虑进来),或者说都是由简单的加减法和乘法组成的,这也为我们人工智能芯片的开发提供了重要的理论基础。
1.2为什么需要人工智能芯片
传统的计算机芯片采用的冯诺依曼架构强调存储程序、顺序执行,即将大量的片上資源留给存储结构,因此CPU就像是一个老教授,他逻辑严谨,办事有条理,但囿于其只有一人,处理的绝对速度在客观上受到了限制,因此不管怎样提升CPU的性能,它在处理大量的计算(即便是简单计算)也存在着天然的缺陷。
正如上文所说,神经网络的训练和预测都需要大量的计算,在这种应用场景下,CPU的性能就受到了限制,一方面,它擅长的逻辑、时序处理功能都没有得到充分应用;一方面,它不擅长的并行数据处理却被成为了致命的缺陷。在这种背景下,对于能够并行处理数据、擅长大量运算的人工智能芯片的需求也就合理合情了[4]。
2人工智能芯片分类
如上所述,神经网络的训练和预测都需要大量计算,但我们要注意,这两种任务的运算又是有区别的。在训练过程中,我们相当于只有建造生产线的原材料,对于生产线具体的流向、交叉、协作都是未知的,只有经过了大量的试错、改进之后整个生产线才逐渐确定下来;而对于预测过程而言,我们的生产线
文档评论(0)