Kom igångKom igång gratis

Modelljusteringar

Ett enkelt sätt att justera random forest-modellen för att hantera kraftigt obalanserade bedrägeridatamängder är att använda alternativet class_weights när du definierar din sklearn-modell. Som du kommer att se är det dock ett ganska trubbigt verktyg och fungerar kanske inte optimalt för just ditt specifika fall.

I den här övningen utforskar du läget weight = "balanced_subsample" i Random Forest-modellen från den tidigare övningen. Du har redan delat upp dina data i ett tränings- och testset, det vill säga X_train, X_test, y_train och y_test är tillgängliga. Metrikfunktionerna har redan importerats.

Den här övningen är en del av kursen

Bedrägeridetektering i Python

Visa kurs

Övningsinstruktioner

  • Sätt argumentet class_weight i din klassificerare till balanced_subsample.
  • Träna modellen på ditt träningsset.
  • Hämta prediktioner och sannolikheter från X_test.
  • Beräkna roc_auc_score, klassificeringsrapporten och konfusionsmatrisen.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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(____(____, ____))
Redigera och kör kod