LoginSignup
5
1

More than 3 years have passed since last update.

論文まとめ:Manifold Mixup: Better Representations by Interpolating Hidden States

Last updated at Posted at 2019-07-18

はじめに

ICML 2019 より以下の論文
[1] V. Verma, et. al. "Manifold Mixup: Better Representations by Interpolating Hidden States"
を超簡潔にまとめ。

arXiv:
https://arxiv.org/abs/1806.05236

概要

  1. mixup をhidden 層にまで拡張させたら汎化性能がよくなった

手法

まず用語の定義から
$g_k(x)$ :入力データ $x$ の $k$ 層におけるfeature map。
$f(x) = f_k (g_k(x))$ :feature map $g_k(x)$ からの出力。
$(x,y)$ および $(x',y')$ データとtarget のペア。
$\lambda \sim {\rm Beta}(\alpha, \alpha)$ :$\lambda$ はベータ関数 $(\alpha, \alpha)$ に従う定数。
${\rm{Mix}}_{\lambda} (a, b) = \lambda \cdot a + (1-\lambda) \cdot b$ :データ $a$ と $b$ との mixup。

以上を用いて manifold mixup は

(\tilde{g_k}, \tilde{y}) := ({\rm{Mix}}_{\lambda} (g_k(x), g_k(x')),{\rm{Mix}}_{\lambda} (y, y'))

として、hidden 層 $k$ においてminibatchを作成するだけ。

そしてこれの出力に対するloss

L(f) = \mathbb{E}_{(x,y) \sim P} \mathbb{E}_{(x',y') \sim P} \mathbb{E}_{\lambda \sim {\rm Beta}(\alpha, \alpha)} \mathbb{E}_{k \sim \mathcal{S}} l (f_k ({\rm Mix}_\lambda(g_k(x),g_k(x'))), {\rm Mix}_\lambda(y,y'))

を最小化する。

ただし、実用上はminibatch ごとに $\lambda$ と適応するhidden層 $k$ を固定する。こうしても精度は変わらないらしい。

効果

manifold_mixup_img01.png

図(a)と(d)が本手法を用いない場合で、(b)と(e)が用いた場合。

(a)と(b)は2次元入力データの分布だが、用いない(a)と比べて用いる(b)はデータの境界面が滑らかになっている

(d)と(e)はhidden 層の 分布だが、用いない(d)と比べて用いた(e)は綺麗にわかれている。

(c)は1層目のsingular value、(f)は3層目のsingular valueだが、用いた場合は flattenになっている。

5
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
1