Compiler et ajuster le modèle
Maintenant que vous disposez d'un modèle avec deux sorties, compilez-le avec deux fonctions de perte : l'erreur absolue moyenne (MAE) pour l''score_diff'
et l'entropie croisée binaire (également appelée logloss) pour l''won'
. Ensuite, ajustez le modèle avec les données d'entraînement « 'seed_diff'
» et « 'pred'
» comme entrées. Pour les résultats, veuillez prévoir 'score_diff'
et 'won'
.
Ce modèle peut utiliser les scores des matchs pour s'assurer que les matchs serrés (faible écart de score) ont des probabilités de victoire plus faibles que les matchs à sens unique (écart de score important).
Le problème de régression est plus simple que celui de classification, car la MAE pénalise moins le modèle pour une perte due au hasard. Par exemple, si score_diff
est égal à -1 et won
est égal à 0, cela signifie que team_1
a eu un peu de malchance et a perdu d'un seul lancer franc. Les données relatives au problème facile aident le modèle à trouver une solution au problème difficile.
Cet exercice fait partie du cours
Deep learning avancé avec Keras
Instructions
- Importez
Adam
à partir dekeras.optimizers
. - Compilez le modèle avec deux pertes :
'mean_absolute_error'
et'binary_crossentropy'
, et utilisez l'optimiseur Adam avec un taux d'apprentissage de 0,01. - Ajustez le modèle avec les colonnes «
'seed_diff'
» et «'pred'
» comme entrées et les colonnes «'score_diff'
» et «'won'
» comme cibles. - Veuillez utiliser 10 époques et une taille de lot de 16384.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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=____)