More Related Content Similar to Learning Semantic Representations for Unsupervised Domain Adaptation 論文紹介 (20) Learning Semantic Representations for Unsupervised Domain Adaptation 論文紹介2. 自己紹介
髙木 士 (Tsukasa Takagi)
経歴
~2016/03 大阪大学 大学院電気電子情報工学専攻 修士課程
2016/04~ キヤノン株式会社
画像認識・物体検出・Windows デスクトップアプリ
Twitter: @__t2kasa__
Blog: http://t2kasa.sub.jp/
GitHub: https://t2kasa.github.io/ 最近はブログよりもこちらで書いてます
3. 背景:Domain Adaptation (DA)
学習データとテストデータの分布が
異なる場合がある
学習データのドメイン:ソース𝒮
テストデータのドメイン:ターゲット𝒯
ドメインの違いは性能低下の要因になる
ドメインが異なる要因
天候の違い:晴れ・曇り・雨・霧
照明条件:屋内・屋外
シミュレーションとリアル
カメラの種類
Office-31 Dataset
4. Domain Adaptationの問題設定 (1/2)
𝑝 𝒮 𝑥, 𝑦 = 𝑝 𝒯 𝑥, 𝑦
学習データ テストデータ
一般的な機械学習の問題設定
学習データとテストデータのサンプルが
独立同分布の同じ確率分布から得られる
𝑝 𝒮 𝑥, 𝑦
学習データ テストデータ
𝑝 𝒯 𝑥, 𝑦≠
Domain Adaptationの問題設定
学習データとテストデータのサンプルが
独立同分布の異なる確率分布から得られる
5. Domain Adaptationの問題設定 (2/2)
今回のタスク:Unsupervised DA (UDA)
ソース𝒮:アノテーションあり
ターゲット𝒯:アノテーションなし
Supervised DA (SDA)
ソース𝒮:アノテーションあり
ターゲット𝒯:アノテーションあり
𝑝 𝒮 𝑥, 𝑦
学習データ テストデータ
𝑝 𝒯 𝑥, 𝑦≠
Domain Adaptationの問題設定
学習データとテストデータのサンプルが
独立同分布の異なる確率分布から得られる
6. 共変量シフト (covariate shift)の仮定
DAでよく利用される仮定:共変量シフト
入出力規則は不変: 𝑝 𝒮 𝑦|𝑥 = 𝑝 𝒯 𝑦|𝑥
入力の分布が異なる: 𝑝 𝒮 𝑥 ≠ 𝑝 𝒯 𝑥
𝑥 𝒮 𝑥 𝒯
DAでよく用いられるアプローチ
Domain alignment (Domain confusion)
𝒮と𝒯のサンプルの特徴表現が
近づくようにする
Classifier
(𝒮で学習)
Feature
Extractor
8. 論文概要:Learning Semantic Representations
for Unsupervised Domain Adaptation
Domain alignmentではなく、クラスレベルのalignmentをUDAで行う
Moving Semantic Transfer Network (MSTN)を提案
Pseudo labeling + moving average + centroid alignmentを組み合わせる
Domain alignmentを用いる従来手法よりも性能が向上
GitHubに実装が公開
https://github.com/Mid-Push/Moving-Semantic-Transfer-Network
Python 2 + TensorFlow
9. 関連研究: [Tzeng+ 2017]
Adversarial Discriminative Domain Adaptation (ADDA)
Pre-training, Adversarial Adaptation, Testingの3ステップで構成
Fix
Fix
Fix
𝒮のサンプルでSource CNN と
Classifierを学習
Discriminatorが𝒮, 𝒯どちらのサンプルか
見分けられないようにTarget CNNと
Discriminatorを敵対的学習
Target CNNとClassifierを接続して
𝒯のサンプルで評価
[Tzeng+ 2017] E. Tzeng, J. Hoffman, T. Darrell, K. Saenko. Adversarial Discriminative Domain Adaptation. CVPR2017
10. 関連研究: [Ganin+ 2014]
Unsupervised Domain Adaptation by Backpropagation (RevGrad)
DiscriminatorとFeature Extractorをbackpropで同時に学習する
Gradient Reversal Layer (GRL)を提案
[Ganin+ 2014] Y. Ganin, V. Lempitsky. Unsupervised Domain Adaptation by Backpropagation. ICML2015
• Forward:恒等写像
• Backward:勾配の符号を反転
11. 提案手法のアイデア
従来手法の欠点
ドメイン不変の特徴量が識別性能を意味するわけではない
e.g. 𝒯のbackpackと𝒮のcarの特徴量が近くなる写像でもドメイン不変
は満たしている
Supervised DA (SDA)では異なるドメイン・同じクラスの特徴量が
近くなるように学習する手法が提案済み [Motiian+ 2017]
⇒ UDAでも同様のアプローチが可能ならば精度が向上するのでは?
[Motiian+ 2017] S. Motiian, M. Piccirilli, D. A. Adjeroh, G. Doretto; Unified Deep Supervised Domain Adaptation and Generalization. ICCV2017.
12. 関連研究:[Motiian+ 2017]
Unified Deep Supervised Domain Adaptation and Generalization
[Motiian+ 2017] S. Motiian, M. Piccirilli, D. A. Adjeroh, G. Doretto; Unified Deep Supervised Domain Adaptation and Generalization. ICCV2017.
異なるドメイン・異なるクラス:遠ざけたい異なるドメイン・同じクラス:近づけたい
13. (1) 𝒮のサンプルでclassifier 𝑓を学習
(2) 𝑓で𝒯のサンプルにpseudo-labeling
➢ 𝒯のサンプルにラベルを付与したい
➢ ラベルを付与できれば前スライドのSDAの手法が適用できる
…pseudo-labelは誤りも含まれるのでは?
(3) 異なるドメイン・同じクラスのcentroid間の距離を損失関数に組み込んで学習
➢ centroidに各クラスを代表させることで誤ったpseudo-labelの影響を抑える
Moving Semantic Transfer Network (MSTN)
誤った
pseudo-label
centroid
反復
16. 実験:性能比較 (1/2)
著者ら:moving averageはDAが困難なケース(A→D・D→A)で有効だった
DAが容易 or バッチサイズが大きい場合は各iterationで適切なcentroidの算出が可能
DAが困難 or バッチサイズが小さい場合はnoisyなのでmoving averageが有効
21. 【参考】
実験設定:ハイパーパラメータ・Optimizer等
ハイパーパラメータ
𝜃 = 0.7
𝛾 = 10
𝜆 = Τ2 1 + exp −𝛾 ⋅ 𝑝 − 1
Optimizer:SGD with momentum 0.9
Fine-tuneのレイヤーではlearning rateを0.1倍
Learning rateは𝜇 𝑝 = Τ0.01 1 + 10 ⋅ 𝑝 0.75
でannealing(数字のデータセットでは未使用)
Adversarial lossは0.1倍
バッチサイズ:128
𝑝 ∈ 0, 1 :学習が進むにつれて0から1に変化