Korsvalidering
Korsvalidering är en teknik som används för att kontrollera en modells prestanda på osedd data. Syftet är att säkerställa att testresultaten inte beror på hur data råkade delas upp. I den här övningen använder du sklearn för att köra en K-fold-korsvalidering med modulen KFold() och utvärdera precision och återkallelse för ett beslutsträd.
X_train, y_train, X_test och y_test finns tillgängliga i din miljö. pandas som pd, numpy som np och sklearn är också tillgängliga. KFold() och cross_val_score() från sklearn.model_selection finns även de tillgängliga.
Den här övningen är en del av kursen
Förutsäga CTR med maskininlärning i Python
Övningsinstruktioner
- Skapa en beslutsträdsklassificerare.
- Konfigurera en K-fold-korsvalidering med fyra uppdelningar och tilldela den till
k-fold. - Använd
k_foldför att köra korsvalidering medcross_val_score()och utvärdera modellens precision och återkallelse (använd alltså interecall_score()ellerprecision_score()).
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Create model
clf = ____
# Set up k-fold
k_fold = ____(n_splits = 4, random_state = 0, shuffle = True)
# Evaluate precision and recall for each fold
precision = ____(
clf, X_train, ____, cv = ____, scoring = 'precision_weighted')
recall = ____(
clf, X_train, ____, cv = ____, scoring = 'recall_weighted')
print("Precision scores: %s" %(precision))
print("Recall scores: %s" %(recall))