Cross-validation voor R-squared
Cross-validation is een essentiële manier om een model te evalueren. Het maximaliseert de hoeveelheid data die voor het model beschikbaar is, omdat het model niet alleen getraind maar ook getest wordt op alle beschikbare data.
In deze oefening bouw je een lineair regressiemodel en gebruik je 6-fold cross-validation om de nauwkeurigheid te beoordelen voor het voorspellen van sales op basis van uitgaven aan social media-advertenties. Je toont de individuele score voor elk van de zes folds.
De gegevensset sales_df is voor je opgesplitst in y voor de doelvariabele en X voor de features, en vooraf geladen. LinearRegression is geïmporteerd uit sklearn.linear_model.
Deze oefening maakt deel uit van de cursus
Supervised Learning met scikit-learn
Oefeninstructies
- Importeer
KFoldencross_val_score. - Maak
kfdoorKFold()aan te roepen, zet het aantal splits op zes,shuffleopTrue, en gebruik een seed van5. - Voer cross-validation uit met
regopXeny, en geefkfdoor aancv. - Print de
cv_scores.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Import the necessary modules
from ____.____ import ____, ____
# Create a KFold object
kf = ____(n_splits=____, shuffle=____, random_state=____)
reg = LinearRegression()
# Compute 6-fold cross-validation scores
cv_scores = ____(____, ____, ____, cv=____)
# Print scores
print(____)