ICCV 2021 口罩人物身份鑒別全球挑戰賽冠軍方案分享

image.png

1. 引言

10月11-17日,萬眾期待的國際計算機視覺大會 ICCV 2021 (International Conference on Computer Vision) 在線上如期舉行,受到全球計算機視覺領域研究者的廣泛關注。
今年阿里雲多媒體 AI 團隊(由阿里雲視頻雲和達摩院視覺團隊組成)參加了 MFR 口罩人物身份鑒別全球挑戰賽,並在總共5個賽道中,一舉拿下1個冠軍、1個亞軍和2個季軍,展現了我們在人物身份鑒別領域深厚的技術積澱和業界領先的技術優勢。

2. 競賽介紹

MFR口罩人物身份鑒別全球挑戰賽是由帝國理工學院、清華大學和InsightFace.AI聯合舉辦的一次全球範圍內的挑戰賽,主要為了解決新冠疫情期間佩戴口罩給人物身份鑒別算法帶來的挑戰。競賽從6月1日開始至10月11日結束,歷時4個多月,共吸引了來自全球近400支隊伍參賽,是目前為止人物身份鑒別領域規模最大、參與人數最多的權威賽事。據官方統計,此次競賽收到的總提交次數超過10000次,各支隊伍競爭異常激烈。

2.1 訓練數據集

此次競賽的訓練數據集只能使用官方提供的3個數據集,不允許使用其它額外數據集以及預訓練模型,以保證各算法對比的公平公正性。官方提供的3個數據集,分別是ms1m小規模數據集、glint360k中等規模數據集和webface260m大規模數據集,各數據集包含的人物ID數和圖片數如下表所示:

image.png

2.2 評測數據集

此次競賽的評測數據集包含的正負樣本對規模在萬億量級,是當前業界規模最大、包含信息最全的權威評測數據集。值得注意的是所有評測數據集均不對外開放,只提供接口在後台進行自動測評,避免算法過擬合測試數據集。
InsightFace賽道評測數據集的詳細統計信息如下表所示:

image.png

WebFace260M賽道評測數據集的詳細統計信息如下表所示:

image.png

2.3 評測指標

此次競賽的評測指標不僅有性能方面的指標,而且還包含特徵維度和推理時間的限制,因此更加貼近真實業務場景。詳細的評測指標如下表所示:

image.png

image.png

3. 解決方案

下面,我們將從數據、模型、損失函數等方面,對我們的解決方案進行逐一解構。

3.1 基於自學習的數據清洗

眾所周知,人物身份鑒別相關的訓練數據集中廣泛存在着噪聲數據,例如同一人物圖片分散到不同人物ID下、多個人物圖片混合在同一人物ID下,數據集中的噪聲會對識別模型的性能產生較大影響。針對上述問題,我們提出了基於自學習的數據清洗框架,如下圖所示:

image.png

首先,我們使用原始數據訓練初始模型M0,然後使用該模型進行特徵提取、ID合併、類間清洗和類內清洗等一系列操作。對於每個人物ID,我們使用DBSCAN聚類算法去計算中心特徵,然後使用中心特徵進行相似度檢索,這一步使用的高維向量特徵檢索引擎是達摩院自研的Proxima,它可以快速、精準地召回Doc中與Query記錄相似度最高的topK個結果。緊接着,我們使用清洗完成的數據集,訓練新的模型M1,然後重複數據清洗及新模型訓練過程,通過不斷進行迭代自學習方式,使得數據質量越來越高,模型性能也隨之越來越強。具體來看,類間清洗和類內清洗的示意圖如下圖所示:

image.png

值得注意的是,我們的清洗流程中先進行類間清洗、再進行類內清洗,與CAST[1]數據清洗框架不同,這樣在完成類間清洗後可以更新新的ID中心特徵,使得整個清洗過程更加完備,清洗效果也更好。為了驗證數據清洗對最終性能的影響,我們在ms1m數據集上做了一系列對比實驗,結果如下表所示:

image.png

表中的閾值指的是類內清洗的相似度閾值,可以看出當閾值設置過低(如0.05)時,噪聲沒有被清洗乾淨,因此性能表現不是最佳;而當閾值設置過高(如0.50)時,噪聲被清洗的同時難樣本也被清洗了,導致模型泛化能力變弱,在評測數據集上性能反而下降。因此選擇一個中間閾值0.25,既清洗了大量噪聲,又保留了困難樣本,在各項評測指標上均達到最佳性能。此外,我們還畫出了不同相似度閾值與剩餘圖片數的關係,如下圖所示:

image.png

3.2 戴口罩數據生成

為解決戴口罩數據不足的問題,一種可行的方案是在已有的無口罩圖像上繪製口罩。然而,目前大部分的繪製方案屬於位置貼圖式,這種方案生成的戴口罩圖像不夠真實且缺乏靈活性。因此,我們借鑒PRNet[2,3]的思路,採用一種圖像融合方案[4]來獲取更符合真實情況的戴口罩圖像,如下圖所示,

image.png

該方案的原理是將口罩圖像和原圖像通過3D重建分別生成UV Texture Map,然後藉助紋理空間合成戴口罩圖像。在數據生成過程中,我們使用了8種類型的口罩,意味着我們可在已有的數據集上對應生成8種不同風格的戴口罩圖像。基於UV映射的方案克服了傳統平面投影方式中原圖像和口罩圖像間的不理想銜接和變形等問題。此外,由於渲染過程的存在,戴口罩圖像可以獲得不同的渲染效果,比如調整口罩角度及光照效果等。生成的戴口罩圖像示例如下圖所示:

image.png

在生成戴口罩數據訓練模型的過程中,我們發現戴口罩數據的比例對模型性能有不同程度的影響。因此,我們將戴口罩數據佔比分別設置為5%、10%、15%、20%和25%,實驗結果如下表所示:

image.png

從上表中發現,當戴口罩數據比例為5%時,模型在MR-ALL評測集上的性能最高;當戴口罩數據比例調整至25%時,對Mask戴口罩評測集的性能提升明顯,但在MR-ALL上的性能下降明顯。這說明當混合戴口罩數據和正常數據進行訓練時,其比例是影響模型性能的重要參數。最終,我們選擇戴口罩數據比例為15%,在戴口罩和正常數據上的性能達到一個較好平衡。

3.3 基於NAS的骨幹網絡

不同骨幹網絡對特徵提取的能力差異較大,在人物身份鑒別領域,業界常用的基線骨幹網絡是在ArcFace[5]中提出的IR-100。在此次競賽中,我們採用達摩院提出的Zero-shot NAS (Zen-NAS[6]) 範式,在模型空間搜索具有更強表徵能力的骨幹網絡。Zen-NAS區別於傳統NAS方法,它使用Zen-Score代替搜索模型的性能評測分數,值得注意的是Zen-Score與模型最終的性能指標成正比關係,因此整個搜索過程非常高效。Zen-NAS的核心算法結構如下圖所示:

image.png

我們基於IR-SE基線骨幹網絡,使用Zen-NAS搜索3個模型結構相關的變量,分別是:Input層的通道數、Block層的通道數和不同Block層堆疊的次數,限制條件是搜索出的骨幹網絡滿足各賽道的推理時間約束。一個有趣的發現是:Zen-NAS搜索出的骨幹網絡,在ms1m小數據集賽道上的性能表現與IR-SE-100幾乎無差異,但在WebFace260M這樣的大數據集賽道,性能表現會明顯優於基線。原因可能是搜索空間增大後,NAS可搜索的範圍隨之增大,搜索到更強大模型的概率也隨之增加。

3.4 損失函數

此次競賽我們採用的基線損失函數為Curricular Loss[7],該損失函數在訓練過程中模擬課程學習的思想,按照樣本從易到難的順序進行訓練。然而,由於訓練數據集通常是極度不平衡的,熱門人物包含的圖片數多達數千張,而冷門人物包含的圖片數往往只有1張。為解決數據不均衡帶來的長尾問題,我們將Balanced Softmax Loss[8]的思想引入Curricular Loss中,提出一個新的損失函數:Balanced Curricular Loss,其表達式如下圖所示:

image.png

在ms1m賽道上,我們對比了Balanced Curricular Loss (BCL) 與原始Curricular Loss (CL) 的性能,結果如下表所示:

image.png

可以看出Balanced Curricular Loss相對於Curricular Loss,無論在Mask還是MR-ALL上的指標均有較大幅度的提升,充分證明了其有效性。

3.5 知識蒸餾

由於此次比賽對模型的推理時間有約束,模型超時會被直接取消成績。因此,我們採用知識蒸餾的方式,將大模型強大的表徵能力傳遞給小模型,然後使用小模型進行推理,以滿足推理時間的要求。此次競賽我們採用的知識蒸餾框架如下圖所示:

image.png

其中,蒸餾損失採用最簡單的L2 Loss,用以傳遞教師模型的特徵信息,同時學生模型使用Balanced Curricular Loss訓練,最終的損失函數是蒸餾損失與訓練損失的加權和。經過知識蒸餾後,學生模型在評測數據集上的部分指標,甚至超過了教師模型,同時推理時間大大縮短,在ms1m小數據集賽道的性能有較大提升。

3.6 模型和數據同時並行

WebFace260M大數據集賽道的訓練數據ID數量>200萬、總圖片數>4000萬,導致傳統的多機多卡數據並行訓練方式已難以容納完整的模型。Partial FC[9]採用將FC層均勻分散到不同GPU上,每個GPU負責計算存儲在自己顯存單元的sub FC層結果,最終通過所有GPU間的同步通信操作,得到近似的full FC層結果。Partial FC的示意圖如下所示:

image.png

採用Partial FC,可同時使用模型並行與數據並行,使得之前無法訓練的大模型可以正常訓練,另外可採用負樣本採樣的方式,進一步加大訓練的batch size,縮短模型訓練周期。

3.7 其它技巧

在整個競賽過程中,我們先後嘗試了不同數據增強、標籤重構及學習率改變等策略,其中有效的策略如下圖所示:

image.png

4. 競賽結果

此次競賽我們mind_ft隊在InsightFace和WebFace260M共5個賽道中獲得1個冠軍(WebFace260M SFR)、1個亞軍(InsightFace unconstrained)和2個季軍(WebFace260M Main和InsightFace ms1m)。其中,WebFace260M賽道官方排行榜的最終結果截圖如下所示:

image.png

在競賽結束之後的Workshop中,我們受邀在全球範圍內分享此次競賽的解決方案。此外,我們在此次競賽中投稿的論文,也被同步收錄於ICCV 2021 Workshop[10]。最後,展示一下我們在此次競賽中收穫的榮譽證書:

image.png

5. EssentialMC2介紹與開源

EssentialMC2,實體時空關係推理多媒體認知計算,是達摩院MinD-數智媒體組對於視頻理解技術的一個長期研究結果沉澱的核心算法架構。核心內容包括表徵學習MHRL、關係推理MECR2和開集學習MOSL3三大基礎模塊,三者分別對應從基礎表徵、關係推理和學習方法三個方面對視頻理解算法框架進行優化。基於這三大基礎模塊,我們總結了一套適合於大規模視頻理解算法研發訓練的代碼框架,並進行開源,開源工作中包含了組內近期發表的優秀論文和算法賽事結果。

image.png

essmc2是EssentialMC2配套的一整套適合大規模視頻理解算法研發訓練的深度學習訓練框架代碼包,開源的主要目標是希望提供大量可驗證的算法和預訓練模型,支持使用者以較低成本快速試錯,同時希望在視頻理解領域內建立一個有影響力的開源生態,吸引更多貢獻者參與項目建設。essmc2的主要設計思路是「配置即對象」,通過簡要明了的配置文件配合註冊器的設計模式(Registry),可以將眾多模型定義文件、優化器、數據集、預處理pipeline等參數以配置文件的形式快速構造出對象並使用,本質上貼合深度學習的日常使用中不斷調參不斷實驗的場景。同時通過一致性的視角實現單機和分佈式的無縫切換,使用者僅需定義一次,便可在單機單卡、單機多卡、分佈式環境下進行切換,同時實現簡單易用與高可移植性的特性。
目前essmc2的開源工作已經發佈了第一個可用版本,歡迎大家試用,後續我們會增加更多算法和預訓練模型。鏈接地址://github.com/alibaba/EssentialMC2

6. 產品落地

隨着互聯網內容的視頻化以及VR、元宇宙等應用的興起,非結構化視頻內容數量正在高速增長,如何對這些內容進行快速識別、準確理解,成為內容價值挖掘關鍵的一環。
人物是視頻中的重要內容,高精度的視頻人物身份鑒別技術,能夠快速提取視頻人物關鍵信息,實現人物片段剪輯、人物搜索等智能應用。另外,對於視頻的視覺、語音、文字多維度內容進行分析理解,識別人、事、物、場、標識等更豐富的視頻內容實體標籤,可形成視頻結構化信息,幫助更全面地提取視頻關鍵信息。
更進一步,結構化的實體標籤作為語義推理的基礎,通過多模態信息融合,幫助理解視頻核心內容,實現視頻內容高層語義分析,進而實現類目、主題理解。
阿里雲多媒體 AI 團隊的高準確率人物身份鑒別及視頻分析技術,已集成於EssentialMC2核心算法架構,並進行產品化輸出,支持對視頻、圖像的多維度內容進行分析理解並輸出結構化標籤(點擊進行體驗:Retina視頻雲多媒體 AI 體驗中心-智能標籤產品 //retina.aliyun.com/#/Label)。

image.png

多媒體AI產品

智能標籤產品通過對視頻中視覺、文字、語音、行為等信息進行綜合分析,結合多模態信息融合及對齊技術,實現高準確率內容識別,綜合視頻類目分析結果,輸出貼合視頻內容的多維度場景化標籤。

類目標籤:實現視頻內容高層語義分析,進而實現類目、主題的理解,視頻分類標籤,分為一級、二級和三級類目,實現媒資管理及個性化推薦應用。

實體標籤:視頻內容識別的實體標籤,維度包括視頻類目主題、影視綜漫IP、人物、行為事件、物品、場景、標識、畫面標籤,同時支持人物、IP的知識圖譜信息。其中,影視綜漫的IP搜索基於視頻指紋技術,將目標視頻與庫內的影視綜等資源進行指紋比對檢索,支持6萬餘部電影、電視劇、綜藝、動漫、音樂的IP識別,可分析識別出目標視頻內容中包含哪一部電影、電視劇等IP內容,幫助實現精準的個性化推薦、版權檢索等應用。基於優酷、豆瓣、百科等各類型數據,構建了涵蓋影視綜、音樂、人物、地標、物體的信息圖譜,對於視頻識別命中的實體標籤,支持輸出知識圖譜信息,可用於媒資關聯及相關推薦等應用。

關鍵詞標籤:支持視頻語音識別及視頻OCR文字識別,結合NLP技術融合分析語音及文字的文本內容,輸出與視頻主題內容相關的關鍵詞標籤,用於精細化內容匹配推薦。

image.png

完善的標籤體系、靈活的定製化能力

智能標籤產品綜合優酷、馬鈴薯、UC海外等平台的PGC、UGC視頻內容進行學習、訓練,提供最全面完善、高質量的視頻標籤體系。在提供通用的標籤類目體系外,支持開放多層面定製化的能力,支持人臉自註冊、自定義實體標籤等擴展功能;面向客戶特定標籤體系的業務場景,採用標籤映射、定製化訓練等方式,提供一對一的標籤定製服務,更有針對性地幫助客戶解決平台的視頻處理效率問題。

高品質人機協同服務

針對要求準確的業務場景,智能標籤產品支持引入人工交互判斷,形成高效、專業的人機協同平台服務,AI識別算法與人工相輔相成,提供面向個性化業務場景的精準視頻標籤。
人機協同體系具備先進的人機協同平台工具、專業的標註團隊,通過人員培訓、試運行、質檢、驗收環節等標準化的交付管理流程,確保數據標註質量,幫助快速實現高品質、低成本的標註數據服務。通過AI算法+人工的人機協同方式,提供人工標註服務作為AI算法的補充和修正,確保精準、高質量的服務輸出結果,實現業務效率和用戶體驗的提升。

image.png

體育行業和影視行業的視頻標籤識別

image.png

傳媒行業和電商行業的視頻標籤識別

以上能力均已集成到阿里雲視頻雲智能標籤產品,提供高品質的視頻分析及人機協同服務,歡迎大家了解及體驗試用(智能標籤產品 //retina.aliyun.com/#/Label),搭建更高效、智能化的視頻業務應用。

參考文獻:
[1] Zheng Zhu, et al. Webface260m: A benchmark unveilingthe power of million-scale deep face recognition. CVPR 2021.
[2] Yao Feng, et al. Joint 3d face reconstruction and dense alignment with position map regression network. ECCV, 2018.
[3] Jun Wang et al. Facex-zoo: A pytorch toolbox for face recognition. arxiv, abs/2101.04407, 2021.
[4] Jiankang Deng et al. Masked Face Recognition Challenge: The InsightFace Track Report. arXiv, abs/2108.08191, 2021.
[5] Jiankang Deng, et al. Arcface: Additive angular margin loss for deep face recognition. CVPR 2019.
[6] Ming Lin, et al. Zen-NAS: A Zero-Shot NAS for High-Performance Image Recognition. ICCV 2021.
[7] Yuge Huang et al. Curricularface: Adaptive curriculum learning loss for deep face recognition. CVPR 2020.
[8] Jiawei Ren et al. Balanced meta-softmax for long-tailed visual recognition. NeurIPS, 2020.
[9] Xiang An, et al. Partial fc: Training 10 million identities on a single machine. ICCV 2021.
[10] Tao Feng, et al. Towards Mask-robust Face Recognition. ICCV 2021.

「視頻雲技術」你最值得關注的音視頻技術公眾號,每周推送來自阿里雲一線的實踐技術文章,在這裡與音視頻領域一流工程師交流切磋。公眾號後台回復【技術】可加入阿里雲視頻雲產品技術交流群,和業內大咖一起探討音視頻技術,獲取更多行業最新信息。