Limity testování pomocí křížové validace
Pro nfold i num_boost_round můžeš zadat velmi vysoké hodnoty, pokud chceš provést velké množství křížové validace. Datový rámec cv_results_big je už načtený v pracovním prostředí a byl vytvořen pomocí tohoto kódu:
cv = xgb.cv(params, DTrain, num_boost_round = 600, nfold=10,
shuffle = True)
Funkce cv() provedla 600 iterací křížové validace! Parametr shuffle říká funkci, aby při každém průchodu záznamy náhodně zamíchala.
Prohlédni si tato data, zjisti, jaké jsou hodnoty AUC, a zkontroluj, zda při křížové validaci dosahují 1.0. Vykresli také skóre AUC na testovací sadě, abys viděl/a průběh celého procesu.
Dataový rámec cv_results_big je načtený v pracovním prostředí.
Toto cvičení je součástí kurzu
Credit Risk Modeling in Python
Pokyny k cvičení
- Vypiš prvních pět řádků datového rámce s výsledky křížové validace.
- Vypiš průměr AUC testovací sady z datového rámce s výsledky křížové validace, zaokrouhlený na dvě desetinná místa.
- Vykresli spojnicový graf skóre AUC testovací sady v průběhu jednotlivých iterací.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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.____()