實作隨機搜尋
超參數搜尋需要相當多的運算資源來嘗試不同的超參數值,但通常能帶來效能提升。在這個練習中,你將實作一個隨機搜尋演算法。
你會從均勻分配中各隨機抽樣 10 個學習率與動量的數值。為此,你將使用 np.random.uniform() 函式。
numpy 套件已經以 np 名稱匯入,並且已提供 plot_hyperparameter_search() 函式來視覺化你的結果。
本練習屬於課程
使用 PyTorch 的深度學習入門
練習說明
- 隨機抽樣介於
2與4之間的 learning rate 指數因子,使學習率(lr)落在 10^{-2} 到 10^{-4} 的範圍內。 - 隨機抽樣介於 0.85 與 0.99 之間的動量(momentum)。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
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)