クラシック構成の共通パラメーターと独立環境¶
クラシック物体検出は ATSLegacy 2.7.0、クラシック分類は ATSLegacy 2.5.0 に対応します。バージョン表記は構成・設定のバージョンであり、モダン構成のバージョンではありません。一部の設定欄は共通ですが、データ前処理とパラメーター適用は個別に実装しています。
設定の上書き優先順位¶
選択モデルの YAML と基底設定を読み込み、独立した実験設定を作り、画面で明示した上書きを適用します。内蔵 YAML は書き換えません。「設定を継承」は元の値を維持し、共通の固定値を使う意味ではありません。
エポック数、バッチサイズ、乱数シードには画面の値を直接使用します。既定値はそれぞれ 100、4、42 で、他の最適化設定は既定でモデル設定を使用します。実験ごとに effective_det.yaml または effective_clas.yaml を保存し、実際のサイズ、データパス、クラス、学習率、ローダー設定を確認できます。
重みの初期化¶
| 選択肢 | 実際の動作 |
|---|---|
| 設定ファイルの事前学習設定を使用 | YAML の設定を使用します。URL から重みをダウンロードする場合も、既存キャッシュを使用する場合もあります。すべての顧客端末にキャッシュがあるとは限りません。 |
| ローカルの事前学習済みの重みを使用 | 今回の初期化に使う互換性のある .pdparams を指定します。学習再開のスイッチではありません。 |
| ランダム初期化 | 設定の事前学習済み重みを読み込まず、ランダムなパラメーターから開始します。有効なモデル設定は必要です。 |
オフラインではローカル重みまたはランダム初期化を選択してください。学習構成のフォルダーがあるだけでは、事前学習済み重みも同梱されているとは判断できません。
学習率と最適化手法¶
画面の初期学習率 0 は「設定を継承」で、エンジンの学習率を 0 にする意味ではありません。重み減衰の「設定を継承」も上書きしません。
設定を継承するか、Momentum、SGD、Adam、AdamW を選択します。切り替え時に引数構造を調整し、AdamW には以前の正則化辞書ではなく数値の重み減衰を渡します。
| 学習率スケジュール | 動作 |
|---|---|
| 設定を引き継ぐ | 元のマイルストーン、全期間、ウォームアップを保持します。総学習エポック数を変えてもスケジュール全体は自動では変更しません。 |
| 固定学習率 | 今回の設定の初期学習率を使用し、画面からウォームアップは設定しません。 |
| コサインアニーリング | 今回の総エポック数に合わせてスケジュールを再構築します。ウォームアップのエポック数は総数より小さい整数にしてください。 |
学習期間とスケジュールを合わせる
参照設定が 80 または 96 エポックで、今回 300 エポック学習する場合、設定継承では学習終了前に学習率が下限へ達することがあります。期間を合わせるには余弦を選び、最終 YAML を確認してください。
データ拡張と AMP¶
モデルの拡張設定を継承すると元の方針を保持します。ランダム拡張を無効にすると、学習時のランダム処理を検証用前処理に置き換えます。正規化、チャンネル並び替え、必要なサイズ処理は残ります。
AMP は設定の継承・無効・有効から選択します。明示的な有効化には GPU が必要で、CPU 学習では無効です。設定を継承しても GPU 上で必ず有効になるわけではなく、モデル設定に従います。
Windows の workers と GPU 選択¶
Windows のクラシック環境ではネイティブのマルチプロセス読み込みに制限があります。workers>0 の場合、独立プロセス内のスレッドで読み込みと前処理を並列化します。0 は従来の方式です。まず 2 または 4 を試し、大きい値ほど速いとは考えないでください。
各タスクは選択した NVIDIA GPU を単独で使用します。複数搭載時は任意のカードを選択できますが、Windows ネイティブで同じクラシックモデルを複数 GPU によって共同学習することはできません。独立プロセス内では通常 GPU 0 と表示されます。これは可視デバイスのマッピングであり、物理カードの選択を無視したことを意味しません。
出力ルート配下に毎回タイムスタンプ付きの独立フォルダーを生成します。学習と自動エクスポートにはクラシックの独立環境を使用し、モダン構成や異常検出の環境を変更しません。全パラメーターの範囲はパラメーター一覧を参照してください。