Локальная валидация

Победа в соревновании Kaggle на Python

Yauhen Babakhin

Kaggle Grandmaster

Мотивация

пример переобучения на публичной и приватной таблицах лидеров

Победа в соревновании Kaggle на Python

Отложенная выборка

схема отложенной выборки

Победа в соревновании Kaggle на Python

Отложенная выборка

схема отложенной выборки

Победа в соревновании Kaggle на Python

Отложенная выборка

схема отложенной выборки

Победа в соревновании Kaggle на Python

K-блочная кросс-валидация

 

разбиение обучающих данных на четыре блока

Победа в соревновании Kaggle на Python

K-блочная кросс-валидация

 

схема k-блочной кросс-валидации

Победа в соревновании Kaggle на Python

K-блочная кросс-валидация

# Import KFold
from sklearn.model_selection import KFold
# Create a KFold object
kf = KFold(n_splits=5, shuffle=True, random_state=123)
# Loop through each cross-validation split
for train_index, test_index in kf.split(train):

# Get training and testing data for the corresponding split cv_train, cv_test = train.iloc[train_index], train.iloc[test_index]
Победа в соревновании Kaggle на Python

Стратифицированная K-блочная кросс-валидация

  схема стратифицированной k-блочной кросс-валидации

Победа в соревновании Kaggle на Python

Стратифицированная K-блочная кросс-валидация

# Import StratifiedKFold
from sklearn.model_selection import StratifiedKFold

# Create a StratifiedKFold object str_kf = StratifiedKFold(n_splits=5, shuffle=True, random_state=123)
# Loop through each cross-validation split for train_index, test_index in str_kf.split(train, train['target']): cv_train, cv_test = train.iloc[train_index], train.iloc[test_index]
Победа в соревновании Kaggle на Python

Давайте потренируемся!

Победа в соревновании Kaggle на Python

Preparing Video For Download...