SlideShare una empresa de Scribd logo
1 de 17
Descargar para leer sin conexión
  	
Dropout Distillation	
Samuel Rota Bulò, Lorenzo Porzi , Peter Kontschieder 	
	
ICML2016読み会	
紹介者:佐野正太郎	
株式会社リクルートコミュニケーションズ
(C)Recruit Communications Co., Ltd.	
背景:Dropout学習	
•  ニューラルネットワークの過学習を抑制する手法
•  学習ステップ毎にランダムに一部のユニットを落とす
•  暗に多数のネットワークのアンサンブルモデルを学習している
•  [Srivastava et al., 2014]
1
学習対象のネットワーク	
 学習ステップ1	
 学習ステップ2	
・・・	
学習時
(C)Recruit Communications Co., Ltd.	
背景:Dropoutにおける予測計算	
2
Doropout学習時にはネットワーク構造がランダム	
 =>	
 予測時にどの構造を採用するか?
理想:全てのDropoutパターンでの予測計算の期待値をとる
Standard Dropout [Srivastava et al., 2014]
•  予測時にはユニットを落とさない
•  各ユニットの出力を (1 – dropout率) でスケールすることで実用的な精度が得られる
Monte-Carlo Dropout [Gal & Ghahramani, 2015]
•  予測時に複数のDropoutパターンを試して平均をとる
•  予測の計算コストが高い代わりにStandard Dropoutよりも良い精度が得られる
(C)Recruit Communications Co., Ltd.	
背景:Distillation	
3
Distilling the knowledge in Neural Network [Hinton et al., 2014]
•  distill = 蒸留する
•  複数のネットワークや複雑なネットワークを単一の小さなモデルに圧縮する手法
蒸留モデル	
アンサンブルモデル
(C)Recruit Communications Co., Ltd.	
提案手法:Dropout Distillation	
概要
•  Dropout学習が暗に獲得しているアンサンブルモデルを圧縮/蒸留(Distillation)する
•  Dropout学習後モデルのMonte-Carlo予測を模倣する新しいモデルを学習する
利点
•  Standard Dropoutと同じ予測計算コストでStandard Dropoutよりも高い予測精度
•  半教師あり学習への応用可能性:教師信号が欠損したデータをDistillationフェーズで活用できる
•  モデル圧縮への応用可能性:Dropuoutで複雑なモデルを学習してDistillationフェーズで圧縮できる
欠点
•  Distillationフェーズに余計な時間がかかる	
 
4
(C)Recruit Communications Co., Ltd.	
提案手法:Dropout Distillation	
5
Dropout	
学習済み	
モデル	
生徒モデル	
損失関数	
Dropout	
パターン
(C)Recruit Communications Co., Ltd.	
提案手法:Dropout Distillation	
6
教師モデル	
(Dropout学習済み)	
生徒モデル	
Distillationフェーズでは	
教師モデルの振る舞いを真似るよう	
生徒モデルを学習する	
通常のDropout学習で	
教師となるモデルを獲得
(C)Recruit Communications Co., Ltd.	
提案手法:Dropout Distillation	
7
Distillation用	
学習データ	
(教師信号無し)	
教師モデル	
(Dropout学習済み)	
生徒モデル	
生徒モデルの出力	
出力間の損失を	
埋めるように	
生徒モデルの	
パラメタを更新	
教師モデルの出力	
生徒モデルには	
ドロップアウトをかけない	
教師モデルにドロップアウトを	
かけながら出力データを生成
(C)Recruit Communications Co., Ltd.	
提案手法:Dropout Distillation	
8
Distillation用	
学習データ	
(教師信号無し)	
教師モデル	
(Dropout学習済み)	
生徒モデル	
生徒モデルの出力	
教師モデルの出力	
教師モデルと生徒モデルの	
ネットワーク構造は違っていてもよい	
データはDropoutフェーズから流用可	
新しいデータを用意するのも可
(C)Recruit Communications Co., Ltd.	
理想の予測関数
•  全てのDropoutパターンでの出力期待値
•  Dropoutパターンはユニット数に対し指数関数的に増加するので事実上計算できない
問題設定
•  『理想の予測関数』を教師モデルとした生徒モデルを学習したい
どうやって『理想の予測関数』を計算に取り入れるか?
Dropout学習済みモデル	
導出	
9
理想の予測関数	
損失関数	
生徒モデル	
評価できない	
Dropoutパターン
(C)Recruit Communications Co., Ltd.	
アプローチ
•  『理想の予測関数』をDropout学習済みモデルで置き換える
•  損失関数がBregmanダイバージェンスのとき以下の最小化問題が等価
Bregmanダイバージェンス
•  二乗損失・Logistic損失・KLダイバージェンスなどを一般化したもの
Dropout	
学習済み	
モデル	
導出	
10
生徒モデル	
微分可能な凸関数	
Dropoutパターン	
この表現を形にしたのが	
スライド5〜8のアルゴリズム
(C)Recruit Communications Co., Ltd.	
証明
qに関係ないので定数とみなせる	
導出	
11
本来の最小化対象	
Dropout Distillationでの最小化対象
(C)Recruit Communications Co., Ltd.	
実験1:予測計算手法による性能比較	
12
MNIST/CIFAR10/CIFAR100データセットで3予測手法のエラー率比較
•  Standard Dropout
•  Monte-Carlo Dropout(100サンプリング)
•  Dropout Distillation
実験手順
1.  Dropout学習でベースラインモデルを獲得(300エポック)
2.  ベースラインモデルでStandard DropoutとMonte-Carlo Dropoutの性能評価
3.  ベースラインモデルを教師としてDropout Distillation(30エポック)
–  生徒モデルのネットワーク構造はベースラインモデルと同様
–  ベースラインモデルの学習後パラメタで生徒モデルを初期化
–  ベースラインモデルの入力データを流用(pixel毎に確率0.2で値をゼロ化)
4.  生徒モデルでDropout Distillationの性能評価
(C)Recruit Communications Co., Ltd.	
実験1:予測計算手法による性能比較	
13
•  平均エラー率は Standard > Distillation > Monte-Carlo の順
•  Monte-CarloよりDistillationの方がパフォーマンスの分散は低い
(C)Recruit Communications Co., Ltd.	
実験2:Distillationに使うデータセットによる性能比較	
14
Distillationフェーズの入力データについて3シナリオで性能比較
•  [Train] 教師モデルのトレーニングセットをそのまま利用
•  [Pert. Train] 教師モデルのトレーニングセットをピクセル毎に確率0.2で値をゼロ化
•  [Test] テストデータを利用
どのシナリオが	
優れているかは	
場合による
(C)Recruit Communications Co., Ltd.	
実験3:モデル圧縮への応用可能性	
15
CIFAR10/Quickでユニット数を削減した場合のパフォーマンス変化
•  [Baseline] Dropout学習のみで削減後モデルを学習
•  [Distillation] Dropoutフェーズで削減前モデルを学習してDistillationフェーズで削減後モデルに圧縮
青枠内では『Dropoutフェーズで複雑なモデルを学習 => Distillationフェーズで圧縮』が有効に働いている
FC層からのみユニットを削った場合	
 全層からフィルタ/ユニットを削った場合
(C)Recruit Communications Co., Ltd.	
従来手法
•  Standard Dropout:予測時間が短いけど精度が低め
•  Monte-Carlo Dropout:予測時間が長いけど精度が高め
提案手法の主な貢献
•  Standard Dropoutと同じオーダーの予測時間
•  安定してStandard Dropoutよりも良い精度が出る
場合によって効いてくるメリット
•  教師信号が欠損したデータをDistillationフェーズで活用
•  Dropuoutで複雑なモデルを学習してDistillationフェーズで圧縮
まとめ	
16

Más contenido relacionado

La actualidad más candente

Recurrent Neural Networks
Recurrent Neural NetworksRecurrent Neural Networks
Recurrent Neural NetworksSeiya Tokui
 
実装ディープラーニング
実装ディープラーニング実装ディープラーニング
実装ディープラーニングYurie Oka
 
Learning to forget continual prediction with lstm
Learning to forget continual prediction with lstmLearning to forget continual prediction with lstm
Learning to forget continual prediction with lstmFujimoto Keisuke
 
【2017年】ディープラーニングのフレームワーク比較
【2017年】ディープラーニングのフレームワーク比較【2017年】ディープラーニングのフレームワーク比較
【2017年】ディープラーニングのフレームワーク比較Ryota Suzuki
 
再帰型ニューラルネット in 機械学習プロフェッショナルシリーズ輪読会
再帰型ニューラルネット in 機械学習プロフェッショナルシリーズ輪読会再帰型ニューラルネット in 機械学習プロフェッショナルシリーズ輪読会
再帰型ニューラルネット in 機械学習プロフェッショナルシリーズ輪読会Shotaro Sano
 
Deep Learning基本理論とTensorFlow
Deep Learning基本理論とTensorFlowDeep Learning基本理論とTensorFlow
Deep Learning基本理論とTensorFlowTadaichiro Nakano
 
TensorFlowによるCNNアーキテクチャ構築
TensorFlowによるCNNアーキテクチャ構築TensorFlowによるCNNアーキテクチャ構築
TensorFlowによるCNNアーキテクチャ構築Hirokatsu Kataoka
 
はじめての人のためのDeep Learning
はじめての人のためのDeep Learningはじめての人のためのDeep Learning
はじめての人のためのDeep LearningTadaichiro Nakano
 
[DL輪読会]QUASI-RECURRENT NEURAL NETWORKS
[DL輪読会]QUASI-RECURRENT NEURAL NETWORKS[DL輪読会]QUASI-RECURRENT NEURAL NETWORKS
[DL輪読会]QUASI-RECURRENT NEURAL NETWORKSDeep Learning JP
 
Tf勉強会(5)
Tf勉強会(5)Tf勉強会(5)
Tf勉強会(5)tak9029
 
現在のDNNにおける未解決問題
現在のDNNにおける未解決問題現在のDNNにおける未解決問題
現在のDNNにおける未解決問題Daisuke Okanohara
 
Getting Started with Deep Learning using Scala
Getting Started with Deep Learning using ScalaGetting Started with Deep Learning using Scala
Getting Started with Deep Learning using ScalaTaisuke Oe
 
GRU-Prednetを実装してみた(途中経過)
GRU-Prednetを実装してみた(途中経過)GRU-Prednetを実装してみた(途中経過)
GRU-Prednetを実装してみた(途中経過)Taichi Iki
 
Tutorial-DeepLearning-PCSJ-IMPS2016
Tutorial-DeepLearning-PCSJ-IMPS2016Tutorial-DeepLearning-PCSJ-IMPS2016
Tutorial-DeepLearning-PCSJ-IMPS2016Takayoshi Yamashita
 
深層学習フレームワーク Chainer の開発と今後の展開
深層学習フレームワーク Chainer の開発と今後の展開深層学習フレームワーク Chainer の開発と今後の展開
深層学習フレームワーク Chainer の開発と今後の展開Seiya Tokui
 
「TensorFlow Tutorialの数学的背景」 クイックツアー(パート1)
「TensorFlow Tutorialの数学的背景」 クイックツアー(パート1)「TensorFlow Tutorialの数学的背景」 クイックツアー(パート1)
「TensorFlow Tutorialの数学的背景」 クイックツアー(パート1)Etsuji Nakai
 
Learning Convolutional Neural Networks for Graphs
Learning Convolutional Neural Networks for GraphsLearning Convolutional Neural Networks for Graphs
Learning Convolutional Neural Networks for GraphsTakuya Akiba
 
Deep Learningと画像認識   ~歴史・理論・実践~
Deep Learningと画像認識 ~歴史・理論・実践~Deep Learningと画像認識 ~歴史・理論・実践~
Deep Learningと画像認識   ~歴史・理論・実践~nlab_utokyo
 

La actualidad más candente (20)

Recurrent Neural Networks
Recurrent Neural NetworksRecurrent Neural Networks
Recurrent Neural Networks
 
実装ディープラーニング
実装ディープラーニング実装ディープラーニング
実装ディープラーニング
 
Learning to forget continual prediction with lstm
Learning to forget continual prediction with lstmLearning to forget continual prediction with lstm
Learning to forget continual prediction with lstm
 
【2017年】ディープラーニングのフレームワーク比較
【2017年】ディープラーニングのフレームワーク比較【2017年】ディープラーニングのフレームワーク比較
【2017年】ディープラーニングのフレームワーク比較
 
再帰型ニューラルネット in 機械学習プロフェッショナルシリーズ輪読会
再帰型ニューラルネット in 機械学習プロフェッショナルシリーズ輪読会再帰型ニューラルネット in 機械学習プロフェッショナルシリーズ輪読会
再帰型ニューラルネット in 機械学習プロフェッショナルシリーズ輪読会
 
Deep Learning基本理論とTensorFlow
Deep Learning基本理論とTensorFlowDeep Learning基本理論とTensorFlow
Deep Learning基本理論とTensorFlow
 
TensorFlowによるCNNアーキテクチャ構築
TensorFlowによるCNNアーキテクチャ構築TensorFlowによるCNNアーキテクチャ構築
TensorFlowによるCNNアーキテクチャ構築
 
深層学習入門
深層学習入門深層学習入門
深層学習入門
 
はじめての人のためのDeep Learning
はじめての人のためのDeep Learningはじめての人のためのDeep Learning
はじめての人のためのDeep Learning
 
[DL輪読会]QUASI-RECURRENT NEURAL NETWORKS
[DL輪読会]QUASI-RECURRENT NEURAL NETWORKS[DL輪読会]QUASI-RECURRENT NEURAL NETWORKS
[DL輪読会]QUASI-RECURRENT NEURAL NETWORKS
 
Tf勉強会(5)
Tf勉強会(5)Tf勉強会(5)
Tf勉強会(5)
 
現在のDNNにおける未解決問題
現在のDNNにおける未解決問題現在のDNNにおける未解決問題
現在のDNNにおける未解決問題
 
MIRU2014 tutorial deeplearning
MIRU2014 tutorial deeplearningMIRU2014 tutorial deeplearning
MIRU2014 tutorial deeplearning
 
Getting Started with Deep Learning using Scala
Getting Started with Deep Learning using ScalaGetting Started with Deep Learning using Scala
Getting Started with Deep Learning using Scala
 
GRU-Prednetを実装してみた(途中経過)
GRU-Prednetを実装してみた(途中経過)GRU-Prednetを実装してみた(途中経過)
GRU-Prednetを実装してみた(途中経過)
 
Tutorial-DeepLearning-PCSJ-IMPS2016
Tutorial-DeepLearning-PCSJ-IMPS2016Tutorial-DeepLearning-PCSJ-IMPS2016
Tutorial-DeepLearning-PCSJ-IMPS2016
 
深層学習フレームワーク Chainer の開発と今後の展開
深層学習フレームワーク Chainer の開発と今後の展開深層学習フレームワーク Chainer の開発と今後の展開
深層学習フレームワーク Chainer の開発と今後の展開
 
「TensorFlow Tutorialの数学的背景」 クイックツアー(パート1)
「TensorFlow Tutorialの数学的背景」 クイックツアー(パート1)「TensorFlow Tutorialの数学的背景」 クイックツアー(パート1)
「TensorFlow Tutorialの数学的背景」 クイックツアー(パート1)
 
Learning Convolutional Neural Networks for Graphs
Learning Convolutional Neural Networks for GraphsLearning Convolutional Neural Networks for Graphs
Learning Convolutional Neural Networks for Graphs
 
Deep Learningと画像認識   ~歴史・理論・実践~
Deep Learningと画像認識 ~歴史・理論・実践~Deep Learningと画像認識 ~歴史・理論・実践~
Deep Learningと画像認識   ~歴史・理論・実践~
 

Destacado

Estimating structured vector autoregressive models
Estimating structured vector autoregressive modelsEstimating structured vector autoregressive models
Estimating structured vector autoregressive modelsAkira Tanimoto
 
Learning Convolutional Neural Networks for Graphs
Learning Convolutional Neural Networks for GraphsLearning Convolutional Neural Networks for Graphs
Learning Convolutional Neural Networks for GraphsTakuya Akiba
 
ICML2016読み会 概要紹介
ICML2016読み会 概要紹介ICML2016読み会 概要紹介
ICML2016読み会 概要紹介Kohei Hayashi
 
論文紹介 Pixel Recurrent Neural Networks
論文紹介 Pixel Recurrent Neural Networks論文紹介 Pixel Recurrent Neural Networks
論文紹介 Pixel Recurrent Neural NetworksSeiya Tokui
 
Facebookの人工知能アルゴリズム「memory networks」について調べてみた
Facebookの人工知能アルゴリズム「memory networks」について調べてみたFacebookの人工知能アルゴリズム「memory networks」について調べてみた
Facebookの人工知能アルゴリズム「memory networks」について調べてみた株式会社メタップスホールディングス
 
NVIDIA GPU 技術最新情報
NVIDIA GPU 技術最新情報NVIDIA GPU 技術最新情報
NVIDIA GPU 技術最新情報IDC Frontier
 
GTC 2017 さらに発展する AI 革命
GTC 2017 さらに発展する AI 革命GTC 2017 さらに発展する AI 革命
GTC 2017 さらに発展する AI 革命NVIDIA Japan
 
HPCとAIをつなぐGPUクラウド
HPCとAIをつなぐGPUクラウドHPCとAIをつなぐGPUクラウド
HPCとAIをつなぐGPUクラウドHPC Systems Inc.
 
GTC 2017 基調講演からディープラーニング関連情報のご紹介
GTC 2017 基調講演からディープラーニング関連情報のご紹介GTC 2017 基調講演からディープラーニング関連情報のご紹介
GTC 2017 基調講演からディープラーニング関連情報のご紹介NVIDIA Japan
 
Chainer v2 alpha
Chainer v2 alphaChainer v2 alpha
Chainer v2 alphaSeiya Tokui
 
次世代の AI とディープラーニング GTC 2017
次世代の AI とディープラーニング GTC 2017次世代の AI とディープラーニング GTC 2017
次世代の AI とディープラーニング GTC 2017NVIDIA Japan
 
激アツ!GPUパワーとインフラの戦い
激アツ!GPUパワーとインフラの戦い激アツ!GPUパワーとインフラの戦い
激アツ!GPUパワーとインフラの戦いIDC Frontier
 
加速するデータドリブンコミュニケーション
加速するデータドリブンコミュニケーション加速するデータドリブンコミュニケーション
加速するデータドリブンコミュニケーションKeisuke Anzai
 

Destacado (15)

Estimating structured vector autoregressive models
Estimating structured vector autoregressive modelsEstimating structured vector autoregressive models
Estimating structured vector autoregressive models
 
Learning Convolutional Neural Networks for Graphs
Learning Convolutional Neural Networks for GraphsLearning Convolutional Neural Networks for Graphs
Learning Convolutional Neural Networks for Graphs
 
ICML2016読み会 概要紹介
ICML2016読み会 概要紹介ICML2016読み会 概要紹介
ICML2016読み会 概要紹介
 
論文紹介 Pixel Recurrent Neural Networks
論文紹介 Pixel Recurrent Neural Networks論文紹介 Pixel Recurrent Neural Networks
論文紹介 Pixel Recurrent Neural Networks
 
Facebookの人工知能アルゴリズム「memory networks」について調べてみた
Facebookの人工知能アルゴリズム「memory networks」について調べてみたFacebookの人工知能アルゴリズム「memory networks」について調べてみた
Facebookの人工知能アルゴリズム「memory networks」について調べてみた
 
NVIDIA GPU 技術最新情報
NVIDIA GPU 技術最新情報NVIDIA GPU 技術最新情報
NVIDIA GPU 技術最新情報
 
GTC 2017 さらに発展する AI 革命
GTC 2017 さらに発展する AI 革命GTC 2017 さらに発展する AI 革命
GTC 2017 さらに発展する AI 革命
 
HPCとAIをつなぐGPUクラウド
HPCとAIをつなぐGPUクラウドHPCとAIをつなぐGPUクラウド
HPCとAIをつなぐGPUクラウド
 
GTC 2017 基調講演からディープラーニング関連情報のご紹介
GTC 2017 基調講演からディープラーニング関連情報のご紹介GTC 2017 基調講演からディープラーニング関連情報のご紹介
GTC 2017 基調講演からディープラーニング関連情報のご紹介
 
GTC17 NVIDIA News
GTC17 NVIDIA NewsGTC17 NVIDIA News
GTC17 NVIDIA News
 
Chainer v2 alpha
Chainer v2 alphaChainer v2 alpha
Chainer v2 alpha
 
次世代の AI とディープラーニング GTC 2017
次世代の AI とディープラーニング GTC 2017次世代の AI とディープラーニング GTC 2017
次世代の AI とディープラーニング GTC 2017
 
激アツ!GPUパワーとインフラの戦い
激アツ!GPUパワーとインフラの戦い激アツ!GPUパワーとインフラの戦い
激アツ!GPUパワーとインフラの戦い
 
ICCV2017一人読み会
ICCV2017一人読み会ICCV2017一人読み会
ICCV2017一人読み会
 
加速するデータドリブンコミュニケーション
加速するデータドリブンコミュニケーション加速するデータドリブンコミュニケーション
加速するデータドリブンコミュニケーション
 

Similar a Dropout Distillation

短距離古典分子動力学計算の 高速化と大規模並列化
短距離古典分子動力学計算の 高速化と大規模並列化短距離古典分子動力学計算の 高速化と大規模並列化
短距離古典分子動力学計算の 高速化と大規模並列化Hiroshi Watanabe
 
Convolutional Neural Network @ CV勉強会関東
Convolutional Neural Network @ CV勉強会関東Convolutional Neural Network @ CV勉強会関東
Convolutional Neural Network @ CV勉強会関東Hokuto Kagaya
 
DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御
DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御
DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御Ryosuke Okuta
 
mruby/c機能紹介20160329
mruby/c機能紹介20160329mruby/c機能紹介20160329
mruby/c機能紹介20160329shimane-itoc
 
[CB19] Semzhu-Project – 手で作る組込み向けハイパーバイザと攻撃検知手法の新しい世界 by 朱義文
[CB19] Semzhu-Project – 手で作る組込み向けハイパーバイザと攻撃検知手法の新しい世界 by  朱義文[CB19] Semzhu-Project – 手で作る組込み向けハイパーバイザと攻撃検知手法の新しい世界 by  朱義文
[CB19] Semzhu-Project – 手で作る組込み向けハイパーバイザと攻撃検知手法の新しい世界 by 朱義文CODE BLUE
 
ネットワーク研究の最前線
ネットワーク研究の最前線ネットワーク研究の最前線
ネットワーク研究の最前線Kazuyuki Shudo
 
FastDepth: Fast Monocular Depth Estimation on Embedded Systems
FastDepth: Fast Monocular Depth Estimation on Embedded SystemsFastDepth: Fast Monocular Depth Estimation on Embedded Systems
FastDepth: Fast Monocular Depth Estimation on Embedded Systemsharmonylab
 
OSS奨励賞受賞プレゼン 活動紹介
OSS奨励賞受賞プレゼン 活動紹介OSS奨励賞受賞プレゼン 活動紹介
OSS奨励賞受賞プレゼン 活動紹介Hiromu Yakura
 
Deep learning実装の基礎と実践
Deep learning実装の基礎と実践Deep learning実装の基礎と実践
Deep learning実装の基礎と実践Seiya Tokui
 
mruby/c適用期待分野20160329
mruby/c適用期待分野20160329mruby/c適用期待分野20160329
mruby/c適用期待分野20160329shimane-itoc
 
CVPR2016 reading - 特徴量学習とクロスモーダル転移について
CVPR2016 reading - 特徴量学習とクロスモーダル転移についてCVPR2016 reading - 特徴量学習とクロスモーダル転移について
CVPR2016 reading - 特徴量学習とクロスモーダル転移についてAkisato Kimura
 
Paper Introduction "RankCompete: Simultaneous ranking and clustering of info...
Paper Introduction "RankCompete:Simultaneous ranking and clustering of info...Paper Introduction "RankCompete:Simultaneous ranking and clustering of info...
Paper Introduction "RankCompete: Simultaneous ranking and clustering of info...Kotaro Yamazaki
 
研究室輪読 Feature Learning for Activity Recognition in Ubiquitous Computing
研究室輪読 Feature Learning for Activity Recognition in Ubiquitous Computing研究室輪読 Feature Learning for Activity Recognition in Ubiquitous Computing
研究室輪読 Feature Learning for Activity Recognition in Ubiquitous ComputingYusuke Iwasawa
 
Improving neural networks by preventing co adaptation of feature detectors
Improving neural networks by preventing co adaptation of feature detectorsImproving neural networks by preventing co adaptation of feature detectors
Improving neural networks by preventing co adaptation of feature detectorsJunya Saito
 
【CVPR 2019】Second-order Attention Network for Single Image Super-Resolution
【CVPR 2019】Second-order Attention Network for Single Image Super-Resolution【CVPR 2019】Second-order Attention Network for Single Image Super-Resolution
【CVPR 2019】Second-order Attention Network for Single Image Super-Resolutioncvpaper. challenge
 
Edge Computing 「あらゆるものが考える」世界を作るのに必要な技術
Edge Computing 「あらゆるものが考える」世界を作るのに必要な技術Edge Computing 「あらゆるものが考える」世界を作るのに必要な技術
Edge Computing 「あらゆるものが考える」世界を作るのに必要な技術Takeaki Imai
 
点群深層学習 Meta-study
点群深層学習 Meta-study点群深層学習 Meta-study
点群深層学習 Meta-studyNaoya Chiba
 
Deep Learning技術の最近の動向とPreferred Networksの取り組み
Deep Learning技術の最近の動向とPreferred Networksの取り組みDeep Learning技術の最近の動向とPreferred Networksの取り組み
Deep Learning技術の最近の動向とPreferred Networksの取り組みKenta Oono
 

Similar a Dropout Distillation (20)

短距離古典分子動力学計算の 高速化と大規模並列化
短距離古典分子動力学計算の 高速化と大規模並列化短距離古典分子動力学計算の 高速化と大規模並列化
短距離古典分子動力学計算の 高速化と大規模並列化
 
Convolutional Neural Network @ CV勉強会関東
Convolutional Neural Network @ CV勉強会関東Convolutional Neural Network @ CV勉強会関東
Convolutional Neural Network @ CV勉強会関東
 
DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御
DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御
DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御
 
mruby/c機能紹介20160329
mruby/c機能紹介20160329mruby/c機能紹介20160329
mruby/c機能紹介20160329
 
[CB19] Semzhu-Project – 手で作る組込み向けハイパーバイザと攻撃検知手法の新しい世界 by 朱義文
[CB19] Semzhu-Project – 手で作る組込み向けハイパーバイザと攻撃検知手法の新しい世界 by  朱義文[CB19] Semzhu-Project – 手で作る組込み向けハイパーバイザと攻撃検知手法の新しい世界 by  朱義文
[CB19] Semzhu-Project – 手で作る組込み向けハイパーバイザと攻撃検知手法の新しい世界 by 朱義文
 
ネットワーク研究の最前線
ネットワーク研究の最前線ネットワーク研究の最前線
ネットワーク研究の最前線
 
FastDepth: Fast Monocular Depth Estimation on Embedded Systems
FastDepth: Fast Monocular Depth Estimation on Embedded SystemsFastDepth: Fast Monocular Depth Estimation on Embedded Systems
FastDepth: Fast Monocular Depth Estimation on Embedded Systems
 
OSS奨励賞受賞プレゼン 活動紹介
OSS奨励賞受賞プレゼン 活動紹介OSS奨励賞受賞プレゼン 活動紹介
OSS奨励賞受賞プレゼン 活動紹介
 
Deep learning実装の基礎と実践
Deep learning実装の基礎と実践Deep learning実装の基礎と実践
Deep learning実装の基礎と実践
 
mruby/c適用期待分野20160329
mruby/c適用期待分野20160329mruby/c適用期待分野20160329
mruby/c適用期待分野20160329
 
KOGEI & KAIT Funnel WS
KOGEI & KAIT Funnel WSKOGEI & KAIT Funnel WS
KOGEI & KAIT Funnel WS
 
CVPR2016 reading - 特徴量学習とクロスモーダル転移について
CVPR2016 reading - 特徴量学習とクロスモーダル転移についてCVPR2016 reading - 特徴量学習とクロスモーダル転移について
CVPR2016 reading - 特徴量学習とクロスモーダル転移について
 
Paper Introduction "RankCompete: Simultaneous ranking and clustering of info...
Paper Introduction "RankCompete:Simultaneous ranking and clustering of info...Paper Introduction "RankCompete:Simultaneous ranking and clustering of info...
Paper Introduction "RankCompete: Simultaneous ranking and clustering of info...
 
20150414seminar
20150414seminar20150414seminar
20150414seminar
 
研究室輪読 Feature Learning for Activity Recognition in Ubiquitous Computing
研究室輪読 Feature Learning for Activity Recognition in Ubiquitous Computing研究室輪読 Feature Learning for Activity Recognition in Ubiquitous Computing
研究室輪読 Feature Learning for Activity Recognition in Ubiquitous Computing
 
Improving neural networks by preventing co adaptation of feature detectors
Improving neural networks by preventing co adaptation of feature detectorsImproving neural networks by preventing co adaptation of feature detectors
Improving neural networks by preventing co adaptation of feature detectors
 
【CVPR 2019】Second-order Attention Network for Single Image Super-Resolution
【CVPR 2019】Second-order Attention Network for Single Image Super-Resolution【CVPR 2019】Second-order Attention Network for Single Image Super-Resolution
【CVPR 2019】Second-order Attention Network for Single Image Super-Resolution
 
Edge Computing 「あらゆるものが考える」世界を作るのに必要な技術
Edge Computing 「あらゆるものが考える」世界を作るのに必要な技術Edge Computing 「あらゆるものが考える」世界を作るのに必要な技術
Edge Computing 「あらゆるものが考える」世界を作るのに必要な技術
 
点群深層学習 Meta-study
点群深層学習 Meta-study点群深層学習 Meta-study
点群深層学習 Meta-study
 
Deep Learning技術の最近の動向とPreferred Networksの取り組み
Deep Learning技術の最近の動向とPreferred Networksの取り組みDeep Learning技術の最近の動向とPreferred Networksの取り組み
Deep Learning技術の最近の動向とPreferred Networksの取り組み
 

Más de Shotaro Sano

AutoML in NeurIPS 2018
AutoML in NeurIPS 2018AutoML in NeurIPS 2018
AutoML in NeurIPS 2018Shotaro Sano
 
PFDet: 2nd Place Solutions to Open Images Competition
PFDet: 2nd Place Solutions to Open Images CompetitionPFDet: 2nd Place Solutions to Open Images Competition
PFDet: 2nd Place Solutions to Open Images CompetitionShotaro Sano
 
Binarized Neural Networks
Binarized Neural NetworksBinarized Neural Networks
Binarized Neural NetworksShotaro Sano
 
ディリクレ過程に基づく無限混合線形回帰モデル in 機械学習プロフェッショナルシリーズ輪読会
ディリクレ過程に基づく無限混合線形回帰モデル in 機械学習プロフェッショナルシリーズ輪読会ディリクレ過程に基づく無限混合線形回帰モデル in 機械学習プロフェッショナルシリーズ輪読会
ディリクレ過程に基づく無限混合線形回帰モデル in 機械学習プロフェッショナルシリーズ輪読会Shotaro Sano
 
Microsoft Malware Classification Challenge 上位手法の紹介 (in Kaggle Study Meetup)
Microsoft Malware Classification Challenge 上位手法の紹介 (in Kaggle Study Meetup)Microsoft Malware Classification Challenge 上位手法の紹介 (in Kaggle Study Meetup)
Microsoft Malware Classification Challenge 上位手法の紹介 (in Kaggle Study Meetup)Shotaro Sano
 
サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会
サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会
サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会Shotaro Sano
 

Más de Shotaro Sano (6)

AutoML in NeurIPS 2018
AutoML in NeurIPS 2018AutoML in NeurIPS 2018
AutoML in NeurIPS 2018
 
PFDet: 2nd Place Solutions to Open Images Competition
PFDet: 2nd Place Solutions to Open Images CompetitionPFDet: 2nd Place Solutions to Open Images Competition
PFDet: 2nd Place Solutions to Open Images Competition
 
Binarized Neural Networks
Binarized Neural NetworksBinarized Neural Networks
Binarized Neural Networks
 
ディリクレ過程に基づく無限混合線形回帰モデル in 機械学習プロフェッショナルシリーズ輪読会
ディリクレ過程に基づく無限混合線形回帰モデル in 機械学習プロフェッショナルシリーズ輪読会ディリクレ過程に基づく無限混合線形回帰モデル in 機械学習プロフェッショナルシリーズ輪読会
ディリクレ過程に基づく無限混合線形回帰モデル in 機械学習プロフェッショナルシリーズ輪読会
 
Microsoft Malware Classification Challenge 上位手法の紹介 (in Kaggle Study Meetup)
Microsoft Malware Classification Challenge 上位手法の紹介 (in Kaggle Study Meetup)Microsoft Malware Classification Challenge 上位手法の紹介 (in Kaggle Study Meetup)
Microsoft Malware Classification Challenge 上位手法の紹介 (in Kaggle Study Meetup)
 
サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会
サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会
サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会
 

Dropout Distillation

  • 1.    Dropout Distillation Samuel Rota Bulò, Lorenzo Porzi , Peter Kontschieder ICML2016読み会 紹介者:佐野正太郎 株式会社リクルートコミュニケーションズ
  • 2. (C)Recruit Communications Co., Ltd. 背景:Dropout学習 •  ニューラルネットワークの過学習を抑制する手法 •  学習ステップ毎にランダムに一部のユニットを落とす •  暗に多数のネットワークのアンサンブルモデルを学習している •  [Srivastava et al., 2014] 1 学習対象のネットワーク 学習ステップ1 学習ステップ2 ・・・ 学習時
  • 3. (C)Recruit Communications Co., Ltd. 背景:Dropoutにおける予測計算 2 Doropout学習時にはネットワーク構造がランダム => 予測時にどの構造を採用するか? 理想:全てのDropoutパターンでの予測計算の期待値をとる Standard Dropout [Srivastava et al., 2014] •  予測時にはユニットを落とさない •  各ユニットの出力を (1 – dropout率) でスケールすることで実用的な精度が得られる Monte-Carlo Dropout [Gal & Ghahramani, 2015] •  予測時に複数のDropoutパターンを試して平均をとる •  予測の計算コストが高い代わりにStandard Dropoutよりも良い精度が得られる
  • 4. (C)Recruit Communications Co., Ltd. 背景:Distillation 3 Distilling the knowledge in Neural Network [Hinton et al., 2014] •  distill = 蒸留する •  複数のネットワークや複雑なネットワークを単一の小さなモデルに圧縮する手法 蒸留モデル アンサンブルモデル
  • 5. (C)Recruit Communications Co., Ltd. 提案手法:Dropout Distillation 概要 •  Dropout学習が暗に獲得しているアンサンブルモデルを圧縮/蒸留(Distillation)する •  Dropout学習後モデルのMonte-Carlo予測を模倣する新しいモデルを学習する 利点 •  Standard Dropoutと同じ予測計算コストでStandard Dropoutよりも高い予測精度 •  半教師あり学習への応用可能性:教師信号が欠損したデータをDistillationフェーズで活用できる •  モデル圧縮への応用可能性:Dropuoutで複雑なモデルを学習してDistillationフェーズで圧縮できる 欠点 •  Distillationフェーズに余計な時間がかかる 4
  • 6. (C)Recruit Communications Co., Ltd. 提案手法:Dropout Distillation 5 Dropout 学習済み モデル 生徒モデル 損失関数 Dropout パターン
  • 7. (C)Recruit Communications Co., Ltd. 提案手法:Dropout Distillation 6 教師モデル (Dropout学習済み) 生徒モデル Distillationフェーズでは 教師モデルの振る舞いを真似るよう 生徒モデルを学習する 通常のDropout学習で 教師となるモデルを獲得
  • 8. (C)Recruit Communications Co., Ltd. 提案手法:Dropout Distillation 7 Distillation用 学習データ (教師信号無し) 教師モデル (Dropout学習済み) 生徒モデル 生徒モデルの出力 出力間の損失を 埋めるように 生徒モデルの パラメタを更新 教師モデルの出力 生徒モデルには ドロップアウトをかけない 教師モデルにドロップアウトを かけながら出力データを生成
  • 9. (C)Recruit Communications Co., Ltd. 提案手法:Dropout Distillation 8 Distillation用 学習データ (教師信号無し) 教師モデル (Dropout学習済み) 生徒モデル 生徒モデルの出力 教師モデルの出力 教師モデルと生徒モデルの ネットワーク構造は違っていてもよい データはDropoutフェーズから流用可 新しいデータを用意するのも可
  • 10. (C)Recruit Communications Co., Ltd. 理想の予測関数 •  全てのDropoutパターンでの出力期待値 •  Dropoutパターンはユニット数に対し指数関数的に増加するので事実上計算できない 問題設定 •  『理想の予測関数』を教師モデルとした生徒モデルを学習したい どうやって『理想の予測関数』を計算に取り入れるか? Dropout学習済みモデル 導出 9 理想の予測関数 損失関数 生徒モデル 評価できない Dropoutパターン
  • 11. (C)Recruit Communications Co., Ltd. アプローチ •  『理想の予測関数』をDropout学習済みモデルで置き換える •  損失関数がBregmanダイバージェンスのとき以下の最小化問題が等価 Bregmanダイバージェンス •  二乗損失・Logistic損失・KLダイバージェンスなどを一般化したもの Dropout 学習済み モデル 導出 10 生徒モデル 微分可能な凸関数 Dropoutパターン この表現を形にしたのが スライド5〜8のアルゴリズム
  • 12. (C)Recruit Communications Co., Ltd. 証明 qに関係ないので定数とみなせる 導出 11 本来の最小化対象 Dropout Distillationでの最小化対象
  • 13. (C)Recruit Communications Co., Ltd. 実験1:予測計算手法による性能比較 12 MNIST/CIFAR10/CIFAR100データセットで3予測手法のエラー率比較 •  Standard Dropout •  Monte-Carlo Dropout(100サンプリング) •  Dropout Distillation 実験手順 1.  Dropout学習でベースラインモデルを獲得(300エポック) 2.  ベースラインモデルでStandard DropoutとMonte-Carlo Dropoutの性能評価 3.  ベースラインモデルを教師としてDropout Distillation(30エポック) –  生徒モデルのネットワーク構造はベースラインモデルと同様 –  ベースラインモデルの学習後パラメタで生徒モデルを初期化 –  ベースラインモデルの入力データを流用(pixel毎に確率0.2で値をゼロ化) 4.  生徒モデルでDropout Distillationの性能評価
  • 14. (C)Recruit Communications Co., Ltd. 実験1:予測計算手法による性能比較 13 •  平均エラー率は Standard > Distillation > Monte-Carlo の順 •  Monte-CarloよりDistillationの方がパフォーマンスの分散は低い
  • 15. (C)Recruit Communications Co., Ltd. 実験2:Distillationに使うデータセットによる性能比較 14 Distillationフェーズの入力データについて3シナリオで性能比較 •  [Train] 教師モデルのトレーニングセットをそのまま利用 •  [Pert. Train] 教師モデルのトレーニングセットをピクセル毎に確率0.2で値をゼロ化 •  [Test] テストデータを利用 どのシナリオが 優れているかは 場合による
  • 16. (C)Recruit Communications Co., Ltd. 実験3:モデル圧縮への応用可能性 15 CIFAR10/Quickでユニット数を削減した場合のパフォーマンス変化 •  [Baseline] Dropout学習のみで削減後モデルを学習 •  [Distillation] Dropoutフェーズで削減前モデルを学習してDistillationフェーズで削減後モデルに圧縮 青枠内では『Dropoutフェーズで複雑なモデルを学習 => Distillationフェーズで圧縮』が有効に働いている FC層からのみユニットを削った場合 全層からフィルタ/ユニットを削った場合
  • 17. (C)Recruit Communications Co., Ltd. 従来手法 •  Standard Dropout:予測時間が短いけど精度が低め •  Monte-Carlo Dropout:予測時間が長いけど精度が高め 提案手法の主な貢献 •  Standard Dropoutと同じオーダーの予測時間 •  安定してStandard Dropoutよりも良い精度が出る 場合によって効いてくるメリット •  教師信号が欠損したデータをDistillationフェーズで活用 •  Dropuoutで複雑なモデルを学習してDistillationフェーズで圧縮 まとめ 16