ComeçarComece de graça

Balanceando classes

Isso pode afetar bastante os resultados das previsões, como mostrado pela diferença entre as métricas de recall e accuracy. Para resolver o desbalanceamento, geralmente se atribuem pesos iguais a cada classe. Usando o argumento class_weight no DecisionTreeClassifier do sklearn, você pode fazer com que as classes fiquem "balanced".

Vamos corrigir nosso modelo resolvendo o problema de desbalanceamento:

  • primeiro, você vai configurar um modelo com classes balanceadas
  • depois, vai ajustá-lo aos dados de treino
  • por fim, vai verificar sua acurácia no conjunto de teste

As variáveis features_train, target_train, features_test e target_test já estão disponíveis no seu workspace.

Este exercício faz parte do curso

HR Analytics: prevendo rotatividade de funcionários em Python

Ver curso

Instruções do exercício

  • Inicialize o Decision Tree Classifier, prune sua árvore limitando sua profundidade máxima a 5 e balanceie os pesos das classes.
  • Ajuste o novo modelo.
  • Imprima a score de acurácia da previsão (em pontos percentuais) para o conjunto de teste.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Initialize the DecisionTreeClassifier 
model_depth_5_b = DecisionTreeClassifier(____=5,class_weight="____",random_state=42)

# Fit the model
model_depth_5_b.____(features_train,target_train)

# Print the accuracy of the prediction (in percentage points) for the test set
print(model_depth_5_b.____(features_test,____)*100)
Editar e executar o código