开始使用免费开始使用

选择最佳精确率模型

您的主管同意为您报销今年观看 3 场体育比赛的费用。在您最喜欢的球队 41 场主场比赛中,您希望确保挑选出 3 场他们一定会赢的主场。您打算构建一个模型来决定球队会赢下哪些比赛。

为此,您将构建一个随机搜索算法,并将重点放在模型的精确率(precision)上(以确保您的球队获胜)。您还希望记录下最佳模型和最佳参数,以便明年可以再次使用(当然,前提是模型表现良好)。您已经决定使用随机森林分类模型 rfc,并生成了参数分布 param_dist

本练习是课程的一部分

Python 中的模型验证

查看课程

练习说明

  • 使用 make_scorer(<scoring_function>) 创建一个精确率评分器 precision
  • 使用 rfcparam_dist 补全随机搜索方法。
  • 使用 rs.cv_results_ 打印测试集平均得分。
  • 打印最佳总体得分。

交互式实操练习

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

from sklearn.metrics import precision_score, make_scorer

# Create a precision scorer
precision = ____(____)
# Finalize the random search
rs = RandomizedSearchCV(
  estimator=____, param_distributions=____,
  scoring = precision,
  cv=5, n_iter=10, random_state=1111)
rs.fit(X, y)

# print the mean test scores:
print('The accuracy for each run was: {}.'.format(rs.cv_results_['____']))
# print the best model score:
print('The best accuracy for a single model was: {}'.format(rs.____))
编辑并运行代码