淘新聞

曠視科技孫劍:如何在大公司和創業公司做好電腦視覺的研究(二)

雷鋒網AI科技評論按:本文為曠視科技首席科學家孫劍日前在CCF-ADL上做的題為《如何在大公司和創業公司做好電腦視覺研究》的分享,雷鋒網進行了全文整理。以下是第二部分。

第一部分傳送門:

曠視科技孫劍:如何在大公司和創業公司做好電腦視覺的研究(一)

孫劍博士(攝影:劉芳平)

孫劍,博士,曠視科技(Face++)首席科學家、研究負責人。2003年畢業于西安交通大學人工智慧與機器人研究所,畢業後加入微軟亞洲研究院(Microsoft Research Asia),任至首席研究員。其主要研究方向是計算攝影學(computational photography)、人臉識別(face recognition)和基於深度學習的圖像理解(deep learning based image understanding)。自2002年以來在CVPR、ICCV、ECCV、SIGGRAPH、PAMI五個頂級學術會議和期刊上發表學術論文100+篇,Google Scholar 引用 20,000+次,H-index58,兩次獲得CVPR Best Paper Award (2009, 2016)。孫劍博士于2010年被美國權威技術期刊Technology Review評選為“全球35歲以下傑出青年創新者”。孫劍博士帶領的團隊於2015年獲得圖像識別國際大賽五項冠軍(ImageNet分類,檢測和定位,MS COCO檢測和分割),其團隊開發出來的“深度殘差網路”和“基於區域的快速物體檢測”技術已經被廣泛應用在學術和工業界。同時孫劍帶領的團隊的研究成果也廣泛被應用在微軟Windows, Office, Bing, Azure, Surface, Xbox等多條產品線上。目前孫劍博士正在帶領曠視科技的研究團隊推進電腦視覺技術的進步和探索其在工業和商業上的實踐。

以下為演講內容,主要介紹了近期電腦視覺的發展現狀,

ResNet基本原理和設計,曠視科技在電腦視覺的研究進展等。最後他還分享了一些“如何在大公司和創業公司做好研究?”的心得。

文本檢測

物體檢測非常重要,還有另一類是文本檢測。我們都知道,文字的檢測其實是非常難的,而且與物體檢測也存在不同。

圖二十九

文字檢測的主要特點是它的流程(pipeline)非常長,從設計模組、調整參數到訓練都要花非常多的時間和心力。

圖三十

深度學習的精髓是做端到端的訓練,曠視(Face++)研究院今年在 CVPR 上發了一篇論文,就是一個基於 FCN 的簡化文本檢測演算法。輸入一張圖片後,系統會生成Geometry Map 和Score Map兩個Map,進而實現端到端的識別,這也是文本檢測第一次能用一個這麼小的模型實現,這裡是它的一些量化評測,在公開評測集上取得了非常好的效果。

圖三十一

圖三十二

我們的研究員正在用不同的方法做一個即時檢測的 demo,大家可以看到,這裡其實並不涉及文字的識別。

圖三十三

語義分割

第三部分我們關心的是語義分割。即如何把圖元映射到一個有語義的標記上來。

圖三十四

其中一個非常大的應用就是無人車。即在感知的時候需要知道人和車的位置。其實用非深度學習的方式已經做得非常不錯,但如果涉及更複雜的情況,用深度學習可以做得更好。

在這裡我們會採用 FCN 的方法(fully convolutional network,全卷積網路),用下採樣抽取後再上採樣回來,輸出一個 feature map 或是有語義的 map,以完成一個端到端的學習。

圖三十五

涉及的一個概念叫 receptive field(感受野),也就是卷積的特徵到底能覆蓋多大的區域,而實際上還有一個叫有效感受野的(valid receptive field)概念,因為實際情況往往比理論上覆蓋的區域要小。

圖三十六

在研究中我們會發現,做分類和分割實際上是不一樣的任務。分類的話,研究者會希望感受野越大越好,而分割則可能需要控制一下。

這和標準的 FCN 還是有不同。如果你想識別圖中的鳥的話,實際上我們還是需要一個很大的 receptive field 的。

圖三十七

我們曠視(Face++)實習生最近做了一個工作,他設計了一個方法,在大的 receptive field 或是大的 kernel 中也能實現很好的效果。這也是我們今年 CVPR 的一篇論文《Large-Kernel FCNs》,當時(的結果)在 VOC 2012 Segmentation on Benchmark 上排在第一位。

圖三十八

3D感知問題

以下是三個分類的核心問題。電腦還有一個問題就是 3D 感知問題,而且並不需要兩隻眼睛,一隻其實也可以實現先驗感知。

圖三十九

那麼用深度學習是否能實現 3D 重建?自然是可以的。

目前研究員在研究如何用單張圖片實現 3D 重建。左邊是一個圖片,右邊是它構建的 3D 點雲。看不見的地方我們需要利用先驗猜一下可能是什麼樣子。

圖四十

那麼 3D 形態是如何構建的?最難的地方是如何表示 3D。傳統方法包括用深度圖或是 mesh 等方法實現,即判斷一個空間內某個格子是否有這個物體。我們研究員採用的是 3D 點來表示物體的方法,能夠呈現連續的特點。

圖四十一

3D 資料庫訓練了一個檢測的 pipeline,紅色列是輸入,二三列是輸出,根據先驗知識判斷,形成一些合成例子。

圖四十二

在提交論文前,我們在辦公室隨便拍了一些物體,也得到了一些還不錯的結果。這篇論文在 CVPR 上也拿了 oral paper。

圖四十三

圖四十四

由於時間有限,一些技術細節我們在這裡就不詳細討論了。

Brain++深度學習平臺

在這裡我想提一下我們曠視(Face++)自己有一個叫 Brain++的深度學習平臺,每個研究員或訪問學生只需要用虛擬機器遠端登入就可以實現演算法訓練,甚至還包括資料管理、資料標注和模型發佈的整套系統。使用者標注的資料可以直接上傳到系統中,經過訓練後就能直接發佈模型了。

圖四十五

其中核心的一部分叫 megvii brain,是一個深度學習的訓練引擎,大家可能都聽說過 caffe、TensorFlow 或 MXNet,那麼你可以把 megvii brain 理解為 曠視(Face++)的「TensorFlow」。TensorFlow 已經開源一年,而我們的 megvii brain 已經兩年了。

為什麼說曠視(Face++)是應用深度學習比較早的公司呢?不只是在做應用,其實底層的技術我們也在做,也開放應用了。

圖四十六

好處在於,很多定制化的東西我們可以自己來做。相對 TF 這樣體量大的系統,可能使用者在上面做一些改動就會產生很多問題。此外,引擎的佔用記憶體小,訓練速度快,有很多東西是我們可以控制的。

前面我們提到了一些技術,接下來會說說產品能做些什麼事情。

Face++產品及應用

Face++有兩類產品,一類是人臉識別的 FaceID;另一類是智慧攝像頭。

FaceID

FaceID 實際上就是為了解決一個問題:「如何驗證『你是你』?」

圖四十七

比如線上銀行開戶、或是 Uber 司機的身份驗證,目前也有很多方法,不過現在用得比較多的還是人臉識別的解決方案。

FaceID 的 App 身份驗證方案的流程是這樣的,使用者拍一張照片,通過活體檢測部分比對身份證資訊,通過用戶端的 SDK 與雲上的計算實現比對任務。而 SmartID 則屬於 SaaS 服務,目前已經應用於非常多的領域,包括線上線下的銀行,還有以芝麻信用為代表的征信風控業務都在用我們的服務。

圖四十八

前一陣 3·15 展示了如何破解人臉識別技術,這裡涉及到一個問題叫「活體攻擊問題」,其實反過來想,如果它已經形成一個地下黑色產業鏈,說明已經成為一個非常有價值的業務。

智慧攝像頭

第二個方向則是智慧攝像頭。

我們將演算法嵌入攝像頭或計算盒子,主要方向是做家庭或公共安全的分析。大家可能瞭解過,中國的攝像頭數量超過世界上的一半,而超過一半的硬碟都被用於存儲視頻監控內容。

圖四十九

圖五十

我們來看看交通規劃方面,曠視(Face++)的產品能做些什麼。如果你能分析清楚視頻中的人流車流的 ID,那麼這也具有價值。

比如我們做了一套門禁系統,員工上班時不需要打卡,只要走過這個玻璃門前,就能自動識別人臉。目前這套系統也已經獲得上百家公司的應用。

此外,我們還可以根據這套系統做一些改變。比如中國每年有很多展會,在註冊服務上可能需要很多的人手跟進,那麼我們這款產品就能打造成一個基於人臉識別的自動註冊系統。

圖五十一

有了這些產品,勢必會產生非常大的資料,目前 曠視(Face++)的開放平臺 API 被調用的資料在 2016 年達到了 60 億次,很快會接近 100 億次。而我們的 Smart ID 也已經服務超過上億人(不是上億人次)。

從感知智慧到認知智慧

我們也希望實現「技術-產品-資料」的一個閉環,也是通過服務不同的行業實現 AI+的方式。我們再回到人工智慧。

圖五十二

圖五十三

左邊的綠色表示的是擬合映射的任務,用一個函數 F(x)就把很多內容解決了,提供大規模的標注資料就可以實現。但右邊的任務就不是一步法就能做的,涉及很多的判斷,而且右邊的內容可能無法提供一個大的訓練環境。雖然目前有很多新技術,也有大量的投入,但還沒有很多進展。

圖五十四

電腦視覺雖然我劃在左邊,但實際上它也涉及右邊的認知過程,比如系統能能夠判斷一個視頻裡面的內容,而這就涉及到很多 language 和常識的支持。

那麼如何從感知智慧向認知智慧轉變呢?

我從一本 2004 年的書中得到很多靈感,它的名字叫《On Intelligence》。作者 Jeff Hawkins 創建了一個研究院,研究如何做類似人腦智慧的內容,雖然研究院規模不大,成果也尚不足以證明什麼,但書中提出的思想都非常早,包括如何利用存儲機做人工智慧。

圖五十五

現在訓練神經網路是沒有記憶體的,而人類擁有記憶,根據書本、知識將內容傳承下來。那麼像 Facebook、Google 這樣的公司都在做 Memory mechanism 的學習系統,要解決的核心內容在於要存儲哪些內容,讀取哪些內容,又該做怎樣的聯想。比如人類記得一首歌、記得一句話,是按一定的順序記憶的,如果反過來,可能我們都回憶不起來。

圖五十六

此外,很多知識是分層結構的。因此這些內容如何以一個合理的機制存在,是我一直非常關注的研究方向。

另一個我自己覺得非常有意思的內容是無監督的預測。它的基本思想是說,人在學習過程中是需要和物理世界發生交互的,而人類通過觀察現實世界就能學習到很多東西,不需要進行額外的標記。雖然我們不否認家長的重要性,但小孩學習的很多東西,也有很多不是父母教的。孩子在觀察世界、與世界互動的過程中,包括基因傳承的一些內容,就會自發地學習。

舉個例子,我們衡量智商會通過 IQ 測試,比如給出一列數字,讓你預測下一個數字是什麼,或給一串文字,讓你判斷下一個文字。對將要發生事情的預測,是一個非常重要的監督信號,能夠在整個學習過程中運用。現在有很多的研究,通過一段視頻,判斷下一幀的內容是什麼;或通過一個圖片預測另一個視角的樣子。在這些過程中系統都能學到預測的特徵。

在做深度學習時,我做過一篇論文叫《An associate-predict model for face recognition》,解決的是人臉識別中不同姿態的問題。當時我嘗試創建了一個外部存儲,通過存儲 memory 來做預測,效果非常好。但系統本身非常原始,而且是深度學習時代之前的一個研究內容。

圖五十七

那麼在無監督預測中,比如真實世界裡有一個南瓜,可能人類可以猜出南瓜後面大概長什麼樣,這就是「image completion」問題,也是十幾年前我們做的一個研究,即通過圖形學的方法猜出背後的內容。那麼今天在感知世界中,我們可以對被遮擋的東西做很多的感知,一個是我們的能力,另一個是教我們如何對真實世界進行推理和預測,通過很多觀察的過程進行學習。

圖五十八

總而言之,人工智慧很難,但我們從中也看到希望。這是朋友給我分享的一個圖片,希望我們能夠抵達一個至高點。在這個過程中,希望我們的技術商業資料能夠實現迴圈,而對於每一個從業者來說,我們也需要有足夠的熱情、洞察力和耐心去做這件事。

圖五十九

我為什麼相信這件事呢?今天世界上所有最聰明的人都在投入做人工智慧。這張照片是我參加 CTC 大會時拍的,以前這是一個圖形學的會議,會研究遊戲怎麼做。但近年來我參加這個會議,5000 人的圖形學大會都在研究怎麼做深度學習,更別說我們這些做機器學習的人了。

圖六十

曠視(Face++)也進行了一個走入校園的活動,分享 CVPR 的五篇論文。曠視(Face++)也希望能找到「數學好、程式設計好、態度好」的三好學生,和我們一起 All in。

以上為雷鋒網整理的第二部分內容,孫劍博士將在第三部分介紹如何在大公司和創業公司做好CV,敬請期待。