Výzva pro šampiona
Po nasazení náhodného lesa do produkce tě napadne, že by mohl být lepší klasifikátor naivní Bayes. Chceš provést test šampion–vyzyvatel: porovnáš naivní Bayes jako vyzyvatele s modelem, který aktuálně běží v produkci, a ten načteš ze souboru, aby nedošlo k žádným záměnám. Pro hodnocení použiješ F1 skóre. K dispozici máš data X_train, X_test, y_train a y_test jako dříve, a také GaussianNB(), f1_score() a pickle().
Toto cvičení je součástí kurzu
Designing Machine Learning Workflows in Python
Pokyny k cvičení
- Načti existující model z paměti pomocí
pickle. - Natrénuj klasifikátor Gaussian Naive Bayes na trénovacích datech.
- Vypiš F1 skóre šampiona a pak vyzyvatele na testovacích datech.
- Přepiš aktuální model na disku tím, který dosáhl lepšího výsledku.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Load the current model from disk
champion = pickle.____(open('model.pkl', ____))
# Fit a Gaussian Naive Bayes to the training data
challenger = ____.____(X_train, y_train)
# Print the F1 test scores of both champion and challenger
print(____(y_test, champion.____(X_test)))
print(____)
# Write back to disk the best-performing model
with open('model.pkl', 'wb') as file:
pickle.____(____, file=file)