Prevision de l’etat suivant avec Keras

1 Introduction

On veut entrainer des modeles sur des sequences d’etats pour predire l’etat suivant. On a donc trois champs :

  • id : l’identifiant de la sequence
  • num : le numero de l’etat dans la sequence, la numerotation commence a 1
  • etat : la valeur de l’etat

Les techniques presentees dans ce document sont appliquees a un jeu de donnees de parcours professionnels. Ainsi le triplet (id, num, etat) = (“23”, 2, “training”) indique que l’individu 23 est en stage a la 2eme etape de son parcours. A partir de cette information et des etapes precedentes, on veut predire quelle sera l’activite de l’etape suivante.

Pour realiser cette modelisation, on va couper de maniere aleatoire uniforme les parcours en deux parties “historique” (ou “passe”) et “futur”, le modele connaitra l’historique de chaque sequence et devra predire le premier etat du futur. On va creer aussi des echantillons d’apprentissage et de test. On va utiliser pour cela les champs calcules suivants :

  • “long_totale” : la longueur de la sequence complete (dans notre exemple elle est la meme pour tous les parcours mais ca n’intervient pas dans le code)
  • “long_histo” : la longueur de l’historique
  • “train” : booleen qui indique si la sequence fait partie de l’echantillon d’apprentissage

On aura aussi besoin d’un dictionnaire pour recoder les etats en entiers successifs commencant a zero, c’est un recodage classique attendu par Tensorflow.

1.1 Modules

library("reticulate")

# on a installe tensorflow dans l'environnement vituel conda "env_test"
use_condaenv(condaenv = "env_test")

# le jeu de donnees mvad du package R TraMineR
data(package = "TraMineR", mvad)

Les modules Python.

import numpy as np
import pandas as pd
import random
import sys

import matplotlib.pyplot as plt
import scikitplot as skplt
import seaborn as sns

import tensorflow as tf
from tensorflow.keras.layers import LSTM, GRU, Dense, Dropout, Embedding
from tensorflow.keras.preprocessing.sequence import pad_sequences
from tensorflow.keras.callbacks import EarlyStopping
from tensorflow.keras.models import Sequential

# https://github.com/philipperemy/keras-tcn
from tcn import TCN

sns.set()
pd.set_option('display.max_columns', None)
tf.random.set_seed(2021)

Les versions Python et TensorFlow utilisees.

sys.version
tf.__version__
'3.9.5 (default, May 18 2021, 14:42:02) [MSC v.1916 64 bit (AMD64)]'
'2.6.0-rc1'

1.2 Donnees

On a le statut de 712 individus pour 72 mois consecutifs.

  • “school” : lycee
  • “Further Education” : education continue
  • “Higher Education” : universite
  • “training” : stage
  • “employment” : emploi
  • “joblessness” : chomage

La table de recodage des etats et un dictionnaire associe.

recode = pd.DataFrame({"etat": ["training", "joblessness", "school", "employment", "HE", "FE"],
                        "code":  list(range(6))})
                        
recode
          etat  code
0     training     0
1  joblessness     1
2       school     2
3   employment     3
4           HE     4
5           FE     5
dico_recode = {recode.code[i]:recode.etat[i] for i in range(len(recode))}

# on anticipe l'etape de rembourrage par un item supplementaire
dico_recode[len(recode)] = "padding"
dico_recode
{0: 'training', 1: 'joblessness', 2: 'school', 3: 'employment', 4: 'HE', 5: 'FE', 6: 'padding'}

Pour rendre la modelisation moins facile, on ne retient qu’une etape par annee, a savoir celle de juillet. On a donc 6 etapes dans chaque parcours, de 1993 a 1998.

donnees = r.mvad.iloc[:,[0] +list(range(14,86,12))]
donnees = donnees.melt(id_vars = "id", var_name = "mois_annee", value_name = "etat")
donnees.sort_values(["id", "mois_annee"], inplace = True)
donnees[donnees.id == 3]
      id mois_annee         etat
2      3     Jul.93  joblessness
714    3     Jul.94     training
1426   3     Jul.95     training
2138   3     Jul.96           FE
2850   3     Jul.97           FE
3562   3     Jul.98   employment

La preparation des donnees.

donnees["num"] = donnees.groupby("id").cumcount() + 1
donnees.drop(columns = "mois_annee", inplace = True)
donnees["long_totale"] = donnees.groupby("id").etat.transform(len)

table_longueurs = donnees[["id", "long_totale"]].drop_duplicates()

random.seed(2021)
np.random.seed(2021)
table_longueurs["long_histo"] = table_longueurs.long_totale.apply(lambda n: random.randrange(1, n))
table_longueurs.drop(columns = "long_totale", inplace = True)
donnees.drop(columns = "long_totale", inplace = True)

# 60% des individus dans l'echantillon d'apprentissage
table_longueurs["train"] = np.random.rand(len(table_longueurs)) <= 0.6

donnees = donnees.merge(table_longueurs, how = 'left', on = 'id')
donnees.sort_values(["id", "num"], inplace = True)

# on se limite a l'historique et au 1er etat futur
donnees = donnees[donnees.num <= donnees.long_histo + 1][["id", "num", "etat", "long_histo", "train"]]
donnees.head(15)
    id  num         etat  long_histo  train
0    1    1     training           4  False
1    1    2   employment           4  False
2    1    3   employment           4  False
3    1    4   employment           4  False
4    1    5   employment           4  False
6    2    1  joblessness           5  False
7    2    2           FE           5  False
8    2    3           FE           5  False
9    2    4           FE           5  False
10   2    5           HE           5  False
11   2    6           HE           5  False
12   3    1  joblessness           3   True
13   3    2     training           3   True
14   3    3     training           3   True
15   3    4           FE           3   True

Nombre de sequences dans les echantillons d’apprentissage et de test.

donnees[["id", "train"]].drop_duplicates().train.value_counts()
True     421
False    291
Name: train, dtype: int64

2 Modele naif

stats = donnees.etat[donnees.train & (donnees.num == donnees.long_histo + 1)].value_counts()
stats
modal_max = stats.index[0]

exactitude = (donnees.etat[~donnees.train] == modal_max).mean()
employment     220
FE              61
HE              40
school          39
joblessness     31
training        30
Name: etat, dtype: int64

Modalite la plus frequente de l’etat a predire : employment.

L’exactitude (= “accuracy”) du modele est 35.2%.

Matrice de confusion sur l’echantillon test.

def mat_conf(reel, prev):
  skplt.metrics.plot_confusion_matrix(reel,
                                    prev, 
                                    hide_zeros  = True,
                                    x_tick_rotation  = 90,
                                    figsize = (9, 9))
  plt.show()

mat_conf(list(donnees.etat[~donnees.train]), [modal_max]*sum(~donnees.train))

3 Chaine de Markov d’ordre K

Fonctions de modelisation de la chaine de Markov d’ordre K.

# champs pour chaine de Markov d'ordre max K
# on sait que dtf (=donnees) est deja trie par id et num
def prep_markov_K(dtf,K):
  prep_markov = dtf.copy()
  for i in range(K):
    condition = prep_markov.id != prep_markov.id.shift(i+1)
    prep_markov["etat_moins_"+str(i+1)] = prep_markov.etat.shift(i+1)
    prep_markov.loc[condition, "etat_moins_"+str(i+1)] = ''
  return prep_markov

# cette fonction va etre appliquee a la sortie de prep_markov_K
def modele_markov(dtf, K):
  # a chaque page, on associe la liste des K pages precedentes
  markov = dtf.copy()

  u =  markov["etat_moins_1"]
  for i in range(K-1):
    u = u + ',' + markov["etat_moins_"+str(i+2)]
  
  markov["pages_prec"] = u

  # construction du modele de Markov
  score_markov = markov[markov.train].copy()
  score_markov = score_markov.groupby(["pages_prec", "etat"]).size().reset_index(name = "nb")
  
  score_markov["somme"] = score_markov.groupby("pages_prec").nb.transform("sum")
  score_markov["pct"] = score_markov.nb / score_markov.somme
  
  # pour chaque combinaison de pages precedentes, on va garder la ligne de score max
  score_markov.sort_values(["somme", "pages_prec", "pct"], 
                           ascending = [False,True, False], inplace = True)  
                           
  prev_markov = score_markov.groupby(
      "pages_prec", as_index = False).first()[["pages_prec", "etat"]].rename(columns = {"etat" : "prev"})
        
  # application a l'echantillon test
  test_markov =  markov[(~markov.train) & (markov.num == markov.long_histo + 1)].copy()
  test_markov = test_markov.merge(prev_markov, how = "left", on = "pages_prec")
  
  exactitude = (test_markov.prev == test_markov.etat).mean()
  reel = list(test_markov["etat"])
  prev = list(test_markov["prev"])
  return exactitude, score_markov[["pages_prec", "etat", "pct"]], reel, prev  

3.1 Ordre optimal

On cherhe la valeur de K qui maximise l’exactitude.

dtf_markov = prep_markov_K(donnees,5)

exactitude1, _, _, _ = modele_markov(dtf_markov, K = 1)
exactitude2, _, _, _ = modele_markov(dtf_markov, K = 2)
exactitude3, _, _, _ = modele_markov(dtf_markov, K = 3)
exactitude4, _, _, _ = modele_markov(dtf_markov, K = 4)
exactitude5, _, _, _ = modele_markov(dtf_markov, K = 5)

pd.Series([exactitude1, exactitude2, exactitude3, exactitude4, exactitude5]).apply(lambda x: round(x,3)) 
0    0.605
1    0.622
2    0.629
3    0.574
4    0.505
dtype: float64

On retient le modele d’ordre 3.

exactitude, modele_markov3, reel, prev = modele_markov(dtf_markov, K = 3)

3.2 Matrice de confusion

L’exactitude du modele d’ordre 3 est 62.9%.

mat_conf(reel, prev)

4 Preparation des modeles neuronaux

On utilise les couches LSTM (Long Short-Term Memory), GRU (Gated Recurrent Unit) et TCN (Temporal Convolution Network). Les deux 1ers types d’architecture utilisent des etats caches, le modele GRU etant plus recent, moins complexe et ausi performant que le modele LSTM. L’approche TCN evite les etats caches et utilise les methodes du traitement d’images, elle peut etre aussi performante que les deux autres methodes.

4.1 Preparation des donnees

Choix d’hyperparametres : la taille des mini-batchs, le nombres d’epoques, le % de donnees utilisees pour validation.

taille_batch =  8
nb_epoques = 150
taux_val = 0.4

Pour chaque id, on met l’historique du parcours dans une liste et la cible dans une seconde colonne.

sequences = donnees.copy()
sequences = sequences.merge(recode[["code", "etat"]], how = 'left', on = "etat")
sequences.sort_values(["id", "num"], inplace = True)

listes = sequences[sequences.num <= sequences.long_histo].groupby(
  "id").code.apply(list).reset_index().rename(columns = {"code": "pages_prec"})
cibles = sequences[sequences.num == sequences.long_histo + 1][
  ["id", "train", "code"]].rename(columns = {"code": "cible"})
sequences = pd.merge(listes, cibles, how = 'left', on = 'id')

sequences = sequences[["id", "train", "pages_prec", "cible"]]

nb_sequences = len(sequences)
long_max = sequences.pages_prec.apply(len).max()

sequences
      id  train       pages_prec  cible
0      1  False     [0, 3, 3, 3]      3
1      2  False  [1, 5, 5, 5, 4]      4
2      3   True        [1, 0, 0]      5
3      4   True           [0, 0]      0
4      5  False              [1]      5
..   ...    ...              ...    ...
707  708  False        [5, 5, 3]      3
708  709  False     [5, 1, 1, 1]      1
709  710   True        [2, 1, 5]      3
710  711  False  [0, 0, 3, 3, 3]      3
711  712  False           [0, 0]      0

[712 rows x 4 columns]

Rembourrage et redimensionnement des sequences : on doit fournir un tenseur a 3 dimensions comme predicteur d’entree aux couches LSTM, GRU ou TCN.

  • 1er axe : les exemples, ici une sequence est un exemple, la valeur du tenseur sur le 1er axe est donc 712 (apprentissage et test confondus).
  • 2eme axe : le pas temporel. La valeur sur cet axe est 5, c’est le nombre d’etapes maximal de chaque sequence, il doit etre le meme pour chaque sequence. On utilise ci-dessous la fonction pad_sequences pour rembourrer a gauche chaque sequence a la longueur voulue.
  • 3eme axe : les caracteristiques d’un element d’une sequence, ici chaque etat est simplement code sous forme d’un entier, la valeur du tenseur est donc 1. Si chaque etat etait represente par un array numpy de longueur n, la valeur du tenseur serait n (cf couche Embedding dans la suite du document, on aura alors n = 3 a la sortie de cette couche).

Pour la cible, le pas temporel n’a pas de sens et c’est donc un tenseur a deux dimensions qui est attendu.

histo_train = list(sequences.pages_prec[sequences.train])
histo_train = pad_sequences(histo_train, maxlen = long_max, padding='pre', value=len(recode), dtype="float32")
histo_train = np.reshape(histo_train, (len(histo_train), long_max, 1))

histo_test = list(sequences.pages_prec[~sequences.train])
histo_test = pad_sequences(histo_test, maxlen = long_max, padding='pre', value = len(recode), dtype="float32")
histo_test = np.reshape(histo_test, (len(histo_test), long_max, 1))

cible_train = list(sequences.cible[sequences.train])
cible_train = np.reshape(cible_train, (len(cible_train), 1))

cible_test = np.array(sequences.cible[~sequences.train])

Exemple de sequence completee a gauche.

np.array(pd.Series(histo_train[0,:,0]).map(dico_recode))
array(['padding', 'padding', 'joblessness', 'training', 'training'],
      dtype=object)

4.2 Early stopping et graphiques de performance

Si la perte ne diminue plus sur l’echantillon de validation (“val_loss”) lors d’une succession de 10 epoques, l’entrainement s’arrete et revient a la meilleure perte observee.

early_stopping = EarlyStopping(
    monitor = 'val_loss', 
    verbose = 1,
    patience = 10,
    restore_best_weights = True)

Graphiques qui permettent de detecter le surapprentissage du modele (courbe de perte pour la validation superieure a celle de l’apprentissage) et l’evolution de la metrique “metier”, ici l’exactitude.

def perf(histoire):
  dtf = pd.DataFrame(histoire.history)
  colonnes = dtf.columns
  
  dtf = dtf.reset_index().rename(columns = {'index': 'epochs'})
  dtf_tr = pd.melt(dtf, id_vars = ['epochs'], value_vars = colonnes, 
    var_name ='noms_col', value_name='valeurs_col')
  
  dtf_tr["metrique"] = dtf_tr.noms_col.str.replace("^val_", "", regex = True)
  dtf_tr["echantillon"] = "val"
  dtf_tr.loc[dtf_tr.noms_col == dtf_tr.metrique, "echantillon"] = "train"
  
  g = sns.FacetGrid(dtf_tr, col="metrique", hue = "echantillon", sharey = False, col_wrap = 2)
  g = g.map_dataframe(sns.lineplot, x = "epochs",y = "valeurs_col").add_legend()
  plt.show()

5 Modeles avec couche LSTM / GRU

5.1 Architecture et entrainement des modeles

Chaque couche “Dropout” s’applique a la couche precedente et permet de diminuer le risque de surapprentissage.

5.1.1 LSTM

model_lstm = Sequential()
model_lstm.add(LSTM(10))
model_lstm.add(Dropout(0.5))
model_lstm.add(Dense(len(recode), activation='softmax'))

model_lstm.compile(loss = 'sparse_categorical_crossentropy', metrics = ['accuracy'])
history_lstm = model_lstm.fit(histo_train, 
                     cible_train, 
                     epochs = nb_epoques, 
                     batch_size = taille_batch, 
                     verbose = 1,
                     validation_split = taux_val,
                     callbacks = [early_stopping])
Epoch 1/150

 1/32 [..............................] - ETA: 1:04 - loss: 1.6950 - accuracy: 0.3750
20/32 [=================>............] - ETA: 0s - loss: 1.7053 - accuracy: 0.3125  
32/32 [==============================] - 3s 18ms/step - loss: 1.6758 - accuracy: 0.3135 - val_loss: 1.5629 - val_accuracy: 0.5148
Epoch 2/150

 1/32 [..............................] - ETA: 0s - loss: 1.9380 - accuracy: 0.1250
16/32 [==============>...............] - ETA: 0s - loss: 1.6203 - accuracy: 0.3750
32/32 [==============================] - ETA: 0s - loss: 1.6129 - accuracy: 0.3889
32/32 [==============================] - 0s 4ms/step - loss: 1.6129 - accuracy: 0.3889 - val_loss: 1.5074 - val_accuracy: 0.5148
Epoch 3/150

 1/32 [..............................] - ETA: 0s - loss: 1.9019 - accuracy: 0.1250
14/32 [============>.................] - ETA: 0s - loss: 1.4954 - accuracy: 0.5000
32/32 [==============================] - ETA: 0s - loss: 1.5188 - accuracy: 0.4841
32/32 [==============================] - 0s 4ms/step - loss: 1.5188 - accuracy: 0.4841 - val_loss: 1.4768 - val_accuracy: 0.5148
Epoch 4/150

 1/32 [..............................] - ETA: 0s - loss: 1.5857 - accuracy: 0.6250
16/32 [==============>...............] - ETA: 0s - loss: 1.5045 - accuracy: 0.4844
32/32 [==============================] - 0s 4ms/step - loss: 1.5163 - accuracy: 0.4960 - val_loss: 1.4571 - val_accuracy: 0.5148
Epoch 5/150

 1/32 [..............................] - ETA: 0s - loss: 2.1669 - accuracy: 0.0000e+00
21/32 [==================>...........] - ETA: 0s - loss: 1.4948 - accuracy: 0.4643    
32/32 [==============================] - 0s 4ms/step - loss: 1.5168 - accuracy: 0.4683 - val_loss: 1.4459 - val_accuracy: 0.5148
Epoch 6/150

 1/32 [..............................] - ETA: 0s - loss: 1.8491 - accuracy: 0.2500
21/32 [==================>...........] - ETA: 0s - loss: 1.5656 - accuracy: 0.4583
32/32 [==============================] - 0s 4ms/step - loss: 1.4994 - accuracy: 0.4960 - val_loss: 1.4339 - val_accuracy: 0.5148
Epoch 7/150

 1/32 [..............................] - ETA: 0s - loss: 1.3318 - accuracy: 0.6250
15/32 [=============>................] - ETA: 0s - loss: 1.5649 - accuracy: 0.4833
31/32 [============================>.] - ETA: 0s - loss: 1.5497 - accuracy: 0.4798
32/32 [==============================] - 0s 4ms/step - loss: 1.5378 - accuracy: 0.4881 - val_loss: 1.4269 - val_accuracy: 0.5148
Epoch 8/150

 1/32 [..............................] - ETA: 0s - loss: 1.7147 - accuracy: 0.3750
14/32 [============>.................] - ETA: 0s - loss: 1.4645 - accuracy: 0.5000
32/32 [==============================] - 0s 5ms/step - loss: 1.4691 - accuracy: 0.4921 - val_loss: 1.4197 - val_accuracy: 0.5148
Epoch 9/150

 1/32 [..............................] - ETA: 0s - loss: 0.9901 - accuracy: 0.7500
19/32 [================>.............] - ETA: 0s - loss: 1.4633 - accuracy: 0.4737
32/32 [==============================] - 0s 4ms/step - loss: 1.4205 - accuracy: 0.5000 - val_loss: 1.4085 - val_accuracy: 0.5148
Epoch 10/150

 1/32 [..............................] - ETA: 0s - loss: 1.7883 - accuracy: 0.2500
19/32 [================>.............] - ETA: 0s - loss: 1.5087 - accuracy: 0.4737
32/32 [==============================] - 0s 4ms/step - loss: 1.4610 - accuracy: 0.5159 - val_loss: 1.4030 - val_accuracy: 0.5148
Epoch 11/150

 1/32 [..............................] - ETA: 0s - loss: 1.4557 - accuracy: 0.5000
19/32 [================>.............] - ETA: 0s - loss: 1.5016 - accuracy: 0.5329
32/32 [==============================] - 0s 4ms/step - loss: 1.5006 - accuracy: 0.5119 - val_loss: 1.3973 - val_accuracy: 0.5148
Epoch 12/150

 1/32 [..............................] - ETA: 0s - loss: 1.3512 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 1.5014 - accuracy: 0.5000
32/32 [==============================] - 0s 4ms/step - loss: 1.4569 - accuracy: 0.4960 - val_loss: 1.3907 - val_accuracy: 0.5148
Epoch 13/150

 1/32 [..............................] - ETA: 0s - loss: 1.5200 - accuracy: 0.7500
16/32 [==============>...............] - ETA: 0s - loss: 1.4369 - accuracy: 0.5234
32/32 [==============================] - ETA: 0s - loss: 1.4217 - accuracy: 0.5159
32/32 [==============================] - 0s 4ms/step - loss: 1.4217 - accuracy: 0.5159 - val_loss: 1.3828 - val_accuracy: 0.5148
Epoch 14/150

 1/32 [..............................] - ETA: 0s - loss: 1.5336 - accuracy: 0.5000
14/32 [============>.................] - ETA: 0s - loss: 1.4739 - accuracy: 0.5000
32/32 [==============================] - 0s 5ms/step - loss: 1.4459 - accuracy: 0.5040 - val_loss: 1.3743 - val_accuracy: 0.5148
Epoch 15/150

 1/32 [..............................] - ETA: 0s - loss: 1.9044 - accuracy: 0.2500
17/32 [==============>...............] - ETA: 0s - loss: 1.4370 - accuracy: 0.4926
32/32 [==============================] - 0s 4ms/step - loss: 1.3801 - accuracy: 0.5437 - val_loss: 1.3677 - val_accuracy: 0.5148
Epoch 16/150

 1/32 [..............................] - ETA: 0s - loss: 1.0816 - accuracy: 0.7500
20/32 [=================>............] - ETA: 0s - loss: 1.4678 - accuracy: 0.4938
32/32 [==============================] - 0s 4ms/step - loss: 1.4086 - accuracy: 0.5198 - val_loss: 1.3628 - val_accuracy: 0.5266
Epoch 17/150

 1/32 [..............................] - ETA: 0s - loss: 0.9997 - accuracy: 0.8750
19/32 [================>.............] - ETA: 0s - loss: 1.3593 - accuracy: 0.5724
32/32 [==============================] - 0s 4ms/step - loss: 1.3707 - accuracy: 0.5397 - val_loss: 1.3599 - val_accuracy: 0.5385
Epoch 18/150

 1/32 [..............................] - ETA: 0s - loss: 1.4021 - accuracy: 0.5000
24/32 [=====================>........] - ETA: 0s - loss: 1.3914 - accuracy: 0.5312
32/32 [==============================] - 0s 4ms/step - loss: 1.3974 - accuracy: 0.5198 - val_loss: 1.3522 - val_accuracy: 0.5266
Epoch 19/150

 1/32 [..............................] - ETA: 0s - loss: 1.1270 - accuracy: 0.7500
14/32 [============>.................] - ETA: 0s - loss: 1.3572 - accuracy: 0.5625
32/32 [==============================] - ETA: 0s - loss: 1.3577 - accuracy: 0.5278
32/32 [==============================] - 0s 4ms/step - loss: 1.3577 - accuracy: 0.5278 - val_loss: 1.3462 - val_accuracy: 0.5148
Epoch 20/150

 1/32 [..............................] - ETA: 0s - loss: 1.9668 - accuracy: 0.2500
14/32 [============>.................] - ETA: 0s - loss: 1.3998 - accuracy: 0.5357
32/32 [==============================] - 0s 5ms/step - loss: 1.3634 - accuracy: 0.5516 - val_loss: 1.3409 - val_accuracy: 0.5148
Epoch 21/150

 1/32 [..............................] - ETA: 0s - loss: 1.3817 - accuracy: 0.5000
20/32 [=================>............] - ETA: 0s - loss: 1.4457 - accuracy: 0.5125
32/32 [==============================] - 0s 4ms/step - loss: 1.4022 - accuracy: 0.5238 - val_loss: 1.3368 - val_accuracy: 0.5148
Epoch 22/150

 1/32 [..............................] - ETA: 0s - loss: 1.7758 - accuracy: 0.3750
15/32 [=============>................] - ETA: 0s - loss: 1.4788 - accuracy: 0.5250
32/32 [==============================] - 0s 4ms/step - loss: 1.4001 - accuracy: 0.5357 - val_loss: 1.3323 - val_accuracy: 0.5266
Epoch 23/150

 1/32 [..............................] - ETA: 0s - loss: 1.0839 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 1.3886 - accuracy: 0.5294
32/32 [==============================] - 0s 4ms/step - loss: 1.3574 - accuracy: 0.5397 - val_loss: 1.3268 - val_accuracy: 0.5266
Epoch 24/150

 1/32 [..............................] - ETA: 0s - loss: 1.0361 - accuracy: 0.7500
18/32 [===============>..............] - ETA: 0s - loss: 1.3051 - accuracy: 0.5903
32/32 [==============================] - 0s 4ms/step - loss: 1.3461 - accuracy: 0.5595 - val_loss: 1.3213 - val_accuracy: 0.5266
Epoch 25/150

 1/32 [..............................] - ETA: 0s - loss: 1.4739 - accuracy: 0.3750
19/32 [================>.............] - ETA: 0s - loss: 1.3808 - accuracy: 0.4934
32/32 [==============================] - 0s 4ms/step - loss: 1.3754 - accuracy: 0.5278 - val_loss: 1.3183 - val_accuracy: 0.5148
Epoch 26/150

 1/32 [..............................] - ETA: 0s - loss: 1.1154 - accuracy: 0.7500
14/32 [============>.................] - ETA: 0s - loss: 1.3273 - accuracy: 0.5446
32/32 [==============================] - ETA: 0s - loss: 1.2986 - accuracy: 0.5516
32/32 [==============================] - 0s 4ms/step - loss: 1.2986 - accuracy: 0.5516 - val_loss: 1.3100 - val_accuracy: 0.5266
Epoch 27/150

 1/32 [..............................] - ETA: 0s - loss: 1.7890 - accuracy: 0.5000
16/32 [==============>...............] - ETA: 0s - loss: 1.4323 - accuracy: 0.5234
32/32 [==============================] - 0s 4ms/step - loss: 1.3806 - accuracy: 0.5397 - val_loss: 1.3073 - val_accuracy: 0.5266
Epoch 28/150

 1/32 [..............................] - ETA: 0s - loss: 1.0959 - accuracy: 0.6250
19/32 [================>.............] - ETA: 0s - loss: 1.3541 - accuracy: 0.5263
32/32 [==============================] - 0s 4ms/step - loss: 1.3833 - accuracy: 0.5357 - val_loss: 1.3038 - val_accuracy: 0.5385
Epoch 29/150

 1/32 [..............................] - ETA: 0s - loss: 1.6029 - accuracy: 0.3750
22/32 [===================>..........] - ETA: 0s - loss: 1.2991 - accuracy: 0.5568
32/32 [==============================] - 0s 4ms/step - loss: 1.3191 - accuracy: 0.5437 - val_loss: 1.3006 - val_accuracy: 0.5385
Epoch 30/150

 1/32 [..............................] - ETA: 0s - loss: 1.2072 - accuracy: 0.3750
17/32 [==============>...............] - ETA: 0s - loss: 1.2930 - accuracy: 0.5221
32/32 [==============================] - 0s 4ms/step - loss: 1.3117 - accuracy: 0.5198 - val_loss: 1.2960 - val_accuracy: 0.5385
Epoch 31/150

 1/32 [..............................] - ETA: 0s - loss: 1.0325 - accuracy: 0.6250
20/32 [=================>............] - ETA: 0s - loss: 1.2795 - accuracy: 0.5500
32/32 [==============================] - 0s 4ms/step - loss: 1.2901 - accuracy: 0.5437 - val_loss: 1.2929 - val_accuracy: 0.5385
Epoch 32/150

 1/32 [..............................] - ETA: 0s - loss: 1.3118 - accuracy: 0.3750
20/32 [=================>............] - ETA: 0s - loss: 1.3058 - accuracy: 0.5375
32/32 [==============================] - 0s 4ms/step - loss: 1.2988 - accuracy: 0.5397 - val_loss: 1.2896 - val_accuracy: 0.5444
Epoch 33/150

 1/32 [..............................] - ETA: 0s - loss: 1.8958 - accuracy: 0.2500
21/32 [==================>...........] - ETA: 0s - loss: 1.2215 - accuracy: 0.5952
32/32 [==============================] - 0s 4ms/step - loss: 1.2892 - accuracy: 0.5556 - val_loss: 1.2886 - val_accuracy: 0.5385
Epoch 34/150

 1/32 [..............................] - ETA: 0s - loss: 1.4132 - accuracy: 0.5000
15/32 [=============>................] - ETA: 0s - loss: 1.3107 - accuracy: 0.5500
32/32 [==============================] - 0s 4ms/step - loss: 1.3164 - accuracy: 0.5317 - val_loss: 1.2826 - val_accuracy: 0.5385
Epoch 35/150

 1/32 [..............................] - ETA: 0s - loss: 1.3625 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 1.3704 - accuracy: 0.5074
32/32 [==============================] - 0s 4ms/step - loss: 1.3123 - accuracy: 0.5238 - val_loss: 1.2811 - val_accuracy: 0.5385
Epoch 36/150

 1/32 [..............................] - ETA: 0s - loss: 0.7989 - accuracy: 0.7500
18/32 [===============>..............] - ETA: 0s - loss: 1.3083 - accuracy: 0.5556
32/32 [==============================] - 0s 4ms/step - loss: 1.2964 - accuracy: 0.5476 - val_loss: 1.2764 - val_accuracy: 0.5385
Epoch 37/150

 1/32 [..............................] - ETA: 0s - loss: 1.1271 - accuracy: 0.5000
23/32 [====================>.........] - ETA: 0s - loss: 1.2391 - accuracy: 0.5543
32/32 [==============================] - 0s 4ms/step - loss: 1.2813 - accuracy: 0.5238 - val_loss: 1.2735 - val_accuracy: 0.5325
Epoch 38/150

 1/32 [..............................] - ETA: 0s - loss: 1.2324 - accuracy: 0.7500
17/32 [==============>...............] - ETA: 0s - loss: 1.2868 - accuracy: 0.5515
32/32 [==============================] - 0s 4ms/step - loss: 1.3052 - accuracy: 0.5357 - val_loss: 1.2733 - val_accuracy: 0.5385
Epoch 39/150

 1/32 [..............................] - ETA: 0s - loss: 1.1514 - accuracy: 0.6250
16/32 [==============>...............] - ETA: 0s - loss: 1.2448 - accuracy: 0.5625
32/32 [==============================] - 0s 4ms/step - loss: 1.2898 - accuracy: 0.5437 - val_loss: 1.2693 - val_accuracy: 0.5385
Epoch 40/150

 1/32 [..............................] - ETA: 0s - loss: 1.2429 - accuracy: 0.6250
15/32 [=============>................] - ETA: 0s - loss: 1.1903 - accuracy: 0.5917
32/32 [==============================] - 0s 5ms/step - loss: 1.2647 - accuracy: 0.5595 - val_loss: 1.2653 - val_accuracy: 0.5444
Epoch 41/150

 1/32 [..............................] - ETA: 0s - loss: 1.2088 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 1.2593 - accuracy: 0.5694
32/32 [==============================] - 0s 4ms/step - loss: 1.2801 - accuracy: 0.5833 - val_loss: 1.2631 - val_accuracy: 0.5444
Epoch 42/150

 1/32 [..............................] - ETA: 0s - loss: 0.9026 - accuracy: 0.8750
24/32 [=====================>........] - ETA: 0s - loss: 1.2855 - accuracy: 0.5677
32/32 [==============================] - 0s 4ms/step - loss: 1.3153 - accuracy: 0.5516 - val_loss: 1.2600 - val_accuracy: 0.5444
Epoch 43/150

 1/32 [..............................] - ETA: 0s - loss: 1.5770 - accuracy: 0.3750
14/32 [============>.................] - ETA: 0s - loss: 1.4158 - accuracy: 0.5000
32/32 [==============================] - ETA: 0s - loss: 1.3362 - accuracy: 0.5317
32/32 [==============================] - 0s 4ms/step - loss: 1.3362 - accuracy: 0.5317 - val_loss: 1.2591 - val_accuracy: 0.5385
Epoch 44/150

 1/32 [..............................] - ETA: 0s - loss: 1.4130 - accuracy: 0.3750
15/32 [=============>................] - ETA: 0s - loss: 1.4091 - accuracy: 0.5250
32/32 [==============================] - 0s 4ms/step - loss: 1.2906 - accuracy: 0.5595 - val_loss: 1.2558 - val_accuracy: 0.5325
Epoch 45/150

 1/32 [..............................] - ETA: 0s - loss: 1.2747 - accuracy: 0.3750
19/32 [================>.............] - ETA: 0s - loss: 1.2170 - accuracy: 0.5066
32/32 [==============================] - 0s 4ms/step - loss: 1.2687 - accuracy: 0.5000 - val_loss: 1.2572 - val_accuracy: 0.5385
Epoch 46/150

 1/32 [..............................] - ETA: 0s - loss: 1.5902 - accuracy: 0.3750
22/32 [===================>..........] - ETA: 0s - loss: 1.2833 - accuracy: 0.5455
32/32 [==============================] - 0s 4ms/step - loss: 1.2696 - accuracy: 0.5476 - val_loss: 1.2519 - val_accuracy: 0.5444
Epoch 47/150

 1/32 [..............................] - ETA: 0s - loss: 1.3615 - accuracy: 0.3750
17/32 [==============>...............] - ETA: 0s - loss: 1.1807 - accuracy: 0.5515
32/32 [==============================] - 0s 4ms/step - loss: 1.2463 - accuracy: 0.5476 - val_loss: 1.2514 - val_accuracy: 0.5385
Epoch 48/150

 1/32 [..............................] - ETA: 0s - loss: 1.1383 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 1.2212 - accuracy: 0.5515
32/32 [==============================] - 0s 4ms/step - loss: 1.3226 - accuracy: 0.5278 - val_loss: 1.2483 - val_accuracy: 0.5325
Epoch 49/150

 1/32 [..............................] - ETA: 0s - loss: 1.2749 - accuracy: 0.5000
18/32 [===============>..............] - ETA: 0s - loss: 1.2207 - accuracy: 0.5556
32/32 [==============================] - 0s 4ms/step - loss: 1.2991 - accuracy: 0.5397 - val_loss: 1.2459 - val_accuracy: 0.5444
Epoch 50/150

 1/32 [..............................] - ETA: 0s - loss: 0.8838 - accuracy: 0.8750
24/32 [=====================>........] - ETA: 0s - loss: 1.2649 - accuracy: 0.5521
32/32 [==============================] - 0s 4ms/step - loss: 1.2892 - accuracy: 0.5397 - val_loss: 1.2445 - val_accuracy: 0.5385
Epoch 51/150

 1/32 [..............................] - ETA: 0s - loss: 1.1680 - accuracy: 0.5000
18/32 [===============>..............] - ETA: 0s - loss: 1.2380 - accuracy: 0.5833
32/32 [==============================] - 0s 4ms/step - loss: 1.2652 - accuracy: 0.5595 - val_loss: 1.2461 - val_accuracy: 0.5385
Epoch 52/150

 1/32 [..............................] - ETA: 0s - loss: 0.6579 - accuracy: 0.8750
19/32 [================>.............] - ETA: 0s - loss: 1.2370 - accuracy: 0.5658
32/32 [==============================] - 0s 4ms/step - loss: 1.2601 - accuracy: 0.5556 - val_loss: 1.2418 - val_accuracy: 0.5503
Epoch 53/150

 1/32 [..............................] - ETA: 0s - loss: 1.5950 - accuracy: 0.3750
19/32 [================>.............] - ETA: 0s - loss: 1.2676 - accuracy: 0.5592
32/32 [==============================] - 0s 4ms/step - loss: 1.2174 - accuracy: 0.5794 - val_loss: 1.2409 - val_accuracy: 0.5444
Epoch 54/150

 1/32 [..............................] - ETA: 0s - loss: 1.0044 - accuracy: 0.7500
20/32 [=================>............] - ETA: 0s - loss: 1.2376 - accuracy: 0.5750
32/32 [==============================] - 0s 4ms/step - loss: 1.2738 - accuracy: 0.5556 - val_loss: 1.2401 - val_accuracy: 0.5325
Epoch 55/150

 1/32 [..............................] - ETA: 0s - loss: 0.7832 - accuracy: 0.8750
14/32 [============>.................] - ETA: 0s - loss: 1.2522 - accuracy: 0.5446
32/32 [==============================] - ETA: 0s - loss: 1.2663 - accuracy: 0.5516
32/32 [==============================] - 0s 4ms/step - loss: 1.2663 - accuracy: 0.5516 - val_loss: 1.2335 - val_accuracy: 0.5385
Epoch 56/150

 1/32 [..............................] - ETA: 0s - loss: 1.5161 - accuracy: 0.6250
15/32 [=============>................] - ETA: 0s - loss: 1.2631 - accuracy: 0.5917
32/32 [==============================] - 0s 4ms/step - loss: 1.2577 - accuracy: 0.5833 - val_loss: 1.2322 - val_accuracy: 0.5503
Epoch 57/150

 1/32 [..............................] - ETA: 0s - loss: 1.6183 - accuracy: 0.3750
16/32 [==============>...............] - ETA: 0s - loss: 1.3911 - accuracy: 0.5000
32/32 [==============================] - 0s 4ms/step - loss: 1.2648 - accuracy: 0.5516 - val_loss: 1.2300 - val_accuracy: 0.5503
Epoch 58/150

 1/32 [..............................] - ETA: 0s - loss: 1.1041 - accuracy: 0.3750
19/32 [================>.............] - ETA: 0s - loss: 1.2098 - accuracy: 0.5724
32/32 [==============================] - 0s 4ms/step - loss: 1.2471 - accuracy: 0.5754 - val_loss: 1.2312 - val_accuracy: 0.5325
Epoch 59/150

 1/32 [..............................] - ETA: 0s - loss: 1.3834 - accuracy: 0.5000
22/32 [===================>..........] - ETA: 0s - loss: 1.2824 - accuracy: 0.5739
32/32 [==============================] - 0s 4ms/step - loss: 1.2780 - accuracy: 0.5635 - val_loss: 1.2254 - val_accuracy: 0.5503
Epoch 60/150

 1/32 [..............................] - ETA: 0s - loss: 1.7670 - accuracy: 0.2500
18/32 [===============>..............] - ETA: 0s - loss: 1.2428 - accuracy: 0.5347
32/32 [==============================] - 0s 4ms/step - loss: 1.2700 - accuracy: 0.5238 - val_loss: 1.2254 - val_accuracy: 0.5444
Epoch 61/150

 1/32 [..............................] - ETA: 0s - loss: 1.2521 - accuracy: 0.7500
19/32 [================>.............] - ETA: 0s - loss: 1.3509 - accuracy: 0.5132
32/32 [==============================] - 0s 4ms/step - loss: 1.3015 - accuracy: 0.5476 - val_loss: 1.2256 - val_accuracy: 0.5503
Epoch 62/150

 1/32 [..............................] - ETA: 0s - loss: 1.3653 - accuracy: 0.3750
20/32 [=================>............] - ETA: 0s - loss: 1.2209 - accuracy: 0.5437
32/32 [==============================] - 0s 4ms/step - loss: 1.2352 - accuracy: 0.5357 - val_loss: 1.2241 - val_accuracy: 0.5503
Epoch 63/150

 1/32 [..............................] - ETA: 0s - loss: 0.8706 - accuracy: 0.6250
14/32 [============>.................] - ETA: 0s - loss: 1.2893 - accuracy: 0.5268
32/32 [==============================] - ETA: 0s - loss: 1.2558 - accuracy: 0.5516
32/32 [==============================] - 0s 4ms/step - loss: 1.2558 - accuracy: 0.5516 - val_loss: 1.2238 - val_accuracy: 0.5444
Epoch 64/150

 1/32 [..............................] - ETA: 0s - loss: 0.8931 - accuracy: 0.7500
16/32 [==============>...............] - ETA: 0s - loss: 1.1976 - accuracy: 0.5781
32/32 [==============================] - 0s 4ms/step - loss: 1.2374 - accuracy: 0.5476 - val_loss: 1.2234 - val_accuracy: 0.5503
Epoch 65/150

 1/32 [..............................] - ETA: 0s - loss: 1.2075 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 1.2295 - accuracy: 0.5662
32/32 [==============================] - 0s 4ms/step - loss: 1.2529 - accuracy: 0.5675 - val_loss: 1.2224 - val_accuracy: 0.5444
Epoch 66/150

 1/32 [..............................] - ETA: 0s - loss: 1.5268 - accuracy: 0.3750
22/32 [===================>..........] - ETA: 0s - loss: 1.2310 - accuracy: 0.5682
32/32 [==============================] - 0s 4ms/step - loss: 1.2129 - accuracy: 0.5754 - val_loss: 1.2171 - val_accuracy: 0.5562
Epoch 67/150

 1/32 [..............................] - ETA: 0s - loss: 1.4676 - accuracy: 0.3750
22/32 [===================>..........] - ETA: 0s - loss: 1.2506 - accuracy: 0.5455
32/32 [==============================] - 0s 4ms/step - loss: 1.2800 - accuracy: 0.5357 - val_loss: 1.2160 - val_accuracy: 0.5562
Epoch 68/150

 1/32 [..............................] - ETA: 0s - loss: 0.9853 - accuracy: 0.6250
16/32 [==============>...............] - ETA: 0s - loss: 1.2240 - accuracy: 0.5312
32/32 [==============================] - 0s 4ms/step - loss: 1.2360 - accuracy: 0.5357 - val_loss: 1.2146 - val_accuracy: 0.5562
Epoch 69/150

 1/32 [..............................] - ETA: 0s - loss: 0.7022 - accuracy: 0.8750
17/32 [==============>...............] - ETA: 0s - loss: 1.1703 - accuracy: 0.5809
32/32 [==============================] - 0s 4ms/step - loss: 1.1995 - accuracy: 0.5595 - val_loss: 1.2170 - val_accuracy: 0.5621
Epoch 70/150

 1/32 [..............................] - ETA: 0s - loss: 1.3935 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 1.2997 - accuracy: 0.5556
32/32 [==============================] - 0s 4ms/step - loss: 1.2482 - accuracy: 0.5714 - val_loss: 1.2107 - val_accuracy: 0.5621
Epoch 71/150

 1/32 [..............................] - ETA: 0s - loss: 1.8649 - accuracy: 0.3750
25/32 [======================>.......] - ETA: 0s - loss: 1.2596 - accuracy: 0.5450
32/32 [==============================] - 0s 4ms/step - loss: 1.2148 - accuracy: 0.5675 - val_loss: 1.2112 - val_accuracy: 0.5503
Epoch 72/150

 1/32 [..............................] - ETA: 0s - loss: 1.2895 - accuracy: 0.6250
15/32 [=============>................] - ETA: 0s - loss: 1.1955 - accuracy: 0.6167
32/32 [==============================] - 0s 4ms/step - loss: 1.2421 - accuracy: 0.5556 - val_loss: 1.2090 - val_accuracy: 0.5562
Epoch 73/150

 1/32 [..............................] - ETA: 0s - loss: 1.2656 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 1.2274 - accuracy: 0.5441
32/32 [==============================] - 0s 4ms/step - loss: 1.2485 - accuracy: 0.5437 - val_loss: 1.2094 - val_accuracy: 0.5503
Epoch 74/150

 1/32 [..............................] - ETA: 0s - loss: 1.1448 - accuracy: 0.7500
22/32 [===================>..........] - ETA: 0s - loss: 1.2513 - accuracy: 0.5398
32/32 [==============================] - 0s 4ms/step - loss: 1.2301 - accuracy: 0.5516 - val_loss: 1.2109 - val_accuracy: 0.5444
Epoch 75/150

 1/32 [..............................] - ETA: 0s - loss: 1.4357 - accuracy: 0.5000
24/32 [=====================>........] - ETA: 0s - loss: 1.2120 - accuracy: 0.5729
32/32 [==============================] - 0s 4ms/step - loss: 1.2255 - accuracy: 0.5635 - val_loss: 1.2068 - val_accuracy: 0.5562
Epoch 76/150

 1/32 [..............................] - ETA: 0s - loss: 2.0007 - accuracy: 0.2500
19/32 [================>.............] - ETA: 0s - loss: 1.2631 - accuracy: 0.5789
32/32 [==============================] - 0s 4ms/step - loss: 1.2504 - accuracy: 0.5635 - val_loss: 1.2061 - val_accuracy: 0.5562
Epoch 77/150

 1/32 [..............................] - ETA: 0s - loss: 1.6040 - accuracy: 0.2500
19/32 [================>.............] - ETA: 0s - loss: 1.1557 - accuracy: 0.5789
32/32 [==============================] - 0s 4ms/step - loss: 1.2138 - accuracy: 0.5595 - val_loss: 1.2049 - val_accuracy: 0.5562
Epoch 78/150

 1/32 [..............................] - ETA: 0s - loss: 1.8604 - accuracy: 0.3750
19/32 [================>.............] - ETA: 0s - loss: 1.2629 - accuracy: 0.5197
32/32 [==============================] - 0s 4ms/step - loss: 1.1967 - accuracy: 0.5476 - val_loss: 1.2039 - val_accuracy: 0.5503
Epoch 79/150

 1/32 [..............................] - ETA: 0s - loss: 0.6101 - accuracy: 0.8750
23/32 [====================>.........] - ETA: 0s - loss: 1.2803 - accuracy: 0.5272
32/32 [==============================] - 0s 4ms/step - loss: 1.2513 - accuracy: 0.5437 - val_loss: 1.2078 - val_accuracy: 0.5444
Epoch 80/150

 1/32 [..............................] - ETA: 0s - loss: 1.9087 - accuracy: 0.2500
17/32 [==============>...............] - ETA: 0s - loss: 1.2451 - accuracy: 0.5294
32/32 [==============================] - 0s 4ms/step - loss: 1.2083 - accuracy: 0.5357 - val_loss: 1.2093 - val_accuracy: 0.5444
Epoch 81/150

 1/32 [..............................] - ETA: 0s - loss: 0.9625 - accuracy: 0.6250
16/32 [==============>...............] - ETA: 0s - loss: 1.1987 - accuracy: 0.5391
32/32 [==============================] - ETA: 0s - loss: 1.2131 - accuracy: 0.5437
32/32 [==============================] - 0s 4ms/step - loss: 1.2131 - accuracy: 0.5437 - val_loss: 1.2025 - val_accuracy: 0.5562
Epoch 82/150

 1/32 [..............................] - ETA: 0s - loss: 1.5560 - accuracy: 0.5000
14/32 [============>.................] - ETA: 0s - loss: 1.1952 - accuracy: 0.6071
32/32 [==============================] - 0s 5ms/step - loss: 1.2237 - accuracy: 0.5754 - val_loss: 1.2032 - val_accuracy: 0.5503
Epoch 83/150

 1/32 [..............................] - ETA: 0s - loss: 1.7588 - accuracy: 0.2500
20/32 [=================>............] - ETA: 0s - loss: 1.1921 - accuracy: 0.5625
32/32 [==============================] - 0s 4ms/step - loss: 1.1745 - accuracy: 0.5635 - val_loss: 1.1995 - val_accuracy: 0.5621
Epoch 84/150

 1/32 [..............................] - ETA: 0s - loss: 1.4882 - accuracy: 0.3750
21/32 [==================>...........] - ETA: 0s - loss: 1.2584 - accuracy: 0.5595
32/32 [==============================] - 0s 4ms/step - loss: 1.2689 - accuracy: 0.5397 - val_loss: 1.2025 - val_accuracy: 0.5503
Epoch 85/150

 1/32 [..............................] - ETA: 0s - loss: 1.3220 - accuracy: 0.3750
17/32 [==============>...............] - ETA: 0s - loss: 1.1768 - accuracy: 0.5662
32/32 [==============================] - 0s 4ms/step - loss: 1.1998 - accuracy: 0.5675 - val_loss: 1.1977 - val_accuracy: 0.5621
Epoch 86/150

 1/32 [..............................] - ETA: 0s - loss: 1.4041 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 1.2625 - accuracy: 0.5662
32/32 [==============================] - 0s 4ms/step - loss: 1.2346 - accuracy: 0.5675 - val_loss: 1.1967 - val_accuracy: 0.5621
Epoch 87/150

 1/32 [..............................] - ETA: 0s - loss: 1.3137 - accuracy: 0.5000
18/32 [===============>..............] - ETA: 0s - loss: 1.2184 - accuracy: 0.5764
32/32 [==============================] - 0s 4ms/step - loss: 1.2319 - accuracy: 0.5714 - val_loss: 1.1942 - val_accuracy: 0.5621
Epoch 88/150

 1/32 [..............................] - ETA: 0s - loss: 1.4131 - accuracy: 0.6250
24/32 [=====================>........] - ETA: 0s - loss: 1.2025 - accuracy: 0.5521
32/32 [==============================] - 0s 4ms/step - loss: 1.2219 - accuracy: 0.5357 - val_loss: 1.2009 - val_accuracy: 0.5503
Epoch 89/150

 1/32 [..............................] - ETA: 0s - loss: 1.7298 - accuracy: 0.3750
17/32 [==============>...............] - ETA: 0s - loss: 1.1651 - accuracy: 0.5662
32/32 [==============================] - 0s 4ms/step - loss: 1.2132 - accuracy: 0.5635 - val_loss: 1.1940 - val_accuracy: 0.5621
Epoch 90/150

 1/32 [..............................] - ETA: 0s - loss: 0.9735 - accuracy: 0.7500
18/32 [===============>..............] - ETA: 0s - loss: 1.1521 - accuracy: 0.6111
32/32 [==============================] - 0s 4ms/step - loss: 1.2401 - accuracy: 0.5437 - val_loss: 1.1944 - val_accuracy: 0.5562
Epoch 91/150

 1/32 [..............................] - ETA: 0s - loss: 1.0610 - accuracy: 0.7500
19/32 [================>.............] - ETA: 0s - loss: 1.1783 - accuracy: 0.5592
32/32 [==============================] - 0s 4ms/step - loss: 1.2339 - accuracy: 0.5556 - val_loss: 1.1915 - val_accuracy: 0.5680
Epoch 92/150

 1/32 [..............................] - ETA: 0s - loss: 0.8288 - accuracy: 0.7500
24/32 [=====================>........] - ETA: 0s - loss: 1.2096 - accuracy: 0.5417
32/32 [==============================] - 0s 4ms/step - loss: 1.2260 - accuracy: 0.5437 - val_loss: 1.1938 - val_accuracy: 0.5621
Epoch 93/150

 1/32 [..............................] - ETA: 0s - loss: 1.0496 - accuracy: 0.6250
14/32 [============>.................] - ETA: 0s - loss: 1.2071 - accuracy: 0.5714
32/32 [==============================] - ETA: 0s - loss: 1.2384 - accuracy: 0.5714
32/32 [==============================] - 0s 4ms/step - loss: 1.2384 - accuracy: 0.5714 - val_loss: 1.1915 - val_accuracy: 0.5680
Epoch 94/150

 1/32 [..............................] - ETA: 0s - loss: 1.2163 - accuracy: 0.7500
15/32 [=============>................] - ETA: 0s - loss: 1.1337 - accuracy: 0.6000
32/32 [==============================] - 0s 4ms/step - loss: 1.2146 - accuracy: 0.5794 - val_loss: 1.1895 - val_accuracy: 0.5680
Epoch 95/150

 1/32 [..............................] - ETA: 0s - loss: 1.3391 - accuracy: 0.5000
20/32 [=================>............] - ETA: 0s - loss: 1.2188 - accuracy: 0.5437
32/32 [==============================] - 0s 4ms/step - loss: 1.1995 - accuracy: 0.5476 - val_loss: 1.1933 - val_accuracy: 0.5562
Epoch 96/150

 1/32 [..............................] - ETA: 0s - loss: 1.1703 - accuracy: 0.7500
22/32 [===================>..........] - ETA: 0s - loss: 1.2451 - accuracy: 0.5966
32/32 [==============================] - 0s 4ms/step - loss: 1.2081 - accuracy: 0.5913 - val_loss: 1.1858 - val_accuracy: 0.5680
Epoch 97/150

 1/32 [..............................] - ETA: 0s - loss: 1.2255 - accuracy: 0.3750
17/32 [==============>...............] - ETA: 0s - loss: 1.2590 - accuracy: 0.5588
32/32 [==============================] - 0s 4ms/step - loss: 1.2114 - accuracy: 0.5794 - val_loss: 1.1867 - val_accuracy: 0.5680
Epoch 98/150

 1/32 [..............................] - ETA: 0s - loss: 0.6875 - accuracy: 0.8750
19/32 [================>.............] - ETA: 0s - loss: 1.1792 - accuracy: 0.6316
32/32 [==============================] - 0s 4ms/step - loss: 1.2454 - accuracy: 0.5675 - val_loss: 1.1859 - val_accuracy: 0.5621
Epoch 99/150

 1/32 [..............................] - ETA: 0s - loss: 1.4068 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 1.1863 - accuracy: 0.5625
32/32 [==============================] - 0s 4ms/step - loss: 1.1969 - accuracy: 0.5556 - val_loss: 1.1839 - val_accuracy: 0.5621
Epoch 100/150

 1/32 [..............................] - ETA: 0s - loss: 1.2030 - accuracy: 0.5000
19/32 [================>.............] - ETA: 0s - loss: 1.2218 - accuracy: 0.5329
32/32 [==============================] - 0s 4ms/step - loss: 1.1955 - accuracy: 0.5516 - val_loss: 1.1844 - val_accuracy: 0.5621
Epoch 101/150

 1/32 [..............................] - ETA: 0s - loss: 1.5791 - accuracy: 0.5000
24/32 [=====================>........] - ETA: 0s - loss: 1.1759 - accuracy: 0.6042
32/32 [==============================] - 0s 4ms/step - loss: 1.1948 - accuracy: 0.5913 - val_loss: 1.1840 - val_accuracy: 0.5621
Epoch 102/150

 1/32 [..............................] - ETA: 0s - loss: 1.4981 - accuracy: 0.3750
14/32 [============>.................] - ETA: 0s - loss: 1.1864 - accuracy: 0.5714
32/32 [==============================] - 0s 5ms/step - loss: 1.1799 - accuracy: 0.5675 - val_loss: 1.1839 - val_accuracy: 0.5621
Epoch 103/150

 1/32 [..............................] - ETA: 0s - loss: 1.5647 - accuracy: 0.5000
19/32 [================>.............] - ETA: 0s - loss: 1.1647 - accuracy: 0.6382
32/32 [==============================] - 0s 4ms/step - loss: 1.2258 - accuracy: 0.6032 - val_loss: 1.1818 - val_accuracy: 0.5680
Epoch 104/150

 1/32 [..............................] - ETA: 0s - loss: 1.3853 - accuracy: 0.5000
20/32 [=================>............] - ETA: 0s - loss: 1.2388 - accuracy: 0.5562
32/32 [==============================] - 0s 4ms/step - loss: 1.1822 - accuracy: 0.5714 - val_loss: 1.1802 - val_accuracy: 0.5680
Epoch 105/150

 1/32 [..............................] - ETA: 0s - loss: 1.4570 - accuracy: 0.5000
15/32 [=============>................] - ETA: 0s - loss: 1.1993 - accuracy: 0.5667
32/32 [==============================] - 0s 4ms/step - loss: 1.2034 - accuracy: 0.5714 - val_loss: 1.1790 - val_accuracy: 0.5680
Epoch 106/150

 1/32 [..............................] - ETA: 0s - loss: 1.4015 - accuracy: 0.2500
15/32 [=============>................] - ETA: 0s - loss: 1.1646 - accuracy: 0.5167
32/32 [==============================] - 0s 4ms/step - loss: 1.1627 - accuracy: 0.5556 - val_loss: 1.1781 - val_accuracy: 0.5680
Epoch 107/150

 1/32 [..............................] - ETA: 0s - loss: 1.4186 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 1.2050 - accuracy: 0.5809
32/32 [==============================] - 0s 4ms/step - loss: 1.1885 - accuracy: 0.5635 - val_loss: 1.1775 - val_accuracy: 0.5621
Epoch 108/150

 1/32 [..............................] - ETA: 0s - loss: 1.2755 - accuracy: 0.5000
21/32 [==================>...........] - ETA: 0s - loss: 1.2329 - accuracy: 0.5714
32/32 [==============================] - 0s 4ms/step - loss: 1.2330 - accuracy: 0.5635 - val_loss: 1.1758 - val_accuracy: 0.5621
Epoch 109/150

 1/32 [..............................] - ETA: 0s - loss: 0.9613 - accuracy: 0.6250
22/32 [===================>..........] - ETA: 0s - loss: 1.2920 - accuracy: 0.5398
32/32 [==============================] - 0s 4ms/step - loss: 1.2385 - accuracy: 0.5595 - val_loss: 1.1750 - val_accuracy: 0.5680
Epoch 110/150

 1/32 [..............................] - ETA: 0s - loss: 1.7605 - accuracy: 0.2500
18/32 [===============>..............] - ETA: 0s - loss: 1.1476 - accuracy: 0.5625
32/32 [==============================] - 0s 4ms/step - loss: 1.1996 - accuracy: 0.5397 - val_loss: 1.1751 - val_accuracy: 0.5621
Epoch 111/150

 1/32 [..............................] - ETA: 0s - loss: 1.1161 - accuracy: 0.6250
19/32 [================>.............] - ETA: 0s - loss: 1.1873 - accuracy: 0.5526
32/32 [==============================] - 0s 4ms/step - loss: 1.2073 - accuracy: 0.5437 - val_loss: 1.1791 - val_accuracy: 0.5562
Epoch 112/150

 1/32 [..............................] - ETA: 0s - loss: 1.4240 - accuracy: 0.3750
20/32 [=================>............] - ETA: 0s - loss: 1.2112 - accuracy: 0.5562
32/32 [==============================] - 0s 4ms/step - loss: 1.2016 - accuracy: 0.5675 - val_loss: 1.1739 - val_accuracy: 0.5562
Epoch 113/150

 1/32 [..............................] - ETA: 0s - loss: 0.8622 - accuracy: 0.7500
15/32 [=============>................] - ETA: 0s - loss: 1.3215 - accuracy: 0.5000
32/32 [==============================] - 0s 4ms/step - loss: 1.2074 - accuracy: 0.5516 - val_loss: 1.1751 - val_accuracy: 0.5562
Epoch 114/150

 1/32 [..............................] - ETA: 0s - loss: 0.9235 - accuracy: 0.7500
16/32 [==============>...............] - ETA: 0s - loss: 1.1631 - accuracy: 0.5625
32/32 [==============================] - 0s 4ms/step - loss: 1.1404 - accuracy: 0.5516 - val_loss: 1.1732 - val_accuracy: 0.5562
Epoch 115/150

 1/32 [..............................] - ETA: 0s - loss: 1.1294 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 1.2009 - accuracy: 0.5588
32/32 [==============================] - 0s 4ms/step - loss: 1.1620 - accuracy: 0.5754 - val_loss: 1.1731 - val_accuracy: 0.5621
Epoch 116/150

 1/32 [..............................] - ETA: 0s - loss: 1.5535 - accuracy: 0.6250
21/32 [==================>...........] - ETA: 0s - loss: 1.1858 - accuracy: 0.5417
32/32 [==============================] - 0s 4ms/step - loss: 1.1736 - accuracy: 0.5516 - val_loss: 1.1710 - val_accuracy: 0.5621
Epoch 117/150

 1/32 [..............................] - ETA: 0s - loss: 1.0343 - accuracy: 0.6250
19/32 [================>.............] - ETA: 0s - loss: 1.2223 - accuracy: 0.5526
32/32 [==============================] - 0s 4ms/step - loss: 1.1513 - accuracy: 0.5913 - val_loss: 1.1704 - val_accuracy: 0.5621
Epoch 118/150

 1/32 [..............................] - ETA: 0s - loss: 0.8822 - accuracy: 0.7500
18/32 [===============>..............] - ETA: 0s - loss: 1.2183 - accuracy: 0.5486
32/32 [==============================] - 0s 4ms/step - loss: 1.1966 - accuracy: 0.5635 - val_loss: 1.1695 - val_accuracy: 0.5680
Epoch 119/150

 1/32 [..............................] - ETA: 0s - loss: 1.4473 - accuracy: 0.2500
19/32 [================>.............] - ETA: 0s - loss: 1.0939 - accuracy: 0.6053
32/32 [==============================] - 0s 4ms/step - loss: 1.1859 - accuracy: 0.5516 - val_loss: 1.1704 - val_accuracy: 0.5740
Epoch 120/150

 1/32 [..............................] - ETA: 0s - loss: 1.0555 - accuracy: 0.6250
20/32 [=================>............] - ETA: 0s - loss: 1.1914 - accuracy: 0.5437
32/32 [==============================] - 0s 4ms/step - loss: 1.1738 - accuracy: 0.5556 - val_loss: 1.1656 - val_accuracy: 0.5680
Epoch 121/150

 1/32 [..............................] - ETA: 0s - loss: 1.2793 - accuracy: 0.5000
14/32 [============>.................] - ETA: 0s - loss: 1.2506 - accuracy: 0.5446
32/32 [==============================] - ETA: 0s - loss: 1.2190 - accuracy: 0.5437
32/32 [==============================] - 0s 4ms/step - loss: 1.2190 - accuracy: 0.5437 - val_loss: 1.1696 - val_accuracy: 0.5621
Epoch 122/150

 1/32 [..............................] - ETA: 0s - loss: 0.6022 - accuracy: 0.8750
15/32 [=============>................] - ETA: 0s - loss: 1.1374 - accuracy: 0.6417
32/32 [==============================] - 0s 4ms/step - loss: 1.1632 - accuracy: 0.5794 - val_loss: 1.1654 - val_accuracy: 0.5621
Epoch 123/150

 1/32 [..............................] - ETA: 0s - loss: 0.9439 - accuracy: 0.6250
16/32 [==============>...............] - ETA: 0s - loss: 1.1297 - accuracy: 0.5938
32/32 [==============================] - 0s 4ms/step - loss: 1.1588 - accuracy: 0.5794 - val_loss: 1.1653 - val_accuracy: 0.5740
Epoch 124/150

 1/32 [..............................] - ETA: 0s - loss: 1.5935 - accuracy: 0.3750
21/32 [==================>...........] - ETA: 0s - loss: 1.1244 - accuracy: 0.5893
32/32 [==============================] - 0s 4ms/step - loss: 1.1490 - accuracy: 0.5714 - val_loss: 1.1677 - val_accuracy: 0.5562
Epoch 125/150

 1/32 [..............................] - ETA: 0s - loss: 1.3829 - accuracy: 0.2500
22/32 [===================>..........] - ETA: 0s - loss: 1.1893 - accuracy: 0.5284
32/32 [==============================] - 0s 4ms/step - loss: 1.1531 - accuracy: 0.5516 - val_loss: 1.1629 - val_accuracy: 0.5740
Epoch 126/150

 1/32 [..............................] - ETA: 0s - loss: 0.9146 - accuracy: 0.3750
18/32 [===============>..............] - ETA: 0s - loss: 1.1550 - accuracy: 0.5556
32/32 [==============================] - 0s 4ms/step - loss: 1.1935 - accuracy: 0.5635 - val_loss: 1.1638 - val_accuracy: 0.5562
Epoch 127/150

 1/32 [..............................] - ETA: 0s - loss: 1.1628 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 1.2038 - accuracy: 0.5486
32/32 [==============================] - 0s 4ms/step - loss: 1.1550 - accuracy: 0.5833 - val_loss: 1.1623 - val_accuracy: 0.5621
Epoch 128/150

 1/32 [..............................] - ETA: 0s - loss: 0.7397 - accuracy: 0.7500
18/32 [===============>..............] - ETA: 0s - loss: 1.1831 - accuracy: 0.5625
32/32 [==============================] - 0s 4ms/step - loss: 1.1795 - accuracy: 0.5675 - val_loss: 1.1588 - val_accuracy: 0.5680
Epoch 129/150

 1/32 [..............................] - ETA: 0s - loss: 1.0052 - accuracy: 0.5000
21/32 [==================>...........] - ETA: 0s - loss: 1.2002 - accuracy: 0.5714
32/32 [==============================] - 0s 4ms/step - loss: 1.1823 - accuracy: 0.5794 - val_loss: 1.1556 - val_accuracy: 0.5740
Epoch 130/150

 1/32 [..............................] - ETA: 0s - loss: 1.1976 - accuracy: 0.3750
14/32 [============>.................] - ETA: 0s - loss: 1.1857 - accuracy: 0.5536
32/32 [==============================] - ETA: 0s - loss: 1.1842 - accuracy: 0.5675
32/32 [==============================] - 0s 4ms/step - loss: 1.1842 - accuracy: 0.5675 - val_loss: 1.1529 - val_accuracy: 0.5621
Epoch 131/150

 1/32 [..............................] - ETA: 0s - loss: 1.2055 - accuracy: 0.3750
19/32 [================>.............] - ETA: 0s - loss: 1.1559 - accuracy: 0.6053
32/32 [==============================] - 0s 4ms/step - loss: 1.1756 - accuracy: 0.5952 - val_loss: 1.1561 - val_accuracy: 0.5621
Epoch 132/150

 1/32 [..............................] - ETA: 0s - loss: 1.0728 - accuracy: 0.5000
15/32 [=============>................] - ETA: 0s - loss: 1.1753 - accuracy: 0.5500
32/32 [==============================] - 0s 5ms/step - loss: 1.1789 - accuracy: 0.5397 - val_loss: 1.1593 - val_accuracy: 0.5621
Epoch 133/150

 1/32 [..............................] - ETA: 0s - loss: 1.4025 - accuracy: 0.3750
19/32 [================>.............] - ETA: 0s - loss: 1.1340 - accuracy: 0.5658
32/32 [==============================] - 0s 4ms/step - loss: 1.1663 - accuracy: 0.5833 - val_loss: 1.1573 - val_accuracy: 0.5621
Epoch 134/150

 1/32 [..............................] - ETA: 0s - loss: 1.1446 - accuracy: 0.3750
22/32 [===================>..........] - ETA: 0s - loss: 1.2193 - accuracy: 0.5284
32/32 [==============================] - 0s 4ms/step - loss: 1.1784 - accuracy: 0.5357 - val_loss: 1.1550 - val_accuracy: 0.5680
Epoch 135/150

 1/32 [..............................] - ETA: 0s - loss: 1.3588 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 1.1877 - accuracy: 0.5588
32/32 [==============================] - 0s 4ms/step - loss: 1.1488 - accuracy: 0.5754 - val_loss: 1.1542 - val_accuracy: 0.5680
Epoch 136/150

 1/32 [..............................] - ETA: 0s - loss: 1.1442 - accuracy: 0.5000
19/32 [================>.............] - ETA: 0s - loss: 1.2566 - accuracy: 0.5329
32/32 [==============================] - 0s 4ms/step - loss: 1.1966 - accuracy: 0.5595 - val_loss: 1.1519 - val_accuracy: 0.5562
Epoch 137/150

 1/32 [..............................] - ETA: 0s - loss: 1.1602 - accuracy: 0.6250
19/32 [================>.............] - ETA: 0s - loss: 1.1948 - accuracy: 0.5789
32/32 [==============================] - 0s 4ms/step - loss: 1.1825 - accuracy: 0.5675 - val_loss: 1.1469 - val_accuracy: 0.5621
Epoch 138/150

 1/32 [..............................] - ETA: 0s - loss: 0.8069 - accuracy: 0.7500
19/32 [================>.............] - ETA: 0s - loss: 1.1424 - accuracy: 0.5592
32/32 [==============================] - 0s 4ms/step - loss: 1.1327 - accuracy: 0.5714 - val_loss: 1.1472 - val_accuracy: 0.5562
Epoch 139/150

 1/32 [..............................] - ETA: 0s - loss: 1.0324 - accuracy: 0.5000
19/32 [================>.............] - ETA: 0s - loss: 1.1135 - accuracy: 0.5724
32/32 [==============================] - 0s 4ms/step - loss: 1.1467 - accuracy: 0.5794 - val_loss: 1.1532 - val_accuracy: 0.5562
Epoch 140/150

 1/32 [..............................] - ETA: 0s - loss: 1.2544 - accuracy: 0.3750
15/32 [=============>................] - ETA: 0s - loss: 1.1937 - accuracy: 0.5667
32/32 [==============================] - 0s 5ms/step - loss: 1.1452 - accuracy: 0.5873 - val_loss: 1.1492 - val_accuracy: 0.5621
Epoch 141/150

 1/32 [..............................] - ETA: 0s - loss: 0.7023 - accuracy: 0.6250
20/32 [=================>............] - ETA: 0s - loss: 1.1199 - accuracy: 0.6062
32/32 [==============================] - 0s 4ms/step - loss: 1.1816 - accuracy: 0.5714 - val_loss: 1.1480 - val_accuracy: 0.5621
Epoch 142/150

 1/32 [..............................] - ETA: 0s - loss: 0.8086 - accuracy: 0.7500
21/32 [==================>...........] - ETA: 0s - loss: 1.1873 - accuracy: 0.5595
32/32 [==============================] - 0s 4ms/step - loss: 1.1445 - accuracy: 0.5754 - val_loss: 1.1422 - val_accuracy: 0.5740
Epoch 143/150

 1/32 [..............................] - ETA: 0s - loss: 1.2875 - accuracy: 0.7500
16/32 [==============>...............] - ETA: 0s - loss: 1.1328 - accuracy: 0.6016
32/32 [==============================] - 0s 4ms/step - loss: 1.1710 - accuracy: 0.5754 - val_loss: 1.1448 - val_accuracy: 0.5680
Epoch 144/150

 1/32 [..............................] - ETA: 0s - loss: 1.0364 - accuracy: 0.5000
19/32 [================>.............] - ETA: 0s - loss: 1.1303 - accuracy: 0.5724
32/32 [==============================] - 0s 4ms/step - loss: 1.1320 - accuracy: 0.5675 - val_loss: 1.1429 - val_accuracy: 0.5680
Epoch 145/150

 1/32 [..............................] - ETA: 0s - loss: 1.2752 - accuracy: 0.3750
18/32 [===============>..............] - ETA: 0s - loss: 1.1304 - accuracy: 0.6042
32/32 [==============================] - 0s 4ms/step - loss: 1.1442 - accuracy: 0.5833 - val_loss: 1.1436 - val_accuracy: 0.5680
Epoch 146/150

 1/32 [..............................] - ETA: 0s - loss: 1.3392 - accuracy: 0.5000
22/32 [===================>..........] - ETA: 0s - loss: 1.2062 - accuracy: 0.5227
32/32 [==============================] - 0s 4ms/step - loss: 1.1655 - accuracy: 0.5357 - val_loss: 1.1443 - val_accuracy: 0.5680
Epoch 147/150

 1/32 [..............................] - ETA: 0s - loss: 1.2679 - accuracy: 0.5000
18/32 [===============>..............] - ETA: 0s - loss: 1.1297 - accuracy: 0.5694
32/32 [==============================] - 0s 4ms/step - loss: 1.1653 - accuracy: 0.5675 - val_loss: 1.1401 - val_accuracy: 0.5621
Epoch 148/150

 1/32 [..............................] - ETA: 0s - loss: 1.4032 - accuracy: 0.6250
19/32 [================>.............] - ETA: 0s - loss: 1.0679 - accuracy: 0.6118
32/32 [==============================] - 0s 4ms/step - loss: 1.1296 - accuracy: 0.5833 - val_loss: 1.1367 - val_accuracy: 0.5680
Epoch 149/150

 1/32 [..............................] - ETA: 0s - loss: 0.8953 - accuracy: 0.7500
20/32 [=================>............] - ETA: 0s - loss: 1.1156 - accuracy: 0.6062
32/32 [==============================] - 0s 4ms/step - loss: 1.1544 - accuracy: 0.5754 - val_loss: 1.1369 - val_accuracy: 0.5740
Epoch 150/150

 1/32 [..............................] - ETA: 0s - loss: 1.2762 - accuracy: 0.5000
20/32 [=================>............] - ETA: 0s - loss: 1.1813 - accuracy: 0.5437
32/32 [==============================] - 0s 4ms/step - loss: 1.1211 - accuracy: 0.5833 - val_loss: 1.1380 - val_accuracy: 0.5740

5.1.2 GRU

model_gru = Sequential()
model_gru.add(GRU(10))
model_gru.add(Dropout(0.5))
model_gru.add(Dense(len(recode), activation='softmax'))

model_gru.compile(loss = 'sparse_categorical_crossentropy', metrics = ['accuracy'])
history_gru = model_gru.fit(histo_train, 
                     cible_train, 
                     epochs = nb_epoques, 
                     batch_size = taille_batch, 
                     verbose = 1,
                     validation_split = taux_val,
                     callbacks = [early_stopping])
Epoch 1/150

 1/32 [..............................] - ETA: 58s - loss: 2.1508 - accuracy: 0.0000e+00
23/32 [====================>.........] - ETA: 0s - loss: 1.8356 - accuracy: 0.2609     
32/32 [==============================] - 2s 16ms/step - loss: 1.8106 - accuracy: 0.2659 - val_loss: 1.6278 - val_accuracy: 0.5148
Epoch 2/150

 1/32 [..............................] - ETA: 0s - loss: 1.5962 - accuracy: 0.3750
15/32 [=============>................] - ETA: 0s - loss: 1.6897 - accuracy: 0.3250
31/32 [============================>.] - ETA: 0s - loss: 1.6232 - accuracy: 0.3871
32/32 [==============================] - 0s 4ms/step - loss: 1.6364 - accuracy: 0.3810 - val_loss: 1.5553 - val_accuracy: 0.5148
Epoch 3/150

 1/32 [..............................] - ETA: 0s - loss: 1.4572 - accuracy: 0.5000
16/32 [==============>...............] - ETA: 0s - loss: 1.6254 - accuracy: 0.4297
31/32 [============================>.] - ETA: 0s - loss: 1.5992 - accuracy: 0.4476
32/32 [==============================] - 0s 4ms/step - loss: 1.6057 - accuracy: 0.4405 - val_loss: 1.5137 - val_accuracy: 0.5148
Epoch 4/150

 1/32 [..............................] - ETA: 0s - loss: 1.4999 - accuracy: 0.3750
17/32 [==============>...............] - ETA: 0s - loss: 1.5950 - accuracy: 0.4559
31/32 [============================>.] - ETA: 0s - loss: 1.5753 - accuracy: 0.4516
32/32 [==============================] - 0s 4ms/step - loss: 1.5706 - accuracy: 0.4563 - val_loss: 1.4917 - val_accuracy: 0.5148
Epoch 5/150

 1/32 [..............................] - ETA: 0s - loss: 2.2172 - accuracy: 0.1250
18/32 [===============>..............] - ETA: 0s - loss: 1.5574 - accuracy: 0.4792
32/32 [==============================] - 0s 4ms/step - loss: 1.5832 - accuracy: 0.4643 - val_loss: 1.4800 - val_accuracy: 0.5148
Epoch 6/150

 1/32 [..............................] - ETA: 0s - loss: 2.0373 - accuracy: 0.0000e+00
16/32 [==============>...............] - ETA: 0s - loss: 1.5812 - accuracy: 0.4375    
32/32 [==============================] - 0s 5ms/step - loss: 1.4903 - accuracy: 0.4881 - val_loss: 1.4699 - val_accuracy: 0.5148
Epoch 7/150

 1/32 [..............................] - ETA: 0s - loss: 1.3576 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 1.6335 - accuracy: 0.4632
32/32 [==============================] - 0s 4ms/step - loss: 1.5574 - accuracy: 0.4921 - val_loss: 1.4643 - val_accuracy: 0.5148
Epoch 8/150

 1/32 [..............................] - ETA: 0s - loss: 1.9773 - accuracy: 0.3750
16/32 [==============>...............] - ETA: 0s - loss: 1.5282 - accuracy: 0.5156
32/32 [==============================] - 0s 5ms/step - loss: 1.4801 - accuracy: 0.5317 - val_loss: 1.4579 - val_accuracy: 0.5148
Epoch 9/150

 1/32 [..............................] - ETA: 0s - loss: 1.0945 - accuracy: 0.7500
17/32 [==============>...............] - ETA: 0s - loss: 1.5226 - accuracy: 0.4779
32/32 [==============================] - 0s 4ms/step - loss: 1.4649 - accuracy: 0.5317 - val_loss: 1.4514 - val_accuracy: 0.5148
Epoch 10/150

 1/32 [..............................] - ETA: 0s - loss: 1.7777 - accuracy: 0.3750
16/32 [==============>...............] - ETA: 0s - loss: 1.4913 - accuracy: 0.4922
32/32 [==============================] - 0s 5ms/step - loss: 1.4591 - accuracy: 0.5079 - val_loss: 1.4466 - val_accuracy: 0.5148
Epoch 11/150

 1/32 [..............................] - ETA: 0s - loss: 1.6035 - accuracy: 0.5000
18/32 [===============>..............] - ETA: 0s - loss: 1.4939 - accuracy: 0.5347
32/32 [==============================] - 0s 5ms/step - loss: 1.4845 - accuracy: 0.5278 - val_loss: 1.4397 - val_accuracy: 0.5148
Epoch 12/150

 1/32 [..............................] - ETA: 0s - loss: 1.2508 - accuracy: 0.6250
19/32 [================>.............] - ETA: 0s - loss: 1.4709 - accuracy: 0.5132
32/32 [==============================] - 0s 4ms/step - loss: 1.4412 - accuracy: 0.5159 - val_loss: 1.4362 - val_accuracy: 0.5148
Epoch 13/150

 1/32 [..............................] - ETA: 0s - loss: 1.7210 - accuracy: 0.5000
20/32 [=================>............] - ETA: 0s - loss: 1.4403 - accuracy: 0.5188
32/32 [==============================] - 0s 4ms/step - loss: 1.4441 - accuracy: 0.5119 - val_loss: 1.4301 - val_accuracy: 0.5148
Epoch 14/150

 1/32 [..............................] - ETA: 0s - loss: 1.5714 - accuracy: 0.5000
13/32 [===========>..................] - ETA: 0s - loss: 1.4490 - accuracy: 0.5288
29/32 [==========================>...] - ETA: 0s - loss: 1.4656 - accuracy: 0.5000
32/32 [==============================] - 0s 5ms/step - loss: 1.4520 - accuracy: 0.5119 - val_loss: 1.4236 - val_accuracy: 0.5148
Epoch 15/150

 1/32 [..............................] - ETA: 0s - loss: 1.6794 - accuracy: 0.3750
14/32 [============>.................] - ETA: 0s - loss: 1.4907 - accuracy: 0.4643
30/32 [===========================>..] - ETA: 0s - loss: 1.3947 - accuracy: 0.5417
32/32 [==============================] - 0s 4ms/step - loss: 1.3840 - accuracy: 0.5476 - val_loss: 1.4170 - val_accuracy: 0.5148
Epoch 16/150

 1/32 [..............................] - ETA: 0s - loss: 1.1107 - accuracy: 0.7500
16/32 [==============>...............] - ETA: 0s - loss: 1.4382 - accuracy: 0.5391
32/32 [==============================] - ETA: 0s - loss: 1.4527 - accuracy: 0.5278
32/32 [==============================] - 0s 4ms/step - loss: 1.4527 - accuracy: 0.5278 - val_loss: 1.4118 - val_accuracy: 0.5148
Epoch 17/150

 1/32 [..............................] - ETA: 0s - loss: 1.0578 - accuracy: 0.6250
12/32 [==========>...................] - ETA: 0s - loss: 1.3501 - accuracy: 0.5521
28/32 [=========================>....] - ETA: 0s - loss: 1.3724 - accuracy: 0.5536
32/32 [==============================] - 0s 5ms/step - loss: 1.3999 - accuracy: 0.5317 - val_loss: 1.4065 - val_accuracy: 0.5148
Epoch 18/150

 1/32 [..............................] - ETA: 0s - loss: 1.3155 - accuracy: 0.5000
14/32 [============>.................] - ETA: 0s - loss: 1.3870 - accuracy: 0.5268
29/32 [==========================>...] - ETA: 0s - loss: 1.3829 - accuracy: 0.5302
32/32 [==============================] - 0s 5ms/step - loss: 1.3932 - accuracy: 0.5278 - val_loss: 1.4011 - val_accuracy: 0.5148
Epoch 19/150

 1/32 [..............................] - ETA: 0s - loss: 1.1362 - accuracy: 0.7500
15/32 [=============>................] - ETA: 0s - loss: 1.3690 - accuracy: 0.5250
31/32 [============================>.] - ETA: 0s - loss: 1.3580 - accuracy: 0.5242
32/32 [==============================] - 0s 4ms/step - loss: 1.3526 - accuracy: 0.5278 - val_loss: 1.3936 - val_accuracy: 0.5148
Epoch 20/150

 1/32 [..............................] - ETA: 0s - loss: 1.9474 - accuracy: 0.2500
22/32 [===================>..........] - ETA: 0s - loss: 1.4133 - accuracy: 0.5170
32/32 [==============================] - 0s 4ms/step - loss: 1.3836 - accuracy: 0.5317 - val_loss: 1.3879 - val_accuracy: 0.5148
Epoch 21/150

 1/32 [..............................] - ETA: 0s - loss: 1.0512 - accuracy: 0.5000
14/32 [============>.................] - ETA: 0s - loss: 1.3371 - accuracy: 0.5268
32/32 [==============================] - 0s 5ms/step - loss: 1.3663 - accuracy: 0.5238 - val_loss: 1.3840 - val_accuracy: 0.5148
Epoch 22/150

 1/32 [..............................] - ETA: 0s - loss: 1.9705 - accuracy: 0.3750
15/32 [=============>................] - ETA: 0s - loss: 1.4210 - accuracy: 0.5333
32/32 [==============================] - 0s 5ms/step - loss: 1.3943 - accuracy: 0.5357 - val_loss: 1.3788 - val_accuracy: 0.5148
Epoch 23/150

 1/32 [..............................] - ETA: 0s - loss: 1.0956 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 1.4068 - accuracy: 0.5000
32/32 [==============================] - 0s 4ms/step - loss: 1.3711 - accuracy: 0.5238 - val_loss: 1.3731 - val_accuracy: 0.5148
Epoch 24/150

 1/32 [..............................] - ETA: 0s - loss: 1.0435 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 1.3546 - accuracy: 0.5347
32/32 [==============================] - 0s 4ms/step - loss: 1.3830 - accuracy: 0.5357 - val_loss: 1.3689 - val_accuracy: 0.5148
Epoch 25/150

 1/32 [..............................] - ETA: 0s - loss: 1.3893 - accuracy: 0.5000
20/32 [=================>............] - ETA: 0s - loss: 1.3688 - accuracy: 0.5125
32/32 [==============================] - 0s 4ms/step - loss: 1.3320 - accuracy: 0.5437 - val_loss: 1.3620 - val_accuracy: 0.5148
Epoch 26/150

 1/32 [..............................] - ETA: 0s - loss: 1.1199 - accuracy: 0.7500
19/32 [================>.............] - ETA: 0s - loss: 1.3819 - accuracy: 0.5197
32/32 [==============================] - 0s 4ms/step - loss: 1.3558 - accuracy: 0.5317 - val_loss: 1.3566 - val_accuracy: 0.5148
Epoch 27/150

 1/32 [..............................] - ETA: 0s - loss: 1.5840 - accuracy: 0.5000
18/32 [===============>..............] - ETA: 0s - loss: 1.3766 - accuracy: 0.5069
32/32 [==============================] - 0s 4ms/step - loss: 1.3532 - accuracy: 0.5357 - val_loss: 1.3535 - val_accuracy: 0.5148
Epoch 28/150

 1/32 [..............................] - ETA: 0s - loss: 1.2827 - accuracy: 0.5000
18/32 [===============>..............] - ETA: 0s - loss: 1.3981 - accuracy: 0.5069
32/32 [==============================] - 0s 4ms/step - loss: 1.3555 - accuracy: 0.5278 - val_loss: 1.3478 - val_accuracy: 0.5148
Epoch 29/150

 1/32 [..............................] - ETA: 0s - loss: 1.5533 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 1.3094 - accuracy: 0.5809
32/32 [==============================] - 0s 4ms/step - loss: 1.3448 - accuracy: 0.5397 - val_loss: 1.3466 - val_accuracy: 0.5148
Epoch 30/150

 1/32 [..............................] - ETA: 0s - loss: 1.4045 - accuracy: 0.3750
18/32 [===============>..............] - ETA: 0s - loss: 1.3400 - accuracy: 0.5278
32/32 [==============================] - 0s 4ms/step - loss: 1.3449 - accuracy: 0.5238 - val_loss: 1.3425 - val_accuracy: 0.5148
Epoch 31/150

 1/32 [..............................] - ETA: 0s - loss: 1.1327 - accuracy: 0.6250
19/32 [================>.............] - ETA: 0s - loss: 1.2925 - accuracy: 0.5395
32/32 [==============================] - 0s 4ms/step - loss: 1.3042 - accuracy: 0.5238 - val_loss: 1.3380 - val_accuracy: 0.5148
Epoch 32/150

 1/32 [..............................] - ETA: 0s - loss: 1.4367 - accuracy: 0.5000
22/32 [===================>..........] - ETA: 0s - loss: 1.3442 - accuracy: 0.5511
32/32 [==============================] - 0s 4ms/step - loss: 1.3225 - accuracy: 0.5437 - val_loss: 1.3328 - val_accuracy: 0.5148
Epoch 33/150

 1/32 [..............................] - ETA: 0s - loss: 1.7560 - accuracy: 0.3750
15/32 [=============>................] - ETA: 0s - loss: 1.2566 - accuracy: 0.5583
32/32 [==============================] - ETA: 0s - loss: 1.3363 - accuracy: 0.5357
32/32 [==============================] - 0s 4ms/step - loss: 1.3363 - accuracy: 0.5357 - val_loss: 1.3273 - val_accuracy: 0.5148
Epoch 34/150

 1/32 [..............................] - ETA: 0s - loss: 1.2919 - accuracy: 0.5000
15/32 [=============>................] - ETA: 0s - loss: 1.3154 - accuracy: 0.5417
32/32 [==============================] - ETA: 0s - loss: 1.3175 - accuracy: 0.5357
32/32 [==============================] - 0s 4ms/step - loss: 1.3175 - accuracy: 0.5357 - val_loss: 1.3217 - val_accuracy: 0.5148
Epoch 35/150

 1/32 [..............................] - ETA: 0s - loss: 1.6051 - accuracy: 0.6250
14/32 [============>.................] - ETA: 0s - loss: 1.4219 - accuracy: 0.5268
32/32 [==============================] - 0s 5ms/step - loss: 1.3241 - accuracy: 0.5476 - val_loss: 1.3154 - val_accuracy: 0.5148
Epoch 36/150

 1/32 [..............................] - ETA: 0s - loss: 0.8050 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 1.2806 - accuracy: 0.5368
32/32 [==============================] - 0s 4ms/step - loss: 1.2870 - accuracy: 0.5278 - val_loss: 1.3122 - val_accuracy: 0.5148
Epoch 37/150

 1/32 [..............................] - ETA: 0s - loss: 1.2097 - accuracy: 0.5000
21/32 [==================>...........] - ETA: 0s - loss: 1.2466 - accuracy: 0.5714
32/32 [==============================] - 0s 4ms/step - loss: 1.2791 - accuracy: 0.5397 - val_loss: 1.3088 - val_accuracy: 0.5148
Epoch 38/150

 1/32 [..............................] - ETA: 0s - loss: 1.1759 - accuracy: 0.7500
20/32 [=================>............] - ETA: 0s - loss: 1.2590 - accuracy: 0.5562
32/32 [==============================] - 0s 4ms/step - loss: 1.2926 - accuracy: 0.5516 - val_loss: 1.3022 - val_accuracy: 0.5148
Epoch 39/150

 1/32 [..............................] - ETA: 0s - loss: 1.1696 - accuracy: 0.5000
14/32 [============>.................] - ETA: 0s - loss: 1.3376 - accuracy: 0.5268
31/32 [============================>.] - ETA: 0s - loss: 1.3285 - accuracy: 0.5524
32/32 [==============================] - 0s 4ms/step - loss: 1.3336 - accuracy: 0.5476 - val_loss: 1.2993 - val_accuracy: 0.5148
Epoch 40/150

 1/32 [..............................] - ETA: 0s - loss: 1.1792 - accuracy: 0.5000
18/32 [===============>..............] - ETA: 0s - loss: 1.3027 - accuracy: 0.5556
32/32 [==============================] - 0s 4ms/step - loss: 1.3195 - accuracy: 0.5397 - val_loss: 1.2970 - val_accuracy: 0.5148
Epoch 41/150

 1/32 [..............................] - ETA: 0s - loss: 1.3742 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 1.3447 - accuracy: 0.5441
32/32 [==============================] - 0s 4ms/step - loss: 1.3318 - accuracy: 0.5556 - val_loss: 1.2942 - val_accuracy: 0.5148
Epoch 42/150

 1/32 [..............................] - ETA: 0s - loss: 0.9903 - accuracy: 0.6250
15/32 [=============>................] - ETA: 0s - loss: 1.3374 - accuracy: 0.5333
32/32 [==============================] - 0s 4ms/step - loss: 1.3135 - accuracy: 0.5595 - val_loss: 1.2916 - val_accuracy: 0.5266
Epoch 43/150

 1/32 [..............................] - ETA: 0s - loss: 1.4891 - accuracy: 0.3750
20/32 [=================>............] - ETA: 0s - loss: 1.3408 - accuracy: 0.5312
32/32 [==============================] - 0s 4ms/step - loss: 1.2880 - accuracy: 0.5595 - val_loss: 1.2863 - val_accuracy: 0.5266
Epoch 44/150

 1/32 [..............................] - ETA: 0s - loss: 1.3731 - accuracy: 0.5000
19/32 [================>.............] - ETA: 0s - loss: 1.3647 - accuracy: 0.5066
32/32 [==============================] - 0s 4ms/step - loss: 1.2888 - accuracy: 0.5476 - val_loss: 1.2823 - val_accuracy: 0.5148
Epoch 45/150

 1/32 [..............................] - ETA: 0s - loss: 1.1807 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 1.1957 - accuracy: 0.5662
32/32 [==============================] - 0s 4ms/step - loss: 1.2452 - accuracy: 0.5595 - val_loss: 1.2785 - val_accuracy: 0.5148
Epoch 46/150

 1/32 [..............................] - ETA: 0s - loss: 1.4664 - accuracy: 0.3750
16/32 [==============>...............] - ETA: 0s - loss: 1.3405 - accuracy: 0.5312
32/32 [==============================] - 0s 4ms/step - loss: 1.2798 - accuracy: 0.5595 - val_loss: 1.2756 - val_accuracy: 0.5385
Epoch 47/150

 1/32 [..............................] - ETA: 0s - loss: 1.5844 - accuracy: 0.3750
14/32 [============>.................] - ETA: 0s - loss: 1.2114 - accuracy: 0.5625
32/32 [==============================] - 0s 5ms/step - loss: 1.2683 - accuracy: 0.5595 - val_loss: 1.2721 - val_accuracy: 0.5385
Epoch 48/150

 1/32 [..............................] - ETA: 0s - loss: 1.1399 - accuracy: 0.7500
18/32 [===============>..............] - ETA: 0s - loss: 1.2613 - accuracy: 0.5764
32/32 [==============================] - 0s 4ms/step - loss: 1.3329 - accuracy: 0.5516 - val_loss: 1.2705 - val_accuracy: 0.5385
Epoch 49/150

 1/32 [..............................] - ETA: 0s - loss: 1.1348 - accuracy: 0.7500
23/32 [====================>.........] - ETA: 0s - loss: 1.2866 - accuracy: 0.5598
32/32 [==============================] - 0s 4ms/step - loss: 1.2648 - accuracy: 0.5794 - val_loss: 1.2695 - val_accuracy: 0.5503
Epoch 50/150

 1/32 [..............................] - ETA: 0s - loss: 0.8296 - accuracy: 0.7500
22/32 [===================>..........] - ETA: 0s - loss: 1.2655 - accuracy: 0.5966
32/32 [==============================] - 0s 4ms/step - loss: 1.2682 - accuracy: 0.5833 - val_loss: 1.2658 - val_accuracy: 0.5385
Epoch 51/150

 1/32 [..............................] - ETA: 0s - loss: 1.2413 - accuracy: 0.6250
15/32 [=============>................] - ETA: 0s - loss: 1.2273 - accuracy: 0.5917
32/32 [==============================] - ETA: 0s - loss: 1.2630 - accuracy: 0.5873
32/32 [==============================] - 0s 4ms/step - loss: 1.2630 - accuracy: 0.5873 - val_loss: 1.2622 - val_accuracy: 0.5385
Epoch 52/150

 1/32 [..............................] - ETA: 0s - loss: 0.7545 - accuracy: 0.8750
14/32 [============>.................] - ETA: 0s - loss: 1.2159 - accuracy: 0.5893
32/32 [==============================] - 0s 5ms/step - loss: 1.2870 - accuracy: 0.5794 - val_loss: 1.2599 - val_accuracy: 0.5444
Epoch 53/150

 1/32 [..............................] - ETA: 0s - loss: 1.7729 - accuracy: 0.2500
18/32 [===============>..............] - ETA: 0s - loss: 1.2781 - accuracy: 0.5486
32/32 [==============================] - 0s 4ms/step - loss: 1.2708 - accuracy: 0.5556 - val_loss: 1.2592 - val_accuracy: 0.5503
Epoch 54/150

 1/32 [..............................] - ETA: 0s - loss: 0.8638 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 1.2139 - accuracy: 0.5625
32/32 [==============================] - 0s 4ms/step - loss: 1.2462 - accuracy: 0.5635 - val_loss: 1.2575 - val_accuracy: 0.5444
Epoch 55/150

 1/32 [..............................] - ETA: 0s - loss: 0.8195 - accuracy: 0.8750
21/32 [==================>...........] - ETA: 0s - loss: 1.1731 - accuracy: 0.6131
32/32 [==============================] - 0s 4ms/step - loss: 1.2434 - accuracy: 0.5635 - val_loss: 1.2543 - val_accuracy: 0.5503
Epoch 56/150

 1/32 [..............................] - ETA: 0s - loss: 1.6204 - accuracy: 0.5000
15/32 [=============>................] - ETA: 0s - loss: 1.2741 - accuracy: 0.5500
32/32 [==============================] - ETA: 0s - loss: 1.2651 - accuracy: 0.5357
32/32 [==============================] - 0s 4ms/step - loss: 1.2651 - accuracy: 0.5357 - val_loss: 1.2521 - val_accuracy: 0.5562
Epoch 57/150

 1/32 [..............................] - ETA: 0s - loss: 1.5145 - accuracy: 0.5000
15/32 [=============>................] - ETA: 0s - loss: 1.3130 - accuracy: 0.5417
32/32 [==============================] - ETA: 0s - loss: 1.2550 - accuracy: 0.5556
32/32 [==============================] - 0s 4ms/step - loss: 1.2550 - accuracy: 0.5556 - val_loss: 1.2511 - val_accuracy: 0.5503
Epoch 58/150

 1/32 [..............................] - ETA: 0s - loss: 1.3026 - accuracy: 0.5000
13/32 [===========>..................] - ETA: 0s - loss: 1.2083 - accuracy: 0.5673
32/32 [==============================] - 0s 5ms/step - loss: 1.2528 - accuracy: 0.5476 - val_loss: 1.2508 - val_accuracy: 0.5680
Epoch 59/150

 1/32 [..............................] - ETA: 0s - loss: 1.1292 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 1.2297 - accuracy: 0.5625
32/32 [==============================] - 0s 4ms/step - loss: 1.2704 - accuracy: 0.5556 - val_loss: 1.2457 - val_accuracy: 0.5621
Epoch 60/150

 1/32 [..............................] - ETA: 0s - loss: 1.7477 - accuracy: 0.2500
21/32 [==================>...........] - ETA: 0s - loss: 1.1524 - accuracy: 0.6012
32/32 [==============================] - 0s 4ms/step - loss: 1.2379 - accuracy: 0.5476 - val_loss: 1.2453 - val_accuracy: 0.5621
Epoch 61/150

 1/32 [..............................] - ETA: 0s - loss: 0.9056 - accuracy: 0.5000
19/32 [================>.............] - ETA: 0s - loss: 1.3340 - accuracy: 0.5329
32/32 [==============================] - 0s 4ms/step - loss: 1.2953 - accuracy: 0.5357 - val_loss: 1.2457 - val_accuracy: 0.5680
Epoch 62/150

 1/32 [..............................] - ETA: 0s - loss: 1.3602 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 1.2388 - accuracy: 0.5486
32/32 [==============================] - 0s 4ms/step - loss: 1.2717 - accuracy: 0.5397 - val_loss: 1.2431 - val_accuracy: 0.5621
Epoch 63/150

 1/32 [..............................] - ETA: 0s - loss: 1.0067 - accuracy: 0.7500
18/32 [===============>..............] - ETA: 0s - loss: 1.2936 - accuracy: 0.5486
32/32 [==============================] - 0s 4ms/step - loss: 1.2403 - accuracy: 0.5595 - val_loss: 1.2409 - val_accuracy: 0.5621
Epoch 64/150

 1/32 [..............................] - ETA: 0s - loss: 0.7422 - accuracy: 0.8750
17/32 [==============>...............] - ETA: 0s - loss: 1.1961 - accuracy: 0.5735
32/32 [==============================] - 0s 4ms/step - loss: 1.2277 - accuracy: 0.5397 - val_loss: 1.2392 - val_accuracy: 0.5621
Epoch 65/150

 1/32 [..............................] - ETA: 0s - loss: 1.1009 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 1.2013 - accuracy: 0.5764
32/32 [==============================] - 0s 4ms/step - loss: 1.2278 - accuracy: 0.5635 - val_loss: 1.2371 - val_accuracy: 0.5621
Epoch 66/150

 1/32 [..............................] - ETA: 0s - loss: 1.5881 - accuracy: 0.2500
20/32 [=================>............] - ETA: 0s - loss: 1.1693 - accuracy: 0.6000
32/32 [==============================] - 0s 4ms/step - loss: 1.2374 - accuracy: 0.5675 - val_loss: 1.2345 - val_accuracy: 0.5621
Epoch 67/150

 1/32 [..............................] - ETA: 0s - loss: 1.6009 - accuracy: 0.3750
13/32 [===========>..................] - ETA: 0s - loss: 1.1372 - accuracy: 0.5865
30/32 [===========================>..] - ETA: 0s - loss: 1.2266 - accuracy: 0.5625
32/32 [==============================] - 0s 4ms/step - loss: 1.2450 - accuracy: 0.5675 - val_loss: 1.2337 - val_accuracy: 0.5680
Epoch 68/150

 1/32 [..............................] - ETA: 0s - loss: 1.1626 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 1.2044 - accuracy: 0.5833
32/32 [==============================] - 0s 4ms/step - loss: 1.2390 - accuracy: 0.5714 - val_loss: 1.2331 - val_accuracy: 0.5680
Epoch 69/150

 1/32 [..............................] - ETA: 0s - loss: 0.6937 - accuracy: 0.8750
15/32 [=============>................] - ETA: 0s - loss: 1.2524 - accuracy: 0.5667
32/32 [==============================] - ETA: 0s - loss: 1.2579 - accuracy: 0.5516
32/32 [==============================] - 0s 4ms/step - loss: 1.2579 - accuracy: 0.5516 - val_loss: 1.2415 - val_accuracy: 0.5621
Epoch 70/150

 1/32 [..............................] - ETA: 0s - loss: 1.3051 - accuracy: 0.6250
16/32 [==============>...............] - ETA: 0s - loss: 1.3090 - accuracy: 0.5469
32/32 [==============================] - 0s 4ms/step - loss: 1.2327 - accuracy: 0.5833 - val_loss: 1.2273 - val_accuracy: 0.5621
Epoch 71/150

 1/32 [..............................] - ETA: 0s - loss: 2.1706 - accuracy: 0.3750
20/32 [=================>............] - ETA: 0s - loss: 1.2743 - accuracy: 0.5688
32/32 [==============================] - 0s 4ms/step - loss: 1.2147 - accuracy: 0.6032 - val_loss: 1.2251 - val_accuracy: 0.5680
Epoch 72/150

 1/32 [..............................] - ETA: 0s - loss: 1.2905 - accuracy: 0.6250
19/32 [================>.............] - ETA: 0s - loss: 1.2107 - accuracy: 0.5855
32/32 [==============================] - 0s 4ms/step - loss: 1.2349 - accuracy: 0.5675 - val_loss: 1.2256 - val_accuracy: 0.5562
Epoch 73/150

 1/32 [..............................] - ETA: 0s - loss: 1.4131 - accuracy: 0.5000
22/32 [===================>..........] - ETA: 0s - loss: 1.1919 - accuracy: 0.6023
32/32 [==============================] - 0s 4ms/step - loss: 1.2263 - accuracy: 0.5833 - val_loss: 1.2258 - val_accuracy: 0.5621
Epoch 74/150

 1/32 [..............................] - ETA: 0s - loss: 1.0537 - accuracy: 0.7500
17/32 [==============>...............] - ETA: 0s - loss: 1.2720 - accuracy: 0.5735
32/32 [==============================] - 0s 4ms/step - loss: 1.2097 - accuracy: 0.5873 - val_loss: 1.2231 - val_accuracy: 0.5562
Epoch 75/150

 1/32 [..............................] - ETA: 0s - loss: 1.2096 - accuracy: 0.6250
16/32 [==============>...............] - ETA: 0s - loss: 1.1871 - accuracy: 0.6016
32/32 [==============================] - 0s 4ms/step - loss: 1.2247 - accuracy: 0.5675 - val_loss: 1.2216 - val_accuracy: 0.5562
Epoch 76/150

 1/32 [..............................] - ETA: 0s - loss: 1.8038 - accuracy: 0.2500
18/32 [===============>..............] - ETA: 0s - loss: 1.2288 - accuracy: 0.5764
32/32 [==============================] - 0s 4ms/step - loss: 1.2219 - accuracy: 0.5675 - val_loss: 1.2172 - val_accuracy: 0.5621
Epoch 77/150

 1/32 [..............................] - ETA: 0s - loss: 1.5375 - accuracy: 0.2500
18/32 [===============>..............] - ETA: 0s - loss: 1.1502 - accuracy: 0.5833
32/32 [==============================] - 0s 4ms/step - loss: 1.2061 - accuracy: 0.5635 - val_loss: 1.2158 - val_accuracy: 0.5621
Epoch 78/150

 1/32 [..............................] - ETA: 0s - loss: 1.7695 - accuracy: 0.5000
23/32 [====================>.........] - ETA: 0s - loss: 1.2461 - accuracy: 0.5924
32/32 [==============================] - 0s 4ms/step - loss: 1.2145 - accuracy: 0.5913 - val_loss: 1.2127 - val_accuracy: 0.5562
Epoch 79/150

 1/32 [..............................] - ETA: 0s - loss: 0.7640 - accuracy: 0.8750
17/32 [==============>...............] - ETA: 0s - loss: 1.3288 - accuracy: 0.5074
32/32 [==============================] - 0s 4ms/step - loss: 1.2158 - accuracy: 0.5714 - val_loss: 1.2121 - val_accuracy: 0.5621
Epoch 80/150

 1/32 [..............................] - ETA: 0s - loss: 1.7425 - accuracy: 0.1250
15/32 [=============>................] - ETA: 0s - loss: 1.1927 - accuracy: 0.5500
32/32 [==============================] - ETA: 0s - loss: 1.2163 - accuracy: 0.5516
32/32 [==============================] - 0s 4ms/step - loss: 1.2163 - accuracy: 0.5516 - val_loss: 1.2098 - val_accuracy: 0.5621
Epoch 81/150

 1/32 [..............................] - ETA: 0s - loss: 0.8760 - accuracy: 0.7500
15/32 [=============>................] - ETA: 0s - loss: 1.2268 - accuracy: 0.5667
32/32 [==============================] - 0s 5ms/step - loss: 1.2493 - accuracy: 0.5476 - val_loss: 1.2100 - val_accuracy: 0.5621
Epoch 82/150

 1/32 [..............................] - ETA: 0s - loss: 1.3063 - accuracy: 0.5000
19/32 [================>.............] - ETA: 0s - loss: 1.2110 - accuracy: 0.6053
32/32 [==============================] - 0s 4ms/step - loss: 1.2141 - accuracy: 0.6032 - val_loss: 1.2100 - val_accuracy: 0.5621
Epoch 83/150

 1/32 [..............................] - ETA: 0s - loss: 1.6203 - accuracy: 0.3750
22/32 [===================>..........] - ETA: 0s - loss: 1.2299 - accuracy: 0.5227
32/32 [==============================] - 0s 5ms/step - loss: 1.2116 - accuracy: 0.5595 - val_loss: 1.2046 - val_accuracy: 0.5621
Epoch 84/150

 1/32 [..............................] - ETA: 0s - loss: 1.4738 - accuracy: 0.5000
18/32 [===============>..............] - ETA: 0s - loss: 1.2104 - accuracy: 0.5694
32/32 [==============================] - 0s 5ms/step - loss: 1.2450 - accuracy: 0.5635 - val_loss: 1.2052 - val_accuracy: 0.5621
Epoch 85/150

 1/32 [..............................] - ETA: 0s - loss: 1.3192 - accuracy: 0.5000
20/32 [=================>............] - ETA: 0s - loss: 1.2373 - accuracy: 0.5500
32/32 [==============================] - 0s 4ms/step - loss: 1.2322 - accuracy: 0.5595 - val_loss: 1.2048 - val_accuracy: 0.5562
Epoch 86/150

 1/32 [..............................] - ETA: 0s - loss: 1.3593 - accuracy: 0.3750
21/32 [==================>...........] - ETA: 0s - loss: 1.2129 - accuracy: 0.5595
32/32 [==============================] - 0s 4ms/step - loss: 1.2173 - accuracy: 0.5516 - val_loss: 1.2030 - val_accuracy: 0.5621
Epoch 87/150

 1/32 [..............................] - ETA: 0s - loss: 1.5910 - accuracy: 0.5000
13/32 [===========>..................] - ETA: 0s - loss: 1.2568 - accuracy: 0.5481
29/32 [==========================>...] - ETA: 0s - loss: 1.2366 - accuracy: 0.5603
32/32 [==============================] - 0s 5ms/step - loss: 1.2464 - accuracy: 0.5556 - val_loss: 1.2061 - val_accuracy: 0.5621
Epoch 88/150

 1/32 [..............................] - ETA: 0s - loss: 1.1853 - accuracy: 0.6250
14/32 [============>.................] - ETA: 0s - loss: 1.2758 - accuracy: 0.5268
30/32 [===========================>..] - ETA: 0s - loss: 1.1948 - accuracy: 0.5625
32/32 [==============================] - 0s 4ms/step - loss: 1.2041 - accuracy: 0.5516 - val_loss: 1.1992 - val_accuracy: 0.5562
Epoch 89/150

 1/32 [..............................] - ETA: 0s - loss: 2.0262 - accuracy: 0.2500
21/32 [==================>...........] - ETA: 0s - loss: 1.1231 - accuracy: 0.5893
32/32 [==============================] - 0s 4ms/step - loss: 1.2278 - accuracy: 0.5754 - val_loss: 1.1978 - val_accuracy: 0.5621
Epoch 90/150

 1/32 [..............................] - ETA: 0s - loss: 1.0852 - accuracy: 0.7500
12/32 [==========>...................] - ETA: 0s - loss: 1.1339 - accuracy: 0.5938
31/32 [============================>.] - ETA: 0s - loss: 1.2102 - accuracy: 0.5645
32/32 [==============================] - 0s 5ms/step - loss: 1.2152 - accuracy: 0.5635 - val_loss: 1.1996 - val_accuracy: 0.5621
Epoch 91/150

 1/32 [..............................] - ETA: 0s - loss: 0.8551 - accuracy: 0.8750
12/32 [==========>...................] - ETA: 0s - loss: 1.1308 - accuracy: 0.6562
32/32 [==============================] - 0s 5ms/step - loss: 1.2047 - accuracy: 0.5754 - val_loss: 1.1980 - val_accuracy: 0.5621
Epoch 92/150

 1/32 [..............................] - ETA: 0s - loss: 1.0028 - accuracy: 0.7500
14/32 [============>.................] - ETA: 0s - loss: 1.1636 - accuracy: 0.5982
30/32 [===========================>..] - ETA: 0s - loss: 1.1784 - accuracy: 0.5958
32/32 [==============================] - 0s 4ms/step - loss: 1.1942 - accuracy: 0.5873 - val_loss: 1.1943 - val_accuracy: 0.5621
Epoch 93/150

 1/32 [..............................] - ETA: 0s - loss: 0.9913 - accuracy: 0.6250
15/32 [=============>................] - ETA: 0s - loss: 1.1720 - accuracy: 0.5833
32/32 [==============================] - 0s 5ms/step - loss: 1.2180 - accuracy: 0.5675 - val_loss: 1.1917 - val_accuracy: 0.5621
Epoch 94/150

 1/32 [..............................] - ETA: 0s - loss: 0.9924 - accuracy: 0.6250
16/32 [==============>...............] - ETA: 0s - loss: 1.1819 - accuracy: 0.6016
32/32 [==============================] - 0s 5ms/step - loss: 1.2017 - accuracy: 0.5675 - val_loss: 1.1887 - val_accuracy: 0.5562
Epoch 95/150

 1/32 [..............................] - ETA: 0s - loss: 1.2625 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 1.2853 - accuracy: 0.5074
32/32 [==============================] - 0s 5ms/step - loss: 1.1990 - accuracy: 0.5516 - val_loss: 1.1868 - val_accuracy: 0.5621
Epoch 96/150

 1/32 [..............................] - ETA: 0s - loss: 1.0872 - accuracy: 0.7500
17/32 [==============>...............] - ETA: 0s - loss: 1.1799 - accuracy: 0.6397
32/32 [==============================] - 0s 5ms/step - loss: 1.1661 - accuracy: 0.6071 - val_loss: 1.1843 - val_accuracy: 0.5621
Epoch 97/150

 1/32 [..............................] - ETA: 0s - loss: 1.1822 - accuracy: 0.5000
16/32 [==============>...............] - ETA: 0s - loss: 1.2934 - accuracy: 0.5781
32/32 [==============================] - 0s 5ms/step - loss: 1.2446 - accuracy: 0.5595 - val_loss: 1.1843 - val_accuracy: 0.5621
Epoch 98/150

 1/32 [..............................] - ETA: 0s - loss: 0.5666 - accuracy: 0.8750
17/32 [==============>...............] - ETA: 0s - loss: 1.1630 - accuracy: 0.6176
32/32 [==============================] - 0s 4ms/step - loss: 1.2004 - accuracy: 0.5675 - val_loss: 1.1877 - val_accuracy: 0.5621
Epoch 99/150

 1/32 [..............................] - ETA: 0s - loss: 1.4236 - accuracy: 0.6250
19/32 [================>.............] - ETA: 0s - loss: 1.1863 - accuracy: 0.5000
32/32 [==============================] - 0s 4ms/step - loss: 1.2066 - accuracy: 0.5357 - val_loss: 1.1799 - val_accuracy: 0.5562
Epoch 100/150

 1/32 [..............................] - ETA: 0s - loss: 1.0809 - accuracy: 0.6250
21/32 [==================>...........] - ETA: 0s - loss: 1.1817 - accuracy: 0.5714
32/32 [==============================] - 0s 4ms/step - loss: 1.1450 - accuracy: 0.5913 - val_loss: 1.1771 - val_accuracy: 0.5621
Epoch 101/150

 1/32 [..............................] - ETA: 0s - loss: 1.6940 - accuracy: 0.5000
12/32 [==========>...................] - ETA: 0s - loss: 1.2808 - accuracy: 0.5417
28/32 [=========================>....] - ETA: 0s - loss: 1.2268 - accuracy: 0.5625
32/32 [==============================] - 0s 5ms/step - loss: 1.2433 - accuracy: 0.5556 - val_loss: 1.1811 - val_accuracy: 0.5680
Epoch 102/150

 1/32 [..............................] - ETA: 0s - loss: 2.2267 - accuracy: 0.2500
14/32 [============>.................] - ETA: 0s - loss: 1.2164 - accuracy: 0.5893
30/32 [===========================>..] - ETA: 0s - loss: 1.2029 - accuracy: 0.5792
32/32 [==============================] - 0s 4ms/step - loss: 1.2022 - accuracy: 0.5794 - val_loss: 1.1771 - val_accuracy: 0.5680
Epoch 103/150

 1/32 [..............................] - ETA: 0s - loss: 1.2723 - accuracy: 0.5000
16/32 [==============>...............] - ETA: 0s - loss: 1.1674 - accuracy: 0.5859
32/32 [==============================] - ETA: 0s - loss: 1.2095 - accuracy: 0.5635
32/32 [==============================] - 0s 4ms/step - loss: 1.2095 - accuracy: 0.5635 - val_loss: 1.1777 - val_accuracy: 0.5680
Epoch 104/150

 1/32 [..............................] - ETA: 0s - loss: 1.2415 - accuracy: 0.5000
12/32 [==========>...................] - ETA: 0s - loss: 1.1823 - accuracy: 0.6146
27/32 [========================>.....] - ETA: 0s - loss: 1.1866 - accuracy: 0.6019
32/32 [==============================] - 0s 5ms/step - loss: 1.1837 - accuracy: 0.6111 - val_loss: 1.1720 - val_accuracy: 0.5680
Epoch 105/150

 1/32 [..............................] - ETA: 0s - loss: 1.3811 - accuracy: 0.3750
15/32 [=============>................] - ETA: 0s - loss: 1.1279 - accuracy: 0.5750
32/32 [==============================] - ETA: 0s - loss: 1.1815 - accuracy: 0.5675
32/32 [==============================] - 0s 4ms/step - loss: 1.1815 - accuracy: 0.5675 - val_loss: 1.1745 - val_accuracy: 0.5680
Epoch 106/150

 1/32 [..............................] - ETA: 0s - loss: 1.2168 - accuracy: 0.3750
14/32 [============>.................] - ETA: 0s - loss: 1.1375 - accuracy: 0.5714
31/32 [============================>.] - ETA: 0s - loss: 1.1534 - accuracy: 0.5968
32/32 [==============================] - 0s 5ms/step - loss: 1.1430 - accuracy: 0.6032 - val_loss: 1.1692 - val_accuracy: 0.5621
Epoch 107/150

 1/32 [..............................] - ETA: 0s - loss: 1.4526 - accuracy: 0.2500
15/32 [=============>................] - ETA: 0s - loss: 1.2504 - accuracy: 0.5333
32/32 [==============================] - 0s 5ms/step - loss: 1.1973 - accuracy: 0.5476 - val_loss: 1.1706 - val_accuracy: 0.5680
Epoch 108/150

 1/32 [..............................] - ETA: 0s - loss: 1.2535 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 1.2553 - accuracy: 0.5486
32/32 [==============================] - 0s 4ms/step - loss: 1.2266 - accuracy: 0.5635 - val_loss: 1.1712 - val_accuracy: 0.5680
Epoch 109/150

 1/32 [..............................] - ETA: 0s - loss: 0.7875 - accuracy: 0.7500
23/32 [====================>.........] - ETA: 0s - loss: 1.2313 - accuracy: 0.5598
32/32 [==============================] - 0s 4ms/step - loss: 1.1632 - accuracy: 0.5833 - val_loss: 1.1661 - val_accuracy: 0.5680
Epoch 110/150

 1/32 [..............................] - ETA: 0s - loss: 1.6130 - accuracy: 0.2500
22/32 [===================>..........] - ETA: 0s - loss: 1.1435 - accuracy: 0.6023
32/32 [==============================] - 0s 4ms/step - loss: 1.1875 - accuracy: 0.5516 - val_loss: 1.1654 - val_accuracy: 0.5621
Epoch 111/150

 1/32 [..............................] - ETA: 0s - loss: 1.1643 - accuracy: 0.5000
16/32 [==============>...............] - ETA: 0s - loss: 1.1929 - accuracy: 0.5312
32/32 [==============================] - ETA: 0s - loss: 1.1826 - accuracy: 0.5635
32/32 [==============================] - 0s 4ms/step - loss: 1.1826 - accuracy: 0.5635 - val_loss: 1.1644 - val_accuracy: 0.5562
Epoch 112/150

 1/32 [..............................] - ETA: 0s - loss: 1.3764 - accuracy: 0.3750
18/32 [===============>..............] - ETA: 0s - loss: 1.1710 - accuracy: 0.5556
32/32 [==============================] - 0s 4ms/step - loss: 1.1637 - accuracy: 0.5595 - val_loss: 1.1599 - val_accuracy: 0.5740
Epoch 113/150

 1/32 [..............................] - ETA: 0s - loss: 0.8677 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 1.2270 - accuracy: 0.5833
32/32 [==============================] - 0s 4ms/step - loss: 1.1544 - accuracy: 0.5873 - val_loss: 1.1562 - val_accuracy: 0.5740
Epoch 114/150

 1/32 [..............................] - ETA: 0s - loss: 1.1856 - accuracy: 0.5000
18/32 [===============>..............] - ETA: 0s - loss: 1.2090 - accuracy: 0.5694
32/32 [==============================] - 0s 4ms/step - loss: 1.1844 - accuracy: 0.5794 - val_loss: 1.1549 - val_accuracy: 0.5680
Epoch 115/150

 1/32 [..............................] - ETA: 0s - loss: 1.2166 - accuracy: 0.5000
19/32 [================>.............] - ETA: 0s - loss: 1.1556 - accuracy: 0.6053
32/32 [==============================] - 0s 4ms/step - loss: 1.1952 - accuracy: 0.5754 - val_loss: 1.1573 - val_accuracy: 0.5740
Epoch 116/150

 1/32 [..............................] - ETA: 0s - loss: 1.3485 - accuracy: 0.6250
14/32 [============>.................] - ETA: 0s - loss: 1.1240 - accuracy: 0.6161
31/32 [============================>.] - ETA: 0s - loss: 1.1361 - accuracy: 0.5847
32/32 [==============================] - 0s 4ms/step - loss: 1.1311 - accuracy: 0.5873 - val_loss: 1.1533 - val_accuracy: 0.5740
Epoch 117/150

 1/32 [..............................] - ETA: 0s - loss: 1.0471 - accuracy: 0.5000
18/32 [===============>..............] - ETA: 0s - loss: 1.2639 - accuracy: 0.5486
32/32 [==============================] - 0s 4ms/step - loss: 1.1712 - accuracy: 0.5952 - val_loss: 1.1536 - val_accuracy: 0.5680
Epoch 118/150

 1/32 [..............................] - ETA: 0s - loss: 0.8727 - accuracy: 0.7500
18/32 [===============>..............] - ETA: 0s - loss: 1.1765 - accuracy: 0.5556
32/32 [==============================] - 0s 4ms/step - loss: 1.1465 - accuracy: 0.5873 - val_loss: 1.1502 - val_accuracy: 0.5740
Epoch 119/150

 1/32 [..............................] - ETA: 0s - loss: 1.5660 - accuracy: 0.3750
16/32 [==============>...............] - ETA: 0s - loss: 1.1202 - accuracy: 0.6250
32/32 [==============================] - 0s 4ms/step - loss: 1.1979 - accuracy: 0.5794 - val_loss: 1.1481 - val_accuracy: 0.5680
Epoch 120/150

 1/32 [..............................] - ETA: 0s - loss: 1.0650 - accuracy: 0.6250
20/32 [=================>............] - ETA: 0s - loss: 1.1487 - accuracy: 0.5688
32/32 [==============================] - 0s 4ms/step - loss: 1.1573 - accuracy: 0.5913 - val_loss: 1.1517 - val_accuracy: 0.5799
Epoch 121/150

 1/32 [..............................] - ETA: 0s - loss: 1.3799 - accuracy: 0.5000
20/32 [=================>............] - ETA: 0s - loss: 1.1552 - accuracy: 0.6187
32/32 [==============================] - 0s 4ms/step - loss: 1.1573 - accuracy: 0.6071 - val_loss: 1.1493 - val_accuracy: 0.5799
Epoch 122/150

 1/32 [..............................] - ETA: 0s - loss: 0.7891 - accuracy: 0.8750
13/32 [===========>..................] - ETA: 0s - loss: 1.2255 - accuracy: 0.6250
30/32 [===========================>..] - ETA: 0s - loss: 1.1644 - accuracy: 0.5917
32/32 [==============================] - 0s 4ms/step - loss: 1.1599 - accuracy: 0.5952 - val_loss: 1.1436 - val_accuracy: 0.5680
Epoch 123/150

 1/32 [..............................] - ETA: 0s - loss: 1.0987 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 1.0987 - accuracy: 0.5809
32/32 [==============================] - 0s 4ms/step - loss: 1.1530 - accuracy: 0.5833 - val_loss: 1.1409 - val_accuracy: 0.5740
Epoch 124/150

 1/32 [..............................] - ETA: 0s - loss: 1.8137 - accuracy: 0.2500
16/32 [==============>...............] - ETA: 0s - loss: 1.1363 - accuracy: 0.6406
32/32 [==============================] - 0s 4ms/step - loss: 1.1686 - accuracy: 0.5992 - val_loss: 1.1401 - val_accuracy: 0.5680
Epoch 125/150

 1/32 [..............................] - ETA: 0s - loss: 1.9096 - accuracy: 0.3750
18/32 [===============>..............] - ETA: 0s - loss: 1.2039 - accuracy: 0.5486
32/32 [==============================] - 0s 4ms/step - loss: 1.1810 - accuracy: 0.5714 - val_loss: 1.1395 - val_accuracy: 0.5740
Epoch 126/150

 1/32 [..............................] - ETA: 0s - loss: 0.8337 - accuracy: 0.8750
17/32 [==============>...............] - ETA: 0s - loss: 1.1346 - accuracy: 0.6176
32/32 [==============================] - 0s 4ms/step - loss: 1.1487 - accuracy: 0.6071 - val_loss: 1.1373 - val_accuracy: 0.5740
Epoch 127/150

 1/32 [..............................] - ETA: 0s - loss: 1.1235 - accuracy: 0.8750
22/32 [===================>..........] - ETA: 0s - loss: 1.1626 - accuracy: 0.5682
32/32 [==============================] - 0s 4ms/step - loss: 1.1431 - accuracy: 0.5794 - val_loss: 1.1344 - val_accuracy: 0.5680
Epoch 128/150

 1/32 [..............................] - ETA: 0s - loss: 0.6168 - accuracy: 0.8750
16/32 [==============>...............] - ETA: 0s - loss: 1.1636 - accuracy: 0.6094
32/32 [==============================] - 0s 4ms/step - loss: 1.1568 - accuracy: 0.5873 - val_loss: 1.1372 - val_accuracy: 0.5680
Epoch 129/150

 1/32 [..............................] - ETA: 0s - loss: 1.1396 - accuracy: 0.5000
15/32 [=============>................] - ETA: 0s - loss: 1.1673 - accuracy: 0.6000
32/32 [==============================] - ETA: 0s - loss: 1.1574 - accuracy: 0.5833
32/32 [==============================] - 0s 4ms/step - loss: 1.1574 - accuracy: 0.5833 - val_loss: 1.1371 - val_accuracy: 0.5680
Epoch 130/150

 1/32 [..............................] - ETA: 0s - loss: 1.1867 - accuracy: 0.5000
14/32 [============>.................] - ETA: 0s - loss: 1.1206 - accuracy: 0.5982
32/32 [==============================] - 0s 5ms/step - loss: 1.1622 - accuracy: 0.5913 - val_loss: 1.1335 - val_accuracy: 0.5680
Epoch 131/150

 1/32 [..............................] - ETA: 0s - loss: 1.3811 - accuracy: 0.3750
19/32 [================>.............] - ETA: 0s - loss: 1.1503 - accuracy: 0.5789
32/32 [==============================] - 0s 4ms/step - loss: 1.1580 - accuracy: 0.5794 - val_loss: 1.1299 - val_accuracy: 0.5680
Epoch 132/150

 1/32 [..............................] - ETA: 0s - loss: 1.2889 - accuracy: 0.5000
22/32 [===================>..........] - ETA: 0s - loss: 1.1500 - accuracy: 0.5682
32/32 [==============================] - 0s 4ms/step - loss: 1.1698 - accuracy: 0.5675 - val_loss: 1.1258 - val_accuracy: 0.5740
Epoch 133/150

 1/32 [..............................] - ETA: 0s - loss: 1.3273 - accuracy: 0.5000
21/32 [==================>...........] - ETA: 0s - loss: 1.2194 - accuracy: 0.5417
32/32 [==============================] - 0s 4ms/step - loss: 1.1841 - accuracy: 0.5595 - val_loss: 1.1246 - val_accuracy: 0.5740
Epoch 134/150

 1/32 [..............................] - ETA: 0s - loss: 1.0228 - accuracy: 0.5000
13/32 [===========>..................] - ETA: 0s - loss: 1.2602 - accuracy: 0.5288
30/32 [===========================>..] - ETA: 0s - loss: 1.1581 - accuracy: 0.5750
32/32 [==============================] - 0s 4ms/step - loss: 1.1618 - accuracy: 0.5635 - val_loss: 1.1228 - val_accuracy: 0.5740
Epoch 135/150

 1/32 [..............................] - ETA: 0s - loss: 1.3655 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 1.2258 - accuracy: 0.5764
32/32 [==============================] - 0s 4ms/step - loss: 1.1574 - accuracy: 0.6032 - val_loss: 1.1282 - val_accuracy: 0.5799
Epoch 136/150

 1/32 [..............................] - ETA: 0s - loss: 1.2895 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 1.2311 - accuracy: 0.5278
32/32 [==============================] - 0s 4ms/step - loss: 1.1752 - accuracy: 0.5675 - val_loss: 1.1260 - val_accuracy: 0.5680
Epoch 137/150

 1/32 [..............................] - ETA: 0s - loss: 1.1707 - accuracy: 0.7500
17/32 [==============>...............] - ETA: 0s - loss: 1.1287 - accuracy: 0.5956
32/32 [==============================] - 0s 4ms/step - loss: 1.1362 - accuracy: 0.5913 - val_loss: 1.1267 - val_accuracy: 0.5621
Epoch 138/150

 1/32 [..............................] - ETA: 0s - loss: 0.9397 - accuracy: 0.7500
20/32 [=================>............] - ETA: 0s - loss: 1.0926 - accuracy: 0.6062
32/32 [==============================] - 0s 4ms/step - loss: 1.0913 - accuracy: 0.6032 - val_loss: 1.1207 - val_accuracy: 0.5621
Epoch 139/150

 1/32 [..............................] - ETA: 0s - loss: 0.9659 - accuracy: 0.5000
14/32 [============>.................] - ETA: 0s - loss: 1.0911 - accuracy: 0.5893
31/32 [============================>.] - ETA: 0s - loss: 1.1059 - accuracy: 0.6210
32/32 [==============================] - 0s 4ms/step - loss: 1.1016 - accuracy: 0.6230 - val_loss: 1.1210 - val_accuracy: 0.5680
Epoch 140/150

 1/32 [..............................] - ETA: 0s - loss: 1.2480 - accuracy: 0.5000
13/32 [===========>..................] - ETA: 0s - loss: 1.1807 - accuracy: 0.5865
31/32 [============================>.] - ETA: 0s - loss: 1.1411 - accuracy: 0.5806
32/32 [==============================] - 0s 4ms/step - loss: 1.1431 - accuracy: 0.5754 - val_loss: 1.1190 - val_accuracy: 0.5621
Epoch 141/150

 1/32 [..............................] - ETA: 0s - loss: 0.7541 - accuracy: 0.7500
17/32 [==============>...............] - ETA: 0s - loss: 1.1015 - accuracy: 0.5882
32/32 [==============================] - 0s 4ms/step - loss: 1.1386 - accuracy: 0.5635 - val_loss: 1.1177 - val_accuracy: 0.5621
Epoch 142/150

 1/32 [..............................] - ETA: 0s - loss: 0.7324 - accuracy: 0.8750
16/32 [==============>...............] - ETA: 0s - loss: 1.0908 - accuracy: 0.6094
32/32 [==============================] - 0s 4ms/step - loss: 1.1706 - accuracy: 0.5833 - val_loss: 1.1163 - val_accuracy: 0.5621
Epoch 143/150

 1/32 [..............................] - ETA: 0s - loss: 1.2090 - accuracy: 0.7500
18/32 [===============>..............] - ETA: 0s - loss: 1.1058 - accuracy: 0.5903
32/32 [==============================] - 0s 4ms/step - loss: 1.1265 - accuracy: 0.5873 - val_loss: 1.1138 - val_accuracy: 0.5740
Epoch 144/150

 1/32 [..............................] - ETA: 0s - loss: 1.0140 - accuracy: 0.5000
19/32 [================>.............] - ETA: 0s - loss: 1.1673 - accuracy: 0.6053
32/32 [==============================] - 0s 4ms/step - loss: 1.1495 - accuracy: 0.5913 - val_loss: 1.1125 - val_accuracy: 0.5621
Epoch 145/150

 1/32 [..............................] - ETA: 0s - loss: 1.1223 - accuracy: 0.3750
22/32 [===================>..........] - ETA: 0s - loss: 1.2250 - accuracy: 0.5682
32/32 [==============================] - 0s 4ms/step - loss: 1.1884 - accuracy: 0.5714 - val_loss: 1.1143 - val_accuracy: 0.5621
Epoch 146/150

 1/32 [..............................] - ETA: 0s - loss: 1.2428 - accuracy: 0.5000
16/32 [==============>...............] - ETA: 0s - loss: 1.0894 - accuracy: 0.5391
32/32 [==============================] - 0s 4ms/step - loss: 1.1106 - accuracy: 0.5675 - val_loss: 1.1125 - val_accuracy: 0.5680
Epoch 147/150

 1/32 [..............................] - ETA: 0s - loss: 1.3302 - accuracy: 0.3750
16/32 [==============>...............] - ETA: 0s - loss: 1.1321 - accuracy: 0.5625
32/32 [==============================] - 0s 4ms/step - loss: 1.1179 - accuracy: 0.5913 - val_loss: 1.1125 - val_accuracy: 0.5621
Epoch 148/150

 1/32 [..............................] - ETA: 0s - loss: 1.6613 - accuracy: 0.5000
14/32 [============>.................] - ETA: 0s - loss: 1.2198 - accuracy: 0.5982
32/32 [==============================] - 0s 5ms/step - loss: 1.1462 - accuracy: 0.5992 - val_loss: 1.1111 - val_accuracy: 0.5621
Epoch 149/150

 1/32 [..............................] - ETA: 0s - loss: 0.8854 - accuracy: 0.7500
18/32 [===============>..............] - ETA: 0s - loss: 1.0374 - accuracy: 0.6528
32/32 [==============================] - 0s 4ms/step - loss: 1.1155 - accuracy: 0.6032 - val_loss: 1.1091 - val_accuracy: 0.5621
Epoch 150/150

 1/32 [..............................] - ETA: 0s - loss: 0.9930 - accuracy: 0.5000
21/32 [==================>...........] - ETA: 0s - loss: 1.1623 - accuracy: 0.5833
32/32 [==============================] - 0s 4ms/step - loss: 1.1303 - accuracy: 0.5794 - val_loss: 1.1076 - val_accuracy: 0.5562

5.2 Performance lors de l’entrainement

On voit que l’early stopping ne s’est jamais declenche car la perte diminue regulierement, par contre la metrique “exactitude” plafonne assez vite.

5.2.1 LSTM

perf(history_lstm)

On recupere les previsions sur l’echantillon test.

predictions = model_lstm.predict(histo_test)
predictions.round(2)[:5]

# pour chaque exemple on retient la colonne de score maximal 
prev = pd.DataFrame(predictions)
prev_lstm = np.array(prev.idxmax(axis = 'columns'))

exactitude_lstm = (prev_lstm == cible_test).mean()
array([[0.  , 0.04, 0.03, 0.74, 0.15, 0.04],
       [0.01, 0.05, 0.02, 0.57, 0.14, 0.21],
       [0.22, 0.07, 0.22, 0.34, 0.02, 0.13],
       [0.  , 0.04, 0.02, 0.72, 0.18, 0.04],
       [0.22, 0.07, 0.22, 0.34, 0.02, 0.13]], dtype=float32)

5.2.2 GRU

perf(history_gru)

predictions = model_gru.predict(histo_test)
prev = pd.DataFrame(predictions)
prev_gru = np.array(prev.idxmax(axis = 'columns'))

exactitude_gru = (prev_gru == cible_test).mean()

5.3 Matrice de confusion

Les modeles obtenus sont moins performants que la chaine de Markov d’ordre 1 (!), l’explication sera donne dans la section suivante. En outre les etats “joblessness” et “HE” ne sont jamais predits.

5.3.1 LSTM

L’exactitude du modele LSTM est 50.5%.

mat_conf(pd.Series(cible_test).map(dico_recode), pd.Series(prev_lstm).map(dico_recode))

5.3.2 GRU

L’exactitude du modele GRU est 50.5%.

mat_conf(pd.Series(cible_test).map(dico_recode), pd.Series(prev_gru).map(dico_recode))

6 Modeles avec Embedding et couche GRU / TCN

6.1 Architecture et entrainement des modeles

Ici on rajoute une couche Embedding. En effet dans la section precedente les couches LSTM et GRU avaient en entree des listes d’entiers qui etaient un recodage arbitraire des etats. Ce recodage ne refletait pas une proximite metier entre les etats codes par 0 et 1, ou un ecart metier entre les etats codes par 0 et 5. La couche Embedding permet de transformer chacun de ces entiers en un vecteur qui va etre optimise pour la tache a realiser. La couche Embedding va donc traduire (au moins en partie) une proximite metier en proximite numerique entre les differents vecteurs en entree de la couche GRU ou TCN.

6.1.1 GRU

model_gru2 = Sequential()
model_gru2.add(
    Embedding(
        input_dim = 1+len(recode), # taille du vocabulaire + padding
        output_dim = 3, # dimension choisie des vecteurs d'etat
        input_length = long_max # longueur des sequences
    )
)
model_gru2.add(Dropout(0.3))
model_gru2.add(GRU(20))
model_gru2.add(Dropout(0.3))
model_gru2.add(Dense(len(recode), activation='softmax'))

model_gru2.compile(loss = 'sparse_categorical_crossentropy', metrics = ['accuracy'])
history_gru2 = model_gru2.fit(histo_train, 
                     cible_train, 
                     epochs = nb_epoques, 
                     batch_size = taille_batch, 
                     verbose = 1,
                     validation_split = taux_val,
                     callbacks = [early_stopping])
Epoch 1/150

 1/32 [..............................] - ETA: 55s - loss: 1.7879 - accuracy: 0.1250
18/32 [===============>..............] - ETA: 0s - loss: 1.7372 - accuracy: 0.5208 
32/32 [==============================] - 2s 16ms/step - loss: 1.7083 - accuracy: 0.5159 - val_loss: 1.6154 - val_accuracy: 0.5148
Epoch 2/150

 1/32 [..............................] - ETA: 0s - loss: 1.7204 - accuracy: 0.3750
17/32 [==============>...............] - ETA: 0s - loss: 1.6070 - accuracy: 0.4853
32/32 [==============================] - ETA: 0s - loss: 1.5371 - accuracy: 0.5278
32/32 [==============================] - 0s 5ms/step - loss: 1.5371 - accuracy: 0.5278 - val_loss: 1.4783 - val_accuracy: 0.5148
Epoch 3/150

 1/32 [..............................] - ETA: 0s - loss: 1.7283 - accuracy: 0.2500
16/32 [==============>...............] - ETA: 0s - loss: 1.4256 - accuracy: 0.5312
32/32 [==============================] - 0s 5ms/step - loss: 1.4407 - accuracy: 0.5278 - val_loss: 1.4416 - val_accuracy: 0.5148
Epoch 4/150

 1/32 [..............................] - ETA: 0s - loss: 1.5286 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 1.4132 - accuracy: 0.5368
32/32 [==============================] - 0s 5ms/step - loss: 1.4237 - accuracy: 0.5278 - val_loss: 1.4047 - val_accuracy: 0.5148
Epoch 5/150

 1/32 [..............................] - ETA: 0s - loss: 2.0970 - accuracy: 0.1250
17/32 [==============>...............] - ETA: 0s - loss: 1.3622 - accuracy: 0.5368
32/32 [==============================] - 0s 5ms/step - loss: 1.3664 - accuracy: 0.5278 - val_loss: 1.3725 - val_accuracy: 0.5148
Epoch 6/150

 1/32 [..............................] - ETA: 0s - loss: 2.0103 - accuracy: 0.2500
18/32 [===============>..............] - ETA: 0s - loss: 1.4215 - accuracy: 0.4792
32/32 [==============================] - 0s 5ms/step - loss: 1.3398 - accuracy: 0.5278 - val_loss: 1.3389 - val_accuracy: 0.5148
Epoch 7/150

 1/32 [..............................] - ETA: 0s - loss: 1.1546 - accuracy: 0.6250
19/32 [================>.............] - ETA: 0s - loss: 1.4116 - accuracy: 0.5000
32/32 [==============================] - 0s 5ms/step - loss: 1.3299 - accuracy: 0.5278 - val_loss: 1.3073 - val_accuracy: 0.5148
Epoch 8/150

 1/32 [..............................] - ETA: 0s - loss: 1.8862 - accuracy: 0.3750
20/32 [=================>............] - ETA: 0s - loss: 1.3570 - accuracy: 0.5000
32/32 [==============================] - 0s 5ms/step - loss: 1.3061 - accuracy: 0.5278 - val_loss: 1.2861 - val_accuracy: 0.5148
Epoch 9/150

 1/32 [..............................] - ETA: 0s - loss: 1.2716 - accuracy: 0.7500
21/32 [==================>...........] - ETA: 0s - loss: 1.3590 - accuracy: 0.4881
32/32 [==============================] - 0s 5ms/step - loss: 1.3008 - accuracy: 0.5278 - val_loss: 1.2695 - val_accuracy: 0.5148
Epoch 10/150

 1/32 [..............................] - ETA: 0s - loss: 1.4724 - accuracy: 0.3750
16/32 [==============>...............] - ETA: 0s - loss: 1.2712 - accuracy: 0.4922
31/32 [============================>.] - ETA: 0s - loss: 1.2838 - accuracy: 0.5202
32/32 [==============================] - 0s 5ms/step - loss: 1.2737 - accuracy: 0.5238 - val_loss: 1.2560 - val_accuracy: 0.5148
Epoch 11/150

 1/32 [..............................] - ETA: 0s - loss: 1.2772 - accuracy: 0.5000
21/32 [==================>...........] - ETA: 0s - loss: 1.2589 - accuracy: 0.5357
32/32 [==============================] - 0s 5ms/step - loss: 1.2530 - accuracy: 0.5317 - val_loss: 1.2456 - val_accuracy: 0.4911
Epoch 12/150

 1/32 [..............................] - ETA: 0s - loss: 0.9944 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 1.2431 - accuracy: 0.5208
32/32 [==============================] - 0s 5ms/step - loss: 1.2421 - accuracy: 0.5238 - val_loss: 1.2461 - val_accuracy: 0.4852
Epoch 13/150

 1/32 [..............................] - ETA: 0s - loss: 1.1335 - accuracy: 0.6250
19/32 [================>.............] - ETA: 0s - loss: 1.2404 - accuracy: 0.5197
32/32 [==============================] - 0s 5ms/step - loss: 1.2345 - accuracy: 0.5476 - val_loss: 1.2359 - val_accuracy: 0.4852
Epoch 14/150

 1/32 [..............................] - ETA: 0s - loss: 1.6783 - accuracy: 0.5000
19/32 [================>.............] - ETA: 0s - loss: 1.2865 - accuracy: 0.5263
32/32 [==============================] - 0s 4ms/step - loss: 1.2398 - accuracy: 0.5278 - val_loss: 1.2248 - val_accuracy: 0.5030
Epoch 15/150

 1/32 [..............................] - ETA: 0s - loss: 1.6511 - accuracy: 0.3750
21/32 [==================>...........] - ETA: 0s - loss: 1.2691 - accuracy: 0.5417
32/32 [==============================] - 0s 4ms/step - loss: 1.2285 - accuracy: 0.5635 - val_loss: 1.2143 - val_accuracy: 0.5030
Epoch 16/150

 1/32 [..............................] - ETA: 0s - loss: 1.0946 - accuracy: 0.7500
12/32 [==========>...................] - ETA: 0s - loss: 1.2677 - accuracy: 0.5729
28/32 [=========================>....] - ETA: 0s - loss: 1.2117 - accuracy: 0.5625
32/32 [==============================] - 0s 5ms/step - loss: 1.2199 - accuracy: 0.5595 - val_loss: 1.2076 - val_accuracy: 0.5562
Epoch 17/150

 1/32 [..............................] - ETA: 0s - loss: 1.1547 - accuracy: 0.5000
13/32 [===========>..................] - ETA: 0s - loss: 1.1882 - accuracy: 0.5673
28/32 [=========================>....] - ETA: 0s - loss: 1.1919 - accuracy: 0.5625
32/32 [==============================] - 0s 5ms/step - loss: 1.2132 - accuracy: 0.5556 - val_loss: 1.2034 - val_accuracy: 0.5562
Epoch 18/150

 1/32 [..............................] - ETA: 0s - loss: 1.5061 - accuracy: 0.3750
14/32 [============>.................] - ETA: 0s - loss: 1.1983 - accuracy: 0.5268
30/32 [===========================>..] - ETA: 0s - loss: 1.2098 - accuracy: 0.5625
32/32 [==============================] - 0s 4ms/step - loss: 1.2092 - accuracy: 0.5635 - val_loss: 1.2013 - val_accuracy: 0.5562
Epoch 19/150

 1/32 [..............................] - ETA: 0s - loss: 0.9025 - accuracy: 0.7500
15/32 [=============>................] - ETA: 0s - loss: 1.2088 - accuracy: 0.5917
30/32 [===========================>..] - ETA: 0s - loss: 1.1981 - accuracy: 0.5875
32/32 [==============================] - 0s 4ms/step - loss: 1.1914 - accuracy: 0.5913 - val_loss: 1.1898 - val_accuracy: 0.5562
Epoch 20/150

 1/32 [..............................] - ETA: 0s - loss: 1.4322 - accuracy: 0.6250
14/32 [============>.................] - ETA: 0s - loss: 1.2209 - accuracy: 0.5804
29/32 [==========================>...] - ETA: 0s - loss: 1.1959 - accuracy: 0.5862
32/32 [==============================] - 0s 5ms/step - loss: 1.1886 - accuracy: 0.5873 - val_loss: 1.1861 - val_accuracy: 0.5680
Epoch 21/150

 1/32 [..............................] - ETA: 0s - loss: 1.1077 - accuracy: 0.5000
14/32 [============>.................] - ETA: 0s - loss: 1.1591 - accuracy: 0.5804
28/32 [=========================>....] - ETA: 0s - loss: 1.1744 - accuracy: 0.5938
32/32 [==============================] - 0s 5ms/step - loss: 1.1740 - accuracy: 0.5873 - val_loss: 1.1776 - val_accuracy: 0.5621
Epoch 22/150

 1/32 [..............................] - ETA: 0s - loss: 1.6766 - accuracy: 0.5000
14/32 [============>.................] - ETA: 0s - loss: 1.1984 - accuracy: 0.5982
30/32 [===========================>..] - ETA: 0s - loss: 1.1749 - accuracy: 0.5875
32/32 [==============================] - 0s 4ms/step - loss: 1.1808 - accuracy: 0.5833 - val_loss: 1.1728 - val_accuracy: 0.5621
Epoch 23/150

 1/32 [..............................] - ETA: 0s - loss: 1.0614 - accuracy: 0.5000
16/32 [==============>...............] - ETA: 0s - loss: 1.1814 - accuracy: 0.5625
31/32 [============================>.] - ETA: 0s - loss: 1.1739 - accuracy: 0.5685
32/32 [==============================] - 0s 4ms/step - loss: 1.1669 - accuracy: 0.5714 - val_loss: 1.1677 - val_accuracy: 0.5621
Epoch 24/150

 1/32 [..............................] - ETA: 0s - loss: 0.7147 - accuracy: 0.7500
16/32 [==============>...............] - ETA: 0s - loss: 1.1527 - accuracy: 0.5859
31/32 [============================>.] - ETA: 0s - loss: 1.1495 - accuracy: 0.6210
32/32 [==============================] - 0s 4ms/step - loss: 1.1557 - accuracy: 0.6190 - val_loss: 1.1596 - val_accuracy: 0.5562
Epoch 25/150

 1/32 [..............................] - ETA: 0s - loss: 1.1126 - accuracy: 0.5000
12/32 [==========>...................] - ETA: 0s - loss: 1.2740 - accuracy: 0.5208
32/32 [==============================] - ETA: 0s - loss: 1.1447 - accuracy: 0.5873
32/32 [==============================] - 0s 5ms/step - loss: 1.1447 - accuracy: 0.5873 - val_loss: 1.1551 - val_accuracy: 0.5562
Epoch 26/150

 1/32 [..............................] - ETA: 0s - loss: 0.7718 - accuracy: 0.7500
13/32 [===========>..................] - ETA: 0s - loss: 1.0752 - accuracy: 0.5865
29/32 [==========================>...] - ETA: 0s - loss: 1.1620 - accuracy: 0.5991
32/32 [==============================] - 0s 5ms/step - loss: 1.1421 - accuracy: 0.6071 - val_loss: 1.1484 - val_accuracy: 0.5562
Epoch 27/150

 1/32 [..............................] - ETA: 0s - loss: 1.2357 - accuracy: 0.5000
13/32 [===========>..................] - ETA: 0s - loss: 1.1711 - accuracy: 0.5673
32/32 [==============================] - 0s 5ms/step - loss: 1.1598 - accuracy: 0.5913 - val_loss: 1.1455 - val_accuracy: 0.5562
Epoch 28/150

 1/32 [..............................] - ETA: 0s - loss: 1.0710 - accuracy: 0.5000
15/32 [=============>................] - ETA: 0s - loss: 1.1238 - accuracy: 0.5750
32/32 [==============================] - 0s 5ms/step - loss: 1.1292 - accuracy: 0.5952 - val_loss: 1.1396 - val_accuracy: 0.5562
Epoch 29/150

 1/32 [..............................] - ETA: 0s - loss: 1.1406 - accuracy: 0.6250
16/32 [==============>...............] - ETA: 0s - loss: 1.0230 - accuracy: 0.6562
32/32 [==============================] - 0s 5ms/step - loss: 1.1093 - accuracy: 0.6111 - val_loss: 1.1375 - val_accuracy: 0.5680
Epoch 30/150

 1/32 [..............................] - ETA: 0s - loss: 1.2036 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 1.1429 - accuracy: 0.5662
32/32 [==============================] - 0s 5ms/step - loss: 1.1344 - accuracy: 0.5833 - val_loss: 1.1315 - val_accuracy: 0.5680
Epoch 31/150

 1/32 [..............................] - ETA: 0s - loss: 1.1960 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 1.0560 - accuracy: 0.6029
32/32 [==============================] - 0s 5ms/step - loss: 1.0856 - accuracy: 0.5992 - val_loss: 1.1280 - val_accuracy: 0.5680
Epoch 32/150

 1/32 [..............................] - ETA: 0s - loss: 1.1834 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 1.1530 - accuracy: 0.5882
32/32 [==============================] - 0s 5ms/step - loss: 1.0920 - accuracy: 0.5913 - val_loss: 1.1256 - val_accuracy: 0.5680
Epoch 33/150

 1/32 [..............................] - ETA: 0s - loss: 1.2101 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 1.1158 - accuracy: 0.6176
32/32 [==============================] - 0s 5ms/step - loss: 1.1088 - accuracy: 0.6151 - val_loss: 1.1218 - val_accuracy: 0.5680
Epoch 34/150

 1/32 [..............................] - ETA: 0s - loss: 1.4071 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 1.1591 - accuracy: 0.6250
32/32 [==============================] - 0s 5ms/step - loss: 1.1210 - accuracy: 0.5913 - val_loss: 1.1209 - val_accuracy: 0.5799
Epoch 35/150

 1/32 [..............................] - ETA: 0s - loss: 1.0348 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 1.0599 - accuracy: 0.6103
32/32 [==============================] - 0s 5ms/step - loss: 1.1083 - accuracy: 0.5913 - val_loss: 1.1154 - val_accuracy: 0.5799
Epoch 36/150

 1/32 [..............................] - ETA: 0s - loss: 0.7778 - accuracy: 0.7500
18/32 [===============>..............] - ETA: 0s - loss: 1.0149 - accuracy: 0.6528
32/32 [==============================] - 0s 5ms/step - loss: 1.0648 - accuracy: 0.6190 - val_loss: 1.1134 - val_accuracy: 0.5740
Epoch 37/150

 1/32 [..............................] - ETA: 0s - loss: 1.4189 - accuracy: 0.5000
18/32 [===============>..............] - ETA: 0s - loss: 1.1018 - accuracy: 0.6319
32/32 [==============================] - 0s 5ms/step - loss: 1.0756 - accuracy: 0.6190 - val_loss: 1.1081 - val_accuracy: 0.5740
Epoch 38/150

 1/32 [..............................] - ETA: 0s - loss: 0.7299 - accuracy: 0.7500
18/32 [===============>..............] - ETA: 0s - loss: 0.9764 - accuracy: 0.6875
32/32 [==============================] - 0s 5ms/step - loss: 1.0468 - accuracy: 0.6349 - val_loss: 1.1057 - val_accuracy: 0.5858
Epoch 39/150

 1/32 [..............................] - ETA: 0s - loss: 1.2042 - accuracy: 0.6250
20/32 [=================>............] - ETA: 0s - loss: 1.0524 - accuracy: 0.6125
32/32 [==============================] - 0s 4ms/step - loss: 1.0873 - accuracy: 0.5992 - val_loss: 1.1037 - val_accuracy: 0.5917
Epoch 40/150

 1/32 [..............................] - ETA: 0s - loss: 0.8677 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 0.9147 - accuracy: 0.6471
32/32 [==============================] - 0s 4ms/step - loss: 1.0376 - accuracy: 0.6151 - val_loss: 1.1053 - val_accuracy: 0.5976
Epoch 41/150

 1/32 [..............................] - ETA: 0s - loss: 0.9659 - accuracy: 0.7500
16/32 [==============>...............] - ETA: 0s - loss: 1.0968 - accuracy: 0.5938
32/32 [==============================] - ETA: 0s - loss: 1.1016 - accuracy: 0.5833
32/32 [==============================] - 0s 5ms/step - loss: 1.1016 - accuracy: 0.5833 - val_loss: 1.0994 - val_accuracy: 0.6036
Epoch 42/150

 1/32 [..............................] - ETA: 0s - loss: 1.1720 - accuracy: 0.5000
13/32 [===========>..................] - ETA: 0s - loss: 1.0354 - accuracy: 0.6154
28/32 [=========================>....] - ETA: 0s - loss: 1.0305 - accuracy: 0.6473
32/32 [==============================] - 0s 5ms/step - loss: 1.0304 - accuracy: 0.6389 - val_loss: 1.0938 - val_accuracy: 0.5976
Epoch 43/150

 1/32 [..............................] - ETA: 0s - loss: 1.7021 - accuracy: 0.6250
19/32 [================>.............] - ETA: 0s - loss: 1.1318 - accuracy: 0.5855
32/32 [==============================] - 0s 5ms/step - loss: 1.0526 - accuracy: 0.6270 - val_loss: 1.0922 - val_accuracy: 0.6036
Epoch 44/150

 1/32 [..............................] - ETA: 0s - loss: 0.9882 - accuracy: 0.6250
14/32 [============>.................] - ETA: 0s - loss: 1.1463 - accuracy: 0.5714
29/32 [==========================>...] - ETA: 0s - loss: 1.0427 - accuracy: 0.6164
32/32 [==============================] - 0s 5ms/step - loss: 1.0323 - accuracy: 0.6230 - val_loss: 1.0858 - val_accuracy: 0.5976
Epoch 45/150

 1/32 [..............................] - ETA: 0s - loss: 1.1100 - accuracy: 0.6250
15/32 [=============>................] - ETA: 0s - loss: 1.0080 - accuracy: 0.6250
31/32 [============================>.] - ETA: 0s - loss: 1.0726 - accuracy: 0.6290
32/32 [==============================] - 0s 4ms/step - loss: 1.0652 - accuracy: 0.6349 - val_loss: 1.0829 - val_accuracy: 0.6095
Epoch 46/150

 1/32 [..............................] - ETA: 0s - loss: 1.0970 - accuracy: 0.3750
16/32 [==============>...............] - ETA: 0s - loss: 1.1026 - accuracy: 0.6172
32/32 [==============================] - ETA: 0s - loss: 1.0458 - accuracy: 0.6230
32/32 [==============================] - 0s 4ms/step - loss: 1.0458 - accuracy: 0.6230 - val_loss: 1.0798 - val_accuracy: 0.6154
Epoch 47/150

 1/32 [..............................] - ETA: 0s - loss: 0.7681 - accuracy: 0.7500
13/32 [===========>..................] - ETA: 0s - loss: 0.9346 - accuracy: 0.6923
28/32 [=========================>....] - ETA: 0s - loss: 1.0378 - accuracy: 0.6161
32/32 [==============================] - 0s 5ms/step - loss: 1.0410 - accuracy: 0.6111 - val_loss: 1.0782 - val_accuracy: 0.6154
Epoch 48/150

 1/32 [..............................] - ETA: 0s - loss: 0.8970 - accuracy: 0.6250
13/32 [===========>..................] - ETA: 0s - loss: 0.9487 - accuracy: 0.6635
28/32 [=========================>....] - ETA: 0s - loss: 0.9786 - accuracy: 0.6741
32/32 [==============================] - 0s 5ms/step - loss: 1.0462 - accuracy: 0.6548 - val_loss: 1.0814 - val_accuracy: 0.6391
Epoch 49/150

 1/32 [..............................] - ETA: 0s - loss: 0.6564 - accuracy: 0.7500
12/32 [==========>...................] - ETA: 0s - loss: 1.0418 - accuracy: 0.5938
26/32 [=======================>......] - ETA: 0s - loss: 1.0582 - accuracy: 0.6106
32/32 [==============================] - 0s 5ms/step - loss: 1.0361 - accuracy: 0.6151 - val_loss: 1.0790 - val_accuracy: 0.6450
Epoch 50/150

 1/32 [..............................] - ETA: 0s - loss: 0.7827 - accuracy: 0.7500
16/32 [==============>...............] - ETA: 0s - loss: 1.0008 - accuracy: 0.6250
32/32 [==============================] - ETA: 0s - loss: 1.0118 - accuracy: 0.6587
32/32 [==============================] - 0s 4ms/step - loss: 1.0118 - accuracy: 0.6587 - val_loss: 1.0739 - val_accuracy: 0.6391
Epoch 51/150

 1/32 [..............................] - ETA: 0s - loss: 0.7242 - accuracy: 0.5000
16/32 [==============>...............] - ETA: 0s - loss: 0.8977 - accuracy: 0.6875
32/32 [==============================] - ETA: 0s - loss: 1.0155 - accuracy: 0.6468
32/32 [==============================] - 0s 4ms/step - loss: 1.0155 - accuracy: 0.6468 - val_loss: 1.0704 - val_accuracy: 0.6391
Epoch 52/150

 1/32 [..............................] - ETA: 0s - loss: 0.5519 - accuracy: 0.8750
13/32 [===========>..................] - ETA: 0s - loss: 0.9414 - accuracy: 0.6923
29/32 [==========================>...] - ETA: 0s - loss: 1.0367 - accuracy: 0.6293
32/32 [==============================] - 0s 5ms/step - loss: 1.0166 - accuracy: 0.6389 - val_loss: 1.0650 - val_accuracy: 0.6331
Epoch 53/150

 1/32 [..............................] - ETA: 0s - loss: 1.0632 - accuracy: 0.6250
15/32 [=============>................] - ETA: 0s - loss: 1.0682 - accuracy: 0.6250
31/32 [============================>.] - ETA: 0s - loss: 0.9931 - accuracy: 0.6452
32/32 [==============================] - 0s 4ms/step - loss: 0.9894 - accuracy: 0.6468 - val_loss: 1.0636 - val_accuracy: 0.6331
Epoch 54/150

 1/32 [..............................] - ETA: 0s - loss: 0.5804 - accuracy: 0.7500
20/32 [=================>............] - ETA: 0s - loss: 1.0149 - accuracy: 0.6313
32/32 [==============================] - 0s 4ms/step - loss: 1.0210 - accuracy: 0.6429 - val_loss: 1.0646 - val_accuracy: 0.6391
Epoch 55/150

 1/32 [..............................] - ETA: 0s - loss: 0.9408 - accuracy: 0.7500
17/32 [==============>...............] - ETA: 0s - loss: 0.9802 - accuracy: 0.6397
32/32 [==============================] - 0s 4ms/step - loss: 1.0118 - accuracy: 0.6270 - val_loss: 1.0649 - val_accuracy: 0.6450
Epoch 56/150

 1/32 [..............................] - ETA: 0s - loss: 0.9796 - accuracy: 0.6250
14/32 [============>.................] - ETA: 0s - loss: 0.9570 - accuracy: 0.6786
32/32 [==============================] - 0s 5ms/step - loss: 1.0311 - accuracy: 0.6587 - val_loss: 1.0651 - val_accuracy: 0.6331
Epoch 57/150

 1/32 [..............................] - ETA: 0s - loss: 1.2016 - accuracy: 0.7500
15/32 [=============>................] - ETA: 0s - loss: 1.1086 - accuracy: 0.6333
32/32 [==============================] - 0s 5ms/step - loss: 1.0256 - accuracy: 0.6706 - val_loss: 1.0580 - val_accuracy: 0.6450
Epoch 58/150

 1/32 [..............................] - ETA: 0s - loss: 1.1074 - accuracy: 0.6250
16/32 [==============>...............] - ETA: 0s - loss: 0.9744 - accuracy: 0.6250
32/32 [==============================] - 0s 5ms/step - loss: 0.9855 - accuracy: 0.6349 - val_loss: 1.0565 - val_accuracy: 0.6272
Epoch 59/150

 1/32 [..............................] - ETA: 0s - loss: 0.8580 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 1.0483 - accuracy: 0.6544
32/32 [==============================] - 0s 5ms/step - loss: 1.0088 - accuracy: 0.6429 - val_loss: 1.0568 - val_accuracy: 0.6272
Epoch 60/150

 1/32 [..............................] - ETA: 0s - loss: 1.3846 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 0.9452 - accuracy: 0.6691
32/32 [==============================] - 0s 5ms/step - loss: 0.9850 - accuracy: 0.6429 - val_loss: 1.0556 - val_accuracy: 0.6391
Epoch 61/150

 1/32 [..............................] - ETA: 0s - loss: 0.7616 - accuracy: 0.6250
18/32 [===============>..............] - ETA: 0s - loss: 0.8982 - accuracy: 0.6736
32/32 [==============================] - 0s 5ms/step - loss: 0.9801 - accuracy: 0.6548 - val_loss: 1.0547 - val_accuracy: 0.6568
Epoch 62/150

 1/32 [..............................] - ETA: 0s - loss: 1.1277 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 0.9467 - accuracy: 0.6544
32/32 [==============================] - 0s 5ms/step - loss: 1.0068 - accuracy: 0.6429 - val_loss: 1.0539 - val_accuracy: 0.6568
Epoch 63/150

 1/32 [..............................] - ETA: 0s - loss: 0.5612 - accuracy: 1.0000
20/32 [=================>............] - ETA: 0s - loss: 0.9737 - accuracy: 0.6875
32/32 [==============================] - 0s 5ms/step - loss: 0.9430 - accuracy: 0.6825 - val_loss: 1.0488 - val_accuracy: 0.6568
Epoch 64/150

 1/32 [..............................] - ETA: 0s - loss: 1.0025 - accuracy: 0.7500
17/32 [==============>...............] - ETA: 0s - loss: 0.9449 - accuracy: 0.7059
31/32 [============================>.] - ETA: 0s - loss: 0.9767 - accuracy: 0.6613
32/32 [==============================] - 0s 5ms/step - loss: 0.9715 - accuracy: 0.6587 - val_loss: 1.0450 - val_accuracy: 0.6568
Epoch 65/150

 1/32 [..............................] - ETA: 0s - loss: 0.9235 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 0.9680 - accuracy: 0.6250
32/32 [==============================] - ETA: 0s - loss: 1.0156 - accuracy: 0.6230
32/32 [==============================] - 0s 5ms/step - loss: 1.0156 - accuracy: 0.6230 - val_loss: 1.0456 - val_accuracy: 0.6568
Epoch 66/150

 1/32 [..............................] - ETA: 0s - loss: 0.8309 - accuracy: 0.6250
19/32 [================>.............] - ETA: 0s - loss: 0.9351 - accuracy: 0.6579
32/32 [==============================] - 0s 4ms/step - loss: 0.9466 - accuracy: 0.6627 - val_loss: 1.0420 - val_accuracy: 0.6450
Epoch 67/150

 1/32 [..............................] - ETA: 0s - loss: 0.9012 - accuracy: 0.7500
20/32 [=================>............] - ETA: 0s - loss: 0.9959 - accuracy: 0.6438
32/32 [==============================] - 0s 4ms/step - loss: 1.0058 - accuracy: 0.6151 - val_loss: 1.0404 - val_accuracy: 0.6450
Epoch 68/150

 1/32 [..............................] - ETA: 0s - loss: 0.9969 - accuracy: 0.6250
20/32 [=================>............] - ETA: 0s - loss: 0.9741 - accuracy: 0.6562
32/32 [==============================] - 0s 4ms/step - loss: 0.9791 - accuracy: 0.6508 - val_loss: 1.0418 - val_accuracy: 0.6450
Epoch 69/150

 1/32 [..............................] - ETA: 0s - loss: 0.3052 - accuracy: 1.0000
12/32 [==========>...................] - ETA: 0s - loss: 0.7878 - accuracy: 0.7396
27/32 [========================>.....] - ETA: 0s - loss: 0.8954 - accuracy: 0.6944
32/32 [==============================] - 0s 5ms/step - loss: 0.9372 - accuracy: 0.6825 - val_loss: 1.0444 - val_accuracy: 0.6568
Epoch 70/150

 1/32 [..............................] - ETA: 0s - loss: 0.9640 - accuracy: 0.6250
13/32 [===========>..................] - ETA: 0s - loss: 0.9878 - accuracy: 0.6827
29/32 [==========================>...] - ETA: 0s - loss: 1.0004 - accuracy: 0.6595
32/32 [==============================] - 0s 5ms/step - loss: 0.9622 - accuracy: 0.6706 - val_loss: 1.0430 - val_accuracy: 0.6391
Epoch 71/150

 1/32 [..............................] - ETA: 0s - loss: 1.6388 - accuracy: 0.3750
15/32 [=============>................] - ETA: 0s - loss: 0.9691 - accuracy: 0.6083
30/32 [===========================>..] - ETA: 0s - loss: 0.9390 - accuracy: 0.6500
32/32 [==============================] - 0s 4ms/step - loss: 0.9133 - accuracy: 0.6587 - val_loss: 1.0379 - val_accuracy: 0.6391
Epoch 72/150

 1/32 [..............................] - ETA: 0s - loss: 0.7482 - accuracy: 0.7500
16/32 [==============>...............] - ETA: 0s - loss: 0.8836 - accuracy: 0.6953
32/32 [==============================] - ETA: 0s - loss: 0.9616 - accuracy: 0.6548
32/32 [==============================] - 0s 4ms/step - loss: 0.9616 - accuracy: 0.6548 - val_loss: 1.0357 - val_accuracy: 0.6568
Epoch 73/150

 1/32 [..............................] - ETA: 0s - loss: 1.1072 - accuracy: 0.6250
13/32 [===========>..................] - ETA: 0s - loss: 0.9496 - accuracy: 0.6923
32/32 [==============================] - ETA: 0s - loss: 0.9212 - accuracy: 0.6667
32/32 [==============================] - 0s 5ms/step - loss: 0.9212 - accuracy: 0.6667 - val_loss: 1.0364 - val_accuracy: 0.6509
Epoch 74/150

 1/32 [..............................] - ETA: 0s - loss: 0.5081 - accuracy: 0.7500
14/32 [============>.................] - ETA: 0s - loss: 1.0054 - accuracy: 0.6875
30/32 [===========================>..] - ETA: 0s - loss: 0.9126 - accuracy: 0.7042
32/32 [==============================] - 0s 5ms/step - loss: 0.9334 - accuracy: 0.6984 - val_loss: 1.0390 - val_accuracy: 0.6509
Epoch 75/150

 1/32 [..............................] - ETA: 0s - loss: 1.2111 - accuracy: 0.6250
15/32 [=============>................] - ETA: 0s - loss: 1.0837 - accuracy: 0.6333
32/32 [==============================] - 0s 5ms/step - loss: 1.0168 - accuracy: 0.6587 - val_loss: 1.0443 - val_accuracy: 0.6391
Epoch 76/150

 1/32 [..............................] - ETA: 0s - loss: 1.6509 - accuracy: 0.6250
16/32 [==============>...............] - ETA: 0s - loss: 0.9635 - accuracy: 0.6250
32/32 [==============================] - ETA: 0s - loss: 0.9208 - accuracy: 0.6429
32/32 [==============================] - 0s 5ms/step - loss: 0.9208 - accuracy: 0.6429 - val_loss: 1.0472 - val_accuracy: 0.6391
Epoch 77/150

 1/32 [..............................] - ETA: 0s - loss: 1.2764 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 0.8990 - accuracy: 0.7132
32/32 [==============================] - 0s 5ms/step - loss: 0.9494 - accuracy: 0.6865 - val_loss: 1.0404 - val_accuracy: 0.6450
Epoch 78/150

 1/32 [..............................] - ETA: 0s - loss: 1.8729 - accuracy: 0.2500
16/32 [==============>...............] - ETA: 0s - loss: 1.1074 - accuracy: 0.6094
32/32 [==============================] - 0s 5ms/step - loss: 0.9424 - accuracy: 0.6905 - val_loss: 1.0393 - val_accuracy: 0.6627
Epoch 79/150

 1/32 [..............................] - ETA: 0s - loss: 1.3952 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 0.9505 - accuracy: 0.6544
32/32 [==============================] - 0s 5ms/step - loss: 0.9601 - accuracy: 0.6825 - val_loss: 1.0386 - val_accuracy: 0.6509
Epoch 80/150

 1/32 [..............................] - ETA: 0s - loss: 1.1804 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 0.9393 - accuracy: 0.7206
32/32 [==============================] - 0s 5ms/step - loss: 0.9031 - accuracy: 0.7024 - val_loss: 1.0349 - val_accuracy: 0.6568
Epoch 81/150

 1/32 [..............................] - ETA: 0s - loss: 0.5797 - accuracy: 0.7500
17/32 [==============>...............] - ETA: 0s - loss: 0.9001 - accuracy: 0.6912
32/32 [==============================] - 0s 5ms/step - loss: 0.9321 - accuracy: 0.6825 - val_loss: 1.0323 - val_accuracy: 0.6568
Epoch 82/150

 1/32 [..............................] - ETA: 0s - loss: 1.0531 - accuracy: 0.7500
17/32 [==============>...............] - ETA: 0s - loss: 0.9587 - accuracy: 0.7059
32/32 [==============================] - 0s 5ms/step - loss: 0.9756 - accuracy: 0.6667 - val_loss: 1.0322 - val_accuracy: 0.6568
Epoch 83/150

 1/32 [..............................] - ETA: 0s - loss: 1.5373 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 0.8925 - accuracy: 0.7059
32/32 [==============================] - 0s 5ms/step - loss: 0.8933 - accuracy: 0.7063 - val_loss: 1.0270 - val_accuracy: 0.6568
Epoch 84/150

 1/32 [..............................] - ETA: 0s - loss: 0.5630 - accuracy: 1.0000
17/32 [==============>...............] - ETA: 0s - loss: 0.9563 - accuracy: 0.6985
32/32 [==============================] - 0s 5ms/step - loss: 0.9338 - accuracy: 0.6865 - val_loss: 1.0216 - val_accuracy: 0.6627
Epoch 85/150

 1/32 [..............................] - ETA: 0s - loss: 0.6963 - accuracy: 0.7500
16/32 [==============>...............] - ETA: 0s - loss: 0.9235 - accuracy: 0.7188
32/32 [==============================] - 0s 5ms/step - loss: 0.8893 - accuracy: 0.7024 - val_loss: 1.0198 - val_accuracy: 0.6568
Epoch 86/150

 1/32 [..............................] - ETA: 0s - loss: 0.6236 - accuracy: 0.7500
17/32 [==============>...............] - ETA: 0s - loss: 0.9713 - accuracy: 0.6029
32/32 [==============================] - 0s 5ms/step - loss: 0.9326 - accuracy: 0.6508 - val_loss: 1.0224 - val_accuracy: 0.6568
Epoch 87/150

 1/32 [..............................] - ETA: 0s - loss: 1.1555 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 0.9617 - accuracy: 0.6176
32/32 [==============================] - 0s 5ms/step - loss: 0.9053 - accuracy: 0.6429 - val_loss: 1.0292 - val_accuracy: 0.6864
Epoch 88/150

 1/32 [..............................] - ETA: 0s - loss: 0.8773 - accuracy: 0.6250
16/32 [==============>...............] - ETA: 0s - loss: 0.9341 - accuracy: 0.6484
31/32 [============================>.] - ETA: 0s - loss: 0.8914 - accuracy: 0.6815
32/32 [==============================] - 0s 5ms/step - loss: 0.8993 - accuracy: 0.6786 - val_loss: 1.0197 - val_accuracy: 0.6627
Epoch 89/150

 1/32 [..............................] - ETA: 0s - loss: 1.5979 - accuracy: 0.1250
17/32 [==============>...............] - ETA: 0s - loss: 0.9077 - accuracy: 0.6618
32/32 [==============================] - 0s 5ms/step - loss: 0.8988 - accuracy: 0.6825 - val_loss: 1.0196 - val_accuracy: 0.6627
Epoch 90/150

 1/32 [..............................] - ETA: 0s - loss: 1.2297 - accuracy: 0.5000
18/32 [===============>..............] - ETA: 0s - loss: 0.9195 - accuracy: 0.7014
32/32 [==============================] - 0s 5ms/step - loss: 0.9440 - accuracy: 0.6746 - val_loss: 1.0267 - val_accuracy: 0.6923
Epoch 91/150

 1/32 [..............................] - ETA: 0s - loss: 0.9502 - accuracy: 0.6250
20/32 [=================>............] - ETA: 0s - loss: 1.0501 - accuracy: 0.6375
32/32 [==============================] - 0s 5ms/step - loss: 0.9739 - accuracy: 0.6548 - val_loss: 1.0220 - val_accuracy: 0.6923
Epoch 92/150

 1/32 [..............................] - ETA: 0s - loss: 0.6795 - accuracy: 0.7500
20/32 [=================>............] - ETA: 0s - loss: 0.8122 - accuracy: 0.7063
32/32 [==============================] - 0s 4ms/step - loss: 0.8646 - accuracy: 0.6825 - val_loss: 1.0267 - val_accuracy: 0.6923
Epoch 93/150

 1/32 [..............................] - ETA: 0s - loss: 1.0329 - accuracy: 0.6250
21/32 [==================>...........] - ETA: 0s - loss: 0.9171 - accuracy: 0.6786
32/32 [==============================] - 0s 4ms/step - loss: 0.9016 - accuracy: 0.6905 - val_loss: 1.0191 - val_accuracy: 0.6686
Epoch 94/150

 1/32 [..............................] - ETA: 0s - loss: 0.6093 - accuracy: 0.7500
13/32 [===========>..................] - ETA: 0s - loss: 0.9805 - accuracy: 0.6827
28/32 [=========================>....] - ETA: 0s - loss: 0.9049 - accuracy: 0.6875
32/32 [==============================] - 0s 5ms/step - loss: 0.9482 - accuracy: 0.6825 - val_loss: 1.0141 - val_accuracy: 0.6746
Epoch 95/150

 1/32 [..............................] - ETA: 0s - loss: 1.1976 - accuracy: 0.6250
14/32 [============>.................] - ETA: 0s - loss: 1.1238 - accuracy: 0.5804
29/32 [==========================>...] - ETA: 0s - loss: 0.9644 - accuracy: 0.6552
32/32 [==============================] - 0s 5ms/step - loss: 0.9649 - accuracy: 0.6548 - val_loss: 1.0135 - val_accuracy: 0.6627
Epoch 96/150

 1/32 [..............................] - ETA: 0s - loss: 1.3129 - accuracy: 0.5000
15/32 [=============>................] - ETA: 0s - loss: 0.8997 - accuracy: 0.6833
31/32 [============================>.] - ETA: 0s - loss: 0.8537 - accuracy: 0.7016
32/32 [==============================] - 0s 4ms/step - loss: 0.8622 - accuracy: 0.6984 - val_loss: 1.0137 - val_accuracy: 0.6746
Epoch 97/150

 1/32 [..............................] - ETA: 0s - loss: 0.8632 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 0.9613 - accuracy: 0.6397
32/32 [==============================] - ETA: 0s - loss: 0.9111 - accuracy: 0.6667
32/32 [==============================] - 0s 4ms/step - loss: 0.9111 - accuracy: 0.6667 - val_loss: 1.0107 - val_accuracy: 0.6746
Epoch 98/150

 1/32 [..............................] - ETA: 0s - loss: 0.4947 - accuracy: 0.8750
13/32 [===========>..................] - ETA: 0s - loss: 0.8223 - accuracy: 0.7019
28/32 [=========================>....] - ETA: 0s - loss: 0.9279 - accuracy: 0.6741
32/32 [==============================] - 0s 5ms/step - loss: 0.8864 - accuracy: 0.6905 - val_loss: 1.0150 - val_accuracy: 0.6805
Epoch 99/150

 1/32 [..............................] - ETA: 0s - loss: 0.9933 - accuracy: 0.7500
14/32 [============>.................] - ETA: 0s - loss: 0.9667 - accuracy: 0.6964
30/32 [===========================>..] - ETA: 0s - loss: 0.8948 - accuracy: 0.6958
32/32 [==============================] - 0s 5ms/step - loss: 0.8844 - accuracy: 0.6984 - val_loss: 1.0118 - val_accuracy: 0.6391
Epoch 100/150

 1/32 [..............................] - ETA: 0s - loss: 0.9486 - accuracy: 0.5000
16/32 [==============>...............] - ETA: 0s - loss: 0.9013 - accuracy: 0.6953
32/32 [==============================] - ETA: 0s - loss: 0.8957 - accuracy: 0.6944
32/32 [==============================] - 0s 4ms/step - loss: 0.8957 - accuracy: 0.6944 - val_loss: 1.0096 - val_accuracy: 0.6686
Epoch 101/150

 1/32 [..............................] - ETA: 0s - loss: 0.9454 - accuracy: 0.7500
12/32 [==========>...................] - ETA: 0s - loss: 0.8873 - accuracy: 0.6771
32/32 [==============================] - ETA: 0s - loss: 0.8896 - accuracy: 0.6825
32/32 [==============================] - 0s 5ms/step - loss: 0.8896 - accuracy: 0.6825 - val_loss: 1.0102 - val_accuracy: 0.6805
Epoch 102/150

 1/32 [..............................] - ETA: 0s - loss: 0.7309 - accuracy: 0.8750
12/32 [==========>...................] - ETA: 0s - loss: 0.8497 - accuracy: 0.6667
32/32 [==============================] - ETA: 0s - loss: 0.9037 - accuracy: 0.6786
32/32 [==============================] - 0s 5ms/step - loss: 0.9037 - accuracy: 0.6786 - val_loss: 1.0142 - val_accuracy: 0.6686
Epoch 103/150

 1/32 [..............................] - ETA: 0s - loss: 1.5511 - accuracy: 0.5000
14/32 [============>.................] - ETA: 0s - loss: 0.9953 - accuracy: 0.6429
32/32 [==============================] - 0s 5ms/step - loss: 0.9291 - accuracy: 0.6746 - val_loss: 1.0118 - val_accuracy: 0.6746
Epoch 104/150

 1/32 [..............................] - ETA: 0s - loss: 0.7189 - accuracy: 0.7500
15/32 [=============>................] - ETA: 0s - loss: 0.8952 - accuracy: 0.6917
32/32 [==============================] - 0s 5ms/step - loss: 0.9444 - accuracy: 0.6706 - val_loss: 1.0096 - val_accuracy: 0.6686
Epoch 105/150

 1/32 [..............................] - ETA: 0s - loss: 0.8843 - accuracy: 0.5000
16/32 [==============>...............] - ETA: 0s - loss: 0.8127 - accuracy: 0.6875
32/32 [==============================] - 0s 5ms/step - loss: 0.8844 - accuracy: 0.6746 - val_loss: 1.0185 - val_accuracy: 0.6864
Epoch 106/150

 1/32 [..............................] - ETA: 0s - loss: 0.8843 - accuracy: 0.6250
16/32 [==============>...............] - ETA: 0s - loss: 0.9219 - accuracy: 0.7188
32/32 [==============================] - 0s 5ms/step - loss: 0.9149 - accuracy: 0.7063 - val_loss: 1.0148 - val_accuracy: 0.6568
Epoch 107/150

 1/32 [..............................] - ETA: 0s - loss: 1.1694 - accuracy: 0.3750
17/32 [==============>...............] - ETA: 0s - loss: 0.8459 - accuracy: 0.6985
32/32 [==============================] - 0s 5ms/step - loss: 0.8390 - accuracy: 0.6944 - val_loss: 1.0163 - val_accuracy: 0.6686
Epoch 108/150

 1/32 [..............................] - ETA: 0s - loss: 1.8517 - accuracy: 0.5000
19/32 [================>.............] - ETA: 0s - loss: 0.9193 - accuracy: 0.7237
32/32 [==============================] - 0s 5ms/step - loss: 0.8823 - accuracy: 0.7183 - val_loss: 1.0202 - val_accuracy: 0.6627
Epoch 109/150

 1/32 [..............................] - ETA: 0s - loss: 0.4414 - accuracy: 0.8750
19/32 [================>.............] - ETA: 0s - loss: 0.9297 - accuracy: 0.6645
32/32 [==============================] - 0s 5ms/step - loss: 0.9392 - accuracy: 0.6667 - val_loss: 1.0206 - val_accuracy: 0.6568
Epoch 110/150

 1/32 [..............................] - ETA: 0s - loss: 1.4493 - accuracy: 0.7500
21/32 [==================>...........] - ETA: 0s - loss: 0.8202 - accuracy: 0.7083
32/32 [==============================] - 0s 5ms/step - loss: 0.8637 - accuracy: 0.6706 - val_loss: 1.0220 - val_accuracy: 0.6746
Epoch 111/150

 1/32 [..............................] - ETA: 0s - loss: 0.6814 - accuracy: 0.6250
17/32 [==============>...............] - ETA: 0s - loss: 0.7932 - accuracy: 0.7353
32/32 [==============================] - 0s 5ms/step - loss: 0.8390 - accuracy: 0.7183 - val_loss: 1.0142 - val_accuracy: 0.6627
Epoch 112/150

 1/32 [..............................] - ETA: 0s - loss: 1.7123 - accuracy: 0.3750
18/32 [===============>..............] - ETA: 0s - loss: 0.9476 - accuracy: 0.6528
32/32 [==============================] - 0s 5ms/step - loss: 0.8987 - accuracy: 0.6706 - val_loss: 1.0104 - val_accuracy: 0.6627
Epoch 113/150

 1/32 [..............................] - ETA: 0s - loss: 0.4233 - accuracy: 1.0000
20/32 [=================>............] - ETA: 0s - loss: 0.9364 - accuracy: 0.7063
32/32 [==============================] - 0s 4ms/step - loss: 0.9052 - accuracy: 0.7103 - val_loss: 1.0101 - val_accuracy: 0.6509
Epoch 114/150

 1/32 [..............................] - ETA: 0s - loss: 0.7215 - accuracy: 0.8750
17/32 [==============>...............] - ETA: 0s - loss: 0.9249 - accuracy: 0.6838
32/32 [==============================] - ETA: 0s - loss: 0.8651 - accuracy: 0.6984
32/32 [==============================] - 0s 4ms/step - loss: 0.8651 - accuracy: 0.6984 - val_loss: 1.0058 - val_accuracy: 0.6509
Epoch 115/150

 1/32 [..............................] - ETA: 0s - loss: 0.8368 - accuracy: 0.6250
13/32 [===========>..................] - ETA: 0s - loss: 0.9454 - accuracy: 0.6250
29/32 [==========================>...] - ETA: 0s - loss: 0.9183 - accuracy: 0.6422
32/32 [==============================] - 0s 5ms/step - loss: 0.9079 - accuracy: 0.6508 - val_loss: 1.0048 - val_accuracy: 0.6568
Epoch 116/150

 1/32 [..............................] - ETA: 0s - loss: 0.9798 - accuracy: 0.6250
13/32 [===========>..................] - ETA: 0s - loss: 0.9153 - accuracy: 0.6538
29/32 [==========================>...] - ETA: 0s - loss: 0.8857 - accuracy: 0.6767
32/32 [==============================] - 0s 5ms/step - loss: 0.8577 - accuracy: 0.6905 - val_loss: 1.0079 - val_accuracy: 0.6568
Epoch 117/150

 1/32 [..............................] - ETA: 0s - loss: 0.4398 - accuracy: 0.8750
14/32 [============>.................] - ETA: 0s - loss: 0.8697 - accuracy: 0.7054
30/32 [===========================>..] - ETA: 0s - loss: 0.8461 - accuracy: 0.7083
32/32 [==============================] - 0s 4ms/step - loss: 0.8807 - accuracy: 0.6984 - val_loss: 1.0061 - val_accuracy: 0.6627
Epoch 118/150

 1/32 [..............................] - ETA: 0s - loss: 0.6076 - accuracy: 0.8750
16/32 [==============>...............] - ETA: 0s - loss: 0.9250 - accuracy: 0.6719
32/32 [==============================] - ETA: 0s - loss: 0.8995 - accuracy: 0.6865
32/32 [==============================] - 0s 4ms/step - loss: 0.8995 - accuracy: 0.6865 - val_loss: 1.0014 - val_accuracy: 0.6568
Epoch 119/150

 1/32 [..............................] - ETA: 0s - loss: 0.7249 - accuracy: 0.7500
15/32 [=============>................] - ETA: 0s - loss: 0.8044 - accuracy: 0.7500
31/32 [============================>.] - ETA: 0s - loss: 0.8452 - accuracy: 0.6976
32/32 [==============================] - 0s 4ms/step - loss: 0.8556 - accuracy: 0.6944 - val_loss: 1.0036 - val_accuracy: 0.6627
Epoch 120/150

 1/32 [..............................] - ETA: 0s - loss: 0.5769 - accuracy: 0.7500
17/32 [==============>...............] - ETA: 0s - loss: 0.9194 - accuracy: 0.6544
32/32 [==============================] - ETA: 0s - loss: 0.8925 - accuracy: 0.6667
32/32 [==============================] - 0s 4ms/step - loss: 0.8925 - accuracy: 0.6667 - val_loss: 1.0030 - val_accuracy: 0.6686
Epoch 121/150

 1/32 [..............................] - ETA: 0s - loss: 0.9743 - accuracy: 0.7500
13/32 [===========>..................] - ETA: 0s - loss: 0.9385 - accuracy: 0.7115
32/32 [==============================] - ETA: 0s - loss: 0.9292 - accuracy: 0.7222
32/32 [==============================] - 0s 5ms/step - loss: 0.9292 - accuracy: 0.7222 - val_loss: 1.0074 - val_accuracy: 0.6864
Epoch 122/150

 1/32 [..............................] - ETA: 0s - loss: 0.7729 - accuracy: 0.7500
14/32 [============>.................] - ETA: 0s - loss: 1.0892 - accuracy: 0.6071
29/32 [==========================>...] - ETA: 0s - loss: 0.8996 - accuracy: 0.6810
32/32 [==============================] - 0s 5ms/step - loss: 0.9068 - accuracy: 0.6746 - val_loss: 1.0074 - val_accuracy: 0.6627
Epoch 123/150

 1/32 [..............................] - ETA: 0s - loss: 1.3405 - accuracy: 0.6250
14/32 [============>.................] - ETA: 0s - loss: 0.9130 - accuracy: 0.6964
32/32 [==============================] - 0s 5ms/step - loss: 0.8841 - accuracy: 0.7183 - val_loss: 1.0023 - val_accuracy: 0.6686
Epoch 124/150

 1/32 [..............................] - ETA: 0s - loss: 1.2602 - accuracy: 0.3750
16/32 [==============>...............] - ETA: 0s - loss: 0.8845 - accuracy: 0.6406
32/32 [==============================] - 0s 5ms/step - loss: 0.8597 - accuracy: 0.6349 - val_loss: 1.0047 - val_accuracy: 0.6627
Epoch 125/150

 1/32 [..............................] - ETA: 0s - loss: 0.8765 - accuracy: 0.5000
17/32 [==============>...............] - ETA: 0s - loss: 0.9042 - accuracy: 0.6618
32/32 [==============================] - 0s 5ms/step - loss: 0.8614 - accuracy: 0.6825 - val_loss: 1.0076 - val_accuracy: 0.6686
Epoch 126/150

 1/32 [..............................] - ETA: 0s - loss: 0.5166 - accuracy: 0.8750
17/32 [==============>...............] - ETA: 0s - loss: 0.7629 - accuracy: 0.7279
32/32 [==============================] - 0s 5ms/step - loss: 0.8915 - accuracy: 0.6627 - val_loss: 1.0015 - val_accuracy: 0.6686
Epoch 127/150

 1/32 [..............................] - ETA: 0s - loss: 1.1464 - accuracy: 0.7500
17/32 [==============>...............] - ETA: 0s - loss: 0.8284 - accuracy: 0.7206
32/32 [==============================] - 0s 5ms/step - loss: 0.8182 - accuracy: 0.7421 - val_loss: 1.0027 - val_accuracy: 0.6686
Epoch 128/150

 1/32 [..............................] - ETA: 0s - loss: 0.4361 - accuracy: 0.7500
16/32 [==============>...............] - ETA: 0s - loss: 0.9814 - accuracy: 0.6484
31/32 [============================>.] - ETA: 0s - loss: 0.9031 - accuracy: 0.6815
32/32 [==============================] - 0s 5ms/step - loss: 0.8961 - accuracy: 0.6825 - val_loss: 1.0072 - val_accuracy: 0.6686
Restoring model weights from the end of the best epoch.
Epoch 00128: early stopping

6.1.2 TCN

time_steps = 1
input_dim = long_max

tcn_layer = TCN(input_shape = (time_steps, input_dim),
                nb_filters = 20,
                kernel_size = 2,
                dilations = (1, 2),
                return_sequences = False)

print('Receptive field size =', tcn_layer.receptive_field)

model_tcn = Sequential()
model_tcn.add(
    Embedding(
        input_dim = 1+len(recode),
        output_dim = 3, 
        input_length = long_max
    )
)
model_tcn.add(Dropout(0.3))
model_tcn.add(tcn_layer)
model_tcn.add(Dropout(0.3))
model_tcn.add(Dense(len(recode), activation='softmax'))

model_tcn.compile(loss = 'sparse_categorical_crossentropy', metrics = ['accuracy'])
Receptive field size = 7
history_tcn = model_tcn.fit(histo_train, 
                     cible_train, 
                     epochs = nb_epoques, 
                     batch_size = taille_batch, 
                     verbose = 1,
                     validation_split = taux_val,
                     callbacks = [early_stopping])
Epoch 1/150

 1/32 [..............................] - ETA: 32s - loss: 1.8201 - accuracy: 0.1250
19/32 [================>.............] - ETA: 0s - loss: 1.7619 - accuracy: 0.3684 
32/32 [==============================] - 1s 10ms/step - loss: 1.7436 - accuracy: 0.4087 - val_loss: 1.6605 - val_accuracy: 0.5148
Epoch 2/150

 1/32 [..............................] - ETA: 0s - loss: 1.6902 - accuracy: 0.3750
22/32 [===================>..........] - ETA: 0s - loss: 1.6009 - accuracy: 0.4943
32/32 [==============================] - 0s 4ms/step - loss: 1.5774 - accuracy: 0.5000 - val_loss: 1.5071 - val_accuracy: 0.5148
Epoch 3/150

 1/32 [..............................] - ETA: 0s - loss: 1.6889 - accuracy: 0.3750
32/32 [==============================] - ETA: 0s - loss: 1.4682 - accuracy: 0.5278
32/32 [==============================] - 0s 3ms/step - loss: 1.4682 - accuracy: 0.5278 - val_loss: 1.4440 - val_accuracy: 0.5148
Epoch 4/150

 1/32 [..............................] - ETA: 0s - loss: 1.6139 - accuracy: 0.5000
19/32 [================>.............] - ETA: 0s - loss: 1.4460 - accuracy: 0.5461
32/32 [==============================] - 0s 4ms/step - loss: 1.4345 - accuracy: 0.5278 - val_loss: 1.3892 - val_accuracy: 0.5148
Epoch 5/150

 1/32 [..............................] - ETA: 0s - loss: 2.1160 - accuracy: 0.1250
27/32 [========================>.....] - ETA: 0s - loss: 1.3926 - accuracy: 0.5278
32/32 [==============================] - 0s 3ms/step - loss: 1.3845 - accuracy: 0.5278 - val_loss: 1.3322 - val_accuracy: 0.5148
Epoch 6/150

 1/32 [..............................] - ETA: 0s - loss: 1.9340 - accuracy: 0.2500
23/32 [====================>.........] - ETA: 0s - loss: 1.2846 - accuracy: 0.5489
32/32 [==============================] - 0s 3ms/step - loss: 1.2875 - accuracy: 0.5556 - val_loss: 1.2632 - val_accuracy: 0.5148
Epoch 7/150

 1/32 [..............................] - ETA: 0s - loss: 1.2168 - accuracy: 0.6250
21/32 [==================>...........] - ETA: 0s - loss: 1.3092 - accuracy: 0.5595
32/32 [==============================] - 0s 4ms/step - loss: 1.2212 - accuracy: 0.5794 - val_loss: 1.2003 - val_accuracy: 0.5148
Epoch 8/150

 1/32 [..............................] - ETA: 0s - loss: 2.1457 - accuracy: 0.2500
27/32 [========================>.....] - ETA: 0s - loss: 1.2454 - accuracy: 0.5417
32/32 [==============================] - 0s 3ms/step - loss: 1.2459 - accuracy: 0.5595 - val_loss: 1.1591 - val_accuracy: 0.5799
Epoch 9/150

 1/32 [..............................] - ETA: 0s - loss: 0.9684 - accuracy: 0.7500
32/32 [==============================] - 0s 3ms/step - loss: 1.2392 - accuracy: 0.5437 - val_loss: 1.1321 - val_accuracy: 0.6036
Epoch 10/150

 1/32 [..............................] - ETA: 0s - loss: 1.0807 - accuracy: 0.5000
32/32 [==============================] - ETA: 0s - loss: 1.1248 - accuracy: 0.6190
32/32 [==============================] - 0s 3ms/step - loss: 1.1248 - accuracy: 0.6190 - val_loss: 1.1038 - val_accuracy: 0.6154
Epoch 11/150

 1/32 [..............................] - ETA: 0s - loss: 1.1580 - accuracy: 0.5000
26/32 [=======================>......] - ETA: 0s - loss: 1.1364 - accuracy: 0.6010
32/32 [==============================] - 0s 3ms/step - loss: 1.1352 - accuracy: 0.5952 - val_loss: 1.0764 - val_accuracy: 0.6095
Epoch 12/150

 1/32 [..............................] - ETA: 0s - loss: 0.8339 - accuracy: 0.7500
21/32 [==================>...........] - ETA: 0s - loss: 1.1423 - accuracy: 0.6071
32/32 [==============================] - 0s 4ms/step - loss: 1.1053 - accuracy: 0.6151 - val_loss: 1.0795 - val_accuracy: 0.5976
Epoch 13/150

 1/32 [..............................] - ETA: 0s - loss: 1.1498 - accuracy: 0.6250
28/32 [=========================>....] - ETA: 0s - loss: 1.0740 - accuracy: 0.6205
32/32 [==============================] - 0s 3ms/step - loss: 1.0735 - accuracy: 0.6151 - val_loss: 1.0591 - val_accuracy: 0.6036
Epoch 14/150

 1/32 [..............................] - ETA: 0s - loss: 1.6878 - accuracy: 0.5000
26/32 [=======================>......] - ETA: 0s - loss: 1.1160 - accuracy: 0.5673
32/32 [==============================] - 0s 3ms/step - loss: 1.1146 - accuracy: 0.5833 - val_loss: 1.0492 - val_accuracy: 0.5976
Epoch 15/150

 1/32 [..............................] - ETA: 0s - loss: 1.2966 - accuracy: 0.5000
23/32 [====================>.........] - ETA: 0s - loss: 1.1263 - accuracy: 0.5652
32/32 [==============================] - 0s 3ms/step - loss: 1.0674 - accuracy: 0.5992 - val_loss: 1.0378 - val_accuracy: 0.6036
Epoch 16/150

 1/32 [..............................] - ETA: 0s - loss: 0.9700 - accuracy: 0.7500
30/32 [===========================>..] - ETA: 0s - loss: 1.0324 - accuracy: 0.6208
32/32 [==============================] - 0s 3ms/step - loss: 1.0379 - accuracy: 0.6190 - val_loss: 1.0247 - val_accuracy: 0.6036
Epoch 17/150

 1/32 [..............................] - ETA: 0s - loss: 0.9713 - accuracy: 0.5000
21/32 [==================>...........] - ETA: 0s - loss: 0.9609 - accuracy: 0.6488
32/32 [==============================] - 0s 3ms/step - loss: 1.0092 - accuracy: 0.6230 - val_loss: 1.0287 - val_accuracy: 0.6154
Epoch 18/150

 1/32 [..............................] - ETA: 0s - loss: 1.6016 - accuracy: 0.2500
19/32 [================>.............] - ETA: 0s - loss: 1.1153 - accuracy: 0.5395
32/32 [==============================] - 0s 4ms/step - loss: 1.0767 - accuracy: 0.5913 - val_loss: 1.0259 - val_accuracy: 0.6272
Epoch 19/150

 1/32 [..............................] - ETA: 0s - loss: 0.7708 - accuracy: 0.7500
27/32 [========================>.....] - ETA: 0s - loss: 1.0817 - accuracy: 0.6250
32/32 [==============================] - 0s 3ms/step - loss: 1.0775 - accuracy: 0.6310 - val_loss: 1.0225 - val_accuracy: 0.6154
Epoch 20/150

 1/32 [..............................] - ETA: 0s - loss: 1.3539 - accuracy: 0.5000
32/32 [==============================] - ETA: 0s - loss: 0.9937 - accuracy: 0.6667
32/32 [==============================] - 0s 3ms/step - loss: 0.9937 - accuracy: 0.6667 - val_loss: 1.0104 - val_accuracy: 0.6331
Epoch 21/150

 1/32 [..............................] - ETA: 0s - loss: 1.0015 - accuracy: 0.5000
30/32 [===========================>..] - ETA: 0s - loss: 1.0089 - accuracy: 0.6500
32/32 [==============================] - 0s 3ms/step - loss: 1.0102 - accuracy: 0.6548 - val_loss: 1.0196 - val_accuracy: 0.6272
Epoch 22/150

 1/32 [..............................] - ETA: 0s - loss: 1.1708 - accuracy: 0.6250
22/32 [===================>..........] - ETA: 0s - loss: 1.0187 - accuracy: 0.6420
32/32 [==============================] - 0s 3ms/step - loss: 1.0034 - accuracy: 0.6429 - val_loss: 1.0171 - val_accuracy: 0.6154
Epoch 23/150

 1/32 [..............................] - ETA: 0s - loss: 0.8756 - accuracy: 0.5000
20/32 [=================>............] - ETA: 0s - loss: 0.9952 - accuracy: 0.6187
32/32 [==============================] - 0s 4ms/step - loss: 1.0363 - accuracy: 0.6151 - val_loss: 1.0151 - val_accuracy: 0.6213
Epoch 24/150

 1/32 [..............................] - ETA: 0s - loss: 0.8265 - accuracy: 0.6250
27/32 [========================>.....] - ETA: 0s - loss: 0.9778 - accuracy: 0.6343
32/32 [==============================] - 0s 3ms/step - loss: 0.9593 - accuracy: 0.6429 - val_loss: 1.0305 - val_accuracy: 0.6095
Epoch 25/150

 1/32 [..............................] - ETA: 0s - loss: 0.6567 - accuracy: 0.7500
26/32 [=======================>......] - ETA: 0s - loss: 0.9784 - accuracy: 0.6442
32/32 [==============================] - 0s 3ms/step - loss: 0.9784 - accuracy: 0.6389 - val_loss: 1.0111 - val_accuracy: 0.6213
Epoch 26/150

 1/32 [..............................] - ETA: 0s - loss: 1.0012 - accuracy: 0.7500
32/32 [==============================] - 0s 3ms/step - loss: 0.9581 - accuracy: 0.6349 - val_loss: 1.0180 - val_accuracy: 0.6213
Epoch 27/150

 1/32 [..............................] - ETA: 0s - loss: 1.2181 - accuracy: 0.6250
27/32 [========================>.....] - ETA: 0s - loss: 0.9630 - accuracy: 0.6389
32/32 [==============================] - 0s 3ms/step - loss: 0.9602 - accuracy: 0.6508 - val_loss: 1.0062 - val_accuracy: 0.6331
Epoch 28/150

 1/32 [..............................] - ETA: 0s - loss: 0.9160 - accuracy: 0.6250
24/32 [=====================>........] - ETA: 0s - loss: 0.8724 - accuracy: 0.6667
32/32 [==============================] - 0s 3ms/step - loss: 0.9438 - accuracy: 0.6429 - val_loss: 1.0111 - val_accuracy: 0.6331
Epoch 29/150

 1/32 [..............................] - ETA: 0s - loss: 0.3676 - accuracy: 0.8750
31/32 [============================>.] - ETA: 0s - loss: 0.9981 - accuracy: 0.6331
32/32 [==============================] - 0s 3ms/step - loss: 1.0039 - accuracy: 0.6270 - val_loss: 1.0078 - val_accuracy: 0.6450
Epoch 30/150

 1/32 [..............................] - ETA: 0s - loss: 1.2433 - accuracy: 0.5000
27/32 [========================>.....] - ETA: 0s - loss: 0.9766 - accuracy: 0.6250
32/32 [==============================] - 0s 3ms/step - loss: 0.9563 - accuracy: 0.6429 - val_loss: 1.0131 - val_accuracy: 0.6331
Epoch 31/150

 1/32 [..............................] - ETA: 0s - loss: 0.8952 - accuracy: 0.7500
22/32 [===================>..........] - ETA: 0s - loss: 0.8942 - accuracy: 0.6932
32/32 [==============================] - 0s 3ms/step - loss: 0.9519 - accuracy: 0.6587 - val_loss: 1.0119 - val_accuracy: 0.6568
Epoch 32/150

 1/32 [..............................] - ETA: 0s - loss: 0.5912 - accuracy: 0.7500
30/32 [===========================>..] - ETA: 0s - loss: 0.9018 - accuracy: 0.6708
32/32 [==============================] - 0s 3ms/step - loss: 0.9128 - accuracy: 0.6706 - val_loss: 1.0144 - val_accuracy: 0.6627
Epoch 33/150

 1/32 [..............................] - ETA: 0s - loss: 1.2423 - accuracy: 0.3750
27/32 [========================>.....] - ETA: 0s - loss: 0.9553 - accuracy: 0.6574
32/32 [==============================] - 0s 3ms/step - loss: 0.9665 - accuracy: 0.6548 - val_loss: 1.0125 - val_accuracy: 0.6272
Epoch 34/150

 1/32 [..............................] - ETA: 0s - loss: 1.1659 - accuracy: 0.6250
19/32 [================>.............] - ETA: 0s - loss: 0.9140 - accuracy: 0.6711
32/32 [==============================] - 0s 4ms/step - loss: 0.8906 - accuracy: 0.6984 - val_loss: 1.0120 - val_accuracy: 0.6509
Epoch 35/150

 1/32 [..............................] - ETA: 0s - loss: 0.8208 - accuracy: 0.7500
32/32 [==============================] - 0s 3ms/step - loss: 0.9466 - accuracy: 0.6587 - val_loss: 1.0224 - val_accuracy: 0.6391
Epoch 36/150

 1/32 [..............................] - ETA: 0s - loss: 0.6370 - accuracy: 0.7500
25/32 [======================>.......] - ETA: 0s - loss: 0.9306 - accuracy: 0.6700
32/32 [==============================] - 0s 3ms/step - loss: 0.9222 - accuracy: 0.6706 - val_loss: 1.0046 - val_accuracy: 0.6509
Epoch 37/150

 1/32 [..............................] - ETA: 0s - loss: 1.2255 - accuracy: 0.6250
22/32 [===================>..........] - ETA: 0s - loss: 0.8833 - accuracy: 0.6818
32/32 [==============================] - 0s 3ms/step - loss: 0.9085 - accuracy: 0.6746 - val_loss: 0.9990 - val_accuracy: 0.6627
Epoch 38/150

 1/32 [..............................] - ETA: 0s - loss: 0.7680 - accuracy: 0.7500
28/32 [=========================>....] - ETA: 0s - loss: 0.9588 - accuracy: 0.6429
32/32 [==============================] - 0s 3ms/step - loss: 0.9484 - accuracy: 0.6468 - val_loss: 0.9953 - val_accuracy: 0.6568
Epoch 39/150

 1/32 [..............................] - ETA: 0s - loss: 1.3351 - accuracy: 0.7500
20/32 [=================>............] - ETA: 0s - loss: 0.9784 - accuracy: 0.6625
32/32 [==============================] - 0s 3ms/step - loss: 0.9494 - accuracy: 0.6627 - val_loss: 1.0011 - val_accuracy: 0.6509
Epoch 40/150

 1/32 [..............................] - ETA: 0s - loss: 1.2133 - accuracy: 0.5000
27/32 [========================>.....] - ETA: 0s - loss: 0.8898 - accuracy: 0.6713
32/32 [==============================] - 0s 3ms/step - loss: 0.9513 - accuracy: 0.6429 - val_loss: 1.0037 - val_accuracy: 0.6686
Epoch 41/150

 1/32 [..............................] - ETA: 0s - loss: 0.7105 - accuracy: 0.7500
27/32 [========================>.....] - ETA: 0s - loss: 0.9029 - accuracy: 0.7037
32/32 [==============================] - 0s 3ms/step - loss: 0.9238 - accuracy: 0.6984 - val_loss: 1.0051 - val_accuracy: 0.6746
Epoch 42/150

 1/32 [..............................] - ETA: 0s - loss: 0.9948 - accuracy: 0.6250
25/32 [======================>.......] - ETA: 0s - loss: 0.9107 - accuracy: 0.6900
32/32 [==============================] - 0s 3ms/step - loss: 0.9134 - accuracy: 0.6944 - val_loss: 1.0163 - val_accuracy: 0.6746
Epoch 43/150

 1/32 [..............................] - ETA: 0s - loss: 1.2907 - accuracy: 0.6250
32/32 [==============================] - ETA: 0s - loss: 0.8958 - accuracy: 0.6984
32/32 [==============================] - 0s 3ms/step - loss: 0.8958 - accuracy: 0.6984 - val_loss: 1.0285 - val_accuracy: 0.6686
Epoch 44/150

 1/32 [..............................] - ETA: 0s - loss: 0.7585 - accuracy: 0.6250
24/32 [=====================>........] - ETA: 0s - loss: 0.9253 - accuracy: 0.7031
32/32 [==============================] - 0s 3ms/step - loss: 0.9255 - accuracy: 0.6905 - val_loss: 1.0425 - val_accuracy: 0.6450
Epoch 45/150

 1/32 [..............................] - ETA: 0s - loss: 0.9613 - accuracy: 0.6250
30/32 [===========================>..] - ETA: 0s - loss: 0.9129 - accuracy: 0.6750
32/32 [==============================] - 0s 3ms/step - loss: 0.8881 - accuracy: 0.6865 - val_loss: 1.0342 - val_accuracy: 0.6746
Epoch 46/150

 1/32 [..............................] - ETA: 0s - loss: 0.8229 - accuracy: 0.6250
30/32 [===========================>..] - ETA: 0s - loss: 0.9415 - accuracy: 0.6333
32/32 [==============================] - 0s 3ms/step - loss: 0.9389 - accuracy: 0.6310 - val_loss: 1.0348 - val_accuracy: 0.6686
Epoch 47/150

 1/32 [..............................] - ETA: 0s - loss: 0.4090 - accuracy: 0.8750
22/32 [===================>..........] - ETA: 0s - loss: 0.9263 - accuracy: 0.6591
32/32 [==============================] - 0s 3ms/step - loss: 0.9417 - accuracy: 0.6548 - val_loss: 1.0185 - val_accuracy: 0.6509
Epoch 48/150

 1/32 [..............................] - ETA: 0s - loss: 0.8477 - accuracy: 0.5000
20/32 [=================>............] - ETA: 0s - loss: 0.8177 - accuracy: 0.6812
32/32 [==============================] - 0s 4ms/step - loss: 0.8802 - accuracy: 0.6706 - val_loss: 1.0213 - val_accuracy: 0.6627
Restoring model weights from the end of the best epoch.
Epoch 00048: early stopping

6.2 Performance lors de l’entrainement

Cette fois le early stopping a permis d’accelerer l’entrainement des modeles.

6.2.1 GRU

perf(history_gru2)

predictions = model_gru2.predict(histo_test)
prev = pd.DataFrame(predictions)
prev_gru2 = np.array(prev.idxmax(axis = 'columns'))

exactitude_gru2 = (prev_gru2 == cible_test).mean()

6.2.2 TCN

perf(history_tcn)

predictions = model_tcn.predict(histo_test)
prev = pd.DataFrame(predictions)
prev_tcn = np.array(prev.idxmax(axis = 'columns'))

exactitude_tcn = (prev_tcn == cible_test).mean()

6.3 Matrice de confusion

Les deux modeles approchent voire egalent la performance de la chaine de Markov. Pour le modele GRU on voit ainsi l’interet de la couche Embedding. Mais la faible longueur des sequences utilisees ici et leur petit nombre ne permet pas aux reseaux de neurones de depasser significativement ce niveau de performance.

6.3.1 GRU

L’exactitude du modele GRU est 60.5%.

mat_conf(pd.Series(cible_test).map(dico_recode), pd.Series(prev_gru2).map(dico_recode))

6.3.2 TCN

L’exactitude du modele TCN est 63.6%.

mat_conf(pd.Series(cible_test).map(dico_recode), pd.Series(prev_tcn).map(dico_recode))

retour au debut du document