Yolo 深圳
深セン
今すぐ参加
用語集

モデル量子化

モデル量子化でAIのパフォーマンスを最適化します。サイズを縮小し、速度を向上させ、エネルギー効率を高めて、実世界での展開を改善します。

モデル量子化は、機械学習における革新的なテクニックである。 機械学習における 計算コストとメモリー・コストを削減するために考案された 機械学習における変換技術である。モデルのパラメータ モデルのパラメータ(特に重みと活性度)を、高精度浮動小数点数(通常は32ビット、FP32と呼ばれる)から8ビット整数(INT8)のような低精度フォーマットに変換することで、計算コストを削減する。 FP32)から8ビット整数(INT8)のような低精度フォーマットに変換することで、開発者はモデルのファイルサイズを大幅に縮小することができる。 モデルのファイルサイズを大幅に縮小できる。このプロセスは 限られたリソースのハードウェア上で効率的なモデル展開を可能にし、高度なAI機能を確保するために不可欠です。 このプロセスは、限られたリソースのハードウェア上で効率的なモデル展開を可能にするために不可欠であり、スマートフォンから産業用センサーまで、あらゆるもので高度なAI機能がスムーズに動作することを保証する。 産業用センサーに至るまで、高度なAI機能がスムーズに動作することを保証する。

モデル量子化の仕組み

量子化の核となるメカニズムは、連続的な値の大きな範囲を、離散的な値の小さなセットにマッピングすることである。 値にマッピングすることである。典型的なディープラーニング・モデルでは、パラメータは32ビット浮動小数点数として保存され、学習段階で高い精度を維持する。 として保存される。しかし 推論(モデルが予測を行う段階)では、このレベルの精度が不要になることがよくあります。

量子化によってこれらの値が圧縮され、モデルの重みをフェッチするのに必要なメモリ帯域幅が削減される。 モデルの重みを取得するのに必要なメモリ帯域幅を削減し、数学演算を高速化します。 演算が高速化される。CPUやGPUのような GPUのような特殊なアクセラレーターを含む最新のハードウェアは は、浮動小数点演算よりも高速でエネルギー効率に優れた整数演算専用の命令セットを備えています。 より高速でエネルギー効率に優れています。この最適化は この最適化により、推論の待ち時間を最小限に抑え、リアルタイム・アプリケーションで リアルタイム・アプリケーションでのユーザー・エクスペリエンスが向上します。

量子化の種類

この最適化を適用するには、主に2つのアプローチがあり、それぞれ開発ライフサイクルの異なる段階に対応している。 ライフサイクルに対応する:

  • ポストトレーニング量子化(PTQ):この手法はモデルが完全に学習された後に適用される。この方法には アクティベーションとウェイトのダイナミックレンジを決定するためのキャリブレーションデータセットが必要です。以下のようなツールがある。 TensorFlow Liteのようなツールは のようなツールは、PTQを強力にサポートしており、迅速な最適化のための一般的な選択肢となっている。
  • 量子化を考慮したトレーニング(QAT):このアプローチでは、モデルは訓練プロセス自体の間に量子化の影響をシミュレートする。 をシミュレートする。偽の」量子化ノードを導入することで、ネットワークは低い精度に適応することを学習する。 は低い精度に適応するように学習し、多くの場合、PTQと比較して精度が向上します。このテクニックについては このテクニックについては 量子化を考慮したトレーニング(QAT) のページをご覧ください。

実際のアプリケーション

量子化はエッジAIの基礎であり、クラウド接続に依存することなく、デバイス上でローカルに複雑なタスクを実行することを可能にする。 クラウド接続に依存することなく、デバイス上でローカルに複雑なタスクを実行できるようにする。

  1. モバイルコンピュータビジョン:リアルタイムの背景ぼかしや顔フィルタのような機能を提供するスマートフォンアプリは、量子化されたモデルに依存している。 のような機能を提供するスマートフォンアプリは、量子化されたモデルに依存しています。例えば 例えば、スマホ上で物体検出モデルを実行するには、バッテリーの消耗や過熱を防ぐために高い効率が必要です。 を必要とします。
  2. 産業用IoTとロボティクス:ロボット工学では ロボット工学では、自律型ユニットは多くの場合バッテリーで動作し のような組み込みプロセッサを使用します。 NVIDIA Jetsonのような組み込みプロセッサを使用します。量子化されたモデルによって ロボットは、ナビゲーションと障害物回避のための視覚データを最小限の遅延で処理することができます。 不可欠です。

Ultralytics YOLO量子化の実装

Ultralytics フレームワークは、モデルを量子化しやすい形式にエクスポートするプロセスを簡素化します。次の をエクスポートする方法を示します。 YOLO11モデルをTFLite にエクスポートする方法を示しています。このプロセスでは、指定されたデータを使用して較正が自動的に処理されます。

from ultralytics import YOLO

# Load the standard YOLO11 model
model = YOLO("yolo11n.pt")

# Export to TFLite format with INT8 quantization
# The 'data' argument provides calibration images
model.export(format="tflite", int8=True, data="coco8.yaml")

量子化と他の最適化手法

量子化を他のモデル最適化戦略と区別することは有益である。 モデル最適化戦略と区別することは有益である、 これらはしばしば併用されるが、動作は異なるからだ:

  • 量子化と刈り込みの比較:量子化が重みの精度を下げるのに対して、モデル刈り込みは不必要な重みを取り除く、 モデルの刈り込みは、不要な接続(重み 結合(重み)を完全に削除し、疎なネットワークを作成する。プルーニングは構造を変えるが、量子化 はデータ型を変更する。
  • 量子化 vs 蒸留: 知識の蒸留は、より大きな教師モデルを模倣するため より大きな教師モデルを模倣するために、より小さな生徒モデルを訓練する。その後、量子化を生徒モデルに適用することで、さらにサイズを小さくすることができます。 サイズを小さくすることができます。
  • 量子化と混合精度: 混合精度は主にトレーニング技術である FP16とFP32を混ぜて使用することで、GPUでの学習を高速化し、メモリ使用量を削減します。 は整数を使った推論時間の最適化です。

今後の展開

ハードウェア・アクセラレータがより専門的になるにつれ、量子化の重要性はますます高まっている。今後のUltralytics YOLO26のような将来のUltralytics研究は、積極的な量子化に対してネイティブにロバストなアーキテクチャを設計することで、効率をさらに押し上げることを目指している。 積極的な量子化に対してネイティブにロバストなアーキテクチャを設計することで、効率をさらに押し上げ、高性能なコンピュータ・ビジョンの実現を目指している。 高性能コンピュータビジョン これにより、高性能コンピュータ・ビジョンが最小のエッジ・デバイスでも利用できるようになります。

より広い互換性のために、量子化されたモデルは、次のような相互運用可能な標準を使用して展開されることが多い。 ONNXまたは最適化された推論エンジン 最適化された推論エンジン TensorRTOpenVINO.

Ultralytics コミュニティに参加する

AIの未来を共に切り開きましょう。グローバルなイノベーターと繋がり、協力し、成長を。

今すぐ参加