HeadlinesBriefing favicon HeadlinesBriefing.com

MLモデルのサイレントブロードキャストバグ

Towards Data Science •
×

PyTorchとTensorFlowテンソルのサイレントブロードキャストは、機械学習モデルで重大なバグを引き起こし、数千のコンピューティングリソースを浪費します。テンソルの次元が完全に一致しない場合、フレームワークはサイズ1の次元を他の次元に合わせて silently 'ブロードキャスト' し、意図しない行列演算を意図されたベクトル演算の代わりに作成します。例えば、(N, 1)の列ベクトルを(N,)の平坦ベクトルに加えると、(N, N)行列が作成され、N要素ごとの差分ではなくなります。これにより、回帰モデルはバッチ平均を最適化するように最適化され、実際の入出力関係を学習するのではなく、lossカーブは正常に見えながら訓練 toward ゴミが行われます。著者はこのバグにより約4,000ドルのコンピューティングコストを浪費したと推定しています。予防には慎重なテンソル形状の検証とブロードキャストルールの理解が必要で、次元が意図通りに一致するようにします。