1. 学ぶ
  2. /
  3. コース
  4. /
  5. PyTorch による効率的な AI モデルトレーニング

Connected

演習

基本的な PyTorch による混合精度トレーニング

低精度の浮動小数点データ型を使用して、言語翻訳モデルのトレーニングを高速化しましょう。例えば、16ビット浮動小数点データ型(float16)は、32ビットの対応型(float32)の半分のサイズです。これにより、行列の乗算や畳み込みの計算が高速化されます。この処理では、勾配のスケーリングと演算の16ビット浮動小数点へのキャストが必要になることを思い出してください。

dataset、model、dataloader、optimizer は事前に読み込まれています。

指示

100 XP
  • ループの前に、torch.amp.GradScaler を使用して勾配のスケーラーを定義します。
  • ループ内で、torch.autocast をコンテキストマネージャーとして使用し、演算を16ビット浮動小数点データ型にキャストします。
  • ループ内で、損失をスケーリングし、.backward() を呼び出してスケーリングされた勾配を生成します。