Visualização do desempenho do modelo de classificação
Neste exercício, você deve resolver um problema de classificação em que a coluna "popularity" do conjunto de dados music_df foi convertida em valores binários, sendo que 1 representa uma popularidade maior ou igual à mediana da coluna "popularity" e 0 indica popularidade abaixo da mediana.
Sua tarefa é criar e visualizar os resultados de três modelos diferentes para classificar se uma música é popular ou não.
Os dados foram divididos, escalonados e pré-carregados para você como X_train_scaled, X_test_scaled, y_train e y_test. Além disso, KNeighborsClassifier, DecisionTreeClassifier e LogisticRegression já foram importados.
Este exercício faz parte do curso
Aprendizado Supervisionado com o scikit-learn
Instruções do exercício
- Crie um dicionário com
"Logistic Regression","KNN"e"Decision Tree Classifier", definindo os valores do dicionário como uma chamada de cada modelo. - Faça um loop pelos valores de
models. - Instancie um objeto
KFoldpara fazer 6 divisões, definindoshuffleigual aTrueerandom_stateigual a12. - Faça a validação cruzada usando o modelo, as variáveis independentes de treinamento com escalonamento, o conjunto de treinamento da variável dependente e definindo
cvigual akf.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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()