Kom igångKom igång gratis

Begränsningar vid korsvalidering

Du kan ange mycket stora värden för både nfold och num_boost_round om du vill utföra en omfattande korsvalidering. Dataramen cv_results_big har redan laddats in i arbetsytan och skapades med följande kod:

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

Här utförde cv() hela 600 iterationer av korsvalidering! Parametern shuffle instruerar funktionen att blanda posterna vid varje iteration.

Undersök dessa data för att se vad AUC-värdena är och kontrollera om de når 1.0 med korsvalidering. Plotta även test-AUC-poängen för att se hur den utvecklas över iterationerna.

Dataramen cv_results_big har laddats in i arbetsytan.

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

Kreditriskmodellering i Python

Visa kurs

Övningsinstruktioner

  • Skriv ut de fem första raderna i dataramen med korsvalideringsresultat.
  • Skriv ut medelvärdet av test-AUC från dataramen med korsvalideringsresultat, avrundat till två decimaler.
  • Plotta ett linjediagram över test-AUC för varje iteration.

Interaktiv övning med praktiskt arbete

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

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