ラベル semi-supervised learning の投稿を表示しています。 すべての投稿を表示
ラベル semi-supervised learning の投稿を表示しています。 すべての投稿を表示

2018年6月22日金曜日

論文読み 2017, Mean teachers are better role models: Wieght-averaged consistency targets improve semi-supervised deep learning results

元ネタ: Tarvainen and Valpola, Mean teachers are better role models: Weight-averaged consistency targets improve semi-supervised deep learning results, 2017
図表は特に断りがない限りこの論文から引用

Temporal Ensemblingでは,あるデータ点xxに対して過去に計算した結果z1,...zkz_1, ...z_kのexponential moving average(EMA)を教師モデルの出力z~k+1\tilde{z}_{k+1}としていた.この場合教師モデルが過去のエポック(1,....,k)(1, ...., k)で決まるから,第k+1k+1 エポックで学習してきた情報が教師モデルに統合されておらず,データセットが大きいほど学習のペースが遅くなってしまい,また過去のすべてのデータ点に対する出力を保持する必要がある.
そこで著者らは前のイテレーションにおけるネットワークの重みのEMAを教師モデルとする方法を考え,Mean Teacherと名付けた.


fig.1 Mean Teacherのダイアグラム

2018年6月20日水曜日

論文読み 2017, Temporal Ensembling for Semi-Supervised Learning manifold

元ネタ: Samuli Laine and Timo Aila, Temporal Ensembling for Semi-Supervised Learning, 2017, ICLR 2017
図表は特に断りがない限りこの論文から引用

複数のモデルのensembleは教師の有無にかかわらずよく使われる手法で,dropoutによる性能向上も内部で複数のモデルのensembleが起きているためだという人もいる.この論文ではdropout(とdata augmentation)によるensembleによって高精度な教師モデルを構成し,生徒モデルが教師モデルの出力を真似ることで半教師あり学習を行う.
Data Distillatinを思い出すが,Data Distillationは教師モデルがハードなラベル(すなわちクラスラベルそのもの)を推測してNLLやCrossEntropyをLossとして生徒モデルを最適化したのに対し,こちらでは同じ入力からの教師モデルと生徒モデルの出力の差異をLossとする. またラベル付きのデータ点に対してのみ,CrossEntropyをLossに足して最適化する.

dropoutの場所を変えてensembleを行うΠ\Pi-modelと,過去のepochにおける出力とensembleを行うTemporal ensemblingが提案されている.

Π\Pi-model

同じexample xxについて,確率的なaugmentationやdropoutによってニューラルネットワークfθf_\thetaは非決定的な関数だから,z=fθ(x),z~=fθ(x)z=f_\theta(x), \tilde{z} = f_\theta(x)は異なっているはずで,その差異zz~\|z - \tilde{z}\|を小さくする.さらにxxがラベル付きであるとき,z,z~z, \tilde{z}とそのラベルの乖離を小さくする.この場合,教師モデルと生徒モデルは同じものである.


fig.1 Π\Pi-modelのダイアグラム

fig.2 Π\Pi-modelのアルゴリズム

Temporal ensembling

Π\Pi-modelではネットワークのパラメータθ\thetaを変えずにz,z~z, \tilde{z}を計算したが,Temporal ensemblingでは過去のepochで計算した値のexponential moving averageを教師モデルの出力z~\tilde{z}とする.


fig.3 Temporal Ensemblingのダイアグラム


fig.4 Temporal Ensemblingのアルゴリズム