人工智能是当今最热门的领域,作为人工智能问题最重要的一环,计算机视觉的重要性无需赘言。达芬奇曾说眼睛是人类心灵的窗户,对计算机来说亦是如此,如果我们赋予计算机视觉感知能力,使得计算机能够像人类一样看到并理解周围的世界,人工智能才真正开始具有灵气。当我们期待人工智能超越人类智能这个奇点的临近,我们就必须让计算机具备比人类更强大的视觉能力。而在这个最好的时代等待计算机视觉的将会是全新的挑战。
![](https://i-blog.csdnimg.cn/blog_migrate/3a4f7486e9910e3a72b6104fdb9489d0.gif)
2016年6月8日,阅面科技CEO赵京雷在接受“模拟实验室特别活动——以自然语言和机器视觉为引,畅谈人工智能的未来”邀请时,以“智能机器需要一双怎样的眼睛?”为主题,表达了自己观点。
“智能机器需要一双怎样的眼睛?”
——阅面科技CEO 赵京雷
今天要和大家分享的是计算机视觉这个话题,还有我们的团队正在进行的一些开发领域。
伪命题?深度学习才是突破
先做个自我介绍,我自己是人工智能班科出身,上海交通大学人工智能博士,读书以及工作这些年,一直扎根于人工智能算法领域。我们读书那个年代,机器学习刚刚兴起,那个时候的机器学习主要是以浅层神经网络和支持向量机等为代表的浅层方法,依赖的数据量也不是很大。当时机器学习算法碰到一个很大的问题,就是对数据量的接纳是非常有限的。比如基于1万样本去训练了一个模式识别模型,当有了100万样本,识别算法是不是会更准?这个回答是否定的,因为浅层网络参数量是较少的,所以会出现当数据量爆炸后模型的精度可能不增反降, 也就是过拟合问题。这也是困扰机器学习算法很深的一个问题,因此人工智能概念一度成为一个伪命题。
近些年,尤其是今年,人工智能重新成为一个爆点,大家都在讨论人工智能技术,最重要的原因就是深度学习这样一个技术的成功应用。深度学习通过模拟人类大脑神经网络的认知过程,理论上你可以增加神经网络层数和复杂度,增加机器学习算法对数据承载的能力,这样机器学习可以和大数据非常好的结合起来。伴随着移动互联网的海量数据生产能力,深度学习在很多的模式识别任务上取得很大突破。比如在人脸辨识上,人类的识别率在97.75%,而机器这一块已经可以在某些数据集上可以做到99%以上。
基于我们在深度学习领域的积累,我和团队成立了阅面科技,我们希望通过深度学习和计算机视觉的结合,给予未来智能机器一双智能的眼睛。计算机视觉是人工智能的一个主要分支,未来的智能机器要会看、会听、要能够理解人。我们认为在“会看”这方面,机器在未来可以比人做的更好。
前些年受手机终端和移动互联网红利的影响,在各行各业出现了很多智能硬件。但当前智能硬件的最大的问题是不够智能,不具备足够的智能能力。人工智能算法的进步将使得这些智能硬件真正智能起来,成为“智能机器”。服务型机器人、智能家居设备、VR/AR等都有潜力成为智能手机后的下一代平台级智能终端。在计算机视觉方面,有两方面的能力对这些智能机器至关重要,一方面是人机交互能力,另一方面是场景感知能力。
以前计算机视觉在工业界的突破主要是集中在云端算法上,云端场景下计算资源是不受限的,可以用大规模的集群去跑非常复杂的模型。前段时间Alphago战胜了李世石,在计算能力上其实是几百台机器战胜了一个人类。而新一代智能机器,比如机器人、VR/AR各种设备里面,视觉信息的处理具备两个典型特点,一个是实时化,一个是本地化。智能机器的眼睛要解决的问题就是让深度学习算法在前端、在嵌入式环境下非常实时、低耗能的跑起来。阅面科技主要就是要解决上述问题,给智能机器装上一个智能的眼睛,帮智能机器解决好人机交互和环境感知的问题。
图1. 智能机器视觉解决方案
这是我们提供给智能机器的一个视觉解决方案,大家可以看一下在云端这一块,我们最重要的一个技术一定是基于深度学习,深度学习涉及到大数据处理,我们使用一个GPU集群对海量的图像、视频等数据进行加工处理、学习训练,然后在这个基础之上我们提供“软”、“硬”、“芯”一体化的视觉算法解决方案。“软”指的是帮助智能机器进行视觉认知的一系列算法SDK;“硬”指的是为特定行业进行优化的硬件方案,比如认知摄像头; “芯”是指的芯片级别的深度学习加速能力,比如FPGA、ASIC。
ReadSense的视觉认知SDK
ReadSense提供的视觉认知SDK主要包含了两大功能,第一是人机交互功能;第二是感知周边世界的一个能力, 这是智能机器眼睛的最核心的算法能力。人机交互的模拟人与人之间的视觉交互能力。比如人和人之间一般可以观察对方面部的表情、动作,手部的示意、手势,以及人体的动作和行为等进行理解和交流,我们希望未来的智能机器能够具备这些人机交互能力。为此,我们提供了三个层面的SDK系列:ReadFace、ReadHand 以及ReadBody ,顾名思义,这些SDK分别赋予了机器对人的面部、人的手势以及人体的识别能力。通过上述系列SDK,机器可以更加自然、友好的和人进行交流和互动。
另外智能机器需要感知自己处在一个什么样的环境中,举例来讲,把机器人放在一个陌生的环境中,它应该能够快速的对场景进行辨识、建模,能够理解自身周边的环境,能够在这个环境里面进行探索和行走。为此我们提供了ReadWay,赋予机器这样的场景识别和定位导航等能力。
RoboEye,一款视觉认知摄像头
有了上述所谈到的这些SDK的智能算法支持,智能机器就可以“智能”很多了。当然,我们做产品,除了算法的精度的考虑、还要考虑算法的运行功耗、效率、运行环境等,这就需要芯片加速和硬件优化。我们接下来会推出一款深度摄像头-RoboEye。RoboEye提供两点最基本的功能,首先,RoboEye从硬件和芯片层次对算法进行优化和加速,从整体上解决算法的功耗、效率等问题。另外,RoboEye具备距离和深度信息的感知能力,可以进一步提升一些算法的准确率。
"智能眼睛",充满挑战
通过上述“软”、“硬”、“芯”一体化解决方案,我们希望未来智能机器的“智能眼睛”接入,会成为一个“傻瓜式”的事情。当然,还存在很多挑战,比如进一步提升计算机视觉算法在各种真实环境、自然条件(如极限头部姿态、极限光照、距离等)下的精度;另外,当前模式识别的语义颗粒度是比较粗的,比如动作行为的定义都比较粗颗粒,而人类对动作行为的理解一般是个连续化的过程,非常细颗粒。通过优化目前的深度学习模型,使其能更加高效、高精度的理解连续化的、细颗粒的语义信息,将使得我们拥有更高层次的“人工”智能。