4873
需用时 09:44
iPhone进入刷脸时代,我能用猫主子的脸给手机加密吗?

11月3日,第一批苹果iPhone X如期上市。到今天,运气好的朋友可能已经开始拿着新手机刷脸玩儿了。iPhone X从解锁屏幕到购物付款,全靠刷脸。好用吗?安全吗?

面部识别并不是什么新的技术,iPhone X的“刷脸”和其他产品的“刷脸”有什么不同?是什么样的黑科技,能让苹果放心大胆地直接取消了使用指纹的Touch ID,把方便与安全完全托付给了深度学习技术和Face ID?

果壳科学人为此专访了中国科学院计算技术研究所专门研究深度学习与面部识别的山世光研究员,听他给咱们讲讲面部识别是怎么回事?除了解锁iPhone,面部识别还有什么用处?

全靠刷脸的iPhone X。图片来源:apple.com

AI是怎么识别人脸的?

科学人:面部识别跟AI(人工智能)有什么关系?

山世光:面部识别是隶属于计算机视觉、模式识别和机器学习等学科领域的一个研究方向,而这些学科领域都属于广义的AI领域。所以,简单说,面部识别是AI要具备的重要能力之一。

科学人:AI是如何学习识别人脸的?

山世光:目前多数面部识别系统都是采用深度学习技术来实现的。学习的内容(技术原理)是采用多层人工神经网络(一般是卷积神经网络,这里说的神经网络并非生物神经网络,而是由大量称为“人工神经元”的计算单元互联而成的网络结构)对输入的数字照片进行一层一层的变换处理,最终得到一个由若干数字组成的特征串(比如500个数字),大家可以将其理解为密码。

应用于人脸解锁时,拿到手机首先需要注册自己的脸,也就是先让系统采集你的照片,用之前通过深度学习掌握的方法提取照片的特征串,然后存储到安全的地方。这个过程类似于密码设置。

在你刷脸解锁时,系统再拍摄一张你的照片(必要时可以多张),同样提取特征串——这相当于输入密码;如果这个特征串和系统存储的特征串足够相似(注意:这里和密码是不一样的,密码要求完全一样),就可以解锁了。

关键问题在于:如何学习这样的一个很多层的神经网络?

图片来源:发布会截图

这需要海量的人脸照片(称为“训练集”),比如10万人的1000万张照片(每人100张不同样子的照片),这些照片最好覆盖各种样子,比如有无眼镜、各种表情、各种视角、各种年龄等。

所谓的学习过程就是用这些照片不断地去调整多层神经网络中每一层完成变换所需要的参数,每次调整的目标都是使多层神经网络最后能够输出应该输出的那个人,直到训练集中的所有照片都能够被归类给正确的那个人。

这个学习过程一旦完成,就得到了一个可以提取不同人最典型特征的面部识别系统,这个网络就可以对任意人脸照片(完全可以不是训练集中的那些人的照片)进行层层变换,最终得到这个人的特征串。

直观上理解,这个“完成学业”的面部识别系统会用低层“人工神经元”提取出照片中的点、线等简单模式,再用中间层人工神经元提取出人脸上的曲线、角、椭圆等更复杂的模式,再后面的神经元则提取出五官等模式,最后,可以把输入人脸上异于其他人的那些关键属性或特征找出来,最终形成一个特征串。

这里必须指出的是,以深度学习为基础的现代面部识别技术提取的“特征串”是很难理解其含义的——面对这么一串“数字化的脸”,即便是面部识别专家也不能解读,更不能人工抽取。但可以肯定的是,这些特征串绝不是大家容易想到的眼眉鼻唇的大小、形状之类的人类可辨识特征。

科学人:除了2D的面部照片,Face ID还使用了2D红外图像和记录面部深度数据的红外点阵图像。这与以往的面部识别技术有什么不同吗?

山世光:苹果的Face ID采用的是RGBD相机,也就是所谓的深度相机——除了普通相机能够记录的红(R)、绿(G)、蓝(B)信息之外,还能记录深度信息(D)。这一点与以往大多数面部识别技术有一定差异,但也不是全新的技术。学术界早有研究,包括我们公司也有相应的技术储备。能够记录深度信息的最大优势是“防攻击”能力强,可以更方便地检测出照片、视频播放等“假脸”的攻击,从而大大提高安全性。

当然,2D红外图像和深度数据的使用确实也可以进一步提高识别精度,因为它们之中包含了更多可以区分不同人的信息,特别是深度信息,包含了更多面部的立体结构信息。

iPhone X会根据采集的照片制作一个含有面部3D信息的“密码”。图片来源:apple.com

科学人:这样的AI在学习的时候只用照片就可以吗?还是也得用3D的人脸数据?

山世光:对2D面部识别而言,只需要使用有身份(ID)信息标注的照片即可完成学习。一般来说,除非是专门做3D面部识别,否则不需要大量3D人脸数据。对iPhone X用的面部识别系统而言,还是需要收集大量的有ID标注的RGBD人脸照片来学习,但需要的数据量可以相对少,其原因在于两方面:1)基于大量2D照片(即RGB照片)学习而来的面孔识别系统可以直接利用RGBD相机拍摄的RGB数据进行面孔识别;2)深度(即D)图可以看成类黑白照片,也可以借力已有的2D面孔识别系统。

科学人:据说13岁以下的孩子对于面部识别来说是个难题,难在哪儿?

山世光:面部识别对小孩子的识别能力略差,主要是因为小孩子长得快,变化大,因此容易导致识别困难。其实类似的情况,很多面部识别系统对女性的识别能力也相对要差一点点,因为女性有更多的化妆、饰物遮挡等变化。

科学人:AI能够通过学习识别孩子每天的成长变化吗?

山世光:每天学习是可以的,但似乎苹果并没有用这个技术来解决孩子快速变化的问题。

科学人:美国的AI会不会也认为亚洲人都长得一样?

山世光:如果美国的AI学习神经网络所用的训练集中所有人都是西方面孔,而没有亚洲面孔,那么最终形成的面部识别系统也不能很好地区分亚洲人。这一点和人类相似,AI也存在所谓的“种群效应”。但现在多数面部识别系统的训练集都是包含各个人种的,所以,这方面的问题不会那么严重。

刷脸到底安全不安全?

科学人:苹果发布会说专业的仿真面具都无法通过验证,但是化妆、疤痕、帽子、眼镜,甚至有测评说部分遮蔽的脸(比如戴着口罩只露出半张嘴)却可以通过检测,这在技术上是如何实现的?

山世光:理论上,半张脸也能通过验证是可以做到的,难的是同时还能保持对假冒者攻击的有效防御。对面部识别来说,半张脸只是用来辨认此人的信息减少了,不是不能识别了,何况上半脸包含的信息本来就多些,下半脸信息偏少一点。打个比方,你的密码本来是500位数字(实际上不需要这么多,有很多冗余),现在假设你只输入了300位,而且这300位中90%都正确,要不要解锁呢?显然,这就看我们愿意不愿意降低一点安全性,而换来更大的便利性了。

当然,我对iPhone X是否真能做到所有情况都可以稳定识别持怀疑态度。事实上,在用户中普及之后,不能通过验证的情况一定会有,就像指纹一样,假设每天解锁100次,有三五次失败需要输入密码解锁是可接受的。

据说连这样的面具都骗不过Face ID。图片来源:发布会截图

科学人:同卵双胞胎再化化妆能骗过AI吗?

山世光:有很大可能,特别是年轻时,双胞胎会非常像,目前没有权威的测试(因为没有大规模的测试集)表明面部识别技术在区分双胞胎上会有怎样的表现。从技术原理上来说,AI识别人脸的能力虽然可以超过人,但因为缺少大量双胞胎数据,最终表现很可能不够理想。苹果公司也承认了这一点。

科学人:作为专业从事面部识别领域研究的科学家,有办法骗过AI吗?

山世光:如果我们刻意地想去攻击这样的面部识别系统,是有可能找到办法的,但绝对不是那么容易。至少在回答这个问题的时候,我还没有想到可以简单攻破的办法,除了用双胞胎。当然,我这里说的攻击指的是解锁别人的手机。如果攻击指的是想办法不被自己的手机识别自己,那就简单多了,会有很多办法,比如化浓妆、戴大围巾、长发遮挡大部分面部、强逆光拍摄等,都有可能导致识别失败。

科学人:IPhone X并不是第一台能刷脸解锁的手机。但却是第一台放弃了指纹识别,只能刷脸,否则就只能手动输密码的手机。这是商业选择,还是技术高度?

山世光:更多是商业选择,但也有技术高度。从商业的角度,这是个很好地噱头。其实去年国内某著名手机品牌就已经与我们合作将中科视拓的Seeta面部识别技术用到了某款手机上识别主人,但采用的是谨慎试水的方式,没有完全依赖于面部识别技术而放弃了指纹识别等其他验证方式 ,也没有大规模宣传。效果其实是很好的,至少在发布会现场没有像iPhone X那样第一次解锁就失败。这次iPhone X上市,苹果公司选择了大批量采用,按照其做事风格,我倾向于相信是经过了大量测试的,技术高度肯定是有了,特别是在防攻击方面,但其性能倒未必可以“绝杀”国内外其他厂商。

科学人:指纹识别的时候,同一部iPhone可以储存5个指纹(意思是,最多有5个人可以解锁同一部电话),但是面部识别只允许储存1张脸,这有什么技术或是安全上的考虑吗?

山世光:我们每个人都有10个手指,但只有一个面孔。我理解指纹识别存储5个指纹不是为了5个人共享一部电话,主要是为了使用者可以用5个不同的手指解锁自己的手机,因为有时候我们需要用不同的手指(哪个方便用哪个)。我认为面部识别只允许储存1张脸,这个不是安全考虑,而是绝大多数情况下“一部手机仅一人使用”这一现实情形的必然结果。

科学人:AI提取面部数据和进行面部识别需要联网吗?是不是得把我的面部识别信息先传给苹果公司?

山世光:不需要。如果是这样,手机断网了就不能用人脸解锁了,这显然不符合常识。

科学人:坏人是不是可以偷走手机获取我的面部识别信息?用这些信息可以冒充我通过检测吗?

山世光:技术上非常困难,基本上不用担心。如果这个可以实现,那么我们用来解锁手机的密码在手机被偷走后应该也可以被获取。

科学人:面部识别信息会暴露我的长相吗?

山世光:对面部识别专家来说,技术上有这个可能性(能大概恢复出你的面部图像,但不会很清晰),而且能这样做的前提条件是可以拿到一个人的面部识别信息,以及生成这些信息所采用的面部识别方法(也就是前面说的那个深度神经网络系统)。这是非常困难的。所以大可不必担心。

科学人:面部识别信息还可能被拿去做什么?

山世光:如前所述,我个人认为,面部识别信息除非被面部识别算法的开发者获得,否则没什么用。即使他拿到,对他有用的概率也极低。

图片来源:发布会截图

刷脸会不会让手机变慢?

科学人:深度学习需要巨大的运算力,使用刷脸功能是不是会占用手机的大量资源?

山世光:不会。深度学习需要巨大运算力,指的是在“训练”或“学习”阶段,也就是学习使用深度网络提取面部信息的过程。这个过程在高性能服务器上也可能需要数天甚至数周才能完成,不过是在开发者的服务器上完成的。

手机在出厂时已经预装了“完成学业”的面部识别系统。也就是说,根本不需要在用户手机上完成训练和学习。在手机上进行识别时需要的运算复杂度相比训练和学习阶段要小得多得多,所以不会占用大量资源。

此外,和指纹识别类似,手机并不需要时刻进行面部识别,只需要在需要身份识别的时候进行计算就可以了。

科学人:有评论说刷脸比刷指纹慢,是因为有更多的数据需要运算吗?

山世光:相比普通指纹识别,面部识别算法确实复杂度更高。但随着硬件计算能力的快速进步,用户不会感觉到太大的差异。

中国的面部识别技术

科学人:在深度学习和面部识别的研究应用领域,中国现在处在什么水平?

山世光:目前,中国面部识别的应用处于国际领先水平。在公安、金融、交通、商业等很多应用领域中,因为安全监控、实名制等强制性要求,中国逐渐安装了远多于国外的面部识别系统和产品。同时,这些系统的安装使得国内研发机构有机会获得更大规模的训练数据和更为丰富的实战经验。因此,这些面部识别系统的识别率、误识率等精度指标也优于很多国外系统。

但在深度学习的前沿研究方面,我们还在紧紧追赶的状态,也就是在很多单点上有领先优势,但在基础理论和创新方法上,还需要付出很多艰苦的努力。国际领先绝非一日之功!

除了3D扫描,国内在面部识别领域已经开始了X-Data驱动的深度学习方法的研究。X-Data代表半监督、无监督、弱监督、自造数据、小数据、杂数据、脏数据、自寻数据等。使用这些数据训练机器学习模型,AI的研发成本将大幅降低。图片来源:中科视拓。图片来源:中科视拓。

科学人:除了解锁手机,面部识别在安保以及生活的其他方面还有哪些重要的应用?

山世光:除了广为人知的警用安防领域,面部识别的民用市场更为巨大。简单说,面部识别在金融、交通、教育、商业、文化等几乎所有领域都有用武之地,特别是在需要“实名制”和“验明正身”的地方,都可以用自动面部识别技术来代替过去靠人工完成的核验步骤。例如,中科视拓的Seeta面部识别技术已经在很多运营商那里得到应用,用来完成开户人员的实名制身份核验,也就是验证持证人员是否本人。机场、车站、考试等领域也已经在使用我们的技术,完成对旅客或考生身份的实名制核验。

除了Face ID解锁,面部识别系统还可以应用于公安、金融、交通等众多领域,对普通市民或重点人员面部进行建库,通过人像比对快速精准确认被查询人员身份,实现黑白名单人员的识别。图片来源:中科视拓

面部识别还可以用来进行各种活动或会议的快速签到。在10月28日举行的未来论坛年会上,3000多名参会人员就现场体验了刷脸签到的便捷。采用面部识别技术,一个参会人员从到达注册台前到打印出胸牌并拿到所有会议材料,只需要十秒钟左右的时间(其中面部识别只需要一两秒),大大提高了签到效率。

另外一个可以想象的巨大市场空间是:几乎任何有“门”和“锁”的地方都可以采用面部识别来代替门锁。例如,利用Seeta面部识别技术开发的面部识别闸机已经在平安科技、航天等很多单位得到应用,实现了特定园区或楼宇人员高效、便利的无卡刷脸出入。

 

所以,我能用我家猫主子的脸来保护我的手机吗?

山世光:不能。因为面部识别算法的第一步就是在画面中寻找人脸(技术术语是面部检测,face detection),这个阶段猫脸是不会被误判为人脸的,因为面部检测算法在学习阶段不但不会把猫脸当作人脸,还会把猫脸当作人脸的“反面教材”来学习。(编辑:阿娇 明天)

题图来源:123rf.com.cn正版图库

The End

发布于2017-11-08, 本文版权属于果壳网(guokr.com),禁止转载。如有需要,请联系果壳

举报这篇文章

山世光

中国科学院计算技术研究所研究员 中国科学院智能信息处理重点实验室常务副主任 中科视拓创始人

pic