Biên dịch và huấn luyện mô hình
Giờ bạn đã có một mô hình với 2 đầu ra, hãy biên dịch nó với 2 hàm mất mát: mean absolute error (MAE) cho 'score_diff' và binary cross-entropy (còn gọi là logloss) cho 'won'. Sau đó huấn luyện mô hình với 'seed_diff' và 'pred' làm đầu vào. Với đầu ra, dự đoán 'score_diff' và 'won'.
Mô hình này có thể dùng điểm số của các trận đấu để đảm bảo rằng những trận cân bằng (chênh lệch điểm nhỏ) có xác suất thắng thấp hơn các trận thắng đậm (chênh lệch điểm lớn).
Bài toán hồi quy dễ hơn bài toán phân loại vì MAE phạt mô hình nhẹ hơn cho những thất bại do yếu tố ngẫu nhiên. Ví dụ, nếu score_diff là -1 và won là 0, điều đó nghĩa là team_1 thiếu may mắn và thua chỉ bởi một cú ném phạt. Dữ liệu của bài toán dễ giúp mô hình tìm ra lời giải cho bài toán khó.
Bài tập này là một phần của khóa học
Deep Learning nâng cao với Keras
Hướng dẫn bài tập
- Import
Adamtừkeras.optimizers. - Biên dịch mô hình với 2 hàm mất mát:
'mean_absolute_error'và'binary_crossentropy', và dùng bộ tối ưu Adam với tốc độ học 0.01. - Huấn luyện mô hình với các cột
'seed_diff'và'pred'làm đầu vào, và các cột'score_diff'và'won'làm mục tiêu. - Dùng 10 epochs và batch size là 16384.
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.
# Import the Adam optimizer
____
# Compile the model with 2 losses and the Adam optimzer with a higher learning rate
model.____(loss=['____', '____'], optimizer=____)
# Fit the model to the tournament training data, with 2 inputs and 2 outputs
model.____(games_tourney_train[['____', '____']],
[games_tourney_train[['____']], games_tourney_train[['____']]],
epochs=____,
verbose=True,
batch_size=____)