火爆朋友圈的看脸识年龄,到底用的什么技术?

06.05.2015  18:10

  一夜之间,大家又在朋友圈里晒“年龄”了。只要把你的照片上传到由开发的How-Old.net,它就会自动识别出你的年龄和性别。这么好玩的东西不疯传才怪。

  微软透露,在How-Old.net发布仅几个小时之内,浏览量就达到了35000人次,这个数字还在增长中。

  事实上,这个爆红的平台仅仅只是一个展示用的产品,微软中国的有关人士表示:“该产品是在Build2015 developer conference Day 2 keynote用于展示的。从微软内部的消息看,这个功能还是比较初级的阶段,这次对外也以展示为主。未来这个技能是否会在国内落地,也不清楚。

  有报道质疑该平台旨在大规模搜集用户的数据。微软 美国 方面则表示,“http://how-old.net网站并不存储任何图片信息,也不会存储个人验证信息(PII)。这款App的确会使用到微软的Azure网站使用条款,这些都与行业范围的网络服务条款相似。

  “我们本打算在本次大会keynote结束之后就撤掉该网站,但看起来大家非常热衷于玩这款App,所以现在我们就放在那。”微软美国在对该产品的说明中称,“它也许或并不一定提供准确的猜测,但是我们的初衷并非只是为了猜测年龄或性别,我们初衷的设计只是提供一个开发者如何能够在非常短的时间用云服务和现代开发的惯例搭建一个好玩的App的例子。

  连微软自己也承认了,测试结果不一定准确,所以大家也全当娱乐了,但是美国vocativ新闻网还正儿八经地对麻省理工计算机视觉专业的专家科斯拉(Aditya Khosla)进行了采访,帮助大家进一步了解脸部识别软件。以下是科斯拉的解释。  

   How-Old.net 是如何工作的?  

  根据我的猜测,首先How-Old.net有一款面部识别器,就像大家的手机照相机里都有的面部识别功能,只要你在画面上点击一下,照相机就可找到照片中的人脸位置。

  然后再经过计算机视觉识别的数据计算出照片中人物的年龄和性别。

  如果How-Old.net用的是“深度学习”(Deep Learning)技术,那么这个平台之前就搜集了大量包含人们年龄和性别的数据,并从这些历史数据中得出规律,训练该平台的算法对人像做出测算。

   在有了“深度学习”之前,人脸识别技术如何操作?  

  解释这个问题可能要涉及专业知识了,但是我会尽量给你举例说明。

  方向梯度直方图(Histogram of Oriented Gradient,HOG)特征曾是处理图像识别最受欢迎的方法。这项技术先从图像中抓取所有的倾斜度,那些倾斜度就像一条条线,然后把脸部所有的线条标记出来。

  所以,这项技术可以锁定人的五官,把它们用线条勾画出来,然后计算线条的角度和深度。以前这种成像基本靠手工完成,需要经过很多步骤。如果操作得当,这种技术的成果还是比较有用的。但是,后来因为太复杂,这种技术被放弃了。

   然后“深度学习”就代替了方向梯度直方图?  

  是的。最近我们都在用“深度学习”。“深度学习”可以自动识别图像。你只要往电脑里上传一些人像,然后标注这个人的年龄为35岁,那个人的年龄为60岁,然后计算机就会把各年龄段人像的特点总结出来。

  你不用再依靠人工把人像的特点设计出来。这种自动化的人脸识别技术比以前的方法高效许多。

   深度学习”是最近才开发的新科技吗?  

  不是。“深度学习”其实早就存在了,但是直到最近才再次得到人们的注意。关于“深度学习”这一技术的论文从1990年至1995就已陆续发布,但是最开始这一技术并没有用于人脸识别。

  但是由于90年代的电脑计算速度和数据追踪能力有限,所以当时的人们看不到这个技术的价值。后来到了2012年,人们开始重新审视这一技术发现,原来“深度学习”可以颠覆许多原有的行为方式。

   人脸识别技术可以帮我们做什么?  

     

  各种各样的事。有了这种技术,我们还可以进行物体识别和地域识别。最近,我的一些同事正在利用“深度学习”,根据照片判断当时我们是在办公室、饭店还是酒吧。现在几乎每天都有一篇关于“深度学习”的论文发表。

  但是这项技术还不完善,How-Old.net常常会犯一些低级错误。那么,为什么面部识别系统常常犯错?

  当中有许多变因。人们的长相各不相同,这些都要靠计算机识别。我会尽可能多地搜集数据,训练计算机算法,但是当中常常会有偏差。比如,不同种族的人会有不同的年龄特征。

  这方面的数据还不完备,这对计算机面部识别是一大挑战。

  此外,计算机对任何被输入的图像都会做出预判。就算是上传一张猫的照片,计算机也会计算这只猫有多少岁,就算计算机程序当中并没有针对猫的算法。所以,计算机面对这种情况时也可能会胡乱预判。

  除了做一个用于消遣的APP ,人脸技术还能应用于哪些方面?

  现在人脸识别主要应用在机器人开发上。如果想让机器人学会和人类互动,我们需要教会机器人什么是“目标客体”。

  比如,我想让机器人拿一件红色衬衫,那它首先要知道那件红色衬衫在卧室,它应该先找到衣柜,从衣柜找到红色衬衫。

  这种目标定位和场景定位对机器人技术极为重要。相信这项技术很快就能和面世。