最新AI論文をキャッチアップ

蒸留を利用したマスクに堅牢な顔認識モデル「MaskInv」の実力は?

蒸留を利用したマスクに堅牢な顔認識モデル「MaskInv」の実力は?

Face Recognition

3つの要点
✔️ 知識蒸留で「Masked」と「Non-Masked」の顔画像が近しくなるようにEmbedding Layerを学習、またElasticFace-Arcを採用
✔️ 「Masked vs Masked」「Masked vs Non-Masked」の両方ケースにおいてMFRC-21 ChallengeのSOTAを達成、MFR2に対しても精度向上
✔️ 「Non-Masked vs Non-Masked」に対しても、従来の顔認識モデルと同等の性能を達成

Mask-invariant Face Recognition through Template-level Knowledge Distillation
written by Marco HuberFadi BoutrosFlorian KirchbuchnerNaser Damer
(Submitted on 10 Dec 2021)
Comments: Accepted at the 16th IEEE International Conference on Automatic Face and Gesture Recognition, FG 2021

Subjects: Computer Vision and Pattern Recognition (cs.CV)

code:  

本記事で使用している画像は論文中のもの、紹介スライドのもの、またはそれを参考に作成したものを使用しております。  

概要

2019年頃から顔認識技術が本格的に普及し始めました。海外では店舗決済から犯罪捜査まで幅広く利用されています。日本でも空港の入出国ゲートなどで利用されるようになっています。

最近はコロナウイルスの感染拡大に伴って、商業施設や宿泊施設、病院などあらゆる施設で、体温チェックのために顔認識機能が搭載されたデバイスが導入されているため、顔認識デバイスを目にする機会は増えており、身近になっています。

また、全国各地の市区町村や公共交通機関、商業施設などで顔認識を活用した実証実験が実施されています。富山市富士五湖赤井川村国際リゾート大阪道頓堀商店街JR空港ファストフード店などあらゆる取り組みが行われています。いずれの取り組みも、チケットや鍵、財布などが不要で、手ぶらで観光などができるため、顔認識の有用性を実感でき、高い満足度が得られているそうです。

このような事例が増えてきており、顔認識の普及は着実に進んでいます。皆さんも顔認識を何気なく利用する日が近いかもしれません。

しかし、2019年も終わりに近づき、コロナウイルスが世界中で猛威を振るったことをきっかけに、顔認識に新たな課題が出てきました。それが「マスク」です。

アメリカ国立標準技術研究所(NIST)や世界中の研究機関ですでに検証されているように、従来の顔認証システムをマスクを着用した人に利用すると、著しく精度が低下することが分かっています。このため、顔認識の普及と同時に、今世界ではマスク着用時の顔認識技術が一つの研究課題になっています。

この論文では、「知識蒸留」と「ElasticFace-Arc」を応用して、マスクの着用に関わらず、高い性能を示す「MaskInv」という手法を提案しています。

MaskInvとは?

MaskInv(下図)は、知識蒸留を活用してEmbedding Layerを学習させています。Teacher Networkにマスク無の顔画像を入力し、Student Networkでは、マスク有とマスク無の顔画像を入力しながら学習させます。この学習によって、マスク有とマスク無のEmbeddingが近しくなるように学習させていきます。

また、知識蒸留と同時に、Student Networkでは、マスク有とマスク無が同一人物に分類されるように、Classification Layerを学習させています。この時、顔認識モデルとしてSOTAを達成したElasticFaceで導入されている損失関数「ElasticFace-Arc」を利用しています。

以上の2つの学習を同時に進めることで、マスク有とマスク無を高精度で同一人物と分類する顔認識モデルを構築しています。

Teacher Networkは、SOTAを達成したElasticFaceを元に構築しています。MS1MV2(データセット)をElasticEace-Arc(損失関数)で事前学習させたResNet-100ベースの顔認識モデルを使用しています。なお、こちらはElasticFaceの著者が公開しているモデルです。Student NetworkもResNet-100ベースのアーキテクチャを採用しており、MS1MV2(データセット)で学習されます。ResNet-100は、近年、SOTAを達成している顔認識モデルでよく利用されているアーキテクチャです。


Student Networkに入力するマスク有の顔画像は、事前に生成したマスクを合成して作成したものです。顔の特徴点を使ってマスクを合成しており、色や形はランダムで生成されています。


MaskInvは、これまで見てきたように、Teacher NetworkによるEmbedding Layerの知識蒸留とElasticFace-Arcを利用したClassification Layerを同時に学習させています。そのため、MaskInvの損失関数は、知識蒸留による学習に対するLKDとElasticFace-Arcによる学習に対するLElasticArcの和として定義されています。

ElasticFace-Arcは、他の高精度を達成している顔認識モデルで導入されている損失関数において固定されているマージンの制約を緩和した損失関数です。そのため、より柔軟にembeddingを分類ができるようになります(下図、ElasticFace: Elastic Margin Loss for Deep Face Recognitionから引用)。

LElasticArcは以下の式で表されます。

また、LKDは以下の式で表されます。Teacher NetworkとStudent NetworkのEmbeddingに対して適用されており、マスクの着用によって引き起こされるEmbeddingのズレを最小限に抑えるように設計されています。

性能評価

性能評価では、マスク有の顔画像が含まれたデータセットである「MFRC-2」「MFR2」を使用しています。また、顔認識モデルの性能評価で一般的に使用されるデータセットである「LFW」「CFP-FP」「AgeDB-30」「CALFW」「CPLFW」を使用しています。これらのデータセットはマスク有の顔画像を含んでいないため、生成したマスクを合成して、マスク有の顔画像を用意しています。

また、評価対象のモデルは6つ用意されています。近年、SOTAを達成した(1)ArcFace
(2)MagFace、Teacher Networkとして利用した(3)ElasticFace-Arc(ベースライン)、ベースラインに対して知識蒸留を導入し、Ltotalにおいてλ=0とし、知識蒸留の最適化を無くした(4)ElasticFace-Arc-Aug、Ltotalにおいてλの値を小さくし、知識蒸留による最適化を弱めた(5)MaskInv-LG、Ltotalにおいてλの値を大きくし、知識蒸留による最適化を強めた(6)MaskInv-HGが比較検証されています。

下表は、MFRC-21を用いて、マスク有 vs マスク無の画像に対して、1:1の顔認識性能を評価した結果です。FMR1000は、FMR(False Match Rate=誤他人受入率)が0.1%におけるFNMR(False non-Match Rate=誤本人拒否率)を表しています。FMR100は、FMR(False Match Rate=誤他人受入率)が1.0%におけるFNMR(False non-Match Rate=誤本人拒否率)です。また、FDRはFisher Discriminant Ratioを表しています。特に、FMR1000は入出国の自動化の要件にもなっており、高いセキュリティ基準になっています。


最も高い基準であるFMR1000について評価性能を見ていくと、知識蒸留を適用したモデル(MaskInv-LG、MaskInv-HG)が、ElasticFace-Arc(ベースライン)と比較して性能が改善していることがわかります。つまり、知識蒸留がマスク有の顔認識性能を改善していることがわかります。

下表は、MFRC-21を用いて、マスク有 vs マスク有の画像に対して、1:1の顔認識性能を評価した結果です。こちらも同様に知識蒸留がマスク有の顔認識性能を改善していることがわかります。

 

下表は、MFR2を用いて、マスク有 vs マスク有の画像に対して、1:1の顔認識性能を評価した結果です。FAR2000は、FAR(False Acceptance Rate=他人受入率)が0.2%におけるTPR(True Positive Rate)を表しています。

ここではFAR2000において、MaskInv-LGは83.25%から91.98%に性能が度向上しており、MaskInv-HGは83.25%から92.21%に性能改善しています。MaskInv-HGが、ElasticFace-Arc(ベースライン)とMaskInv-LGモデルよりも優れた性能を示していることがわかります。

また、以上の表から、マスク無の顔認識モデルでSOTAを達成したMagFace、Arcfaceベースのモデルは、マスク有のデータセットであるMFRC-21とMFR2に対しては、性能がやや劣っており、マスク有の顔認識に対して、調整する必要があるとわかります。

下表は顔認識モデルの性能評価でよく使用されるデータセット
「LFW」「CFP-FP」「AgeDB-30」「CALFW」「CPLFW」に対するAccuracy(%)です。ここでは、3つのケースに対して性能評価をしています。

1つ目はマスク無のままのデータセットで、
マスク無 vs マスク無(No Masks)の性能評価をしています。2つ目は各ペアの一方の画像にマスクを合成したデータセットで、マスク有 vs マスク無(Masked vs Non-Masked)の性能評価をしています。3つ目は各ペアの両方の画像にマスクを合成したデータセットで、マスク vs マスク(Masked vs Masked)の性能評価をしています。

 

上表から、3つのモデル(ours)のすべてが、マスク有よりもマスク無の顔認識(1:1)に優れており、マスク有の場合は、従来の顔認識モデルよりも優れた性能であることがわかります。

MaskInv-LGとMaskInv-HGはデータセットによってAccuracyが上下していますが、全体的にElasticFace-Arc(ベースライン)とElasticFace-Arc-Augよりも高いAccuracyを示しており、知識蒸留の最適化を導入することでAccucacyが改善していると考えられます。

ただし、
マスク有 vs マスク無(Masked vs Non-Masked)に対して、マスク有 vs マスク(Masked vs Masked)では、ElasticFace-Arc(ベースライン)やElasticFace-Arc-AugとのAccuracyの差が小さくなっています。

これは、MaskInvが、知識蒸留を使って、マスク
マスク無で近しいEmbeddingが得られるように学習させることを目的としているためです。マスク有 vs マスク無(Masked vs Non-Masked)は知識蒸留の効果を直接的に受けることができると考えられますが、マスク有 vs マスク(Masked vs Masked)では、マスク有の間の類似性のみを必要とするため、MaskInvの知識蒸留の効果が少なくなると考えられます。

また、
マスク有のケースで、MagFace、ArcFace、ElasticFace-Arc(ベースライン)の顔認識の性能が相対的に低くなっていることから、やはり、マスク有に最適化・調整したモデルの必要性を示していると言えます。

まとめ

以上の結果から、MaskInvは知識蒸留によってマスク有とマスク無の顔画像に対して、近しいEmbeddingを学習し、精度を改善することがわかります。まその学習プロセスから、特に、マスク有 vs マスク無(Masked vs Non-Masked)において有用であることがわかります。これはパスポートに登録されている顔画像と本人の顔を比較する入国審査など、実用的な場面での利用が期待されます。

さらに、顔の向きの変化(Cross-Pose)や経年変化(Cross-Age)などにも有効であることがわかります。汎用性の高い顔認識モデルの構築にも応用できる可能性があります。

また、マスク有の顔認識においては、従来のマスクの着用を想定していない顔認識モデルの性能が、マスク有に調整された顔認識モデルよりも劣っていることがわかります。これはマスク有の条件下で高い精度を得るためには、対応する最適化や調整が必要であることを示しているといえます。


2022年4月においても依然としてコロナウイルスが蔓延しており、収束の目処が立っていません。今後も各所でマスクを着用する場面が予想されます。2022年3月15には、Appleもマスク着用のまま顔認証ができるようになりました。今後の顔認証サービスには、欠かせない機能になると考えられます。

そして、この論文で提案しているMaskInvの特徴量学習は、マスクの有無に限らず、顔の一部が遮蔽されるような状況にも役立つ可能性があり、幅広い適用が可能であり、汎用性が高い手法と考えられます。

Takumu avatar
インターネット広告企業(DSP、DMP etc)や機械学習スタートアップで、プロジェクトマネージャー/プロダクトマネージャー、リサーチャーとして働き、現在はIT企業で新規事業のプロダクトマネージャーをしています。データや機械学習を活用したサービス企画や、機械学習・数学関連のセミナー講師なども行っています。

記事の内容等について改善箇所などございましたら、
お問い合わせフォームよりAI-SCHOLAR編集部の方にご連絡を頂けますと幸いです。
どうぞよろしくお願いします。

お問い合わせする