我是2002年开始做人工智能,特别是计算机视觉方面的研究的,做了大概15年,基本上对于传统行业、互联网、移动互联网,以及新兴行业的产品都有一些接触和参与。格灵深瞳是2013年成立的一家创业公司,是国内计算机视觉和人工智能行业中比较有影响力的一家公司。今天,我主要结合格灵深瞳的一些产品,讲一下对计算机视觉技术落地的理解和感触。
人工智能是一个非常火的领域,而计算机视觉相对来说,大家听得少一点,所以我简单讲一下这两个领域相互之间的关系。人工智能实际上是一个大的应用领域的统称,比如机器人、自动驾驶和智能医疗等应用都属于人工智能范畴,是人工智能应用的子方向。人工智能技术从研究目标的角度划分,主要包括三个技术方向:一是计算机视觉,即对图像视频的分析和研究;二是语音识别,就是对语音信号的研究;三是对自然语言的理解。而上述提及的机器人等应用可能会使用到上述计算机视觉等多个技术领域的技术。
提到人工智能,就不得不说机器学习。机器学习是人工智能领域中最核心的算法部分,它是计算机视觉、语音识别、自然语言理解等子领域的基础,机器学习的进步也推动着计算机视觉、语音识别、自然语言等领域的技术进步。而深度学习作为当下最强大和最热门的一种机器学习算法,是当今人工智能领域的最大推动力。
回到计算机视觉。计算机视觉的研究目标是让计算机看懂世界。这一目标最早可以追溯到1966年,Marvin Minsky作为MIT的一名教师(也是人工智能领域的先行者),当时给学生们留下一个暑假课题,希望通过一个连接在计算机上的摄像头,来描述周围看到的东西。计算机视觉识别系统,可以简单抽象说,就是接收到各种不同的传感器信号之后,包括普通的摄像头、不同的深度摄像头,以及其他激光的摄像头,再对这些传感器采集获取的数据进行分析和处理,输出对世界的理解。
在深度学习技术出现之前,传统时代比较成熟的计算机视觉应用产品包括停车场车牌识别、手机上的指纹识别、数码相机里用来做人脸的自动曝光,或者是自动对焦的人脸检测、美颜相机、相册管理及工业检测等。2011年前,可以称作是传统时代,作为计算机视觉领域的从业者往往感到很困惑。第一,近50年过去了,真正成熟的应用很少,创造的价值也很有限;第二,技术提升很难,努力一年,只能使识别率从75%提高到78%,还是无法实用;第三,每个问题都需要不同的技能来解决(比如做人脸识别的工程师和做文字识别的工程师需要的技能很不同,切换困难);第四,虽然在学校里做视觉研究的人很多,但面临工作的时,工作机会非常少,导致大量的人才流向了其他行业,比如数据挖掘。这种情况一直持续到深度学习的出现。
深度学习技术的横空出世,使得很多方面都取得了巨大的突破,从2011年的语音识别、2012年的图像分类、2014年的人脸识别和机器翻译,到2016年的增强学习。大家最为熟知的应该就是去年发生的Google的AlphaGo与世界顶尖围棋高手的人机大战。这件事引发了众多关于人工智能的讨论和关注,也使得这个领域变成一个被社会各界所热衷讨论的一个方向。可以预测,对于无论是机器人、无人驾驶,还是智能医疗这些领域,深度学习技术一定会推动它们取得更大的发展
那么深度学习有什么特点?简单来讲一下深度学习的概念。我们可以把深度学习理解成一个非线性映射的黑盒,它可以将一个输入信号处理成为一个具有语义的输出。以目标检测为例,输入的是图像信号,经过深度学习的处理,我们可以获取到目标物体在图片中所处的位置信息。这个黑盒的特点是什么?从结构上说,深度学习的模型是多个层的级联结构,增加层就等价于增加了表示能力,某种意义上可以说,它的表示能力是没有上限的,而传统模型增加表示能力则非常困难。由于表示能力非常强,当数据增加的情况下,深度模型可以获得巨大提升,而传统模型则由于表示能力有限,从数据增加获得的收益相对较少。另外,深度学习的表示是数据驱动下的基于学习的方法,相对传统的专家设计的特征,一方面可以更好地学习得到数据的表示;另外一方面,对于不同数据,可以采用同样的框架和方法,中间环节少,生产效率更高。举例来说,今天无论是做文字识别还是人脸识别,或者是语音识别还是自然语言理解,它们使用的深度学习方法都有相通之处,可以相互借鉴,大大提高了行业的生产力。
然而,由于深度学习需要比较多的数据和运算资源,且整个运算过程是一个“黑盒”状态,所以我们是无法解释在“黑盒”里发生了什么;如果出了什么问题,也没有办法依据语义规则直接修改。由于深度学习是一个简单的非线性映射结构,所以它是没有办法处理结构很复杂的内容,比如它还无法模拟人的情感、想象力、记忆等。我们经常会听到大家讨论,人工智能会不会威胁人类之类的言论,从这个角度上来讲,大家的担心有一些过早。当然也许未来深度学习架构有大的发展之后会有不同变化,但是这一定不是一个短期过程。
那么,深度学习技术的成功依赖于什么?可以归纳为三点。第一,算法本身的进步。这个进步使得训练一个更大更深的网络成为可能。第二,数据量的增长。今天是移动互联网时代,每天都有大量的数据产生,所以我们能够使用的数据量也越来越大。以计算机视觉领域为例,2007年左右最主流的图像识别数据集叫做Pascal VOC,是一个包含十几类物体,共1万多张图片的任务。而现在最主流的图像识别数据集ImageNet,包含1 000千多类物体,由100万张图片组成。相信后面一定会有更大规模的公开数据集出现。在私有数据方面,Google有一个人脸识别方面的工作叫做FaceNet,使用了100万个人的数据训练,共包含1亿多张图片。据我了解,国内一些做人脸识别的公司,使用的训练数据量基本上都是以亿计的。某种意义上来讲,数据量的增长在不断推动深度学习技术的发展。第三,硬件的快速发展。前一段时间Nvidia在GTC上发布了新的最强大的GPU V100,这比去年同期发布的最先进的P100又强大了很多。某种意义上,深度学习的发展是由NVIDIA GPU的计算能力的提升推动的。
在深度学习技术日渐强大的同时,它对计算机视觉算法也带来了很大的影响。在图像识别方面,以ImageNet为例,2012年以来,图像识别的错误率逐年大幅下降。在人脸识别方面,以著名的人脸识别数据集LFW为例,在使用传统方法的情况下,错误率在7%左右,而深度学习的方法使得错误率锐减到了千分之二。可以看到,在越来越多的限定任务上,深度学习使得计算机的识别能力开始超越人类。
从计算机视觉的应用角度来讲,深度学习使得很多原来看似不可能的应用领域,慢慢变成了可能,可以说深度学习使得计算机视觉应用从传统时代进入了“爆炸式的增长”的智能时代。移动互联网、智能安全、机器人、自动驾驶、医疗、无人机及增强现实等应用都在蓬勃发展,这是过去50年从来未有过的。
那么,如何去判断某项计算机视觉技术的应用能否成功?我个人认为,首先需要从需求角度出发,看到底是不是一个刚性需求。这不仅是看大家要不要,且大家说需要的并等于是真需求,还需要去确定有没有更便宜的替代方案,以及用户到底愿意花多少钱;其次需要看技术是不是足够成熟。我认为最理想的情况是,在技术足够成熟的情况下,成本非常便宜,这样才会有更多用户愿意为这个技术买单。比如像AlphaGo这样的产品,如果需要很多台服务器才能完成运算,肯定无法成为一个大规模应用的产品。对于现在提及非常多的无人驾驶及机器人,从某种意义上来讲,短期看还没有办法做到特别大规模的应用。因为从技术角度上来说,在这个时间点,技术还不够成熟。但是,在一些特定的场景下,在一些特定的领域里,可以做一些应用,来慢慢推动这个技术的成熟。而这些需求无疑都是刚需。也正是因为这些刚需现阶段的技术手段还没有完全满足,所以才是巨大的机会。这也是为什么包括格灵深瞳在内的许多公司都在这些领域进行投入的重要原因。
下面我结合格灵深瞳目前做的应用方向来谈一谈。格灵深瞳的一个重要方向是基于云端的智能分析和识别。拿智能安全举例来说,现在我们有太多的摄像头,这些摄像头每天产生大量视频信息,但其实我们很多时候并不知道里面发生了什么。当有事故发生时,我们没有办法从一大堆数据中立刻提取出对我们有用的信息。如果我们能够把一段视频转换为人、车的数量、位置、车牌号、属性等这些信息,都可以更好地检索和使用这些视频数据,还可以跨摄像头来完成很多智能分析功能。这无疑会改变视频行业,其实这个改变已经在发生了。
具体来说,在人脸方向,我们做了人脸检测/跟踪、特征点定位、属性识别以及人脸识别。这段视频,是用我们的人脸抓拍比对系统做的一个实验,来测试我们的人脸识别到底有多好。我们在办公室各个角落,架设了许多摄像头来抓拍人脸,这些照片在抓拍之后会自动放到一个数据库中,做这个实验时数据库中共有10万张左右图片。识别系统本身自带的摄像头会抓取当前摄像头前的人脸,抓取后的人脸会被送到后台与数据库里的人脸进行比对,右侧会显示出数据库里面与之最像的人脸,如果左右图片显示是同一个人,就说明比对成功。在这个实验中,我们希望测试人员能够挑战这个系统,可以看到,有的测试人员在面对识别系统做鬼脸,面部表情非常丰富;有的测试人员特别是女孩子,在改变发型,系统都可以很好的工作。甚至在北京雾霾时,有些同事戴了口罩,系统依然可以正常工作。我在这个领域已经工作了很久,以前在10万图片量级的图片库中,搜索到正确的图片且让它排在第一的位置就是一个比较困难的课题。而目前看,近期技术的进步真的非常巨大。
除了人脸的检索和识别外,我们还可以做人体的结构化信息输出。目前我们一共做了50多种结构化信息,包括性别、年龄、是否背包、抱孩子、戴眼镜/口罩等。此外,我们的产品还可以利用被检索人之前的一张图片,到视频中去搜索这个人在哪些地方出现过。人在视频中因为角度不同,姿态也就不同,要在视频中去做这样的搜索,是一件比较有挑战的事情。这个产品目前看在一些较复杂的场景下也可以很好的工作。
同样,在车辆的检索和识别上也做了一些类似的工作,我们称为车辆的结构化。具体来说,我们可以利用一张目标车辆的图片,从一段视频中检测并且识别出它。与此同时会给出这个目标车辆的相关信息,包括它的颜色、粗粒度的类别,比如属于面包车还是SUV,车牌号,车的主品牌、子品牌。如果是同一品牌不同年份的车,我们也会给出这些详细的信息。对于主品牌、子品牌这些细粒度的识别,我们可以支持到3 000多种。
下面用一个真实场景下的例子作进一步解释。这是一个路口的视频,在这样的场景下,系统对于车的品牌识别能力已经超越了人。还有一种情况是,一些肇事车辆往往没有车牌,我们可以利用它的图片本身作为输入信息,通过图像搜索的方式在视频中找到和它最相近的车。即使在一些复杂或者是环境不理想的情况下(如恶劣天气),目前我们的系统结果还是比较理想的。
但是,基于云端分析的最大挑战在于网络宽带和中心节点的运算压力。我们认为,智能前端化是一个无法逆转的趋势,所以也希望赋予每个摄像头以智能。对于安全场景,现有的摄像头作用距离基本上在3~5米左右,针对这种情况,我们自主研发了一款智能摄像机,叫做FoveaCam或人眼摄像机。人眼摄像机,可以看清并抓拍到四五十米内的人脸,而且图像质量非常好。下面的视频是一个例子,在这样开阔视野的场景下,即使远到我们肉眼无法看到人脸或者是人体信息,相机都可以被清晰捕捉到。这样再结合我们的人脸比对系统,远距离的人脸抓拍及比对就能很好地完成。
虽然我前面提到了很多用深度学习可以解决的问题,但深度学习并不是万能的。比如,当只有二维数据,即彩色图像输入,图像中两个目标物体相互遮挡,我们就无法仅靠图像分析出它们之间的位置关系。因此,我们研发出另一款创新性产品——皓目行为分析仪。皓目行为分析仪有一个深度信息传感器,利用这个传感器,就可以得到空间的三维数据,从而分析出空间中两个目标的位置关系。这就解决了在现实场景中,拥挤人群的遮挡问题。以上就是我们目前在感知智能方面的产品应用情况。
下面介绍一下我们在其他领域的探索。大家知道,人除了感知能力外,还有很强的控制和运动的能力,所以在感知之外,我们也在探索拓展智能的边界。
自动驾驶是我们在人工智能这条路上探索的另外一个领域。我们很早就关注自动驾驶领域,但我们认为只做ADAS是没有前途的,应该做自动驾驶汽车才是最对的方向。为了真的做出一辆“车”来,单靠格灵深瞳一己之力是无法完成的,所以将我们的自动驾驶团队分离出去,并联合了前Intel研究院院长吴甘沙、北京理工大学自动驾驶冠军团队负责人姜岩等,成立了驭势科技专注做自动驾驶。这个视频是《焦点访谈》节目的记者,为了测试驭势自动驾驶汽车的稳定性做的一个实验。他们在车顶放了硬币和打火机,当自动驾驶汽车在北京三环上跑完一圈后,这些小物件竟然还在车顶。
除此之外,我们在机器人领域也有一些探索。
大家可以看到,在人工智能领域我们做了很多工作,也取得了一些成果。但是对于我们而言,一直还是认为自己是在这条路上摸索前进。
在这个时代,做计算机视觉的应用和产品,到底面临着哪些挑战?首先,虽然深度学习已经取得了巨大进步,但在短期时间内再取得巨大突破的可能性比较小,必须依赖硬件、应用、数据的驱动来推动落地。其次,从产品角度来讲,想找到技术成熟且刚需的产品方向并非易事;找到既懂AI技术,又懂产品人才更是少之又少。第三,目前大热的无人驾驶、机器人、智慧医疗、增强现实等方向,在短期之内产品落地面临着种种挑战。第四,对于一个创业公司来说,人才和产品方向上会面临大公司的竞争和挑战。当然,如果能克服这些困难,完成挑战,毋庸置疑会得到巨大的机遇和发展。
决定计算机视觉技术是否能大规模应用的因素主要是准确率和成本两个因素。
从技术路径角度而言,我个人认为会遵循云—端—芯片这样的路径。
(1)云。通过云的方式,能够促进算法快速落地的应用,产生大量数据,从而快速迭代算法,促进算法成熟,推动应用发展。云的主要优势在于快速灵活,必然是早期的必经阶段。
(2)端+云。通过端+云的方式,来减少网络带宽的占用,将运算由中心分散到前端,一定是未来的重要趋势.
(3)芯片。芯片一定是大规模应用的终极阶段,是降低成本,提高运算能力的关键所在,但必然是在算法成熟、应用被大众广泛接受后,才能完成的一件事。
从商业模式的角度,我认为单纯的算法提供是没有未来的,只有深入场景才能促使技术落地,从而创造最大价值。因为从产业链的角度,单纯的算法模式是很难持续的,随着技术进步,算法的领先优势比较难保持,在激烈的竞争下,算法在产业链内分得的利益会逐步减少,而深入场景形成闭环获得数据,才能真正建立护城河,并从数据中获取更大价值。
这个时代,大家看到,在人工智能行业创业的公司很多,但什么样的公司才有机会成功?我想这里面最核心的因素是人才、技术和产品。首先需要聚集一批技术人才,以及一批产品人才;而在技术方面,需要能够具有大数据的获取能力,以及大规模深度神经网络训练能力。除此之外,需要能够分享借助硬件发展的红利。产品方面,需要找到刚需,创造价值,用产品逻辑弥补技术缺陷,迅速落地,尽快产生收入,度过可能到来的冬天。此外,一个良性的人工智能公司的良性状态,应该是将技术、产品和数据形成一个正向循环。首先用好技术打造出好产品,而好的产品又产生很多的数据,这些数据反哺过来推动技术的进步,这样才能达到一种良性的循环。
人工智能必然是一次长跑,但人们往往会高估一项技术的短期表现,低估一项技术的长期表现。在这个时间点,大家觉得人工智能非常厉害,似乎要马上改变世界。但是,我认为要想让人工智能技术真正地改变和影响人们的生活,必然会经历一个更长的时期,有可能是十年,或是更久。那么在这么长的时间段里,技术会不断地更新和迭代,也只有经历过技术不断更新和迭代的公司,才能在长期过程中,推动这个行业的发展。
对于我们做人工智能行业的从业者来讲,我想我们共同的愿景应该叫做“做有温度的人工智能”,就是希望人工智能能够帮助人、解放人,把更多的价值和好处带给人们,去改变和影响人们的生活。
(本报告根据速记整理)