Использование индексов KFold
Вы уже создали splits — переменную, содержащую индексы для набора данных candy-data, необходимые для выполнения 5-кратной кросс-валидации. Чтобы лучше оценить, насколько точно модель случайного леса вашего коллеги будет работать на новых данных, вы хотите запустить её на пяти различных обучающих и валидационных разбиениях, которые только что создали.
В этом упражнении вы воспользуетесь этими индексами, чтобы проверить точность модели на пяти разных разбиениях. Для удобства уже подготовлен цикл for.
Это упражнение является частью курса
Валидация моделей на Python
Инструкции к упражнению
- Используйте
train_indexиval_index, чтобы выбрать нужные индексы изXиyпри формировании обучающей и валидационной выборок. - Обучите
rfcна обучающей выборке. - Используйте
rfcдля получения предсказаний на валидационной выборке и выведите значение точности на ней.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import mean_squared_error
rfc = RandomForestRegressor(n_estimators=25, random_state=1111)
# Access the training and validation indices of splits
for train_index, val_index in splits:
# Setup the training and validation data
X_train, y_train = X[____], y[____]
X_val, y_val = X[____], y[____]
# Fit the random forest model
rfc.____(____, ____)
# Make predictions, and print the accuracy
predictions = rfc.____(____)
print("Split accuracy: " + str(mean_squared_error(y_val, predictions)))