SSII 2020 OS2 「限られたデータからの深層学習」
ドメイン適応の原理と応用
OMRON SINIC X / Ridge-i
牛久 祥孝
losnuevetoros
自己紹介
2014.4 博士(情報理工学)、東京大学
2014.4~2016.3 NTT CS研 研究員
2016.4~ 東京大学 講師 (原田・牛久研究室)
2016.9~ 産業技術総合研究所 協力研究員
2016.12~ 国立国語研究所 共同研究員
2018.4~ オムロンサイニックエックス株式会社
Principal Investigator
2019.1~ 株式会社Ridge-I CRO
[Ushiku+, ACMMM 2012]
[Ushiku+, ICCV 2015]
画像キャプション生成 主観的な感性表現を持つ
画像キャプション生成
動画の特定区間と
キャプションの相互検索
[Yamaguchi+, ICCV 2017]
A guy is skiing with no shirt on
and yellow snow pants.
A zebra standing in a field
with a tree in the dirty
background.
[Shin+, BMVC 2016]
A yellow train on the tracks
near a train station.
ドメイン適応 (Domain Adaptation)
• Source Domain:
教師付きデータ
• Target Domain:
認識させたいデータだが教師データが
– 全くない → Unsupervised Domain Adaptation
– 一部しかない → Semi-Supervised Domain Adaptation
本講演:
ドメイン適応の 1.原理 と 2.応用事例 を紹介
ビデオ
ゲーム
実世界
応用事例:物体検出と領域分割
• 物体検出
• 領域分割(=ピクセルごとの識別問題)
Source Target
TargetSource
1. ドメイン適応の原理
疑似ラベルを用いるアプローチ
疑似ラベルを用いたドメイン適応
1st: Sourceで学習 → Targetの簡単なサンプルに疑似ラベル付与
2nd~: Sourceと疑似ラベル付きTargetで学習 → 疑似ラベル追加
eight
nine
Asymmetric Tri-training for Domain Adaptation
[Saito+, ICML 2017]
p1
p2
pt
S+Tl
Tl
S : source samples
Tl : pseudo-labeled target samples
Input
X
F1
F2
Ft
ŷ : Pseudo-label for target sample
y : Label for source sample
F
S+Tl
F1 ,F2 : Labeling networks
Ft : Target specific network
F : Shared network
非対称な三叉学習
p1
p2
pt
S
S
S : source samples
Tl : pseudo-labeled target samples
Input
X
F1
F2
Ft
ŷ : Pseudo-label for target sample
y : Label for source sample
F
S
Sourceのデータを用いて
全てのネットワークを初期化
1. Sourceを用いた初期学習
p1
p2
TInput
X
F1
F2
F
T
F1 と F2 が同じ推定結果 & 事後確率が閾値以上
→疑似ラベルとして推定結果をTargetサンプルに付与
T: Target samples
2. Targetへの疑似ラベル付与
F1, F2 : Source と 疑似ラベル付きTarget
Ft: 疑似ラベル付きTarget
F : 全サンプル
で更新
p1
p2
pt
S+Tl
Tl
S : source samples
Tl : pseudo-labeled target samples
Input
X
F1
F2
Ft
ŷ : Pseudo-label for target sample
y : Label for source sample
F
S+Tl
3. 疑似ラベルが付いたTargetで学習
p1
p2
pt
S+Tl
Tl
S : source samples
Tl : pseudo-labeled target samples
Input
X
F1
F2
Ft
ŷ : Pseudo-label for target sample
y : Label for source sample
F
S+Tl
2nd ステップと 3rd ステップを
収束するまで繰り返す
3. 疑似ラベルが付いたTargetで学習
実験内容
• 数字のデータセット4種によるドメイン適応
– MNIST, SVHN, SYN DIGIT (人工画像)
• 道路標識データによるドメイン適応
– GTSRB (実画像), SYN SIGN (人口画像)
GTSRB SYN SIGNS
SYN DIGITSSVHN
MNISTMNIST-M
Targetドメインでの識別精度
• 当時の代表的な手法との比較
– BN: バッチ正規化
– Weight constraint: F1とF2が離れるように学習
Source MNIST MNIST SVHN SYNDIG SYN NUM
Method Target MN-M SVHN MNIST SVHN GTSRB
Source Only (w/o BN) 59.1 37.2 68.1 84.1 79.2
Source Only (with BN) 57.1 34.9 70.1 85.5 75.7
DANN [Ganin et al., 2014] 81.5 35.7 71.1 90.3 88.7
MMD [Long et al., 2015 ICML] 76.9 - 71.1 88.0 91.1
DSN [Bousmalis et al, 2016 NIPS] 83.2 - 82.7 91.2 93.1
K-NN Labeling [Sener et al., 2016 NIPS] 86.7 40.3 78.8 - -
Ours (w/o BN) 85.3 39.8 79.8 93.1 96.2
Ours (w/o Weight constraint) 94.2 49.7 86.0 92.4 94.0
Ours 94.0 52.8 86.8 92.9 96.2
1. ドメイン適応の原理
生成モデルを用いるアプローチ
生成モデルを用いるアプローチ
• ドメインのズレを敵対的学習で克服する
– 商品の背景
– 構図のバリエーション
– 照明条件
– …
• 物体は識別できるけど
• どちらのドメインの画像かはわからない
ような特徴量を抽出できればよい
“特徴量の生成”
Deep Domain Confusion (DDC)
• Sourceドメインの識別エラーを最小化
• ドメイン間の分布の重なりを最大化
[Tzeng+, arXiv 2014]
DDCのネットワークアーキテクチャ
• Classification LossとDomain Lossの最適化
• Domain Loss:
– Maximum Mean Discrepancy (MMD)
– Classification Lossとの重みづけ
和を最適化
Source の
特徴量平均
Target の
特徴量平均
Office データセットによる実験
• 共通する商品かつ撮影条件の
異なる3つのドメイン
• 提案手法:
Domain Confusionにより性能が大幅に向上
定性的な結果:特徴量の分布
Adaptation前
同じ「モニター」でも
ドメイン(緑/青)によって
分布が異なる
定性的な結果:特徴量の分布
Adaptation後
ドメインによらず「モニター」の分布が一致!
DANNネットワークアーキテクチャ
• ドメインに依らない特徴量を抽出したい𝐺𝐺𝑓𝑓
• クラス識別をしたい𝐺𝐺𝑦𝑦
• ドメイン識別をしたい𝐺𝐺𝑑𝑑
[Ganin+Lempitsky, ICML 2015]
敵対的学習とその
• ドメイン識別ロス𝐿𝐿𝑑𝑑をめぐる敵対的学習
– ドメイン識別をしたい𝐺𝐺𝑑𝑑は𝐿𝐿𝑑𝑑を最小化したい
– ドメインに依らない特徴量を抽出したい𝐺𝐺𝑓𝑓は𝐿𝐿𝑑𝑑
を最大化したい
• 問題点: 𝐿𝐿𝑑𝑑の勾配に対して
– 𝐺𝐺𝑑𝑑は勾配降下したい一方で𝐺𝐺𝑓𝑓は勾配上昇したい
– 𝐺𝐺𝑑𝑑と𝐺𝐺𝑓𝑓の接続関係から勾配を逆向きに進めない
Gradient Reversal Layerの導入
陽な関数の形では書けないけど、とにかく
• 順伝搬の時は何もせず
• 逆伝搬の時は勾配の符号を反転する
レイヤーを導入する
続く2モジュールで同時に降下/上昇できる
実験結果
• Office データセット
• 文字データセット
特徴量分布の変化
SYN NUMBERS(赤点)
→SVHN(青点)
Adapt
Adversarial Discriminative Domain Adaptation
DANNと同様にドメイン識別器を敵対的学習
[Tzeng+, CVPR 2017]
DANNに対する問題意識
• 共通のネットワークで
2つのドメインから特徴
抽出するのは
✓パラメータ数を削減できるのが良い
×異なるドメインの特徴量抽出を同時にやるのは
無理がある
• Gradient Reversal Layerは
✓GANの目的関数に忠実ではある
×学習初期に勾配を消失させることで
Discriminatorの更新がとまりやすい
ADDAでは
• それぞれのドメインで異なるCNNにより特
徴量を抽出
Source ドメインのCNNはPre-trainingしておく
• Gradient ReversalではなくGANで一般的な
inverted labelに対する損失を用いる
(𝑀𝑀𝑡𝑡:Target 特徴量 𝐷𝐷: ドメイン識別)
実験結果
Officeと文字データセットでState-of-the-art
2. ドメイン適応の応用
物体検出
Strong-Weak Distribution Alignment
• 前段で局所特徴分布の強い一致を図り
• 後段で大域特徴分布の弱い一致を図る
[Saito+, CVPR 2019]
Strong-Weak Distribution Alignment
Faster RCNNに対して強弱の分布一致を実現
[Saito+, CVPR 2019]
分布
実験結果
• 左:Pascal VOC → Clipart / WaterColor
– 実世界の画像がSource
– クリップアートやイラストがTarget
• 右:Cityscape → FoggyCityscape
– 実世界の車載画像から
人工的に霧を追加した車載画像に適応
自己学習と敵対的背景正則化
SSDと疑似ラベルを利用したドメイン適応
[Kim+, ICCV 2019]
自己学習と敵対的背景正則化
Targetに対して物体領域を提案
• 疑似ラベルが付与されたもの→正例
• 低い損失のみの負例→負例
[Kim+, ICCV 2019]
実験結果
2. ドメイン適応の応用
領域分割
Maximum Classifier Discrepancy (MCD)
ここまでのドメインを一致させようと
している手法では…
• ドメイン全体の分布を一致させても
クラスごとの分布は一致しないのでは
[Saito+, CVPR 2018]
Maximum Classifier Discrepancy (MCD)
ここまでのドメインを一致させようと
している手法では…
• ドメイン全体の分布を一致させても
クラスごとの分布は一致しないのでは
• ドメインの一致ではなくクラス識別面の一致では
[Saito+, CVPR 2018]
Maximum Classifier Discrepancy (MCD)
0. Source(点線)とTarget(実線)で2クラス識別
Maximum Classifier Discrepancy (MCD)
1. 2クラス識別器を2つ用意する
Sourceで訓練する識別面は
・点線部分は横切らない
・実線部分は横切るかもしれない
この斜線部分(Discrepancy Region)
をなくしたい
Maximum Classifier Discrepancy (MCD)
2. 出来るだけ多くのDiscrepancyをあぶりだす
識別面のみ更新
Maximum Classifier Discrepancy (MCD)
3. Discrepancyが減るように特徴量を学習
特徴量抽出のみ更新
Maximum Classifier Discrepancy (MCD)
収束するまで 2. と 3. を繰り返す
実験結果
文字データセットでState-of-the-art
実験結果
画像のセマンティックセグメンテーション
深度推定を活用したドメイン適応
同じ物体ラベルのピクセル=同じ深度では
[Vu+, ICCV 2019]
深度を活用すると…
物体の領域の欠損が改善される!
深度推定を活用したドメイン適応
入力画像から深度と領域分割を同時推定
教師あり学習:深度推定と領域分割をSourceで学習
教師なし学習:SourceとTargetを敵対的に弁別
[Vu+, ICCV 2019]
実験結果
• 著者らの前バージョンAdvEnt [Vu+, CVPR 2019] より改善
AdvEnt: SourceとTargetの領域分割結果だけを敵対的に弁別
まとめ
• 教師なしドメイン適応
– Source Domain: 教師付きデータだが対象でない
– Target Domain: 認識させたいデータだが教師
データがない
• ドメイン適応の原理
– 疑似ラベルを用いるアプローチ
– 生成モデルを用いるアプローチ
• ドメイン適応の応用
– 物体検出
– 領域分割(ピクセルごとの識別)
ドメイン適応 (Domain Adaptation)
• Source Domain:
教師付きデータ
• Target Domain:
認識させたいデータだが教師データが
– 全くない → Unsupervised Domain Adaptation
– 一部しかない → Semi-Supervised Domain Adaptation
ビデオ
ゲーム
実世界

ドメイン適応の原理と応用