LoslegenKostenlos loslegen

Grenzen von Cross-Validation-Tests

Du kannst für nfold und num_boost_round sehr große Zahlen angeben, wenn du extrem viel Cross-Validation durchführen möchtest. Der DataFrame cv_results_big wurde bereits in den Workspace geladen und mit folgendem Code erstellt:

cv = xgb.cv(params, DTrain, num_boost_round = 600, nfold=10,
            shuffle = True)

Hier hat cv() 600 Iterationen der Cross-Validation durchgeführt! Der Parameter shuffle weist die Funktion an, die Einträge bei jedem Durchlauf zu mischen.

Schau dir diese Daten an, um die AUC-Werte zu sehen, und prüfe, ob sie mit Cross-Validation 1.0 erreichen. Du solltest außerdem die Test-AUC plotten, um den Verlauf zu sehen.

Der DataFrame cv_results_big wurde in den Workspace geladen.

Diese Übung ist Teil des Kurses

Kreditrisikomodellierung in Python

Kurs anzeigen

Anleitung zur Übung

  • Gib die ersten fünf Zeilen des CV-Ergebnis-DataFrames aus.
  • Gib den Durchschnitt der Test-AUC aus dem CV-Ergebnis-DataFrame auf zwei Stellen gerundet aus.
  • Erstelle ein Liniendiagramm der Test-AUC über alle Iterationen hinweg.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# Print the first five rows of the CV results data frame
print(____.____())

# Calculate the mean of the test AUC scores
print(np.____(____[____]).round(2))

# Plot the test AUC scores for each iteration
plt.____(____[____])
plt.title('Test AUC Score Over 600 Iterations')
plt.xlabel('Iteration Number')
plt.ylabel('Test AUC Score')
plt.____()
Code bearbeiten und ausführen