Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

機械学習を民主化する取り組み

SB C&S株式会社主催、エヌビディア合同会社ほか共催のセミナー「AI・ディープラーニング研究者が話を聞きたい研究者の話と開発基盤の最新動向」における基調講演です。

  • Login to see the comments

  • Be the first to like this

機械学習を民主化する取り組み

  1. 1. 機械学習を「民主化」する取り組み OMRON SINIC X / Ridge-i 牛久 祥孝 losnuevetoros
  2. 2. 自己紹介 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.
  3. 3. 機械学習を活用した研究開発の為には… AI/MLの専門家が 設計したものを 大規模な計算基盤で 学習するために 全てのデータが 召し上げられる
  4. 4. 機械学習を「民主化」するためには 良く言われる「民主化」は • githubやarXivによる知識の共有 • 自動AIによる非専門家のAI活用
  5. 5. 機械学習を「民主化」するためには 良く言われる「民主化」は • githubやarXivによる知識の共有 • 自動AIによる非専門家のAI活用 改善! あれ、こっちは…?
  6. 6. この講演では • AI/MLのエキスパートが設計したものを • 大規模な計算基盤で学習するために • 全てのデータが召し上げられる 民主化に重要(かつあまり語られることのない) • 限定された資源でも • 全てのデータを集約しなくても 実行可能な機械学習技術を紹介
  7. 7. 限定された資源による機械学習
  8. 8. 最新の機械学習技術 • 画像処理(ResNet-50) – 2分で終わる! [Mikami+, 2018] – ただしGPUが3456枚あった時の話 – しかも上記モデルは最新鋭ではない • 自然言語処理(BERT-Large) – 4日 × 16 TPUs – TPU…深層学習に特化したハードウェア Google Cloud Platform上で使用可能で、GPUの 10倍以上速い
  9. 9. 限定された資源での機械学習 • ストレージの制約 / 少ないデータに対応するには – データ拡張 – 本講演:新たなデータ拡張としてBC-Learningを紹介 • 計算機の制約 / ラベル付きデータが少ない場合 – 事前学習済みモデルからの転移学習 cf. ファインチューニング – 本講演:とくに挑戦的な教師なしドメイン適応を概観
  10. 10. 少数のラベル付きデータを効果的に学習するには
  11. 11. なぜそれだけでうまく行くのか • 感覚的な解釈としては:パターンが増えている – 猫の鳴く音 – 犬の鳴く音 人間はそれぞれの音とその強弱を聞き分けられる • 機械学習としては:Fisher’s criterionと無相関化 – Fisher’s criterion = クラス弁別性 – 無相関化 = クラスごとのサンプルの分布が改善 様々な割合で2つが混ざった音
  12. 12. データをどんな状態で合成するか • 音響認識のためには – 2種類の音声をそのまま合成すればよい
  13. 13. データをどんな状態で合成するか • 音響認識のためには – 2種類の音声をそのまま合成すればよい
  14. 14. データをどんな状態で合成するか • 音響認識のためには – 2種類の音声をそのまま合成すればよい
  15. 15. データをどんな状態で合成するか • 音響認識のためには – 2種類の音声をそのまま合成すればよい • 画像認識のためには
  16. 16. データをどんな状態で合成するか • 音響認識のためには – 2種類の音声をそのまま合成すればよい • 画像認識のためには – 特徴量レベルで合成する? – よりも…画像レベルで合成した方が良い! 学習回数 学習手法 誤識別率(%) 100 epoch Standard 20.4 BC (ours) 19.9 150 epoch Standard 20.4 BC (ours) 19.4 ImageNet 1Kでの精度
  17. 17. BC Learning まとめ
  18. 18. 転移学習 / ドメイン適応 • ソースドメイン 教師付きデータだが本番の環境とは違う • ターゲットドメイン 本番環境で認識させたいデータだが教師データが – 全く無い: 教師なしドメイン適応 – 一部にしかない: 半教師付きドメイン適応 ビデオ ゲーム 実世界
  19. 19. 疑似ラベルを用いたドメイン適応 1st: Training on MNIST → Add pseudo labels for easy samples 2nd~: Training on MNIST+α → Add more pseudo labels eight nine Asymmetric Tri-training for Domain Adaptation [Saito+, ICML 2017]
  20. 20. 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 非対称三叉学習
  21. 21. 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 FはF1,F2,Ftからの誤差の 勾配それぞれで学習 非対称三叉学習
  22. 22. 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 ソースドメインのデータで 各識別器を初期化 1. 初期学習
  23. 23. p1 p2 TInput X F1 F2 F T 各ターゲットサンプルについて F1とF2が一定以上の確信度で同じクラスだと分類したら疑似ラベル付与 T: Target samples 2. ターゲットのサンプルに疑似ラベル付与
  24. 24. F1, F2 : ソース+疑似ラベル付きターゲット Ft: 疑似ラベル付きターゲット 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. 疑似ラベルを用いてターゲット学習
  25. 25. 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 2.と3.を収束まで繰り返す! 3. 疑似ラベルを用いてターゲット学習
  26. 26. 目的関数 最終的な目的関数 l1 |WT 1W2 |+L1 +L2 + L3 W1 W2 p1 p2 pt S+Tl F1 F2 Ft F S+Tl Tl L1 L2 L3 CrossEntropy F1とF2のパラメータが直交すると小さくなる つまり、異なる振舞いをもつように仕向ける
  27. 27. 実験結果 • 数字データセット – MNIST, SVHN, SYN DIGIT • 道路標識データセット – GTSRB, SYN SIGN GTSRB SYN SIGNS SYN DIGITSSVHN MNISTMNIST-M
  28. 28. ターゲットドメインでの精度比較 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
  29. 29. 生成モデルを用いるアプローチ • ドメインのズレを敵対的学習で克服する – 商品の背景 – 構図のバリエーション – 照明条件 – … • 物体は識別できるけど • どちらのドメインの画像かはわからない ような特徴量を抽出できればよい “特徴量の生成”
  30. 30. Deep Domain Confusion (DDC) • Sourceドメインの識別エラーを最小化 • ドメイン間の分布の重なりを最大化 [Tzeng+, arXiv 2014]
  31. 31. DDCのネットワークアーキテクチャ • Classification LossとDomain Lossの最適化 • Domain Lossとは: – Maximum Mean Discrepancy (MMD) – Classification Lossとの重みづけ 和を最適化 Source の 特徴量平均 Target の 特徴量平均
  32. 32. Office データセットによる実験 • 共通する商品かつ撮影条件の 異なる3つのドメイン • 提案手法: Domain Confusionにより性能が大幅に向上
  33. 33. 定性的な結果:特徴量の分布 Adaptation前 同じ「モニター」でも ドメイン(緑/青)によって 分布が異なる
  34. 34. 定性的な結果:特徴量の分布 Adaptation後 ドメインによらず「モニター」の分布が一致!
  35. 35. Deep Adaptation Networks (DAN) • Multiple Kernel MMD (ML-MMD)によって ドメイン間の分布を重ねる • DDCに比べて – 複数のレイヤー で分布を重ねる – 線形の距離→ Multiple Kernelの利用 • Officeデータセット上でDDCを超える性能 [Long+, ICML 2015]
  36. 36. Domain Adversarial Neural Networks (DANN) • Deep Adaptation Networks (DAN) と名前が紛らわしい • Domain Adversarial Neural Networks という名前はジャーナル版 [Ganin+, JMLR 2016] で登場 • GANと同様の思想で ドメインに依らない特徴量の抽出を敵対的学習 – GAN: サンプリングした潜在空間に基づく生成データ vs. 実際に存在するデータ – DANN: Source ドメインから抽出した特徴量 vs. Target ド メインから抽出した特徴量 [Ganin+Lempitsky, ICML 2015]
  37. 37. DANNネットワークアーキテクチャ • ドメインに依らない特徴量を抽出したい𝐺𝑓 • クラス識別をしたい𝐺 𝑦 • ドメイン識別をしたい𝐺 𝑑
  38. 38. 敵対的学習とその • ドメイン識別ロス𝐿 𝑑をめぐる敵対的学習 – ドメイン識別をしたい𝐺 𝑑は𝐿 𝑑を最小化したい – ドメインに依らない特徴量を抽出したい𝐺𝑓は𝐿 𝑑 を最大化したい • 問題点: 𝐿 𝑑の勾配に対して – 𝐺 𝑑は勾配降下したい一方で𝐺𝑓は勾配上昇したい – 𝐺 𝑑と𝐺𝑓の接続関係から勾配を逆向きに進めない
  39. 39. Gradient Reversal Layerの導入 陽な関数の形では書けないけど、とにかく • 順伝搬の時は何もせず • 逆伝搬の時は勾配の符号を反転する レイヤーを導入する 続く2モジュールで同時に降下/上昇できる
  40. 40. 実験結果 • Office データセット • 文字データセット 特徴量分布の変化 SYN NUMBERS(赤点) →SVHN(青点) Adapt
  41. 41. Adversarial Discriminative Domain Adaptation DANNと同様にドメイン識別器を敵対的学習 [Tzeng+, CVPR 2017]
  42. 42. DANNに対する問題意識 • 共通のネットワークで 2つのドメインから特徴 抽出するのは ✓パラメータ数を削減できるのが良い ×異なるドメインの特徴量抽出を同時にやるのは 無理がある • Gradient Reversal Layerは ✓GANの目的関数に忠実ではある ×学習初期に勾配を消失させることで Discriminatorの更新がとまりやすい
  43. 43. ADDAでは • それぞれのドメインで異なるCNNにより特 徴量を抽出 Source ドメインのCNNはPre-trainingしておく • Gradient ReversalではなくGANで一般的な inverted labelに対する損失を用いる (𝑀𝑡:Target 特徴量 𝐷: ドメイン識別)
  44. 44. 実験結果 Officeと文字データセットでState-of-the-art
  45. 45. Maximum Classifier Discrepancy (MCD) ここまでの手法はドメインを一致させようと しているが… • ドメイン全体の分布を一致させても クラスごとの分布は一致しないのでは [Saito+, CVPR 2018]
  46. 46. Maximum Classifier Discrepancy (MCD) ここまでの手法はドメインを一致させようと しているが… • ドメイン全体の分布を一致させても クラスごとの分布は一致しないのでは • ドメインの一致ではなくクラス識別面の一致では [Saito+, CVPR 2018]
  47. 47. Maximum Classifier Discrepancy (MCD) 0. Source(点線)とTarget(実線)で2クラス識別
  48. 48. Maximum Classifier Discrepancy (MCD) 1. 2クラス識別器を2つ用意する Sourceで訓練する識別面は ・点線部分は横切らない ・実線部分は横切るかもしれない この斜線部分(Discrepancy Region) をなくしたい
  49. 49. Maximum Classifier Discrepancy (MCD) 2. 出来るだけ多くのDiscrepancyをあぶりだす 識別面のみ更新
  50. 50. Maximum Classifier Discrepancy (MCD) 3. Discrepancyが減るように特徴量を学習 特徴量抽出のみ更新
  51. 51. Maximum Classifier Discrepancy (MCD) 収束するまで 2. と 3. を繰り返す
  52. 52. 実験結果 文字データセットでState-of-the-art
  53. 53. 実験結果 画像のセマンティックセグメンテーション
  54. 54. Adversarial Dropout Regularization (ADR) ここまでの手法はドメインを一致させようと しているが… • ドメイン全体の分布を一致させても クラスごとの分布は一致しないのでは • ドメインの一致ではなくクラス識別面の一致では [Saito+, ICLR 2018] …あれ、さっき聞いた気がするぞ?
  55. 55. 実はMCDのDropoutによる改良版 この2つの識別器を 直接学習: MCD Dropoutで生成: 提案手法
  56. 56. 学習はMCDと同様
  57. 57. 実験結果 文字データセットでState-of-the-art
  58. 58. 実験結果 画像のセマンティックセグメンテーション
  59. 59. Source Target Closed Domain Adaptation Open Set Domain Adaptation Source Target Unknown ・ 通常のドメイン適応では:ソースとターゲットのクラスが一致 ・…ターゲットにはラベルが無いのに、本当にクラス一致するのか? ・ Open Set: ターゲットに未知のクラスがある問題設定 cf. 逆の問題設定 = Partial Domain Adaptation [Cao+, ECCV 2018] Open Set Domain Adaptation (OSDA)[Saito+, ECCV 2018]
  60. 60. Source Target Source Target Unknown Source Target Unknown 通常のドメイン適応なら まだうまく行くかもしれないが… Open Setだと未知のクラスも ソースドメインの既知クラスになる! 提案手法では未知クラスの分布を一致させないように工夫 単純に分布を合わせようとすると
  61. 61. Source: 0~4, Target: 0~9 → 5~9が未知 青: ソース(既知) 赤: ターゲット(既知) 緑: ターゲット(道) 数字データセットによる実験結果
  62. 62. ソース (bike, bus, car, motorbike, train, truck) ターゲット (Known +Unknown (person, horse, knife, …. ) ラベル付き人工データ ラベル無し実世界データ 人工データからリアルデータ
  63. 63. 物体検出のためのドメイン適応 [Saito+, CVPR 2019]
  64. 64. 全てのデータを集約しなくても よい機械学習
  65. 65. そのデータ、アップロードしたいですか? • 我々の生活に密着した機能を提供してほしい • プライベートな情報を提供する必要がある – 学習時 – 実行時 通話記録 健康/医療データ ライフログ
  66. 66. サーバに頼らない深層学習結果の利用 ブラウザの利用:WebDNN [Hidaka+, ACMMM 2017] • 学習済みの深層ニューラルネットワークを実行用に最適化 • ブラウザ上でJavaScriptを利用しながら実行可能 • ブラウザ上でもGPUを使えるので高速 • サーバからモデルをダウンロードしてローカルで実行 →サーバにデータをアップロードしないで深層学習結果を 使える!
  67. 67. MILJS: JavaScriptによる分散並列学習 • 学習と推定の両方をサポート • GPUでの計算をJavaScriptからサポート • もちろんGPUがなくても実行可能 • 事前にインストールすべきはブラウザのみ 巨大なResNet-152でさえも学習できる [Hidaka+, ICLR Workshop 2017]
  68. 68. Federated Learning • 連合学習: データを集約するのではなく モデルを集約して集合知を獲得 • 各端末ではユーザのデータに応じてモデルを更新 • サーバでは各モデルから共通モデルへと統合 [McMahan+, 2017]
  69. 69. Decentralized GAN • Federated Learningは – 通常の識別/回帰に使える – …ほかの場合は? • 例えば:生成モデル – GANには生成器と弁別器の2つが存在 – それぞれが敵対的に学習 – どうやれば Federated Learning のようにデータを分散 させたまま集合知的な生成モデルが得られるか? • 単純に Federated Learning で生成器と弁別器をそれぞれ統合す るのではうまく行かない • 集合知的な生成モデルが得られるような統合手法を提案 [Yonetani+, 2019]
  70. 70. 強化学習の転移学習 • 異なる環境・身体のエージェントが複数存在 – 強化学習済み – 新規の環境・身体のエージェントに対して この上記学習済みモデルは寄与するか? • 提案手法:ソースの学習済みモデルを統合 しかも既存手法のようなソース環境へのアクセスは不要 Robotic ants with different leg designs Proposed Approach Learning from scratch Adaptive aggregation of source policies 0 1000 2000 0.5M 1M 1.5M 2M EPISODICREWARD TIMESTEP Proposed Baseline Learning Curves [Barekatain+, 2019]
  71. 71. まとめ 機械学習の民主化を目指して AI/MLの専門家が 設計したものを 大規模な計算基盤で 学習するために 全てのデータが 召し上げられる BC-Learning ドメイン適応 JavaScript x DL Federated Learning
  72. 72. 画像の認識・理解シンポジウム MIRU 2020 2020年8月2日~4日 仙台

×