iPhone進入刷臉時代,我能用貓主子的臉給手機加密嗎?

山世光 發表於 2017-11-08 17:02

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正版圖庫

推薦閱讀:

如何評價國產360手機「借鑒」iPhone 7雙攝
被騙子騙了封了他的iCLoud他勒索我要500塊錢。不然就鎖我手機。我該怎麼辦?怎麼才能解鎖?
為什麼有很多人告我蘋果的屏幕色彩好,但我沒覺得?
如何看待蘋果敲定在印度生產 iPhone?
iPhone X應該買64G還是256G?

TAG:手機 | iPhone | 加密 | 時代 |