构建网格搜索函数
在数据科学中,尝试"从零开始"构建算法、模型和流程是个很好的做法,这能让您从更深层次理解其工作原理。当然,也有功能强大的包和库可用(我们很快就会使用!),但从零实现会让您的数据科学工作更有优势。
在本练习中,您将创建一个函数,接收 2 个超参数,训练模型并返回结果。您会在后续练习中复用这个函数。
您可以使用 X_train、X_test、y_train 和 y_test 数据集。
本练习是课程的一部分
Python 中的超参数调优
练习说明
- 编写一个函数,包含两个参数
learning_rate和max_depth,分别表示学习率和最大深度。 - 在函数中加入逻辑:基于输入的超参数构建一个 GBM 模型,并在数据上进行训练。
- 让函数返回该模型的结果以及所选择的超参数(
learning_rate和max_depth)。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Create the function
def gbm_grid_search(____, ____):
# Create the model
model = GradientBoostingClassifier(____=___, ____=____)
# Use the model to make predictions
predictions = model.fit(____, ____).predict(____)
# Return the hyperparameters and score
return([____, ____, accuracy_score(____, ____)])