DeepLearning
CNN
GANs

論文まとめ:mixup Beyond Empirical Risk Minimization

はじめに

H. Zhang らの論文「mixup: Beyond Empirical Risk Minimization」のまとめ

arXivは https://arxiv.org/abs/1710.09412

GitHub上には既に
https://github.com/unsky/mixup
など幾つかの実装が存在する。

要点

  1. 新たな data augmentation 手法である
  2. 別のクラスの2つのデータからある比率で新たなデータを作成し、それに対応するラベルも同じ比率で作成する
  3. $x$を入力データ、$y$をラベルとし、$(x_i,y_i)$と$(x_j,y_j)$という2つのサンプルに対する新たなサンプルは$\lambda \in [0,1]$を用いて以下
\tilde{x} = \lambda x_i + (1-\lambda )x_j \\
\tilde{y} = \lambda y_i + (1-\lambda )y_j

理論的な背景

Empirical Risk Minimization

教師あり学習においては真のデータ$x$、真の目標値$y$とその結合分布$P(x,y)$との関係$f \in \mathcal{F}$とし、lossを$l$とするとリスク関数は

R(f) = \int l(f(x),y)dP(x,y)

となる。しかし実際は真の分布はわからず、入手したデータとラベルの分布$P_{\delta} (x,y)$を用いて

R_{\delta}(f) = \int \mathcal{l}(f(x),y)dP_{\delta}(x,y) = \frac{1}{n} \sum^n_{i=1} l(f(x_i),y_i)

Vicinal Risk Minimization

もっと真の分布$P$に近いものを用いたい。そこで

P_v(\tilde{x} ,\tilde{y}) = \frac{1}{n} \sum^n_{i=1} v(\tilde{x} ,\tilde{y} \ | \ x_i,y_i)

とする。$v$は例えば Gaussian vicinities

v(\tilde{x} ,\tilde{y} \ | \ x_i,y_i)= \mathcal{N}(\tilde{x} - x_i, \sigma^2)

を用いた場合、結局 data augmentation としてGaussian noiseを加えたものになる。

mixupを用いる場合は

v(\tilde{x} ,\tilde{y} \ | \ x_i,y_i) = \frac{1}{n} \sum^n_{j} \mathbb{E}_{\lambda} [\delta(\tilde{x} = \lambda \cdot x_i + (1-\lambda ) \cdot x_j, \tilde{y} = \lambda \cdot y_i + (1-\lambda) \cdot y_j)]

となる。$\lambda$は$\lambda \sim Beta(\alpha, \alpha), \ for \ \alpha \in (0,\infty)$ 。

実験と結果

書きかけ

コーディング例

書きかけ