纵观时代演进的脉络,从农业反动到工业革命再到常识反动,从远古结绳计数到现代珠算与机械计算再到当初的电子计算,数学始终是人类文明提高的次要力量。当今时代,算力作为新型生产力,数据作为新的生产因素,参加价值发明和调配,信息技术成为了驱动经济社会倒退的根底能源。随着 5G、人工智能、云计算、大数据、IoT 等技术的推动,万物互联的时代行将到来,算力需要将越来越大,无望代替热力、电力,成为拉动数字经济向前倒退的新动能、新引擎,并成为影响国家综合实力和国内话语权的要害因素,国与国的外围竞争力正在聚焦于以计算速度、计算方法、通信能力、存储能力为代表的算力,将来谁把握先进的算力,谁就把握了倒退的主动权。人工智能与深度学习人工智能(Artificial Intelligence),是钻研、开发用于模仿、延长和扩大人的智能的实践、办法、技术及利用零碎的一门新的技术迷信。它起源于 20 世纪五六十年代,通过半个多世纪的演变,经验了符号主义、连贯主义和行为主体三次浪潮的相互交织倒退,到现在,作为一项新兴的通用技术,正在推动着社会生存与各行各业的巨变。现阶段人们普遍认为,深度学习 + 大规模计算 + 大数据 = 人工智能。什么是深度学习?在人工智能畛域,机器学习是其中的一个技术流派,通过从已知样本中提炼法则来取得判断未知样本的智能;深度学习则是机器学习的一种,它所学习进去的模型是深度神经网络。具体来说,机器学习能够了解为机器从已知的教训数据(样本)中,通过某种特定的办法(算法),本人去寻找提炼(训练 / 学习)出一些法则(模型);提炼出的法则就能够用来判断一些未知的事件(预测),自 2006 年以来,机器学习畛域深度学习(Deep Learning)获得了突破性的停顿。深度学习是一种非凡的机器学习,在语音和图像识别方面获得的成果,远远超过先前相干技术。它通过学习将世界示意为嵌套的概念层次结构来实现弱小的性能和灵活性,每个概念都是依据更简略的概念进行定义的,而更形象的示意则用不那么形象的概念计算出来。深度学习算法分「训练」和「推理」两个过程。简略来讲,人工智能须要以大数据为根底,通过「训练」失去各种参数(也就是模型),而后把模型传递给「推理」局部,失去最终后果。神经网络分为前向计算(包含矩阵相乘、卷积、循环层)和后向更新(次要是梯度运算)两类,「训练」是两者兼而有之,「推理」次要是前向计算,都蕴含大量并行运算。一般来说,「训练 + 推理」在云端进行,终端人工智能硬件只负责「推理」。
算力:人工智能的外围因素近年来,随着深度学习的推动,AI 畛域对算力的要求每年减少 10 倍左右。为了达到这个指标,咱们须要解决大量的数据。因而,人工智能三大因素:算法、算力和大数据,缺一不可,都是人工智能可能实现大规模利用的必备条件。1、数据。人类要获取肯定的技能都必须通过一直的训练,能力游刃有余,AI 也是如此。人工智能的根基是训练,只有通过大量的训练,神经网络能力总结出法则,利用到新的样本上。只有领有大量数据,且能笼罩各种可能的场景,能力失去一个体现良好的智能模型。2、算力。有了数据之后,须要进行一直地反复的训练。深度学习中有三个概念叫 Epoch(“一代训练”),Batch(“一批数据”),Iteration(“一次训练”)。仅仅将训练集从头到尾训练一遍是不够的,须要把训练集翻来覆去训练很多轮。训练和推理都须要弱小算力的撑持。3、算法。神经网络算法和深度学习是目前最支流的人工智能算法。算力是人工智能的三大因素之一,须要芯片的撑持,这是人工智能进一步倒退并实现产业化的要害。芯片:人工智能竞争的制高点 AI 芯片提供算力,承载算法,是实现人工智能的物理载体,因而是人工智能畛域竞争的制高点。什么是 AI 芯片?从狭义上 GPU 与 GPGPU 的定义说,所有面向 AI 利用的芯片都能够称为 AI 芯片,但目前人们普遍认为,AI 芯片是针对 AI 算法做了非凡减速设计的芯片。AI 深度学习须要很高的并行计算、浮点计算以及矩阵运算能力,基于 CPU 的传统计算架构无奈充沛满足人工智能高性能并行计算 (HPC) 的需要,因而须要倒退适宜 AI 架构的专属芯片。对于人工智能计算架构来说,CPU 配合减速芯片的模式是典型的 AI 部署计划:CPU 提供算力,减速芯片晋升算力并助推算法的产生。常见的 AI 减速芯片依照技术路线能够分为 GPU、FPGA、ASIC 三类。其中,利用于图形、图像处理畛域的 GPU 能够并行处理大量数据,非常适合深度学习的高并行、高本地化数据场景,是目前支流的人工智能计算架构。1、GPU 用于大量反复计算,由数以千计的更小、更高效的外围组成大规模并行计算架构,装备 GPU 的服务器可取代数百台通用 CPU 服务器来解决高性能计算和 AI 业务。2、FPGA 是一种半定制芯片,灵活性强集成度高,但运算量小,量产老本高,实用于算法更新频繁或市场规模小的专用畛域。3、ASIC 专用性强,适宜市场需求量大的专用畛域,但开发周期较长且难度极高。GPU:最适宜 AI 深度学习的异构芯片 GPU 与 GPGPU 的定义 GPU(Graphics Processing Unit,图形处理器)是进行图像图形相干运算工作的微处理器,最后用处是将计算机系统须要显示的信息进行转换驱动,从而管制显示器的正确显示。GPGPU(General-Purpose Computing on Graphics Processing Units,通用计算图形处理器)用专门解决图形工作的处理器,运行图形渲染之外的通用计算工作,这些通用计算经常与图形处理没有任何关系。GPU 的特点是并行处理能力强、计算能效比高,并且有很大的存储带宽。某些利用,例如人工智能(机器学习)模型训练与推理、高性能计算等,往往是大数据流利用,这时,用 GPGPU 解决这类问题,就比 CPU 效率更高,它对于用传统语言编写的、软件模式的计算有较好的反对,具备高度的灵活性。目前 GPGPU 广泛应用于高性能计算、行业 AI 利用、安防与政府我的项目、互联网及云数据中心等。其次要利用场景:一是人工智能模型训练与推理;二是高性能计算机。GPU 的构造因为 CPU 在图像渲染方面能力有余,GPU 被创造进去分担这部分工作,在屏幕上进行多边形图像渲染,其本质就是并行处理简略工作:每个像素点的色调能够独立计算,不须要思考其它像素点。有了这样上千个简略的外围,再配合适合的代码,就能解决超大规模的数学运算,实现真切的游戏体验。因为 CPU 有通用性的需要,其单个外围往往会设计得大而全;加上 CPU 计算的个性,外围中有很大一部分面积用来构建缓存(蕴含 L1 和 L2 两级缓存)和管制单元(解码器与分支预测等前端单元),理论用来运算的单元面积可能仅占整个外围的一半甚至不到。GPU 的设计理念就不同,图形计算自身就是一项简略而暴力的“细活”,复杂度远不如 CPU 要负责的各种不同类型的工作,想要进步图形计算速度最简略的方法就是扩充处理器中含有的单元数量。所以 GPU 对于特定的计算工作,因为领有更大的计算单元,就很容易达到比 CPU 更高的计算速度,体现进去就是 GPU 在浮点运算吞吐量上远超 CPU。GPU 是基于数据的并行计算 GPU 的要害性能在于能够同时运算一些更简略的问题,而后并行处理,实用于高性能计算畛域所波及的诸如气象、宇宙模型和 DNA 序列等问题,以及数据库查问、密码学畛域的暴力搜寻、机器学习 / 深度学习、天文可视化等企业应用。GPU 并行编程的外围在于线程,一个线程就是程序中的一个繁多指令流,无数个线程组合在一起就形成了并行计算网格,成为并行程序,下图展现了多核 CPU 与 GPU 的计算网格:并行计算有两种类型:一是基于工作的并行处理,这种模式将计算工作拆分成若干个小的但不同的工作,如有的运算单元负责取数,有的运算单元负责计算,等等,这样一个大的工作能够组成一道流水线。二是基于数据的并行处理,这种并行模式将数据合成为多个局部,让多个运算单元别离去计算这些小块的数据,最初再将其汇总起来。一般来说,CPU 的多线程编程偏差于第一种并行模式,GPU 并行编程模式则偏差于第二种,其对于数据的计算能力更加弱小。
人工智能的研究者抉择了 GPU 最后,并不是 GPU 抉择了人工智能,而是人工智能的研究者抉择了 GPU,进而成就了 GPU:2012 年 Alex Krizhevsky(前谷歌计算机科学家)利用深度学习 +GPU 的计划,一举博得 Image Net LSVRC-2010 图像识别大赛,并奇迹般地将辨认成功率从 74% 晋升到 85%。NVIDIA 敏锐地洞察到了这一趋势,于是消耗微小的人力物力优化基于自家 GPU 的 CUDA 深度学习生态系统,在三年工夫里将 GPU 性能晋升了 65 倍,并提供基于其 GPU 的从后端模型训练到前端推理利用的全套深度学习解决方案,使得个别的开发人员都能够非常容易地应用 GPU 进行深度学习开发或高性能运算,从而奠定了其目前的王者之位。能够说,是人工智能和 GPU 相互成就了对方:人工智能算法促成 GPU 的倒退,而 GPU 也让算法更加简略。综上所述,GPU 是 AI 时代的算力外围,但 AI 算力的形成不仅仅只是 GPU 减速芯片,还须要构建包含网络互联、操作系统、深度学习框架及相应 SDK、算法与应用程序等,造成一个残缺的计算生态系统。