始める無料で始める

線形層にプルーニングを適用する

全結合(線形)層を使って画像分類モデルをトレーニングしました。次の課題は、この層に非構造化プルーニングを適用し、性能を大きく損なわずにモデルサイズを削減することです。この作業には、PyTorch の l1_unstructured メソッドを使用します。

モデルは model 変数としてすでに読み込まれています。

この演習はコースの一部です

PyTorch Lightning によるスケーラブルな AI モデルの構築

コースを見る

演習の手順

  • torch.nn.utils からプルーニングモジュールをインポートします。
  • 最終層である model[3] に l1_unstructured プルーニングを適用し、重みの30%を削減します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Import pruning module
import torch.nn.utils.prune as ____
# Before pruning
print(model)
# Apply L1 unstructured pruning to model[3]
prune.____(model[3], name="____", amount=____)
# After pruning
print(model)
コードを編集して実行