Визуализация результатов моделей классификации
В этом упражнении вы будете решать задачу классификации. Столбец "popularity" в наборе данных music_df преобразован в бинарные значения: 1 означает, что популярность песни не ниже медианного значения по столбцу "popularity", а 0 — что она ниже медианы.
Ваша задача — построить и визуализировать результаты трёх разных моделей для классификации: популярна песня или нет.
Данные уже разделены, масштабированы и предзагружены в виде 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()