Преобразования на обучающей и тестовой выборках (I)
До сих пор вы создавали масштабировщики на основе столбца и применяли их к тем же данным, на которых они были обучены. При построении моделей машинного обучения вы, как правило, обучаете модели на исторических данных (обучающая выборка) и применяете их к новым, ранее не виденным данным (тестовая выборка). В таких случаях важно убедиться, что одно и то же масштабирование применяется как к обучающей, так и к тестовой выборке.
На практике это делается следующим образом: масштабировщик обучают на обучающей выборке и сохраняют его для последующего применения к тестовой выборке. Никогда не переобучайте масштабировщик на тестовой выборке.
Для этого упражнения и следующего DataFrame so_numeric_df разделён на обучающую (so_train_numeric) и тестовую (so_test_numeric) выборки.
Это упражнение является частью курса
Конструирование признаков для машинного обучения в Python
Инструкции к упражнению
- Создайте экземпляр
StandardScaler()и сохраните его в переменнуюSS_scaler. - Обучите
StandardScalerна столбцеAge. - Примените преобразование к столбцу
Ageв тестовой выборке (so_test_numeric).
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Import StandardScaler
from sklearn.preprocessing import StandardScaler
# Apply a standard scaler to the data
SS_scaler = ____
# Fit the standard scaler to the data
____
# Transform the test data using the fitted scaler
so_test_numeric['Age_ss'] = ____
print(so_test_numeric[['Age', 'Age_ss']].head())