近几年,人工智能技术和应用飞速发展,在我们生活和工作中都得到大量的普及应用,归功于推动人工智能发展的三大要素:数据、算法和算力。
这三个要素缺一不可,相互促进、相互支撑,是智能技术创造价值和取得成功的必备条件。
数据
在人类发明史上,很多发明都是从模仿
动物开始的,比如,模仿鸟类来实现人类的飞行梦想。历史上记载有各种关于模仿鸟类飞行的故事,当然,结果是可想而知的,肯定都以失败告终。我们把使用这种方法论的人统称为“飞鸟派”。
早期研究人工智能的基本上都是“飞鸟派”,因为他们认为计算机要获得智能必须模仿人的思维模式。比如说当时的语音识别研究,几乎所有的专家都把精力投入到教会计算机理解人类的语言上,研究也是进展缓慢。
上世纪70年代初,美国康奈尔大学贾里尼克教授在做语音识别研究时另辟蹊径,换了个角度思考问题:他将大量的数据输入计算机里,让计算机进行快速的匹配,通过大数据来提高语音识别率。于是复杂的智能问题转换成了简单的统计问题,处理统计数据正是计算机的强项。
从此,学术界开始意识到,让计算机获得智能的钥匙其实是大数据。
数据对于人工智能,就如食材对于美味菜肴,人工智能的智能都蕴含在大数据中。因为人工智能的根基是训练,就如同人类如果要获取一定的技能,必须经过不断地训练才能获得,而且有“熟能生巧、巧能生仙”之说。
人工智能也是如此。只有经过大量的训练,才能总结出规律,应用到新的样本上。如果现实中出现了训练集中从未有过的场景,人工智能则会基本处于瞎猜状态,正确率可想而知。对于人工智能而言,大量的数据太重要了,而且需要覆盖各种可能的场景,这样才能得到一个表现得更智能的模型。
当前的时代,无时无刻不在产生大数据。人手一部的手机、无处不在的摄像头和传感器等设备都在产生和积累着数据,这些数据形式多样化,大部分都是非结构化数据。
这些大数据需要进行大量的预处理过程(特征化、标量化、向量化),处理后的数据才能为人工智能算法所用。
算法
传统的对象识别模式是由研究人员事先将对象抽象成一个模型,再用算法把模型表达出来并输入计算机。这种人工抽象的方法具有非常大的局限性,识别率也很低。
幸运的是,科学家从婴儿身上得到了启发。没有人教过婴儿怎么“看”,都是孩子自己从真实世界自学的。如果把孩子的眼睛当作是一台生物照相机的话,那这台相机平均每200毫秒就拍一张照——这是眼球转动一次的平均时间。到孩子3岁的时候,这台生物相机已经拍摄过上亿张真实世界照片。
这给科学家很好的启发:能不能给计算机看非常非常多猫的图片,让计算机自己抽象出猫的特征,自己去理解什么是猫。
这种方法被称为机器学习。谷歌就采用这种机器学习方法开发出了猫脸识别系统,而且准确度非常高。
机器学习除了在对象识别领域外,在其他领域也得到了广泛使用,并取得了令人刮目相看的诸多成果。在机器学习算法的推动下,搜索引擎、语音识别、自然语言处理、图像识别、推荐系统、专家系统和无人驾驶等领域取得了长足进步,机器智能水平有了极大的提升。
当前,机器学习算法是主流算法,是一类从数据分析中获得规律,并利用规律对未知数据进行预测的算法。机器学习算法主要分为传统的机器学习算法和神经网络算法,神经网络算法快速发展,其中最热门的分支当属深度学习,近年来深度学习的发展达到了高潮。
算法对于人工智能,就是厨师(烹饪的方法)与美味菜肴的关系。算法是实现人工智能的根本途径,是挖掘数据智能的有效方法。
算力
算力也就是计算能力,算力对于人工智能,如同厨房的煤气/电力/柴火对于美味佳肴一样。有了大数据和算法之后,需要进行训练,不断地训练,算力为人工智能提供了基本的计算能力的支撑,本质是一种基础设施的支撑。
AI中有一个术语叫Epoch,一个Epoch就是所有训练样本在神经网络中都进行一次正向传播和一次反向传播,再通俗一点,一个Epoch就是将所有训练样本训练一次的过程。
只把训练集从头到尾训练一遍神经网络是学不好的,而是要将完整的数据集在同样的神经网络中传递多次,把训练集翻过来、调过去训练多少轮。就像和小孩讲一个道理,一遍肯定学不会,必须一遍一遍反复地教,一遍就会那就是神童了。
有了大数据和先进的算法,还得有处理大数据和执行先进算法的计算能力。每个智能系统背后都有一套强大的硬件或者软件计算系统。
超级计算机是一个国家科技发展水平和综合国力的反映。没有超级计算机,天气预报不可能预报15天,中国的大飞机研制不可能进展如此之快。另外,核武器的爆炸模拟、地震预警、抗击新冠肺炎药物研发等领域也离不开超级计算机。
目前世界运算速度排第三位的超级计算机是中国的神威太湖之光,峰值性能达每秒12.5亿亿次,运算速度相当于普通家用电脑的200万倍,神威太湖之光一分钟的运算量需要全球72亿人用计算器不间断运算32年。
人工智能的发展对算力提出了更高的要求。除了训练,人工智能算法实际需要运行在硬件上,也需要推理,这些都需要算力的支撑。然而,能提供超强计算能力的超级计算机,价格也是超级昂贵,不是一般人都能使用得到的。
目前的人工智能算力主要是由专有的AI硬件芯片,以及提供超级计算能力的公有云计算服务来提供。其中GPU领先其他芯片在人工智能领域中用的最广泛,GPU有更高的并行度、更高的单机计算峰值、更高的计算效率。
一般来说,GPU浮点计算的能力是CPU的10倍左右。另外,深度学习加速框架通过在GPU之上进行优化,再次提升了GPU的计算性能,有利于加速神经网络的计算。
云计算是计算能力的放大器。云计算是一种基于互联网的分布式超级计算模式。在远程的数据中心里,成千上万台服务器等计算设备连接起来组成一个云,协同计算。云中的单个计算机性能可能非常一般,甚至就是普通电脑,但是很多一般加在一起的计算能力却不容小觑。
将GPU和FPGA的计算能力部署在云端对外提供云服务意味着优势的进一步放大。云计算甚至可以让你体验每秒10万亿次的运算速度,计算能力堪比超级计算机。俗话说得好,三个臭皮匠顶个诸葛亮、聚沙成塔、集腋成裘。
当前,随着人工智能算法模型的复杂度和精度愈来愈高,互联网和物联网产生的数据呈几何倍数增长,在数据规模和算法模型的双层叠加下,人工智能对算力的需求越来越大。
毫无疑问,人工智能走向深度学习,计算力已成为评价人工智能研究成本的重要指标。可以说,计算力即是生产力。
从智能时代的三个要素来看,我们也可以进一步解析出云计算、大数据和人工智能之间的关系。为了简化和帮助理解,以炒菜这个应用场景为例来说明它们之间的关系:
大数据相当于炒菜需要的食材,也就是生产原料。云计算等算力就相当于炒菜需要的煤气/电力/柴火,人工智能算法就相当于烹饪的方法,算法和算力也就是产生动力的生产引擎。有了生产原料和生产引擎,就可以在不同的应用场景下生产出我们所需要的不同东西。
2006年Hinton教授等人提出了深度学习算法,实现了人工智能算法理论的创新突破;随着移动互联网的生活化普及,促进了AI发展的“大数据”产生;大数据和深度学习等算法的双剑合璧,再配合摩尔定律下的算力快速提升---大数据、算力、算法作为输入,从技术角度推动了人工智能的发展。只有在实际的场景中进行输出,才能体现出人工智能的实际价值。
人工智能的常见应用场景包括:自动驾驶、虚拟助理、金融服务、医疗和诊断、设计和艺术创作、合同诉讼等法律实务、社交陪伴、服务业和工业。应用场景的不同决定了人工智能的应用落地和效果。同样是物流分拣中心,规模不同、信息化基础不同、企业数据不同、人员素质不同,对人工智能的要求和所发挥的效益也自然不同了。
人工智能发展到如今还是一个被大数据喂养起来的小怪兽,而且在深度学习算法没有明显突破的情况下,人工智能实现自我学习能力看起来还遥遥无期。因此,AI对人类的替代性以及威胁,还远没有达到让人类担忧的地步,当前大家探讨最多的还是人工智能在各个领域的应用。
(本文作者系纽约大学计算机博士,对外经济贸易大学产业经济博士后,中国电子学会云计算专家委员会委员,中国通信学会云计算专家委员会委员,教育部战略研究中心云计算首席科学家,武汉纺织大学云计算与大数据研究中心主任。主要从事云计算技术、基于云计算的物联网、移动互联网、大数据等技术及应用、软件安全与云安全等新一代信息技术研究。)