2.2 技术层
技术层是在基础层之上,结合软硬件能力所实现的针对不同细分应用开发的技术。如图2-5所示,技术层主要包括机器学习、计算机视觉、语音及自然语言处理三个方面。主要技术领域包括图像识别、语音识别、自然语言处理和其他深度学习应用等。涉及的领域包括机器视觉、指纹识别、人脸识别、视网膜识别、虹膜识别、掌纹识别、专家系统、自动规划、智能搜索、定理证明、博弈、自动程序设计、智能控制、机器人学习、语言和图像理解等。
图2-5 AI技术层
目前,技术层企业在计算机视觉、语音识别等领域竞争激烈。技术层涵盖的厂商以科技巨头、传统科研机构及新兴技术创业公司为主。除了综合性科技巨头外,创业企业也依赖自身技术的积累和细分领域的积累快速崛起。在发展路径上,以2B、2C或2B2C为主。一方面,面向企业级用户,为应用层厂商提供技术支持;另一方面,研发相应的软件及硬件产品,直接面对消费者,或者提供车载、家居等产品的人机交互技术,从而满足用户需求。
科技巨头仍然掌握技术、数据、资金优势,生态链相对完整。而传统技术厂商(如语音识别领域的科大讯飞)具有强大的科研背景,掌握一定的研发能力,同时获得政府的支持,与相关政府机构合作获取大量的数据来源,强化人工智能技术。创业公司深耕垂直领域,创始团队多是技术专家,掌握研发技术,通过融资等方式弥补资本不足,逐渐积累资金、人才、技术实力,专攻细分领域,可以快速实现技术的落地,而其技术上的创新也弥补了传统技术提供商及科技巨头的不足,能够在竞争中实现技术的成熟。
2.2.1 机器学习
人工智能、机器学习、深度学习是我们经常听到的三个热词。关于三者的关系,简单来说,机器学习是实现人工智能的一种方法,深度学习是实现机器学习的一种技术(见图2-6)。机器学习使计算机能够自动解析数据、从中学习,然后对真实世界中的事件做出决策和预测;深度学习是利用一系列“深层次”的神经网络模型来解决更复杂问题的技术。
图2-6 人工智能、机器学习和深度学习的包含关系
人工智能的核心是通过不断地进行机器学习,而让自己变得更加智能。2015年以来,人工智能开始大爆发。一方面是由于巨头整合了AI开源平台和芯片,技术快速发展,GPU的广泛应用,使得并行计算变得更快、更便宜、更有效;另一方面在于云计算、云存储的发展和当下海量数据的爆发,各类图像数据、文本数据、交易数据等为机器学习奠定了基础。机器学习利用大量的数据来“训练”,通过各种算法从数据中学习如何完成任务,使用算法来解析数据、从中学习,然后对真实世界中的事件做出决策和预测。
深度学习是机器学习的重要分支,作为新一代的计算模式,深度学习力图通过分层组合多个非线性函数来模拟人类神经系统的工作过程,其技术的突破掀起了人工智能的新一轮发展浪潮。深度学习的人工神经网络算法与传统计算模式不同,本质上是多层次的人工神经网络算法,即模仿人脑的神经网络,从最基本的单元上模拟了人类大脑的运行机制,它能够从输入的大量数据中自发地总结出规律,再举一反三,应用到其他的场景中。因此,它不需要人为地提取所需解决问题的特征或者总结规律来进行编程。
深度学习的典型代表是Google AlphaGo,而AlphaGo Zero采用纯强化学习的方法进一步扩展了人工智能技术,不需要人类的样例或指导,不提供基本规则以外的任何领域知识,在它自我对弈的过程中,神经网络被调整、更新,以预测下一个落子位置以及对局的最终赢家,并以100:0的战绩击败AlphaGo。深度学习使得机器学习能够实现众多的应用,使所有的机器辅助功能成为可能,拓展了人工智能的领域范围。
深度学习系统一方面需要利用庞大的数据对其进行训练,另一方面系统中存在上万个参数需要调整,需要平台对现有数据及参数进行整合,向开发者开放,实现技术应用价值的最大化,因此在芯片和大数据之外,IT巨头争相开源人工智能平台,各种开源深度学习框架层出不穷。2015年以来,全球人工智能顶尖巨头陆续开源自身最核心的人工智能平台,其中包括Caffe、CNTK、MXNet、Neon、TensorFlow、Theano和Torch等。
人工智能技术正在逐渐发展,距离真正的成熟期还有很长的路要走,而单单依靠有限的企业去推动整个技术的发展力量相对有限,通过开源人工智能平台,能够群策群力,将更多的优秀人才调动到人工智能系统的开发中。开源人工智能平台可以增强云计算业务的吸引力和竞争力,比如用户使用谷歌开源的TensorFlow平台训练和导出自己所需要的人工智能模型,然后把模型导入TensorFlowServing对外提供预测类云服务,实质上是将开源深度学习工具用户直接变为其云计算服务的用户,现阶段包括阿里、亚马逊在内的云计算服务商都将机器学习平台嵌入其中,作为增强其竞争实力和吸引更多用户的方式。同时,开放的开发平台将带来下游应用的蓬勃发展。开源平台的建立在推动技术成熟的同时,对科技巨头来说,既整合了人才,又可以第一时间将开发成果接入自己的产品中,实现研发到商业化的快速过渡,从而在人工智能市场中占据先发优势。
谷歌作为人工智能领域的科技巨头,在软硬件领域都有布局,通过结合开源平台、智能芯片和相关硬件,谷歌建立了完整的人工智能生态。其中,谷歌自主研发的深度学习开源平台TensorFlow可编写并编译执行机器学习算法代码,并将机器学习算法变成符号表达的各类图表。TensorFlow目前已应用于谷歌搜索、谷歌翻译等服务。同时,大量开发者也接入到平台中,成为主流的深度学习框架,在2017年,谷歌进一步推出了TensorFlowLite,支持移动和其他终端设备,谷歌已成为人工智能领域不可或缺的巨头。本书后面将以TensorFlow为基础阐述机器学习技术。
2.2.2 语音识别与自然语言处理
交互模式的变革贯穿了整个IT产业的发展史,语音交互很有可能成为下一代人机交互的主要模式(见表2-2)。
表2-2 交互模式的变革
语音识别与自然语音处理是机器能够“听懂”用户语言的主要技术基础,其中语音识别注重对用户语言的感知,目前在中文语音识别上,国内已经达到97%的语音识别准确率,这要归功于深度神经网络的应用、算力的提高以及大数据的积累。语音识别是机器感知用户的基础,在听到用户的指令之后,更为重要的是如何让机器懂得指令的意义,这就需要自然语言处理将用户的语音转化为机器能够反应过来的机器指令,包括自然语言理解、多轮对话理解、机器翻译技术等。对于自然语言处理方面,虽然深度学习能起到的作用还有待观察,但在语义理解和语言生成等领域都有了重要突破。如图2-7所示,很多提供语音技术服务的公司也突破了原有的单纯语音识别或者语义理解的业务框架,开始提供整体的智能语音交互产品。
图2-7 语音交互过程
1. 语音识别技术
语音识别技术已趋于成熟。语音识别的目标是将人类语音表达的内容转换为机器可读的输入,用于构建机器的“听觉系统”。语音识别技术经历了长达60年的发展。近年来,机器学习和深度神经网络的引入,使得语音识别的准确率提升到足以在实际场景中应用。早在2016年年初,美国麻省理工学院(MIT)主办的知名科技期刊《麻省理工科技评论》评选出了“2016年十大突破技术”,语音识别位列第三,与其他技术一起“到达一个里程碑式的阶段或即将到达这一阶段”。
深度神经网络声学模型的几个重大发展阶段如下:
• 2006年,Geoffrey Hinton提出深度置信网络(DBN),促进了深度神经网络的研究。
• 2009年,Geoffrey Hinton将深度神经网络应用于声音的声学建模,当时在TIMIT上获得了很好的结果。
• 2011年底,微软研究院又把深度神经网络技术应用在了大词汇连续识别任务上,大大降低了语音识别的错误率。从此以后,基于深度神经网络声学模型技术的研究变得异常火热。
微软2016年10月发布的Switchboard语音识别测试中,更是取得了5.9%的词错误率,第一次实现了和人类一样的识别水平,这是一个历史性突破。
语音识别整个过程(见图2-8)包含语音信号预处理、声学特征提取、声学和语言模型建模、解码等多个环节。简单来说,声学模型用来模拟发音的概率分布,语言模型用来模拟词语之间的关联关系,而解码阶段就是利用上述两个模型将声音转化为文本。
图2-8 语音识别技术的运作流程
深度神经网络声学模型主要应用于声学、语言模型建模、解码等各个主要环节,模型主要包括深度神经网络、长短时记忆网络(LSTM)、双向长短时记忆网络(BLSTM)、深度卷积神经网络(Deep CNN)、Residual/Highway网络等模型,具体特点见表2-3。
表2-3 深度神经网络各部分及其特点
总之,语音识别作为一类重要的基础技术,应用十分广泛,并且己有不少产品为人们所熟知,语音识别产业的增长主要靠渗透率的提升和应用的突破,主要的应用包括语音助手、语音输入、语音搜索等,可应用在各类移动APP应用和终端应用等对人机交互有较高要求的领域。对于语音识别技术而言,率先发展起来的服务机器人和语音助手已占据数据积累的领先地位,在家居、出行、运动等多个场景中,语音交互正在爆发,智能音箱、智能车载、智能手表等产品中,通过接入语音交互技术,实现随身陪伴、语音助理的功能。国内现已涌现出一批发展较好的智能语音相关企业,其中技术领先和产品成熟的企业主要有科大讯飞、百度、小米等。语音识别经过几年的技术积累己相对成熟,厂商仍在发展方言识别等更为精准的识别方式。
2. 自然语言处理
简单地说,自然语言处理就是用计算机来处理、理解以及运用人类语言,属于人工智能的一个分支,是计算机科学与语言学的交叉学科。实现人机间自然语言通信意味着要使机器既能理解自然语言文本的意义,也能以自然语言文本来表达给定的意图、思想等。前者称为自然语言理解,后者称为自然语言生成。
无论是实现自然语言理解,还是自然语言生成,都十分困难。从现有的理论和技术现状来看,通用的、高质量的自然语言处理系统仍然是较长期的努力目标,但是针对一定应用,具有相当自然语言处理能力的实用系统已经出现,有些已商品化,甚至开始产业化。
深度学习、算力和大数据的爆发极大地促进了自然语言处理技术的发展。表2-4中是几种常用的深度神经网络NLP模型。
表2-4 几种常用的深度神经网络NLP模型
NLP领域还有很多其他种类的深度学习模型,有时候递归神经网络和卷积神经网络也会用在NLP任务中,但没有RNN这么广泛。总之,在自然语言处理领域,多轮对话理解日益完善,但语义理解仍然具有一定的缺陷,距离机器理解人类,实现自然的人机交互还有一些路要走。
2.2.3 计算机视觉
视觉是人脑最主要的信息来源,计算机视觉是指通过计算机或图像处理器及相关设备来模拟人类视觉,以让机器获得相关的视觉信息并加以理解,是机器能够“看懂”周围环境的计算基础,最终解决机器代替人眼的问题。
从技术流程来看,计算机视觉是将识别对象(如图像)转换成数字信号进行分析处理的技术。根据识别的种类不同又分为图像识别、人脸识别、文字识别等。通过计算机视觉技术可以对图片、实物或视频中的物体进行特征提取和分析,从而为后续动作提供关键的感知信息。从技术流程来看,视觉识别通常需要几个过程:图像采集、目标提取、目标识别、目标分析,如图2-9所示。
图2-9 视觉识别的几个过程
对于特征识别,有生物特征识别技术,识别人类的指纹、虹膜、人脸等;有OCR识别技术,识别图片和文字;有物体识别技术,用于识别图片或视频中的物体。
1. 视频分析
在进行视频识别与分析时,需要使用前端摄像头设备收集和传输数据,同时需要通过大数据训练,具备云计算能力的深度学习图像分析系统来实时进行视频检测和数据分析(见图2-10)。由于机器不疲劳,而且可以全面识别整帧图像信息,通过使用该技术处理海量监控视频,可大大降低交管、公安部门的监控负担,具体的应用场景包括车辆识别、非法停车检测、嫌犯追踪等。
图2-10 视频图像分析
在深度学习出现后,机器视觉的主要识别方式发生重大转变,自学习状态成为视觉识别的主流,即机器从海量数据中自行归纳特征,然后按照该特征规律进行识别,图像识别的精准度也得到极大的提升(目前到了95%以上)。机器不再只是通过特定的编程完成任务,而是通过不断学习来掌握本领,这主要依赖高效的模型算法进行大量数据训练。
近年来,与计算机视觉相关的视频监控和身份识别等行业的市场规模均逐渐扩大,伴随着技术的发展,计算机视觉技术和应用逐渐趋于成熟,被广泛应用到金融、安防、电商等场景中,技术进一步实现场景化落地,计算机视觉也成为目前人工智能领域最为火热和应用最为广泛的领域之一。国内企业,尤其是创业公司深耕技术能力,已具备国际领先的技术水平,这些典型企业包括旷视科技、商汤科技、云升科技等。计算机视觉厂商主要走技术和解决方案提供商的路径,通过研究通用型的技术,深耕图像处理和图像分析,提供软硬件全套服务,开放程序接口供其他厂商使用,比如商汤科技、旷视科技。另外,一部分厂商走技术应用的路径,将技术接入不同的领域和场景中,以技术为基础实现场景落地,为用户提供服务,比如云升科技的公安立体防护系统。
2. 人脸识别
人脸识别是基于人的脸部特征信息进行身份识别的一种识别技术。人脸识别技术被广泛应用于金融、安防、交通、教育等相关领域,主要应用场景包括企业、住宅的安全管理,公安、司法和刑侦的安全系统、自助服务等,刷脸支付、刷脸进站等项目逐渐实现。人脸识别包括1:1的人脸对比和1:N的人脸对比。1:1主要指用户真实的脸部信息与用户提交的身份证信息进行比对,常见于银行等金融机构和公安系统。1:N更常见于刑侦和国家安防领域,能够通过与faceID库的对比,快速找到犯罪分子或失踪人员,1:N识别精度的难度要远远高于1:1人脸识别。厂商也针对1:N的精确度做了技术深耕,百度曾宣布百度大脑的1:N人脸识别监测准确率已达99.7%。目前,人脸关键点检测技术可以精确定位面部的关键区域,还可以做到支持一定程度的遮挡以及多角度人脸,活体检测及红外光识别技术有效解决了照片、手机视频等二维人像的作弊行为,使3D人脸识别的准确率大幅度提升。但双胞胎识别、整容和易容前后的识别依然是人脸识别的难点,因此需要虹膜识别等其他识别技术进行补充。人脸识别技术另一个关键层面在于faceID库的建立,3D人脸识别数据采集相对困难,需采集的数据量十分巨大,对计算机计算存储能力要求较高,faceID库的数据量是人脸识别技术算法训练的基础,数据越多,相应的准确度才会越高。各厂商仍需继续扩充自身的faceID库规模。
在美国,亚马逊最近推出了人脸识别系统Recognition,识别一个人脸只需要几分钟。亚马逊公司已经开始通过云计算模式推出计算机视觉Recognition功能,向美国警方提供了基于机器学习的人脸识别服务。人脸识别技术不再是一个高价的服务了。
总之,随着计算机技术的发展,人类开始能够进行复杂的信息处理,并通过计算机实现不同模式(文、声音、人物、物体等)的自动识别。但当前不存在一种单一模型和单一技术能够解决所有的模式识别问题,而是需要在具体场景中使用多种算法和模型。还有,计算机视觉可以与其他技术结合进行综合应用,比如与医疗结合形成疾病辅助监测,与汽车结合形成自动驾驶。