Compile e ajuste o modelo
Agora que você tem um modelo com duas saídas, compile-o com duas funções de perda: erro absoluto médio (MAE) para 'score_diff'
e entropia cruzada binária (também conhecida como logloss) para 'won'
. Depois, ajuste o modelo com 'seed_diff'
e 'pred'
como entradas. Para os resultados, dá uma olhada em 'score_diff'
e 'won'
.
Esse modelo pode usar as pontuações dos jogos para garantir que jogos acirrados (diferença pequena na pontuação) tenham probabilidades de vitória menores do que jogos com placares amplos (diferença grande na pontuação).
O problema da regressão é mais fácil do que o problema da classificação porque o MAE não castiga tanto o modelo por uma perda que é só por acaso. Por exemplo, se score_diff
é -1 e won
é 0, isso quer dizer que team_1
teve um pouco de azar e perdeu por um único lance livre. Os dados do problema fácil ajudam o modelo a encontrar uma solução para o problema difícil.
Este exercício faz parte do curso
Aprendizado profundo avançado com Keras
Instruções do exercício
- Importe
Adam
dekeras.optimizers
. - Compile o modelo com duas perdas:
'mean_absolute_error'
e'binary_crossentropy'
, e use o otimizador Adam com uma taxa de aprendizagem de 0,01. - Ajuste o modelo com as colunas “
'seed_diff'
” e “'pred'
” como entradas e as colunas “'score_diff'
” e “'won'
” como alvos. - Use 10 épocas e um tamanho de lote de 16384.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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=____)