美團天天有百萬級的圖片產生量,運營人員負責相關圖片的內容審覈,對涉及法律風險及不符合平臺規定的圖片進行刪除操做。因爲圖片數量巨大,人工審覈耗時耗力且審覈能力有限。另外對於不一樣審覈人員來說,審覈標準難以統一且實時變化。因此有必要藉助機器實現智能審覈。算法
圖像智能審覈通常是指利用圖像處理與機器學習相關技術識別圖像內容,進而甄別圖像是否違規。圖像智能審覈旨在創建圖片自動審覈服務,由機器自動禁止不符合規定(負例)的圖片類型,自動經過符合規定(正例)的圖片類型,機器不肯定的圖片交由人工審覈。所以,衡量智能審覈系統性能的指標主要是準確率和自動化率。網絡
一般的自動審覈思路是窮舉不符合規定的圖片(例如水印圖、涉黃圖、暴恐圖、明星臉、廣告圖等)類型,剩下的圖片做爲正例自動經過。這樣帶來的問題是對新增的違規內容擴展性不足,另外必須等待全部模型構建完畢才能起到自動化過濾的做用。若是咱們能主動挖掘符合規定的圖片(例如正常人物圖、場景一致圖)進行自動經過,將正例過濾和負例過濾相結合,這樣才能更快起到節省人工審覈的做用。所以,咱們的圖像智能審覈系統分爲圖片負例過濾模塊和圖片正例過濾模塊,待審圖片先進入負例過濾模塊判斷是否違禁,再進入正例過濾模塊進行自動經過,剩餘機器不肯定的圖片交由人工審覈。整個技術方案如圖1所示。框架
負例過濾和正例過濾模塊中都會涉及檢測、分類和識別等技術,而深度學習則是該領域的首選技術。下面將分別以水印過濾、明星臉識別、色情圖片檢測和場景分類來介紹深度學習在圖像智能審覈中的應用。機器學習
爲了保護版權和支持原創內容,須要自動檢測商家或用戶上傳的圖片中是否包括違禁水印(競對水印、其餘產品的Logo)。與其餘類剛體目標不一樣,水印具備如下特色。ide
傳統的水印檢測採用滑動窗口的方法,提取一個固定大小的圖像塊輸入到提早訓練好的鑑別模型中,獲得該塊的一個類別。這樣遍歷圖片中的全部候選位置,可獲得一個圖片密集的類別得分圖。得分高於必定閾值的塊被認爲是水印候選區域,經過非極大化抑制能夠獲得最終的結果。鑑別模型的特徵能夠採用文字識別領域經常使用的邊緣方向統計特徵,也能夠經過CNN進行特徵學習來提高對裁切、形變、複雜背景的健壯性。爲了進一步改善得分的置信度,能夠加入類型原型的信息,把輸入圖像塊特徵與聚類中心特徵的類似度(夾角餘弦)做爲識別置信度。但上述方法檢測效率極低,因爲水印位置和大小不固定,須要在全部位置對多個尺度的圖像進行判別,由此產生大量的冗餘窗口。函數
一種思路是旨在減小滑動窗口數目的子窗口的方法。首先經過無監督/有監督學習生成一系列的候選區域,再經過一個CNN分類器來判斷區域中是否包含目標以及是哪一類目標。這類方法比較有表明的是R-CNN系列。因爲該類方法獲得的候選框能夠映射到原圖分辨率,所以定位框精度足夠高。性能
另外一種解決思路時採用直接在特徵圖上回歸的方法。咱們知道,對於CNN網絡的卷積層而言,輸入圖片大小能夠不固定,但從全鏈接層以後就要求輸入大小保持一致。所以當把任意大小的圖片輸入CNN直到第一個全鏈接層,只須要一次前向運算就能夠獲得全部層的特徵圖。而後迴歸的對象是待檢測目標的位置信息和類別信息,它們可根據目標大小的須要在不一樣層次的特徵圖上進行迴歸,這類方法以Yolo、SSD爲表明。該類方法的特色是在保證高檢測精度的前提下實時性較好。學習
圖4給出了上述兩類框架與DPM(可變形部件模型)最佳傳統方法的性能比較:測試
考慮到水印檢測任務對定位框的精度要求不高,且須要知足天天百萬量級圖片的吞吐量,咱們借鑑了SSD框架和Resnet網絡結構。在訓練數據方面,咱們經過人工收集了25類共計1.5萬張水印圖片,並經過主體隨機裁切、前背景合成等方式進行了數據增廣。優化
基於訓練獲得的模型對線上數據進行了相關測試。隨機選取3197張線上圖片做爲測試集,其中2795張圖片不包含水印,包含水印的402張圖片裏有302張包含訓練集中出現過的水印,另外的100張包含未出如今訓練集中的小衆水印。基於該測試集,咱們評測了傳統方法(人工設計特徵+滑窗識別)和基於SSD框架的方法。
從圖5能夠看到,相比於傳統方法,SSD框架不管在召回和精度上都有明顯優點。進一步分析發現,深度學習方法召回了38張小衆水印圖片,可見CNN學習到的特徵泛化能力更強。
爲了不侵權明星肖像權,審覈場景須要鑑別用戶/商家上傳的圖像中是否包含明星的頭像。這是一類典型的人臉識別應用,具體來講是一種1∶(N+1)的人臉比對。整我的臉識別流程包含人臉檢測、人臉關鍵點檢測、人臉矯正及歸一化、人臉特徵提取和特徵比對,如圖6所示。其中深度卷積模型是待訓練的識別模型,用於特徵提取。下面咱們將分別介紹人臉檢測和人臉識別技術方案。
人臉檢測
人臉檢測方法可分爲傳統檢測器和基於深度學習的檢測器兩類。 傳統檢測器主要基於V-J框架,經過設計Boosted的級連結構和人工特徵實現檢測。特徵包括Harr特徵、HOG特徵和基於像素點比較的特徵(Pico、NPD)等。這類檢測器在約束環境下有着不錯的檢測效果和運行速度,但對於複雜場景(光照、表情、遮擋),人工設計的特徵使檢測能力會大大降低。爲了提高性能,相關研究聯合人臉檢測和人臉關鍵點定位這兩個任務進行聯合優化(JDA),將關鍵點檢測做爲人臉檢測的一個重要評價標準,但其準確率有待進一步提高。
深度學習的檢測器有三種思路。第一類是沿用V-J框架,但以級聯CNN網絡(Cascaded CNN)替代傳統特徵。第二類是基於候選區域和邊框迴歸的框架(如Faster R-CNN)。 第三類是基於全卷積網絡直接回歸的框架(如DenseBox)。
咱們採用了Faster R-CNN框架並從如下方面進行了改進: 難分負例挖掘(抑制人物雕像、畫像和動物頭像等負例)、多層特徵融合、 多尺度訓練和測試、上下文信息融合,從而更好地抵抗複雜背景、類人臉、遮擋等干擾,並有效提高了對小臉、側臉的檢出率。
人臉識別
人臉識別主要有兩種思路。一種是直接轉換爲圖像分類任務,每一類對應一我的的多張照片,比較有表明性的方法有DeepFace、DeepID等。另外一種則將識別轉換爲度量學習問題,經過特徵學習使得來自同一我的的不一樣照片距離比較近、不一樣的人的照片距離比較遠,比較有表明性的方法有DeepID二、FaceNet等。
因爲任務中待識別ID是半封閉集合,咱們能夠融合圖像分類和度量學習的思路進行模型訓練。考慮到三元組損失(Triplet Loss)對負例挖掘算法的要求很高,在實際訓練中收斂很慢,所以咱們採用了Center Loss來最小化類內方差,同時聯合Softmax Loss來最大化類間方差。爲了平衡這兩個損失函數,須要經過試驗來選擇超參數。咱們採用的網絡結構是Inception-v3,在實際訓練中分爲兩個階段:第一階段採用Softmax Loss+C×CenterLoss,並利用公開數據集CASIA-WebFace(共包含10 575個ID和49萬人臉圖片)來進行網絡參數的初始化和超參數C的優選,根據試驗獲得的C=0.01;第二階段採用Softmax Loss+0.01×Center Loss,並在業務數據(5200個明星臉ID和100萬人臉圖片)上進行網絡參數的微調。
爲了進一步提高性能,借鑑了百度採用的多模型集成策略,如圖7所示。具體來講,根據人臉關鍵點的位置把人臉區域分割爲多個區域,針對每個區域分別訓練特徵模型。目前把人臉區域分割爲9個區域,加上人臉總體區域,共需訓練10個模型。
在測試階段,對於待驗證的人臉區域和候選人臉區域,分別基於圖7所示的10個區域提取特徵。而後對於每一個區域,計算兩個特徵向量間的類似度(餘弦距離)。最終經過類似度加權的方法判斷兩張人臉是否屬於同一我的。表1給出了主流方法在LFW數據集上的評測結果。能夠看出,美團模型在相對有限數據下得到了較高的準確率。
色情圖片檢測是圖像智能審覈中重要環節。傳統檢測方法經過膚色、姿態等維度對圖片的合規性進行鑑別。隨着深度學習的進展,現有技術[雅虎NSFW(Not Suitable for Work)模型]直接把色情圖片檢測定義二分類(色情、正常)問題,經過卷積神經網絡在海量數據上進行端到端訓練。
對於已訓練模型,不一樣層次學習到的特徵不一樣,有些層次學到了膚色特徵,另一些層次學習到了部位輪廓特徵,還有的層次學到了姿態特徵。但因爲人類對色情的定義很是普遍,露點、性暗示、藝術等均可能被歸爲色情類,並且在不一樣的場景下或者面對不一樣的人羣,色情定義標準沒法統一。所以,初始學習到的模型泛化能力有限。爲了提高機器的預測準確率,須要不斷加入錯分樣本,讓機器經過增量學習到更多特徵以糾正錯誤。除此以外,咱們在如下方面進行了優化。
機器審覈結合人工複審。在實際業務中因爲涉黃檢測採用預警機制,機器審覈環節須要儘量召回全部疑似圖片,再結合適量的人工審覈來提高準確率。所以,上層業務邏輯會根據模型預測類別和置信度將圖片劃分爲「肯定黃圖」「肯定非黃圖」和「疑似」三部分。「疑似」部分,根據置信度由高到底進行排序,並轉交人工複審。在線上業務中,「肯定黃圖」和「肯定非黃圖」部分的精度可達到99%以上,而「疑似」部分只佔總圖片量的3%左右,這樣在保證高精度過濾的條件下可大幅節省人力。
支持視頻內容審覈。對於短視頻內容的審覈,咱們經過提取關鍵幀的方式轉化爲對單張圖片的審覈,而後融合多幀的識別結果給出結論。
做爲一個貫穿吃喝玩樂各環節的互聯網平臺,美團的業務涉及多種垂直領域,如表3所示。有必要對運營或用戶上傳圖片的品類進行識別,以保持與該商家的經營範圍一致。此外,爲了進一步改善展現效果,須要對商家相冊內的圖片進行歸類整理,如圖8所示。
深度卷積神經網絡在圖像分類的相關任務上(好比ILSVRC)上已經超越人眼的識別率,但做爲一種典型的監督學習方法,它對特定領域的標記樣本的數量和質量的需求是突出的。咱們的場景分類任務,若是徹底依靠審覈人員進行圖片的篩選和清洗,代價較大。所以須要基於遷移學習來對模型進行微調。
遷移學習致力於經過保持和利用從一個或多個類似的任務、領域或機率分佈中學習到的知識,來快速並有效地爲提高目標任務的性能。模型遷移是遷移學習領域中一類經常使用的遷移方式,它經過學習原始域(Source Domain)模型和目標域(Target Domain)模型的共享參數來實現遷移。因爲深度神經網絡具備層次結構,且其隱藏層能表示抽象和不變性的特徵,所以它很是適合模型遷移。
至於原始域訓練的深度卷積神經網絡,須要關注哪些層次的參數能夠遷移以及如何遷移。不一樣層次的可遷移度不一樣,目標域與原始域中類似度較高的層次被遷移的可能性更大。具體而言,較淺的卷積層學習到的特徵更通用(好比圖像的色彩、邊緣、基本紋理),於是也更適合遷移,較深的卷積層學習的特徵更具備任務依賴性(好比圖像細節),於是不適合遷移,如圖9所示。
模型遷移經過固定網絡特定層次的參數,用目標域的數據來訓練其餘層次。對於咱們的場景分類任務而言,首先根據分類的類別數修改網絡輸出層,接着固定較淺的卷積層而基於業務標註數據訓練網絡倒數若干層參數。若有更多的訓練數據可用,還能夠進一步微調整個網絡的參數以得到額外的性能提高,如圖10所示。相比於直接提取圖像的高層語義特徵來進行監督學習,採用分階段的參數遷移對原始域與目標域間的差別性更健壯。
基於上述遷移學習策略,咱們在美食場景圖和酒店房型圖分類中進行了相關實驗,基於有限(萬級別圖片)的標註樣本實現了較高的識別準確率,測試集上的性能如表4所示。
如前所述,基於深度學習的圖像分類與檢測方法在圖片智能審覈中替代了傳統機器學習方法,在公開模型與遷移學習的基礎上,經過從海量數據中的持續學習,實現了業務場景落地。
參考文獻
[1] H. Chen, S. S. Tsai, G. Schroth, D. M. Chen, R. Grzeszczuk, and B. Girod. 「Robust text detection in natural images with edge-enhanced maximally stable extremal regions.」 ICIP 2011. [2] Z Zhong,LJin,SZhang,ZFeng.「DeepText: A Unified Framework for Text Proposal Generation and Text Detection in Natural Images」. Architecture Science 2015. [3] Minghui Liao, Baoguang Shi, Xiang Bai, Xinggang Wang, Wenyu Liu. 「TextBoxes: A Fast Text Detector with a Single Deep Neural Network」. AAAI 2017. [4] S. Ren, K. He, R. Girshick, and J. Sun. Faster r-cnn.「Towards real-time object detection with region proposal networks.」 NIPS 2015. [5] Graves, A.; Fernandez, S.; Gomez, F.; and Schmidhuber, J. 「Connectionist temporal classification: Labelling unsegmented sequence data with recurrent neural networks.」 ICML 2006. [6] R Girshick,JDonahue,TDarrell,JMalik. 「Rich Feature Hierarchies for Accurate Object Detection and Semantic Segmentation.」 CVPR 2014. [7] J. Redmon, S. Divvala, R. Girshick, and A. Farhadi. 「You only look once: Unified, real-time object detection」. CVPR 2016. [8] W. Liu, D. Anguelov, D. Erhan, C. Szegedy, and S. Reed. 「SSD: Single shot multibox detector」. ECCV 2016. [9] 「Object detection with discriminatively trained part-based models」. TPAMI 2010. [10]Robust Real-time Object Detection. Paul Viola, Michael Jones. IJCV 2004. [11]N. Markus, M. Frljak, I. S. Pandzic, J. Ahlberg and R. Forchheimer. 「Object Detection with Pixel Intensity Comparisons Organized in Decision Trees」. CoRR 2014. [12]Shengcai Liao, Anil K. Jain, and Stan Z. Li. 「A Fast and Accurate Unconstrained Face Detector,」 TPAMI 2015. [13]Dong Chen, ShaoQingRen, Jian Sun. 「Joint Cascade Face Detection and Alignment」, ECCV 2014. [14]Haoxiang Li, Zhe Lin, XiaohuiShen, Jonathan Brandt, Gang Hua. 「A convolutional neural network cascade for face detection」, CVPR.2015. [15]Lichao Huang, Yi Yang, Yafeng Deng, Yinan Yu.「DenseBox: Unifying Landmark Localization with End to End Object Detection」 CVPR 2015. [16]Taigman Y, Yang M, Ranzato M A, et al. Deepface: Closing the gap to human-level performance in face verification.CVPR 2014. [17]Sun Y, Wang X, Tang X. Deep learning face representation from predicting 10,000 classes.CVPR 2014. [18]Sun Y, Chen Y, Wang X, et al. Deep learning face representation by joint identification-verification.NIPS. 2014. [19]FaceNet: A Unified Embedding for Face Recognition and Clustering. CVPR 2015. [20]A Discriminative Feature Learning Approach for Deep Face Recognition. ECCV 2016. [21]Rethinking the Inception Architecture for Computer Vision. CVPR 2016. [22]Alex Krizhevsky, IlyaSutskever, Geoffrey E. Hinton. 「ImageNet Classification with Deep Convolutional Neural Networks」. 2014. [23]Murray, N., Marchesotti, L., Perronnin, F. 「Ava: A large-scale database for aesthetic visual analysis」. CVPR 2012.
曉明,美團平臺智能技術中心視覺技術負責人,曾就任於佳能研究院,三星研究院。2015年加入美團,主要致力於圖像和視頻相關的技術積累和業務落地,做爲技術負責人主導了圖像智能審覈、首圖優選、刷臉認證、拍照錄菜等項目的上線,顯著提高了用戶和商家的智能化體驗。
美團平臺智能技術中心充分利用人工智能的優點來支持美團點評多個業務線,並在智能推薦、智能營銷、智能經營、智能審覈等多個領域都取得了很好的應用效果。長期招聘天然語言處理、計算機視覺、大規模機器學習、數據挖掘算法或工程背景的同窗。歡迎有意向的同窗投遞簡歷至:zhanghejia@meituan.com。