Оценка качества модели
Теперь, когда нейронная сеть обучена, проверим её качество — посмотрим, насколько точно модель предсказывает новые значения. В отличие от моделей sklearn, здесь нет встроенного метода .score(), поэтому воспользуемся функцией r2_score() из sklearn.metrics. Она вычисляет коэффициент детерминации R\(^2\) по аргументам (y_true, y_predicted). Затем снова построим график предсказанных значений относительно фактических — он станет особенно интересным, когда мы реализуем собственную функцию потерь.
Это упражнение является частью курса
Машинное обучение для финансов на Python
Инструкции к упражнению
- Получите предсказания модели
model_1на масштабированных тестовых данных (scaled_test_featuresиtest_targets). - Выведите на экран значение R\(^2\) на тестовой выборке (
test_targetsиtest_preds). - Постройте диаграмму рассеяния
test_predsиtest_targetsс помощьюplt.scatter().
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
from sklearn.metrics import r2_score
# Calculate R^2 score
train_preds = model_1.predict(scaled_train_features)
test_preds = model_1.predict(____)
print(r2_score(train_targets, train_preds))
print(r2_score(____, ____))
# Plot predictions vs actual
plt.scatter(train_preds, train_targets, label='train')
plt.scatter(____)
plt.legend()
plt.show()