モデルのトレーニング
ラベル付けを完了したらモデルをトレーニングします。「トレーニング」パレットでは、トレーニングのパラメータとトレーニングモデルを設定し、トレーニングに関する情報を確認することができます。
トレーニングパラメータ
トレーニングパラメータ設定 をクリックして「トレーニングパラメータ」ウィンドウを開きます。
データ拡張
モデルトレーニングのデータに現場のあらゆる状況を反映する必要がありますが、現場では、異なる角度や移動範囲を反映する画像を全部取得するのは困難です。その場合、データ拡張機能を使用し、元画像に基づいてより多様なデータを生成します。拡張のパラメータは、現場の状況と併せて調整してください。例えば、ワークが回転しない現場で、回転のパラメータを入れるとモデルの精度が落ちます。
カーソルを に合わせるとパラメータ調整の効果を確認できます。 |
-
輝度
画像の明るさです。照明が激しく変化する現場では、輝度 を調整し、異なる照明環境のデータセットを作成します。
-
コントラスト
画像の明暗の差です。対象物が背景に溶け込む場合、コントラスト を調整して、対象物がはっきり見えるようにします。
-
並進
画像の全てのピクセルを指定したオフセットで移動します。物体(箱やパレットなど)の位置が大幅に変わる場合、並進 パラメータで縦と横方向の並進量を調整します。
-
回転
画像がある点を中心に一定の角度回転して新たな画像になります。普通、初期値を使用すればいいです。対象物の姿勢変化が大きい場合、回転 パラメータを調整して様々な角度回転した画像データを作成します。
-
スケーリング
画像をある比例で縮小、拡大します。対象物が配置されている高さの変化が大きい場合、スケーリング パラメータを調整して異なる高さで撮影する対象物の画像を生成します。
-
左右反転
画像を左右 180° 反転します。対象物が左右対称する場合、左右反転 をオンにします。
-
上下反転
画像を上下 180° 反転します。対象物が上下対称する場合、上下反転 をオンにします。
-
ラベル膨張
「欠陥セグメンテーション」モジュールにのみ使用できます。 画像にラベルを付けた欠陥領域を拡大します。普通は使用しませんが、欠陥の寸法が小さい場合に使用できます。ラベル膨張 をチェックするとラベルを付けた欠陥領域を拡大し、トレーニングの効果を確保できます。
トレーニングパラメータ
-
入力画像のサイズ
トレーニング時にニューラルネットワークに入力する画像の幅と高さ(単位:ピクセル)。普通はデフォルトのパラメータ値を使用すればいいです。画像にある対象物または欠陥領域が小さい場合に 入力画像のサイズ を大きくすることができます。画像のサイズが大きいほどモデルトレーニングの精度は向上しますがトレーニングの速度は遅くなります。
-
バッチサイズ
ニューラルネットワークのトレーニングを実行するたびに使用するサンプル数です。デフォルトの設定を使用すればいいです。トレーニングの速度を向上させたい場合に バッチサイズ パラメータ値を大きく調整します。ただし、あまり大きく調整したらメモリ使用量も高くなります。
-
モデルタイプ
「欠陥セグメンテーション」モジュール
標準
普通は 標準 モードを使用することを推奨
拡張
モデルの効果が良くないまたは高い精度が求められる場合に 拡張 使用する。ただし、このモードではトレーニングの速度が遅くなる
「インスタンスセグメンテーション」モジュール
標準(GPU を推奨)
モデルを GPU で推論実行するときに使用する
軽量(CPUを推奨)
モデルを CPU で推論実行するときに使用する
-
評価間隔
モデルトレーニング時、毎回評価するまで実行するトレーニングのエポック数です。初期値を使用することを推奨します。評価間隔 を大きく調整するとトレーニングのスピードは速くなり、小さく調整するとトレーニングのスピードは遅くなりますが最適なモデルの選出に役立ちます。
-
エポック合計数
モデルトレーニングのエポックの合計数です。通常は初期値を使用しても構いません。対象物の特徴が複雑な場合、この数を増やしてください。モデルがより良く収束しますが、一方で学習時間が長くなります。
エポック合計数が大きいほど効果は良くなるわけではありません。合計数が大きすぎると過学習が起きるかもしれません。 -
学習率
学習率は 1 回のトレーニングでニューラルネットワーク内の重みやバイアスを更新する量の調整値です。デフォルトの設定を使用することを推奨します。チャートの損失曲線がゆっくりと収束する場合は、学習率を適切に上げます。曲線の変化が激しい場合は学習率を下げます。
-
GPU ID
お使いのデバイスのグラフィックカード情報です。複数の GPU がある場合、GPU を指定することができます。
-
モデルの簡略化
ニューラルネットワークを簡略化します。デフォルトでチェックが外れています。トレーニングセットが簡単な場合、これをチェックしてトレーニングと推論の速度を向上させることができます。
-
トレーニング目標の最大数
デフォルトでチェックが外れています。認識可能な目標の最大数を限定します。チェックして値を設定すると推論の速度を上げられます。普通、このパラメータは GPU 使用率を下げられます。
モデルの微調整
モデルを使用して現場のニーズを満たさない場合、モデルの反復を行います。従来はデータセットを追加して再度トレーニングを行いますが、全体の正確度が落ちるほか、時間もかかります。 「モデルの微調整」を使用して反復すると、全体の正確度を確保でき、時間の削減も可能です。
このステップは、「開発者モード」にのみ使用できます。 | をクリックして「開発者モード」をチェックします。
モデル微調整のステップ:
-
認識の効果がよくない画像をトレーニングセットと検証セットに追加します。
-
トレーニングパラメータ設定ウィンドウで微調整をオンにして学習率を適切に下げます。エポックを 50~80 程度に設定します。
-
パラメータの調整を完了して確認してからトレーニングを実行します。
スーパーモデルを微調整する場合、インスタンスセグメンテーションのトレーニングパラメータ設定ウィンドウで微調整をオンにしてスーパーモデルのディレクトリを選択します。 |