Создание обучающей, тестовой и валидационной выборок

Валидация моделей на Python

Kasey Jones

Data Scientist

Традиционное разбиение на обучающую и тестовую выборки

  • Известные данные (используются для обучения)
  • Неизвестные данные (недоступны при обучении)

Разбиение данных: большая часть используется для обучения, меньшая — для тестовой выборки.

Валидация моделей на Python

Определения наборов данных и соотношения разбиения

Набор данных Определение
Обучающая выборка Данные, используемые при обучении моделей
Тестовая выборка (отложенная) Данные для оценки качества модели

Примеры соотношений

  • 80:20
  • 90:10 (при малом объёме данных)
  • 70:30 (при высоких вычислительных затратах модели)
Валидация моделей на Python

Наборы данных X и y

import pandas as pd

tic_tac_toe = pd.read_csv("tic-tac-toe.csv")
X = pd.get_dummies(tic_tac_toe.iloc[:,0:9])
y = tic_tac_toe.iloc[:, 9]

Курсы Python по фиктивным переменным:

Валидация моделей на Python

Создание отложенных выборок

X_train, X_test, y_train, y_test  =\
    train_test_split(X, y, test_size=0.2, random_state=1111)

Параметры:

  • test_size
  • train_size
  • random_state
Валидация моделей на Python

Какой набор данных использовать для предварительного тестирования?

Что делать при подборе параметров модели?

  • 100 против 1000 деревьев
Валидация моделей на Python

Для подбора параметров модели данные делятся на три части: обучающую, валидационную и тестовую.

Валидация моделей на Python

Обучающая, валидационная и тестовая выборки: продолжение

X_temp, X_test, y_temp, y_test  =\
    train_test_split(X, y, test_size=0.2, random_state=1111)
X_train, X_val, y_train, y_val =\
    train_test_split(X_temp, y_temp, test_size=0.25, random_state=11111)
Валидация моделей на Python

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

Валидация моделей на Python

Preparing Video For Download...