Оценка качества модели
Наконец, как и всегда, нам нужно оценить качество лучшей модели, чтобы понять, насколько точно она работает. В идеале стоит проводить бэктестирование, однако это трудоёмкий процесс, который выходит за рамки данного курса.
Мы уже видели значения R\(^2\), а теперь давайте взглянем на диаграмму рассеяния предсказанных и фактических значений с помощью matplotlib. Идеальные предсказания соответствовали бы диагональной линии, проведённой из нижнего левого угла в верхний правый.
Это упражнение является частью курса
Машинное обучение для финансов на Python
Инструкции к упражнению
- Используйте оптимальное значение параметра
max_featuresдляRandomForestRegressor(rfr), которое мы нашли в предыдущем упражнении (оно равно 4). - Получите предсказания модели на основе
train_featuresиtest_features. - Постройте диаграммы рассеяния фактических целевых значений (train/test_targets) и предсказанных значений (train/test_predictions), обозначив наборы данных как
trainиtest.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Use the best hyperparameters from before to fit a random forest model
rfr = RandomForestRegressor(n_estimators=200, max_depth=3, max_features=____, random_state=42)
rfr.fit(train_features, train_targets)
# Make predictions with our model
train_predictions = rfr.predict(____)
test_predictions = ____
# Create a scatter plot with train and test actual vs predictions
plt.scatter(train_targets, train_predictions, label='train')
plt.scatter(____)
plt.legend()
plt.show()