Масштабування на кілька точок даних
Ви вже бачили, що різні ваги дають різну точність для окремого прогнозу. Але зазвичай потрібно вимірювати точність моделі на багатьох точках. Тепер ви напишете код, щоб порівняти точність моделі для двох різних наборів ваг, збережених як weights_0 і weights_1.
input_data — це список масивів. Кожен елемент у цьому списку містить дані для одного прогнозу.
target_actuals — це список чисел. Кожен елемент у цьому списку — фактичне значення, яке ми намагаємося передбачити.
У цій вправі ви використаєте функцію mean_squared_error() з sklearn.metrics. Вона приймає істинні значення та передбачені значення як аргументи.
Ви також використаєте попередньо завантажену функцію predict_with_network(), яка приймає масив даних як перший аргумент, а ваги — як другий аргумент.
Ця вправа є частиною курсу
Вступ до Deep Learning у Python
Інструкції до вправи
- Імпортуйте
mean_squared_errorзsklearn.metrics. - За допомогою циклу
forпройдіться по кожному рядкуinput_data:- Зробіть прогнози для кожного рядка з
weights_0, використовуючи функціюpredict_with_network(), і додайте їх доmodel_output_0. - Зробіть те саме для
weights_1, додаючи прогнози доmodel_output_1.
- Зробіть прогнози для кожного рядка з
- Обчисліть середню квадратичну помилку для
model_output_0, а потім дляmodel_output_1за допомогою функціїmean_squared_error(). Першим аргументом мають бути фактичні значення (target_actuals), а другим — передбачені значення (model_output_0абоmodel_output_1).
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
from sklearn.metrics import mean_squared_error
# Create model_output_0
model_output_0 = []
# Create model_output_1
model_output_1 = []
# Loop over input_data
for row in input_data:
# Append prediction to model_output_0
model_output_0.append(____)
# Append prediction to model_output_1
model_output_1.append(____)
# Calculate the mean squared error for model_output_0: mse_0
mse_0 = ____
# Calculate the mean squared error for model_output_1: mse_1
mse_1 = ____
# Print mse_0 and mse_1
print("Mean squared error with weights_0: %f" %mse_0)
print("Mean squared error with weights_1: %f" %mse_1)