takuroooのブログ

勉強したこととか

Random Erasing Data Augmentation

Data augumentation関連の論文メモ
図は論文からの引用

目次

概要

入力画像上に所定パラメータに従った矩形領域を生成するRandom Erasingというデータ拡張手法の提案。

f:id:takuroooooo:20190714182748p:plain

論文リンク

https://arxiv.org/pdf/1708.04896.pdf

著者

  • Zhun Zhong †§
  • Liang Zheng §
  • Guoliang Kang §
  • Shaozi Li †
  • Yi Yang §

†:Cognitive Science Department, Xiamen University, China
§:University of Technology Sydney

従来の課題

  • レーニングデータに対して、モデルの重みパラメータが多いと汎化能力が低下し、トレーニングデータに対してoverfittingしてしまう。
  • occlusion は汎化能力に対する影響が強い。しかしocclusionがあるトレーニングデータは少ない。
  • occlusion を施した画像を手動で生成することもできるがコストがかかる上に、occlusionのバリエーションも限定されてしまう。

提案手法

アルゴリズム

Radnom Erasing

  • レーニング中に、入力画像に対して矩形を重畳することでocclusionに対応したデータ拡張を実現する。
  • 矩形を生成するために以下のパラメータを決定する。
    • 矩形を描画する画像上のx,y座標
    • 矩形の幅と高さ
    • 矩形を埋める値
  • 実装が容易。

以下詳細なアルゴリズム

f:id:takuroooooo:20190714182649p:plain

記号 意味
p Random Erasingを実行する確率
S 入力画像の面積
H, W 入力画像の高さと幅
sl, sh 入力画像面積に対する矩形面積の比率のレンジ
r1, r2 画像上に描画される矩形のアスペクト比のレンジ
Se 画像上に描画される矩形の面積
He, We 画像上に描画される矩形の高さと幅
re 画像上に描画される矩形のアスペクト比 He/We
xe, ye 画像上に描画される矩形のxy座標

実験では以下の設定パラメータが一番性能が良いとされている。

  • p=0.5
  • sl=0.02, sh=0.4
  • r1=1/r2=0.3, r2=3.3

結果

f:id:takuroooooo:20190714190201p:plain Classificationの結果。 異なるモデル、データセットにおいてもRandom Erasingを使用することでテストエラーが下がっている。

矩形領域を埋める値

矩形領域をどんな値で埋めるか4パターン実験した。

  1. RGBそれぞれ[0-255]のランダム値を割りあてる。(RE-R)
  2. ImageNetの平均値 [125, 122, 114]。(RE-M)
  3. 全て0。(RE-0)
  4. 全て255。(RE-255)

実験では1のランダム値で矩形を埋める方法が最も性能が良かった。

f:id:takuroooooo:20190714185548p:plain

Object Detectionへの適用

Object Detectionではトレーニングデータに物体の位置情報(bounding box)があるので、論文では3つの方法が実験されている。

  1. 矩形を描画する位置を画像全体から選択する。(IRE)
  2. 矩形を描画する位置をbouding box内から選択する。(ORE)
  3. 1と2を組み合わせる。(I+ORE)

f:id:takuroooooo:20190714185901p:plain

実験では3の方法が最も性能が良かった。 f:id:takuroooooo:20190714185136p:plain

自分の実装

github.com