サンプルコードaugmentation深層学習の学習に使う画像枚数が少ない時に水増しして対処することができるaugmentation2019.03.20深層学習は大量な画像を必要とする。深層学習では、複数の層からなるニューラルネットワークを使用している。そのようなニューラルネットワークを構築するために、数万以上のパラメーターが必要である。そのため、深層学習では、これらのパラメーターを決めるためには、大量な画像を必要とする。画像データは(目的に応じて)なるべく様々な環境下で、大量に取得(撮影)しておくことが望ましい。コストや時間などによって、大量なデータを収取できない場合、画像を水増し(augmentation)することができる。方法として、既存の画像を左右反転したり、上下反転したり、回転したりするなど方法がある。既存の画像にノイズやぼかしなどを加えたりする方法もある。確率で画像を回転させる例を示している。度の範囲内でランダムに決める。確率で上下反転させる例を示している。パッケージには、画像にノイズを加える機能が実装されている。次のサンプルコードは、画像に様々なノイズを加える例を示している。例では、回転、反転、ノイズをそれぞれ単独に行なっていた。操作をランダムに組み合わせることで、さらに多様な画像を作り出すことができる。枚の画像を水増ししている例である。