开始使用免费开始使用

交叉验证

交叉验证是一种用于检验模型在留出集上泛化表现的技术。这样可以确保测试性能不是由某次数据划分的偶然性导致。在本练习中,您将使用 sklearn 的实现,通过 KFold() 模块运行 K 折交叉验证,以评估决策树的精确率和召回率。

X_trainy_trainX_testy_test 已在您的工作区中可用。pandas 已以 pd 导入,numpynp 导入,sklearn 也已可用。来自 sklearn.model_selectionKFold()cross_val_score() 同样可用。

本练习是课程的一部分

用 Python 预测 CTR 的机器学习实战

查看课程

练习说明

  • 创建一个决策树分类器。
  • 设置一个包含 4 折的 K 折交叉验证,并将其赋值给 k-fold
  • 使用 k_foldcross_val_score() 运行交叉验证,以评估模型的精确率和召回率(不要使用 recall_score()precision_score()!)。

交互式实操练习

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

# Create model 
clf = ____

# Set up k-fold
k_fold = ____(n_splits = 4, random_state = 0, shuffle = True)

# Evaluate precision and recall for each fold
precision = ____(
  clf, X_train, ____, cv = ____, scoring = 'precision_weighted')
recall = ____(
  clf, X_train, ____, cv = ____, scoring = 'recall_weighted')
print("Precision scores: %s" %(precision)) 
print("Recall scores: %s" %(recall))
编辑并运行代码