web-dev-qa-db-ja.com

小さな画像データセットのためのデータ増強技術?

現在、私は Flickrlogos-32 に似た小さなロゴデータセットを深いCNNでトレーニングしています。より大きなネットワークをトレーニングするには、より多くのデータセットが必要であるため、増強を使用します。私が今している最高の方法は、アフィン変換を使用することです(特徴的な正規化、特徴的な中心、回転、幅、高さのシフト、水平垂直フリップ)。しかし、より大きなネットワークの場合、より多くの増強が必要です。 kaggleの国家データサイエンスボウルの フォーラム で検索しようとしましたが、あまり助けが得られませんでした。 here が指定された一部のメソッドにはコードがありますが、何が役立つかわかりません。アフィン変換以外のこのタイプの(または一般的な画像の)データセットに適用できる他の(またはより優れた)画像データ増強技術とは何ですか?

15
whitewalker

適切な要約を見つけることができます ここ 、データ拡張に関するセクション1:つまり、flipsランダムクロップおよびカラージッタリングおよび照明ノイズ

Krizhevsky et al。 2012年に有名なAlex-Netをトレーニングする際に、ファンシーPCAを提案しました。ファンシーPCAは、トレーニング画像のRGBチャンネルの強度を変更します。

または、Kaggle Galaxy Zooチャレンジをご覧ください。受賞者は 非常に詳細なブログ記事 を作成しました。それは同じ種類のテクニックをカバーします:

  • 回転、
  • 翻訳、
  • ズーム、
  • フリップ、
  • 色の摂動。

述べたように、彼らは「リアルタイムで、すなわちトレーニング中に」それも行います。

たとえば、Facebookによる実用的な Torch実装 です( ResNet トレーニング用)。

16
deltheil

私の修士論文、80ページ でいくつかの増強技術を集めました。以下が含まれます。

  • ズーム、
  • 切り抜き
  • フリップ(水平/垂直)
  • 回転
  • スケーリング
  • 剪断
  • チャネルシフト(rgb、hsv)
  • コントラスト
  • ノイズ、
  • ケラレ
3
Martin Thoma