K-fold korsvalidering
Du börjar med att skaffa dig praktisk erfarenhet av den vanligaste formen av K-fold korsvalidering.
Data du arbetar med kommer från Kaggle-tävlingen "Two sigma connect: rental listing inquiries". Tävlingsproblemet är en flerklass-klassificering av hyresannonser i 3 klasser: lågt intresse, medelintresse och högt intresse. För snabbare prestanda arbetar du med ett urval bestående av 1 000 observationer.
Du ska implementera en K-fold valideringsstrategi och titta på storlekarna för varje del som skapas. train-dataramen finns redan tillgänglig i din miljö.
Den här övningen är en del av kursen
Vinna en Kaggle-tävling i Python
Övningsinstruktioner
- Skapa ett
KFold-objekt med 3 delar. - Iterera över varje uppdelning med hjälp av
kf-objektet. - Välj tränings- och testdelar för varje uppdelning med
train_indexochtest_index.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Import KFold
from sklearn.model_selection import KFold
# Create a KFold object
kf = ____(n_splits=____, shuffle=True, random_state=123)
# Loop through each split
fold = 0
for train_index, test_index in ____.____(train):
# Obtain training and testing folds
cv_train, cv_test = train.iloc[____], train.iloc[____]
print('Fold: {}'.format(fold))
print('CV train shape: {}'.format(cv_train.shape))
print('Medium interest listings in CV train: {}\n'.format(sum(cv_train.interest_level == 'medium')))
fold += 1