实现随机搜索
超参数搜索需要较高的计算成本来尝试不同的超参数取值,但通常能带来性能提升。本练习中,您将实现一个随机搜索算法。
您将从均匀分布中随机采样 10 个学习率和动量的取值。为此,请使用 np.random.uniform() 函数。
numpy 包已作为 np 导入,并且已提供 plot_hyperparameter_search() 函数用于可视化您的结果。
本练习是课程的一部分
使用 PyTorch 的深度学习入门
练习说明
- 随机采样一个介于
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)