「Pytorch:LearningRate」の版間の差分

提供:classwiki
ナビゲーションに移動 検索に移動
4行目: 4行目:
まず,作業用ディレクトリに移動した後に,以下のコマンドを実行して,プログラムをダウンロードしてください.
まず,作業用ディレクトリに移動した後に,以下のコマンドを実行して,プログラムをダウンロードしてください.


  wget https://vrl.sys.wakayama-u.ac.jp/class/pytorch_tutorial/exersise_classimbalance/exersise_learningrate.py
  wget https://vrl.sys.wakayama-u.ac.jp/class/pytorch_tutorial/exersise_learningrate/exersise_learningrate.py


データセットはCIFAR-10を用います.(他の演習でダウンロード済みの場合は,以下を実行しなくても構いません.ただし,データセットへのパスを適宜修正してください.)
データセットはCIFAR-10を用います.(他の演習でダウンロード済みの場合は,以下を実行しなくても構いません.ただし,データセットへのパスを適宜修正してください.)

2025年3月24日 (月) 05:14時点における版

学習率をスケジューリングする機能を扱う練習をします.

準備

まず,作業用ディレクトリに移動した後に,以下のコマンドを実行して,プログラムをダウンロードしてください.

wget https://vrl.sys.wakayama-u.ac.jp/class/pytorch_tutorial/exersise_learningrate/exersise_learningrate.py

データセットはCIFAR-10を用います.(他の演習でダウンロード済みの場合は,以下を実行しなくても構いません.ただし,データセットへのパスを適宜修正してください.)

wget -P ./data -r https://vrl.sys.wakayama-u.ac.jp/class/pytorch_tutorial/datasets/cifar-10-batches-py/

ダウンロードしたら,exersise_classimbalance.pyをそのまま実行してください.おそらく,テストデータに対する精度は80%くらいになったと思います.

学習途中での学習率の変更

DNNの学習においては,学習率が小さすぎると学習がなかなか進まず,一方で学習率を大きくすると,重みの更新も大雑把になり,なかなか収束してくれません.そこで,初期学習率を高く設定し,学習が進むにつれて徐々に落としていくのが一般的です.なお,具体的に学習率どの値にすればよいのかは,タスク,データセット,モデルアーキテクチャ,オプティマイザ,その他多くの要因が絡むので,一概には言えません.