量子化対応トレーニング(QAT)を使用してエッジデバイス向けにAIモデルを最適化し、リソースが限られた環境で高い精度と効率を保証します。
Quantization-Aware Training(QAT)は、高度なモデル最適化手法であり、数値精度を下げてニューラルネットワーク(NN)をデプロイできるように準備します。32ビット浮動小数点数(FP32)を使用する標準的なトレーニングとは異なり、QATはトレーニングまたは微調整プロセス中に8ビット整数(INT8)計算の影響をシミュレートします。モデルに推論中に発生する量子化エラーを「認識」させることで、QATはモデルが重みを調整して、精度の潜在的な低下を最小限に抑えることができます。これにより、コンパクトで効率的なモデルが実現し、高いパフォーマンスを維持できるため、リソースが限られたハードウェアへのデプロイに最適です。
QAT(Quantization Aware Training)のプロセスは通常、事前学習済みのFP32モデルから始まります。モデルのアーキテクチャに「偽の」量子化ノードが挿入され、浮動小数点値を低精度整数に変換し、元に戻す効果を模倣します。その後、モデルはトレーニングデータセットで再トレーニングされます。この再トレーニング段階で、モデルは標準的なバックプロパゲーションを通じて、量子化に伴う情報損失に適応することを学習します。これにより、モデルは精度低下に対する感度が低い、よりロバストな重みのセットを見つけることができます。深層学習フレームワークであるPyTorchやTensorFlowは、QATワークフローを実装するための堅牢なツールとAPIを提供しています。
QATは、一般的なモデル量子化手法であるPost-Training Quantization(PTQ)としばしば比較されます。主な違いは、量子化を適用するタイミングにあります。
量子化対応学習は、効率が重要なリソース制約のある環境に高度なAIモデルを実装するために不可欠です。
QATは、モデルデプロイメントの最適化のためのいくつかの手法の1つであり、多くの場合、最大の効率を得るために他の手法と組み合わせて使用されます。
Ultralyticsは、ONNX、TensorRT、TFLiteのようなさまざまな形式へのモデルのエクスポートをサポートしており、これらはQATワークフローと互換性があり、IntelやNVIDIAのような企業からの多様なハードウェア全体での効率的なデプロイを可能にします。Ultralytics HUBのようなプラットフォームを使用して、QAT最適化されたモデルを管理およびデプロイできます。QAT後の関連するメトリクスを使用してモデルのパフォーマンスを評価することは、精度要件が満たされていることを確認するために不可欠です。