Kompilera och träna modellen
Nu när du har en modell med 2 utdata är det dags att kompilera den med 2 förlustfunktioner: medelabsolutfel (MAE) för 'score_diff' och binär korsentopi (även kallat logloss) för 'won'. Träna sedan modellen med 'seed_diff' och 'pred' som indata. Som utdata ska modellen förutsäga 'score_diff' och 'won'.
Modellen kan använda matchresultat för att säkerställa att jämna matcher (litet poängdifferens) ger lägre vinstsannolikhet än övertygande segrar (stor poängdifferens).
Regressionsproblem är enklare än klassificeringsproblemet eftersom MAE straffar modellen lindrigare för förluster som beror på slumpen. Om till exempel score_diff är -1 och won är 0, betyder det att team_1 hade otur och förlorade med ett enda frikast. Data från det enklare problemet hjälper modellen att hitta en lösning på det svårare.
Den här övningen är en del av kursen
Avancerad djupinlärning med Keras
Övningsinstruktioner
- Importera
Adamfrånkeras.optimizers. - Kompilera modellen med 2 förlustfunktioner:
'mean_absolute_error'och'binary_crossentropy', och använd Adam-optimeraren med en inlärningshastighet på 0,01. - Träna modellen med kolumnerna
'seed_diff'och'pred'som indata och kolumnerna'score_diff'och'won'som mål. - Använd 10 epoker och en batchstorlek på 16 384.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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=____)