MLP 网格搜索
在 sklearn 中可以通过提供不同的输入参数来进行超参数调优,这些参数可结合 numpy 的多种函数进行编码。其中一种方法是网格搜索(grid search),它会通过 param_grid 穷举查看所有给定超参数组合。在本练习中,您将使用网格搜索来遍历 MLP 分类器的超参数。
X_train、y_train、X_test、y_test 已在工作区中可用,且特征已经标准化。pandas 已以 pd 导入,numpy 已以 np 导入。
本练习是课程的一部分
用 Python 预测 CTR 的机器学习实战
练习说明
- 为
max_iter创建取值列表[10, 20],为hidden_layer_sizes创建取值列表[(8, ), (16, )]。 - 使用
n_jobs设置 4 个并行作业,进行网格搜索以遍历所有超参数组合。 - 打印最佳 AUC 分数,以及得到该分数的最佳估计器。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Create list of hyperparameters
max_iter = [____, ____]
hidden_layer_sizes = [____, ____]
param_grid = {'max_iter': max_iter, 'hidden_layer_sizes': hidden_layer_sizes}
# Use Grid search CV to find best parameters using 4 jobs
mlp = ____
clf = ____(estimator = mlp, param_grid = ____,
scoring = 'roc_auc', ____ = 4)
clf.fit(X_train, y_train)
print("Best Score: ")
print(clf.____)
print("Best Estimator: ")
print(clf.____)