可视化分类模型表现
在本练习中,您将解决一个分类问题:music_df 数据集中的 "popularity" 列已被转换为二元值,1 表示该列的取值大于等于中位数,0 表示低于中位数。
您的任务是构建 3 个不同的模型,并可视化其结果,用于判断一首歌是否受欢迎。
数据已为您完成划分和缩放,并预加载为 X_train_scaled、X_test_scaled、y_train 和 y_test。此外,KNeighborsClassifier、DecisionTreeClassifier 和 LogisticRegression 已导入可用。
本练习是课程的一部分
使用 scikit-learn 的监督学习
练习说明
- 创建一个包含
"Logistic Regression"、"KNN"和"Decision Tree Classifier"的字典,并将字典的值设为各模型的实例化调用。 - 遍历
models中的值。 - 实例化一个
KFold对象,执行 6 折划分,并将shuffle设为True、random_state设为12。 - 使用该模型、已缩放的训练特征、目标训练集进行交叉验证,并将
cv设置为kf。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Create models dictionary
models = {"____": ____(), "____": ____(), "____": ____()}
results = []
# Loop through the models' values
for model in ____.____():
# Instantiate a KFold object
kf = ____(n_splits=____, random_state=____, shuffle=____)
# Perform cross-validation
cv_results = ____(____, ____, ____, cv=____)
results.append(cv_results)
plt.boxplot(results, labels=models.keys())
plt.show()