Mở rộng ra nhiều điểm dữ liệu
Bạn đã thấy rằng các bộ trọng số khác nhau sẽ cho độ chính xác khác nhau trên một dự đoán đơn lẻ. Nhưng thường thì bạn sẽ muốn đo độ chính xác của mô hình trên nhiều điểm dữ liệu. Bây giờ, bạn sẽ viết mã để so sánh độ chính xác mô hình cho hai bộ trọng số khác nhau, được lưu trong weights_0 và weights_1.
input_data là một danh sách các mảng. Mỗi phần tử trong danh sách chứa dữ liệu để tạo ra một dự đoán.
target_actuals là danh sách các số. Mỗi phần tử trong danh sách là giá trị thực mà chúng ta cần dự đoán.
Trong bài này, bạn sẽ dùng hàm mean_squared_error() từ sklearn.metrics. Hàm này nhận giá trị thực và giá trị dự đoán làm đối số.
Bạn cũng sẽ dùng hàm predict_with_network() đã được nạp sẵn, hàm này nhận một mảng dữ liệu làm đối số thứ nhất và trọng số làm đối số thứ hai.
Bài tập này là một phần của khóa học
Nhập môn Deep Learning với Python
Hướng dẫn bài tập
- Import
mean_squared_errortừsklearn.metrics. - Dùng vòng lặp
forđể duyệt qua từng hàng củainput_data:- Tạo dự đoán cho mỗi hàng với
weights_0bằng hàmpredict_with_network()và thêm vàomodel_output_0. - Làm tương tự với
weights_1, thêm các dự đoán vàomodel_output_1.
- Tạo dự đoán cho mỗi hàng với
- Tính mean squared error của
model_output_0rồi đếnmodel_output_1bằng hàmmean_squared_error(). Đối số thứ nhất là giá trị thực (target_actuals), đối số thứ hai là giá trị dự đoán (model_output_0hoặcmodel_output_1).
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
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)