查看原文
其他

人工智能硬核之旅:从算法到芯片

超图集团 2020-09-15

The following article is from 理想城市发展计划 Author 产城研究院



此文转载自“理想城市发展计划(ID:Idealcity0824)”。该公众号为万科中西部城镇建设发展有限公司官方微信。


编者按:近年来,人工智能(AI)正在不断释放科技革命和产业变革积蓄的巨大能量,深刻改变着人类生产生活方式和思维方式,推动社会生产力整体跃升。什么是AI?它将为我们带来哪些价值?我们将陆续为大家分享AI科普系列文章。后续更新敬请关注!



人工智能是如何思考的?


人工智能的思考方式其实和人类非常相似,都是通过大量的经验积累,形成一定的规律认知,然后去判断未知事物,简而言之,它是一种使用机器代替人类实现认知,分析,决策等功能的综合学科。可以看到,在这样一个过程中,强大的计算能力是人工智能实现的底层支撑,而这个基础层则主要包括大数据、硬件算力和算法模型,其中大数据对应人的经验,硬件算力对应人的大脑本身,而算法模型则对应我们大脑思考的方式。



随着互联网的爆发和智能终端的普及,我们已经进入了一个海量数据的时代,现在,大量的数据可以在交易伙伴之间快速、轻松、廉价地流动,为人工智能的实现奠定了基础。然而,仅仅拥有大量的数据是不够的,我们更需要正确的方法和工具来处理这些数据,才能将信息转化为有效的决策,这就不得不谈到人工智能基础支撑层的另外两大核心——算法模型和硬件算力。


算法的迭代——

机器学习与深度学习


人工智能的算法经历了一个漫长的进化过程,早期的人工智能能实现的动作十分固定呆板,比如首台采用人工智能的移动机器人Shakey,它带有视觉传感器,能根据人的指令发现并抓取积木,虽然只能实现这种简单的识别和动作,但在当时已经令人类感到非常兴奋。而后来随着技术研究的深入,开始出现机器学习、深度学习等算法,让人工智能可以自己去学习事物中的规律从而进行更加复杂的判断,从电脑击败国际象棋世界冠军,到Siri的出现,再到围棋人工智能程序AlphaGo横扫棋坛,人工智能的学习能力在不断地突破。




什么是机器学习


传统的对象识别模式是由研究人员将事物的规律总结成一个算法(如程序代码),输入计算机来进行计算,局限性非常大。而科学家对机器学习的研究最早是从婴儿身上得到了启发,没有人教过婴儿怎么“看”,但是他们通过在真实世界中不断看到某一样事物,当看到的数量足够多时,就认识了该事物。这给科学家很好的启发,比如给计算机看非常多猫的图片,让计算机自己抽象出猫的特征,自己去悟什么是猫,这种方法被称为机器学习谷歌就采用这种机器学习方法开发出了猫脸识别系统,而且准确度非常高。


可见机器学习是一种能够赋予机器学习的能力以让它完成直接编程无法完成的功能的方法。从实践上来说,一次完整的机器学习通常包括:收集数据并进行预处理,比如进行数据清理、统一化,然后根据需要将数据输入某种现有的模型,并通过数据反复训练模型,不断调整算法参数,提高其精确度,当训练出来的模型能够顺利通过评估测试后,就可以直接用该模型来对新的数据进行分析了。


机器学习家族,各有千秋


机器学习的算法有很多种。根据数据类型的不同,对一个问题的建模有不同的方式,因此将机器学习按照学习方式分类是一个不错的想法,这样可以让人们在建模和算法选择的时候考虑能根据输入数据来选择最合适的算法来获得最好的结果。现阶段主流的机器学习方式主要有以下四种(见表):



其中监督学习、无监督学习和半监督学习的区别主要在于输入的训练资料是否有特定的标签,监督学习的训练是通过大量有标签的资料来建立,数据预处理相对麻烦,因此市场上演化出了专门的数据标识公司来进行监督学习的前期工作,比如将图片标注为「苹果」或「橘子」,通过大量学习后的模型,就能够准确识别新照片上的水果分类;而无监督学习训练的资料则没有对应的标签,主要用来寻找大量数据的内部关联性;顾名思义,半监督学习则介于两者之间,输入的数据部分被标识,部分没有被标识,通常需要先通过找寻被标识数据的规律,来对未标识数据进行标识,再进行训练,这种学习方式更适合在拥有少量标识样本和大量未标识样本的时候使用。


强化学习实际上是一种学习模型,它并不会直接给你解决方案——你要通过试错去找到解决方案。Alphago用的就是强化学习,它不需要标签,你选择的行动(move)越好,得到的反馈越多,所以你能通过执行这些行动看是输是赢来学习下围棋,不需要有人告诉你什么是好的行动什么是坏的行动。


深度学习,时代新宠


深度学习与传统机器学习的区别在何处呢?


人脸识别为例,传统的机器学习,我们会首先定义一些特征,如有没有胡须,来作为我们的机器学习的特征,以此对对象进行分类识别。然而深度学习则更进一步,它可以自动地找出这个分类问题所需要的重要特征来进行识别,并通过层层分解的方式,将图片的简单特征转化为更复杂更细节的特征,提高识别的准确度。


深度学习本来并不是一种独立的学习方法,也会用到有监督和无监督的学习方法来进行训练。但由于近几年发展迅猛,特有的学习手段相继出现(如残差网络),因此被单独看作一种学习的方法。



在过去几年中,深度学习已成为大多数AI类型问题的首选技术,掩盖了经典的机器学习。其中明显的原因是深度学习已经在包括言语、自然语言、视觉和玩游戏在内的各种各样的任务中体现出它的优越性。然而,尽管深度学习具有如此高的性能,在某些特定的情况下,传统机器学习也有自己的优势:



从上表中可以看出,深度学习能够处理大量的数据,并且在精准度、特征识别和解决问题的方式上都有绝对的优越性,但同时,它也呈现出硬件要求高、训练时间长、理解困难等特点,因此,在具体的操作实践中,我们可以根据情况进行最优的人工智能算法选择,比如在数据集较小时、或者需要在短时间内反复修改参数不断运行训练时,也可以考虑选择传统机器学习的方式来进行计算。


整体而言,机器学习的算法仍然在不断的更新迭代中,尤其是深度学习和强化学习,作为自主学习系统,将会成为未来的机器学习的发展方向,但这两种数据量和计算量都十分巨大的机器学习方法,也对人工智能的硬件计算力提出了更高的要求,人工智能芯片的升级迫在眉睫。


硬件算力的提升——芯片升级


人工智能芯片的发展


硬件算力决定了人工智能的运算效率,比如在自动驾驶系统中,如果系统的计算速度不够快,那么即使最后能得出正确的决策,这种滞后的决策也没有办法指导汽车安全行驶,因此,即使有再先进的算法、再完整的数据,如果硬件端无法实现快速的运算,那么在实际运用起来的时候也是没有意义的。


在这样的需求基础上,决定着人工智能硬件算力强弱的核心计算芯片经历了四次大的变化。2007年以前,人工智能一直没有发展成为成熟的产业,同时受限于当时算法、数据等因素,人工智能对于芯片并没有特别强烈的需求,通用的CPU芯片即可提供足够的计算能力。之后,随着高清视频、游戏等行业的发展,GPU产品取得快速的突破,人们发现GPU能更好适应人工智能算法,并且运算速度更快,开始尝试使用GPU进行人工智能的计算。进入2010年后,云计算广泛推广,通过云计算借助大量CPU和GPU进行混合运算成为了热点。但人工智能算法不断升级,对于特定的计算能力要求快速提升,因此进入2015年后,业界开始研发针对人工智能的专用芯片,希望通过更好的硬件和芯片架构,带来更高的计算效率。



不同的计算逻辑,多样的芯片类型


截止目前,根据计算模式,人工智能核心计算芯片类型主要分为两个方向:一个是利用人工神经网络从功能层面模仿大脑的能力,其主要产品就是通常的CPU、GPU、FPGA及专用定制芯片ASIC,但这种芯片将存储器和处理器分离,通过总线传递数据,随着处理的数据量海量地增长,总线有限的数据传输速率被称为“冯·诺依曼瓶颈”,严重影响计算机的计算效率和功耗。而另一种更加先进的神经拟态计算则是从结构层面去模仿大脑,信息处理和存储单元结合在一起,拥有极低的功耗。



现阶段普遍使用的人工智能芯片主要还是通用芯片中的GPU和FPGA,其中GPU作为图像处理器,设计初衷是为了应对图像处理中需要大规模并行计算,后来研究人员发现这种并行计算的特性恰好能够适应人工智能算法大数据并行计算的要求,且能够在CPU的基础上提升9倍到72倍的效率,因此便将其用于人工智能计算,但同时,它也有一定的局限性:


第一

深度学习包含训练和应用两个计算环节,GPU在深度学习算法训练上非常高效,但在应用时一次性只能对于一张输入图像进行处理,并行度的优势不能完全发挥。


第二

硬件结构固定不具备可编程性,无法像FPGA一样可以灵活的配制硬件结构来适应新的算法。


第三

运行深度学习算法的能效远低于FPGA。而FPGA的主要特点则在于其可重构性,可以不断适应最新的深度学习算法,同时相较于CPU和GPU,它的计算速度更快,而功耗缺更低,FPGA的出现,给人工智能在计算效率上进一步带来了10倍的提升。但当为深度学习而定制的专用芯片出现后,它在计算速度、功耗和量产后的单块成本上,就显示出了一定的差距。



人工智能芯片的未来在哪里


从上述主流芯片的局限性可以看出,随着人工智能算法和应用技术的日益发展,以及人工智能专用芯片ASIC产业环境的逐渐成熟,在近期内,ASIC将成为人工智能计算芯片发展的必然趋势。而这种趋势可能又会分为两个阶段:


第一阶段

当深度学习算法暂未稳定需要不断迭代改进的情况下,利用具备可重构特性的FPGA芯片来实现半定制的人工智能芯片是最佳选择。这种半定制芯片虽然依托于FPGA平台,但是可以快速开发、快速迭代,又同时优于普通FPGA芯片。


第二阶段

在针对深度学习算法的全定制阶段,芯片则完全采用ASIC设计方法全定制,性能、功耗和面积等指标面向深度学习算法都做到最优。


而远期来说,从结构层面去模仿大脑运算是人工智能追求的终极,在未来的类脑计算阶段,芯片的设计目的不再局限于仅仅加速深度学习算法,而是在芯片基本结构甚至器件层面上希望能够开发出新的类脑计算机体系结构,现阶段也已经有部分超前的企业如IBM等开始尝试研究。虽然这类芯片的研究离成为市场上可以大规模广泛使用的成熟技术还有很大的差距,甚至有很大的风险,但长期来看类脑芯片有可能会带来计算体系的革命。



数据、算法、硬件算力,构成了人工智能的核心驱动力——计算能力,三者缺一不可。随着三大关键技术的不断升级,可以预见,人类社会将逐渐进入把人工智能作为工作生活助手的“弱人工智能”时代,甚至在未来,机器获得自适应能力,实现像科幻电影里那样的“强人工智能”时代。人工智能,我们拭目以待。


参考文献:

《人工智能发展白皮书技术架构篇(2018 年)》中国信息通信研究院、中国人工智能产业发展联盟

《中国人工智能产业白皮书2018》德勤

《人工智能芯片系列》 SIMIT战略研究室

《眼见为实:计算机视觉的研发和应用》腾讯优图,Science

点击阅读原文查看更多详细内容!


【相关阅读】

 01 70年人工智能简史


【近期回顾】


 01 大数据GIS及应用浅析

 02 苏乐平:规划信息化牛人30年的反转人生

 03 地理空间数据库建设护航国家防汛抗旱工作

 04 自然资源和规划数据整合与治理

 05 《SuperMap三维管线技术白皮书》发布!


欢迎转载~


爱看你就点在看!

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存