始める無料で始める

ランダムサーチの実装

ハイパーパラメータ探索は、さまざまなハイパーパラメータ値を試すための計算コストが高い手法ですが、性能向上につながることがあります。この演習では、ランダムサーチアルゴリズムを実装します。

一様分布から学習率とモメンタムの値をそれぞれ10個ずつランダムにサンプリングします。そのために、np.random.uniform() 関数を使用します。

numpy パッケージはすでに np としてインポート済みで、結果を可視化するための plot_hyperparameter_search() 関数も用意されています。

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

PyTorchで学ぶIntroduction to Deep Learning

コースを見る

演習の手順

  • 2 から 4 の間で学習率の指数をランダムサンプリングし、学習率(lr)が \(10^{-2}\) から \(10^{-4}\) の範囲になるようにします。
  • モメンタムを 0.85 から 0.99 の間でランダムにサンプリングします。

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

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

values = []
for idx in range(10):
    # Randomly sample a learning rate factor between 2 and 4
    factor = ____
    lr = 10 ** -factor
    
    # Randomly select a momentum between 0.85 and 0.99
    momentum = ____
    
    values.append((lr, momentum))
       
plot_hyperparameter_search(values)
コードを編集して実行