[dl輪読会]regularization with stochastic transformations and perturbations for deep semi...

18
+ Regularization With Stochastic Transformations and Perturbations for Deep Semi-Supervised Learning 工学系研究科 システム創成学専攻 加藤・中村研 M1? 岡本 弘野 17/02/09

Upload: deeplearningjp2016

Post on 03-Mar-2017

53 views

Category:

Technology


4 download

TRANSCRIPT

+

Regularization With Stochastic Transformations and Perturbations for Deep Semi-Supervised Learning工学系研究科システム創成学専攻加藤・中村研 M1? 岡本 弘野

17/02/09

+Introduction

n ラベルなしデータの適用 n  convnetは大量のパラメタがあり、大量の学習データがないと過学習する

n  しかし、大量のデータセットをつくるのはコストがかかる

n  一方で、ラベルなしデータは集めやすく、convnetの性能をあげるために利用したい

n ランダム化 n  確率的勾配降下法、ドロップアウト、データのランダムな変形

n  同じデータから、ランダム化によって、違う出力を生み出すことを利用する

17/02/09

1

+Related Work

n 古典的なアプローチ n  データとラベルの結合分布のモデル化

n  GMM

n  HMM

n  ラベルありデータとなしデータのマージン最大化

n  TSVM

n  S3VM

n これらの半教師学習はサンプル間の類似度を利用 n  あるラベルなしデータがAのラベルデータに似ていれば、そのデータはAとみなす

17/02/09

2

+Related Work

n 半教師deep learning n  ConvNetの性能をあげるためにラベルなしデータをつかう

n  convnetのフィルターをpretrainするなど

n ほかの論文でのアプローチ n  predictive sparse decomposition

n  resion embedding

n  ladder networks

17/02/09

3

+Method

n 教師なしloss関数を定義 n  Transformation/stability loss function

n  変化/安定損失関数

n 同じデータによる違う出力のペアの差の二乗和を最小化する

n 勾配降下法で最適化

17/02/09

4

+Method

n  idea n  どんなランダムなデータ変形(線形、非線形変換)にたいしても、モデルの予測は同じであるべき

17/02/09

5

+Method

n  idea n  どんなネットワークでも(dropoutやランダムなpooling)、モデルの予測は同じであるべき

17/02/09

6

+Methodn もう一つ、教師なし学習のloss関数を定義

n  Mutual Exclusivity loss function

n  相互排他的損失関数

n  決定境界をどんなサンプルからもできるだけ遠い所に置こうとする。結果的に、密度の低いところに決定境界が置かれる

17/02/09

7

+Method

n 最終的に、教師なし損失関数と教師あり損失関数の和を最小化すればよい

17/02/09

8

+Experiments and Results

n  MNIST n  100サンプルでstate of the art

n  SVHN and NORB

n  CIFAR10 n  state of the art

n  CIFAR100 n  state of the art

n  ImageNet

17/02/09

9

+Experiments and Results

n  MNIST n  100サンプルではstate of the art

n  全ラベルでは、誤差0.24が最高精度[40]

17/02/09

10

+Experiments and Results

n  SVHN and NORB

17/02/09

11

+実際に実装してみた(ができなかった)

n  MNISTでやってみた n  データオーグメンテーションによるlossTS関数の最小化 n  lossME関数の最小化 n  クロスエントロピーによるラベルあり損失関数の最小化

n  tensorflowをつかった n  一部kerasを使っている

n できなかったが、誰かアドバイスをくれることを願ってgithubにあげた n  https://github.com/HironoOkamoto/hoge/blob/master/semi

%20supervised%20mnist%20tensorflow-12.ipynb

17/02/09

12

+ConvNet

n 簡単のため、Lenetをつかった n  batch normalizationも

17/02/09

13

+

17/02/09

14

n データ増やすのはkerasが楽だった

n  Tの部分

変形/安定損失関数

+Fractional Max-Pooling

n ランダムにプーリングする部分 n  tf.nn.fractional_max_pool

n  ここは時間の関係上実装していなかったが、おそらく一番重要

n  jの部分

n  https://arxiv.org/abs/1412.6071

n ドロップアウト

17/02/09

15

+相互排他的損失関数

n 愚直に実装した

17/02/09

16

+損失関数

n ラベルありデータに関しては、クロスエントロピー

n  loss_label = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(logits=output, labels=y))

n  loss = loss_label + lam1 * loss_unlabel_TS + lam2 * loss_unlabel_ME

17/02/09

17