Image Augmentation

モデル性能を向上させるためにデータ拡張画像を作成します。

画像増強は、データセット内で「Train」としてマークされた既存の画像に増強を適用するステップです。このプロセスはモデルの汎化能力を向上させ、未知の画像に対してより効果的に動作するのに役立ちます。

増強はトレーニング時ではなくデータセットバージョンを通じて(「オフライン増強」)適用されます。その理由はいくつかあります:

  1. モデルの再現性が向上する。Roboflowでは、各画像がどのように増強されたかのコピーを保持します。たとえば、モデルが暗い画像よりも明るい画像で良く動作することが分かった場合、低照度のトレーニングデータをより多く収集すべきです。

  2. トレーニング時間が短縮される。増強はCPUに依存した処理です。GPUでトレーニングを行いながら増強をオンザフライで行うと、各エポックでGPUがCPUからの増強済みデータの供給を待つことが多くなります。それが積み重なります。

  3. トレーニングコストが削減される。増強はCPUに依存した処理であるため、高価なレンタルGPUがトレーニング用画像の供給を待つことが減ります。

増強の適用方法

増強は常にトレーニング画像に対して適用されます(その前に) 前処理ステップ。選択した増強は重ね合わせられ、増強設定や各設定の値はランダム化されて各増強画像に適用されます。プロセス中に重複として検出された画像は作成されたバージョンから除外されます。

たとえば、「水平方向に反転」と「ソルトアンドペッパーノイズ」の増強を選択した場合、ある画像はランダムに水平方向に反転され、ランダムなソルトアンドペッパーノイズが付与されます。

増強の制限

増強を含むデータセットバージョンを作成する際、"Maximum Version Size"オプションで含める増強画像の最大数を選択できます。

たとえば、3xを選択すると、最終データセットバージョンには各トレーニング元画像が 前処理ステップ 適用され、選択した設定に基づいて各画像のランダムな2つの増強が含まれます。

データセットに100枚の画像があり train/valid/test の分割が70/20/10で、3x増強を選択した場合、最終データセットは概ね210/20/10の分割になります。

バージョンの最終的な画像数は、画像の重複排除や「Filter Null」のような特定のオプションが出力から画像を削除するため、この推定よりも小さくなる場合があります。

増強オプション

Roboflowの増強は「Basic」または「Enhanced」のいずれかで、2つの異なるレベルで適用できます。

画像レベルの増強

画像レベルの増強は、個々のオブジェクトや領域ではなく画像全体に変換を適用することで新しいトレーニングデータを作成します。画像全体を変更することで、開発者はより広範な視覚条件をシミュレートでき、モデルが新しいデータに対してより良く一般化するのを助けます。

バウンディングボックスレベルの増強

バウンディングボックスレベルの増強は、ソース画像のバウンディングボックスの内容のみを変更することで新しいトレーニングデータを作成します。これにより、開発者は問題の条件により適したトレーニングデータを作成するための制御性を高めることができます。

A 2019年の論文 で、Googleの研究者がバウンディングボックスのみの増強を使用してモデルに最適なデータを作るというアイデアを紹介しています。この論文で研究者らは、特に小規模データセットで学習したモデルに対してバウンディングボックスのみの変更が体系的な改善をもたらすことを示しました。

Enhanced AugmentationsとBounding Box Augmentationsは プレミアム 機能です。

当社のプランとそれに関連する機能の最新情報については、 価格ページ.

詳細を見る

Last updated

Was this helpful?