Оцініть ефективність
Насамкінець, як завжди, потрібно оцінити ефективність нашої найкращої моделі, щоб зрозуміти, наскільки добре або погано ми справляємося. Ідеально робити бек-тестування, але це складний процес, який ми не встигнемо розглянути в цьому курсі.
Ми вже бачили значення R\(^2\), але тепер подивімося на точкову діаграму „прогнози проти фактичних результатів" за допомогою matplotlib. Ідеальні прогнози утворили б діагональну лінію від нижнього лівого до верхнього правого кута.
Ця вправа є частиною курсу
Machine Learning для фінансів у 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()