人工智能技术现状剖析
- 来源:《中国安防》 作者:赵宗玉 天地伟业技术有限公司
- 2020/4/8 9:31:2840161
【安防展览网 视点跟踪】从1956年达特茅斯会议提出AI开始,AI的研究经历几次沉浮。在一次次的高潮和低谷的交替中,不可否认的是,AI无论是在理论还是实践中都取得了长足的进步。尤其是近期以深度学习为代表的AI技术取得了突破性的进展,在计算机视觉、机器学习、自然语言处理、机器人技术方面取得了巨大的进步,深刻改变了我们的生活。在这次变革中,实验室的成果很快就可以进入工业界,这在以往的技术发展*是非常罕见的。2016年5月国家发展改革委员会等四部门联合下发《互联网+AI三年行动实施方案》,*总理的政府报告中也提到了AI产业发展,中国科学技术部“科技创新2030重大项目”将增加“AI2.0”,AI已经上升为国家战略。面对AI的热潮,我们应该如何理解现状?如何看待其进步?又如何理解其功能和限制?本文将从AI的核心理论基础,当前存在的一些问题以及未来可能发展的方向等诸多方面对AI做介绍。
一、 AI的核心基础
1.专用AI算法
深度学习本质上是一个自主学习系统,是从传统的模式识别衍生而来。通过大量数据进行训练,深度学习网络会自动找到这些数据的模式,然后通过这些模式来对未知数据进行预测。以Kaggle大赛中的猫狗分类为例,具体步骤是:(1)让计算机“看”数以万计包含猫和狗的图像;(2)程序通过对图像数据进行分类和聚类(例如:边缘、形状、颜色、形状之间的距离等)来建立模式,足够多的的模式可以得到终的预测模型;(3)运行程序通过预测模型来查看新的图像集,之后与预测模型比对,确定图像中是猫还是狗。
深度学习算法通过模拟我们大脑神经元网络的人工神经网络来实现类似人类大脑的功能。算法在运行中会执行各种循环,通过缩小模式与实际的差距来改进每个循环的预测,终建立一个预测模型。
安防行业中人脸识别应用是一个很好的关于深度学习的工业应用案例。人脸识别算法通过大量带有标签的人脸数据来训练模型,算法会自动识别出人脸的关键点。通过调用算法,设备会捕获到多个关键点,这些关键点会送到深度学习模型中,通过内置引擎和执行预测模型判断是谁。
强化学习也是一种自主学习系统,但它主要是通过反复试验来学习的。通过有限次执行行动以得到大化奖励从而确定答案,换句话说,它是通过实践来学习,从实践中找到结果。这就好比小时候学习骑自行车,刚开始的时候会经常摔倒,但随着摔的次数多了,慢慢就掌握窍门了,这个学习的过程就是强化学习。当计算机使用强化学习时,它们会尝试不同的行为,从反馈中学习该行为是否能够得到更好的结果,然后将能得到好结果的行为记住,规范点说就是计算机在多次迭代中进行自主重新修正算法,直到能做出正确的判断为止。
使用强化学习一个很好的例子是让机器人学习走路。首先机器人向前迈出一大步然后跌倒,这一大步和摔倒是强化学习系统关注的响应点。由于反馈是负面的,所以继续调整,系统会根据多个负反馈进行调整,终确定机器人应该把步子迈小一点,不停地小,直到机器人走路不会摔倒为止。
深度学习和强化学习首先都是自主学习系统。它们之间的区别在于,深度学习是从训练集中学习,然后将学习到的知识应用于新数据集,这是一种静态学习。而强化学习是通过连续的反馈来调整自身的动作以获得理想结果,是一种不断试错的过程,这是动态学习。另外现阶段投入市场应用的深度学习算法和强化学习算法都属于有监督学习,不同于无监督学习在数据集中自动寻找规律,有监督学习需要大量已标注的训练数据作为训练集,在训练集中寻找规律。
深度学习和强化学习都属于专用AI算法,在面向特定任务(比如下围棋、分类、检测)时,由于任务单一、需求明确、应用边界清晰、领域知识丰富、模型相对简单,形成了AI的单项突破,在单项测试中可以超过人类智能。AlphaGo在围棋比赛中战胜人类获得,AI程序在大规模图像识别和人脸识别中超过了人类水平,AI系统诊断皮肤癌达到专业医生的水平。
2.算力
除了专用AI算法,近些年计算机硬件的发展构成了AI发展的基础。AI早期进入第一个发展低谷的原因之一正是因为计算机计算能力不足。深度神经网络的训练本质就是矩阵运算,反向传播寻找整个网络的损失小值,使得训练很容易并行化。使用英伟达的GPU可以大大加快深度神经网络的训练速度,越来越多传统的信息厂商都在利用英伟达的GPU构建GPU集群。Intel的Xeon芯片提供了强大的多核计算能力,而且可以在服务器上组成多路,以及通过多节点集群进行并行优化计算。对于负载不是特别大的任务可以直接用cpu完成,目前Intel正在开发将cpu和FPGA计算能力整合的芯片。
专用的神经网络芯片发展迅速,主要有FPGA、DSP、ASIC、ARM扩展模块等技术路线,具有速度快、带宽高、功耗低等特点,主要面向移动和嵌入式系统。很多厂家在芯片里已经固化的图像处理、目标识别等基础模型和算法,快速集成到嵌入式设备中,目前主要功能以人脸识别、照片分类、图像处理、图像风格迁移、图像超分辨率重建、车牌识别、智能安防、自动驾驶、无人机姿态保持与位置追踪等领域为主。
3.数据
当前正处于数据爆发的时代。根据希捷科技赞助、数据公司(IDC)发布的白皮书《数据时代2025》预测:到2025年,数据圈将扩展至163ZB,相当于2016年所产生16.1ZB数据的十倍;属于数据分析的数据总量将增长至原来的50倍,达到5.2ZB;而认知系统“触及”的分析数据总量将增长至原来的100倍,达到1.4ZB。大量涌现的数据催生出了一系列全新的技术,AI将数据分析从不常见的、追溯式的实践转变为战略决策和行动的推动因素。
二、存在的一些问题
1.数据成本
前面提到过,在工业领域广泛应用深度学习网络需要大量的已经标注的数据进行训练才有可能达到预期的效果,这些训练数据的标注需要人为进行,这造成巨大的人力成本。虽然互联网有着取之不尽的海量数据,但是绝大部分都是未进行标注的数据。为了解决这个问题,可以从以下两方面尝试解决:
(1)无监督学习
相对于监督学习,无监督学习能够充分利用这些数据,不需要花费大量的人力物力去标注训练数据,这样就大大减少了训练模型的成本。另一方面,目前的深度学习模型的训练需要使用大量的数据。
(2)小样本学习
机器学习能力与人的学习能力相差甚远,比如小孩只需要几张猫的照片就能准确的识别猫,但是深度学习的模型需要几百万张图像,目前很热门的自动驾驶技术,需要几百万公里才能训练到令人满意的效果,但是人只需要几千公里就可以成为老司机。事实上,小样本学习更接近人的智能模型,小样本学习能力的发展能够将AI技术应用到更多更广泛的领域。小样本学习研究的一个重大突破是三名分别来自麻省理工学院、纽约大学和多伦多大学的研究者在2015年提出的“Bayesian Program Learning”方法,并利用它解决 “看一眼就会写字”的问题。
2.模型可解释性
AI另一个难题就是机器学习模型的可解释性和稳定性。目前大部分机器学习模型都是“黑盒”模型,很难让人理解。而且模型稳定性也一直是个问题,例如给图片加些白噪音,深度学习模型会给出令人大跌眼镜的预测结果。
3.模型大小限制
目前的计算能力难以训练大型的深度学习模型,比如GB级的模型训练过程对带宽要求很高。GPU比CPU更适合训练深度学习模型的原因之一是,相对于内存来说显存的带宽更大。另外模型很大往往会过度拟合基准数据,并不会从样本中提取更抽象的特征,在实际应用中,如果深度网络有偏差将会带来非常严重的后果。比如在训练自动驾驶的数据集中,不会有婴儿坐在马路中间。深度神经网络对标准的对抗性攻击很敏感,这些攻击会对图像造成人类难以察觉的变化,但会改变神经网络对物体的认知。Alan Yuille说这些问题的背后都是组合爆炸导致的,真实世界的图像利用组合观点来看数量太大了,从一定程度上说是无限的。任何一个数据集,不管多大,都很难表达出现实的复杂程度。
4.泛化性能
从专用智能算法到通用智能算法是下一代AI发展的必然趋势,也是研究与应用领域需要挑战的问题。通用智能被认为是AI皇冠上的明珠,从目标来看,通用智能意味着神经网络泛化能力的提高,为了解决这个问题,科研人员进行了各种努力。从正则化技术到dropout技术再到BN技术,这些技巧从一定程度上减缓了神经网络过度拟合的问题,提高了泛化能力。但是这些只是技巧,并不能从根本上解决问题。目前解决这个问题的方法是迁移学习,迁移学习是将一个场景中学到的知识迁移到另一个场景中。比如我们可以将利用猫和狗图像训练的分类模型迁移到其他相似的任务,用来分别鹰和布谷鸟。利用迁移学习,在一个模型训练任务中针对某种类型数据获得的关系也可以轻松地应用于同一领域的不同问题。迁移学习一定程度上缓解了标记数据的压力,对于我们接近通用AI迈进了一步。
三、发展趋势
虽然深度学习在某些方面还是存在一些不足,但是目前科学界已经有了一些可喜的突破,并且基于深度学习的AI深刻地改变了人们的生活,未来AI将会更加快速地发展,本文认为有以下四个发展趋势:
1.AI芯片加速发展
即使是快和先进的CPU也无法提高AI模型的速度,在AI模型运行的时候,需要额外的硬件来进行复杂的数学计算。尤其是前端设备,在安防行业中的应用,需要体积更小,功能更加强大的嵌入式芯片来运行性能更好的算法,用于实时跟踪、面部识别等应用。
2.AI边缘计算以及物联网融合开发
目前AI在边缘侧不断发展是驾驭数据洪流的关键之一,也是物联网未来发展的重要趋势。随着AI技术如火如荼地发展,海量数据需要快速有效的提取和分析,这大大加强了对于边缘计算的需求。未来AI技术、边缘计算和物联网将更加密切进行融合发展,尤其在安防行业视频监控领域的应用。
(1)神经网络之间的互操作性
神经网络的训练是基于框架的,一旦模型在特定的框架中完成了训练和评估就很难移植到另一个框架,这阻碍了AI的发展,未来神经网络之间的互操作性将成为AI行业的重要技术。
(2)自动化AI将会更加突出
从根本上改变AI解决方案的一个趋势是自动化AI,它使业务分析师和开发人员能够高效发掘出可以解决复杂场景的机器学习模型,而无需经过机器学习模型的典型培训,业务分析师可以更加专注于业务问题。
四、结语
AI技术一直处于计算机技术的前沿,其研究的理论和发展在很大程度上将决定计算机技术的发展方向。目前很多AI的研究成果深刻地改变着人们的生活,将来,AI的发展将会更加快速,会给人们的生活工作和教育带来更大的影响。