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 de exercício
- Crie um dicionário de
"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
KFold
para fazer 6 divisões, definindoshuffle
igual aTrue
erandom_state
igual 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
cv
igual akf
.
Exercício interativo prático
Experimente este exercício preenchendo 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()