テクニカルガイド
確率的重み平均
確率的重み平均 (SWA) は、最終スナップショットを保持するだけでなく、トレーニング後半のいくつかのポイントからモデルの重みの単純な平均を取得します。
このガイドを聴くAIによるナレーション · ~2 min
概要
This cheap trick often lands the model in a flatter, wider region of the loss landscape, which tends to generalize noticeably better on unseen data.
ディープダイブ
2018 年に Izmailov、Wilson らによって導入された SWA は、学習率が一定または周期的な SGD は 1 点に収束せず、広く平らな谷の縁で跳ね返るという観察を利用しています。 SWA は、ノイズの多い停止ポイントの 1 つを選択するのではなく、最終エポックに対して適度に高い (多くの場合一定または周期的) 学習率を実行し、通常はエポックごとに訪問する重みを平均します。平均された重みは、平坦な領域の中心近くに位置します。バッチ正規化統計は特定の重みに対して計算されるため、SWA では、平均モデルの BN 実行平均と分散を再計算するために、データに対する追加の前方パスが 1 回必要になります。コストは基本的に無料であり、精度の向上は画像分類器全体およびその他の分類器全体で一貫しています。
現実世界の実装
追加の推論コストなしで、CIFAR および ImageNet 上の ResNet および DenseNet 画像分類器のテスト精度を向上します。
SWAG (SWA-Gaussian) は、1 回のトレーニング実行から安全性を重視した予測のための校正された不確実性推定値を生成します。
Stable Diffusion のような拡散画像ジェネレーターのサンプリング ネットワークを安定させる重みの EMA。
複数の微調整されたチェックポイントを平均して「モデル スープ」を構築し、再トレーニングせずに堅牢性を向上させます。
確率的加重平均法の将来
SWA は、安価なベイジアン不確実性のために SWA-ガウス (SWAG) のようなバリアントを生み出し、平均化のアイデアは現在、拡散モデル、自己教師あり学習、および大規模モデルの事前トレーニングで広く使用されている指数移動平均トリックを支えています。研究では、加重平均法がトレーニング レシピのデフォルトの「フリー ランチ」として残り、独立してトレーニングされたモデル (モデル スープ) をマージし、生の精度とともにキャリブレーションを向上させることにも拡張されることが予想されます。
実践する
なぜそれが重要なのか
- 費用と予算. アーキテクチャの決定により、パフォーマンスと運用コストが何年にもわたって推進されます。
- より明確な判決. 技術教育は、チームが最新のスタックだけでなく、適切なスタックを選択するのに役立ちます。
- 品質管理. より良いエンジニアリングの選択により、本番環境での信頼性に関するインシデントが減少します。
気をつけてください
- 1 つのベンチマークを最適化すると、より広範なシステムの弱点が隠れる可能性があります。
- インフラストラクチャとメンテナンスのコストは過小評価されがちです。
- システムが複雑になるにつれて、セキュリティと可観測性のギャップが拡大する可能性があります。
次のステップ
- 実装前にレイテンシ、品質、コストの目標を定義します。
- 現実的な負荷とデータ条件でのベンチマーク。
- エラー、ドリフト、ユーザーへの影響を計測器で監視します。
- スケーリングの前に、ロールバックとインシデント対応のパスを準備します。
探検を続けましょう
よくある質問
What is Stochastic Weight Averaging?
確率的重み平均 (SWA) は、最終スナップショットを保持するだけでなく、トレーニング後半のいくつかのポイントからモデルの重みの単純な平均を取得します。この安価なトリックにより、モデルは損失状況のより平坦で広い領域に到達することが多く、これにより、目に見えないデータに対して顕著に優れた一般化が行われる傾向があります。
確率的重み平均では実際にどの程度の平均が得られるのでしょうか?
SWA は、予測や勾配ではなく、トレーニングの最終フェーズ中にいくつかのチェックポイントで収集されたモデル パラメーター (重み) を平均します。
SWA が一般化を改善する傾向があるのはなぜですか?
平均化により、解は損失曲面の平坦な領域の中心に向かって移動し、トレイン損失とテスト損失が一致したままになるため、平坦な最小値はより適切に一般化されます。
バッチ正規化を使用するネットワークに対して SWA にはどのような追加手順が必要ですか?
BN 統計は特定の重みに依存するため、平均モデルでは移動平均と分散を再計算するためにデータをさらに 1 回通過する必要があります。
SWA の平均化フェーズでは通常、どのような学習率の動作が使用されますか?
SWA は適度に高い一定学習率または周期学習率を維持するため、SGD はポイントが平均化される広い平坦領域の探索を続けます。
SWA の推論コストは、従来の N モデルのアンサンブルと比較してどうですか?
SWA は多くのチェックポイントを 1 つの平均重みセットに集約するため、推論コストは N ではなく単一モデルと同じになります。