开始使用免费开始使用

可视化 Coarse to Fine

您将进行 Coarse to Fine 搜索的第一步。这一步需要先分析在大搜索空间中进行的初始随机搜索结果,然后决定下一步如何细化超参数搜索。

您可以使用以下对象:

  • combinations_list —— 一个列表,包含随机搜索所使用的所有可能超参数组合。
  • results_df —— 一个 DataFrame,包含 500 次试验中每个超参数组合及其对应的准确率。每个超参数是一列,列名即为超参数名称。
  • visualize_hyperparameter() —— 一个函数,接收 DataFrame 的某一列名(字符串)并绘制该列取值与准确率的散点图。函数调用示例:visualize_hyperparameter('accuracy')

如果您想查看 visualize_hyperparameter() 的函数定义,可以运行以下代码:

import inspect
print(inspect.getsource(visualize_hyperparameter))

本练习是课程的一部分

Python 中的超参数调优

查看课程

练习说明

  • 通过打印 combinations_list 的大小进行确认,以说明为什么需要先从随机搜索开始。
  • 按准确率对 results_df 进行排序并打印前 10 行。是否有清晰的结论?请警惕样本量过小!
  • 通过打印确认本次搜索使用了哪些超参数。它们就是 results_df 的列名。
  • 依次使用每个超参数(max_depthmin_samples_leaflearn_rate)调用 visualize_hyperparameter()。是否存在明显趋势?

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Confirm the size of the combinations_list
print(____(____))

# Sort the results_df by accuracy and print the top 10 rows
print(results_df.____(by=____, ascending=False).head(____))

# Confirm which hyperparameters were used in this search
print(results_df.____)

# Call visualize_hyperparameter() with each hyperparameter in turn
visualize_hyperparameter(____)
visualize_hyperparameter(____)
visualize_hyperparameter(____)
编辑并运行代码