199 Views
December 21, 18
スライド概要
2018/12/21
Deep Learning JP:
http://deeplearning.jp/seminar-2/
DL輪読会資料
DEEP LEARNING JP "Deep Face Recognition: A Survey" Mei Wang, Weihong Deng [DL Papers] Presentater: Koichiro Tamura, Matsuo Lab. M2 http://deeplearning.jp/ 1
書誌情報 • タイトル: Deep Face Recognition: A Survey • https://arxiv.org/abs/1804.06655 • Submitted on 18 Apr 2018 (v1), last revised 28 Sep 2018 (this version, v7) • 著者: Mei Wang, Weihong Deng • 顔認識にまつわる研究をまとめたサーベイ論文 • DLによるFace Recognition(FR)のAlgorithmsおよびloss functionの研究の発展に関する体系的な整理 • Face Processingにおいて,「one-to-many augmentation」と「many-to-one normalization」の研究における 体系的整理 • データセットとおよび訓練・評価のプロトコルの整理 • Anti-spoofingをはじめとした12の課題の提示
目次 *論文と構成を少し変えています 1. Background 2. Components and Definition 3. Network architecture & Loss function 4. Face processing 5. Dataset 6. Training & Evaluation Protocol 7. Problems
Background • [社会背景]Face Recognition(FR)のタスクは,軍事や金融,セキュリティ,エンタメなどの分野での 応用が期待されいる • Ex1: 警備や保安の自動化 1. 人件費に課題を抱えている 2. 監視カメラ(スマホ&自動運転でセンサが増加されると見込まれる)の普及 • Ex2: 決済などの金融における本人確認 • キャッシュレス化のトレンド • 本人確認書類の時間・金銭的コストの問題 • [技術背景]Deep Learningの登場によって,飛躍的に精度が向上
Components and Definition • FRの全体のシステムとして, 1. Face Detection => 本論文の範囲外(Deep Learning for Understanding Faces: Machines May Be Just as Good, or Better, than Humans ) 2. Face Alignment => 本論文の範囲外(Deep Learning for Understanding Faces: Machines May Be Just as Good, or Better, than Humans) 3. Deep Face Recognition • FRのタスクは,大きく以下の2つに分類 1. Face Verification: 1対1の類似度判定タスク 2. Face identification: 1=>多の類似度判定タスク • データは,以下の2つに分類 1. Gallery: 既知の(顔)画像 2. Probe: 未知の(顔)画像 • Face identificationも • Closed-set identification: Probe ∈ Gallery • Open-set identification: Probe ∉ Gallery
Components and Definition
Network architecture & Loss function • FRは,実世界への適用を考えると,とても細かくかつ超大規模の分類タスクである.全ての顔(個 人)のデータをあらかじめgalleryとして保持することが理想的であるが,全く現実的でないため, 特にアカデミック界隈ではLoss FunctionとDeep featuresを研究することでこれらの課題を解こうと してきた • FacebookやGoogleなどのInternet Giantsは,プラットフォームで溜まった個人の写真と,豊富なGPUリ ソースを用いてdeep FRのシステムでは10^6~10^7ほどのIDをさばけるが,普通は無理 • 中国SenseTimeでは10億件規模の顔画像を記録したデータベースを持っているが,他国では難しそう
Network architecture & Loss function 1. Network Architecture 2. Loss function 3. Face Matching by deep features
Network architecture & Loss function 1. Network Architecture 2. Loss function 3. Face Matching by deep features
Network Architecture 1. Backbone network 1. 2. 3. 2. Mainstream architectures: 基本的なCNN algorithm Special architectures: FR特化のnetwork Joint alignment-representation network: Face Detectionから全てend-to-endで行ってしまおうというもの Multiple network: タスクやバッチに対して,複数のnetworkを用いることで精度を上げるもの
Mainstream Architectures 時系列 2015 技 術 粒 度 2016 2017 DenseNet 2018 進化 DPN (2016-08-25) ネットワーク アーキテクチャ 利用可能 Xception Module モジュール 提案 Inception-v1 Module Residual-Attention Network (2017-04-23) (2016-10-07) v2 v3 v4 利用可能 (2014-09-17) Residual Module 進化 (2015-12-10) モジュール アーキテクチャ (2017-07-06) 改善 ResNeXt Module (2016-11-16) Pre-act ResNet Pryamid Net (2016-03-16) (2016-10-10) 利用可能 提案 SENet 利用可能 (2017-09-05) Shake Drop (2018-02-15)
Mainstream Architectures 引用: https://www.slideshare.net/ren4yu/ss-84282514?from_action=save
Mainstream Architectures • 結局何が良いのか? • https://www.slideshare.net/DeepLearningJP2016/dlsqueezeandexcitation-networks で発表した時 • ResNetを基本とする • Residual module: ShakeDropを正則化として採用 • 正則化: 通常の正則化に加えて,cutoutも導入 • SENetを導入 • Attention-Moduleなどの、モジュールの導入設計をタスクに応じて検討
Special architectures, Joint alignment-representation network • FRのための特別なarchitecturesも提案されている • Light CNN: max-feature-map(MFM, maxoutという活性化関数自体を学習する手法をfully connected layerに導 入したもの)を用いている • A Light CNN for Deep Face Representation with Noisy Labels • Binary CNN • One-to- many face recognition with bilinear cnns • Trunk CNN • Face recognition with contrastive convolution • Pairwise relational network(PRN) • Pairwise relational networks for face recognition • Conditional CNN(c-CNN) • Conditional convolutional neural network for modality-aware face recognition • FRにおいて,Face Detectionから何から何までend-to-endでやってしまうという研究も存在 • Joint registration and representation learning for unconstrained face identification
Multiple network • 複数のnetworkを用いることによって精度を上げる(アンサンブル学習みたいなもの)試みや研究も なされている 1. データのパッチ(前処理やdata augmentationによって種類が異なるもの)に対してnetworkを複数用いる 2. 画像のpose(向きなど)に対して,networkを複数用いる • 正面を向いていない(0%)画像,正面をちょっと向いている(40%) 画像,正面を向いている(75%)画像 3. タスクごとに対してnetworkを複数用いる • 性別判定 • 感情判定 • 年齢判定
Network architecture & Loss function 1. Network Architecture 2. Loss function 3. Face Matching by deep features
Loss Function softmax Eucidiean Angular cosine variation softmax • • 特定のimage(Anchor)に対して,任意の組み 合わせ「対応するimage(Positive)と,その 他の画像(Negative)」において,Anchorは positiveの方が近いということを保証した い サンプリングによって学習が不安定だった • • 平均との距離で計算 GPU memoryがネッ ク • 正規化およびAngular/Cosine 距離の導入による誤差関数の改善 L-softmaxの例
Loss Function **Sortmax関数を用いる時,Xのラベルが1 の時, 𝑊1 𝑥は 𝑊2 𝑥よりも大きくなってい る必要がある
Network architecture & Loss function 1. Network Architecture 2. Loss function 3. Face Matching by deep features
Face Matching by deep features • 推論時には,一般的な分類タスクと同様にCOS距離やL2距離が用いられる • Cos距離やl2距離に基づいて、閾値判定や近傍方を用いる • FRにおけるタスクとして,以下のような手法も用いられることがある • • • • Metric Learning(距離学習)を用いて,判定する方法 複数のモジュールを用いて,多数決(2017年の challenge2 of MS-celeb 1Mで優勝) 局所的な部分の特徴も追加した手法 Top-kを推論したのち,kこの中で再びランキングをつけ直す手法 • また,学習データセットとtestデータセットの分布の違い(画角,民族性,用いるセンサなど)を考 慮し,転移学習なども適用されることがある
Face Processing • 画像の特徴量を獲得するarchitectureの前に,processingが必要 1. one-to-many augmentation: 単一の画像からポーズ変動の多くのパッチまたは画像を生成する(学習時) • 学習データセットを増やす • Testデータセットにおけるgalleryを増やす 2. many-to-one normalization: 複数の正面を向いていない画像から,正規化された1つの画像を再現する(推 論時) ここ!
Face Processing • 画像の特徴量を獲得するarchitectureの前に,processingが必要 1. one-to-many augmentation: 単一の画像からポーズ変動の多くのパッチまたは画像を生成する(学習時) • 学習データセットを増やす • Testデータセットにおけるgalleryを増やす 2. many-to-one normalization: 複数の正面を向いていない画像から,正規化された1つの画像を再現する(推 論時) ここ!
one-to-many augmentation 1. Data augmentation: 一般的なaugmentationの手法 2. 3D model: 2D -> 3D -> 2Dと変換・生成する手法 3. CNN model: CNNで2Dを変換する手法 4. GAN: GANで生成する手法 • Dual-Agent GANs for Photorealistic and Identity Preserving Profile Face Synthesis • https://papers.nips.cc/paper/6612-dual-agent-gans-for-photorealistic-and-identity-preserving-profile-facesynthesis • NIPS2017, NIST IJB-A 2017 FR competitionsで優勝 • generatorで合成画像生成,auto-encoderを用いたdiscriminatorでidentityの判別を行う.refineされた生成 画像と本物画像との差を縮めていく • 合成画像とそれをrefineした画像とで顔の角度を一定にするloss • 個人のidentityを保持するloss • adversarial lossに境界平衡正則化項が追加
Face Processing • 画像の特徴量を獲得するarchitectureの前に,processingが必要 1. one-to-many augmentation: 単一の画像からポーズ変動の多くのパッチまたは画像を生成する(学習時) • 学習データセットを増やす • Testデータセットにおけるgalleryを増やす 2. many-to-one normalization: 複数の正面を向いていない画像から,正規化された1つの画像を再現する(推 論時) ここ!
many-to-one normalization 1. SAE: stacked auto encoderを用いて正規化 2. CNN: CNNで画像特徴量を獲得し,正規化(正面を向いている画像)を生成 3. GAN: a two-pathway generative adversarial network(TP-GAN)を用いて生成 • • • • ICCV2017 https://arxiv.org/abs/1704.04086 対称性を表すloss 個性を保持していることを表すloss
Dataset • 個人の顔のデータは,企業独自のデータになりがちだが,そうした課題を乗り越えて研究におけ るデータセットが設計されてきた
Dataset • 主たるデータセットは以下の通り 1. VGGface2 • 対象ユーザー数は少なめだが,1ユーザーに対するデータ数・情報が多い • それゆえ,写り方や年齢,poseなどにの変動に対するタスク設計や研究に用いられることが多い 2. MS-Celeb-1M • 1ユーザーに対する画像は限定的だが,非常に大きなデータセット 3. Megaface • ユーザーに対する画像は限定的だが,非常に大きなデータセット • まずMS-Celeb-1MおよびMegafaceで体系的に学習を行い,その後VGGface2でチューニングすることが良 いとされている
Dataset(training)
Dataset(test)
Datasetとノイズ/バイアスについて • 各データセットには,一定のノイズやバイアスが存在している 1. 各データセットは部分的な分布のみしかカバーされていない 2. ほとんどのデータセットは,セレブの画像やフォーマルな画像が多い • Megafaceはdaily lifeのデータセットである
Training & Evaluation Protocol
Problems • 現在のFRの研究や実用では,以下のような課題がある
Problems 1. Cross-Pose Face Recognition 2. Cross-Age Face Recognition • 正面を向いた画像が少ない • One-to-many normalizationなどで克服を試みる • 認証に用いるのに,経年変化するという決定的な課題 • 年齢を追加 • 年齢で条件付けた画像をGANで生成 3. Makeup Face Recognition 4. NIR-VIS Face Recognition • メイクすると誰か分からなくなる問題(汎用課題) • ノーメイクの画像を生成する手法などが提案 • くらいシーンでのFRの問題 5. Low-Resolution Face Recognition 6. Photo-Sketch Face Recognition • 画質の問題
Problems 7. Low-Shot Face Recognition 8. Set/Template-Based Face Recognition • 実用では,とても少ないデータセット(1枚の場合も)で特定する必要がある場合も • Probe/gallery共にデータのセット(単一画像でない)である場合 9. Video Face Recognition • VideoでFRを行う必要がある場合 10. 3D Face Recognition • 3DでFRすることができる手法はまだ少ない 11. Partial Face Recognition • 部分的な写りこみだと難しい 12. Face Anti-spoofing • Print attack, replay attach, 3dマスクなどの学習に対する攻撃は驚異 13. Face Recognition for Mobile Devices • モバイルでFRできるかどうか
参考文献 • 畳み込みニューラルネットワークの研究動向 • https://www.slideshare.net/ren4yu/ss-84282514 • [DL輪読会]Squeeze-and-Excitation Networks • https://www.slideshare.net/DeepLearningJP2016/dlsqueezeandexcitation-networks • Triplet Lossによる Person Re-identification • https://www.slideshare.net/KoheiNishino/triplet-loss-person-reidentification • CVPR 2018に44本の論文が採択 • https://www.sensetime.jp/single-post/2018/05/15/CVPR2018%E3%81%AB44%E6%9C%AC%E3%81%AE%E8%AB%96%E6%96%87%E3%81%8C%E6%8E%A1%E6%8A%9E • 数式で書き下す Maxout Networks • http://blog.yusugomori.com/post/133257383300/%E6%95%B0%E5%BC%8F%E3%81%A7%E6%9B%B8%E3%81%8D %E4%B8%8B%E3%81%99-maxout-networks • 同じか否かを判定するための距離学習(Metric Learning) • https://qiita.com/tancoro/items/8d3438cab574a02319cc • 論文まとめ:Dual-Agent GANs for Photorealistic and Identity Preserving Profile Face Synthesis • https://qiita.com/masataka46/items/4f7e4a3d1036de55affd