ComeçarComece de graça

Ajustes de modelo

Uma forma simples de ajustar o modelo de random forest para lidar com dados de fraude altamente desbalanceados é usar a opção class_weights ao definir seu modelo sklearn. No entanto, como você vai ver, é um mecanismo um pouco bruto e pode não funcionar para o seu caso específico.

Neste exercício, você vai explorar o modo weight = "balanced_subsample" do modelo Random Forest do exercício anterior. Você já dividiu seus dados em conjunto de treinamento e teste, ou seja, X_train, X_test, y_train, y_test estão disponíveis. As funções de métricas já foram importadas.

Este exercício faz parte do curso

Detecção de Fraudes em Python

Ver curso

Instruções do exercício

  • Defina o argumento class_weight do seu classificador como balanced_subsample.
  • Ajuste seu modelo ao conjunto de treinamento.
  • Obtenha previsões e probabilidades a partir de X_test.
  • Obtenha o roc_auc_score, o relatório de classificação e a matriz de confusão.

Exercício interativo prático

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

# Define the model with balanced subsample
model = RandomForestClassifier(class_weight='____', random_state=5)

# Fit your training model to your training set
model.fit(____, ____)

# Obtain the predicted values and probabilities from the model 
predicted = ____.____(____)
probs = ____.____(____)

# Print the roc_auc_score, the classification report and confusion matrix
print(____(____, ____))
print(____(____, ____))
print(____(____, ____))
Editar e executar o código