model = LSTM() model.compile(optimizer="adam", loss="categorical_crossentropy", metrics=["accuracy"]) cp_path = "training_2/cp-{epoch:04d}.h5py" cp_dir = os.path.dirname(cp_path) # Create a callback that saves the model's weights cp_callback = tf.keras.callbacks.ModelCheckpoint(filepath=cp_path, verbose=1, save_weights_only=True, period=1) log_dir = "./runs" tensorboard_callback = tf.keras.callbacks.TensorBoard(log_dir=log_dir) print("Initiating Training.") # model.fit(train_ds, epochs = 10, validation_data = val_ds, steps_per_epoch = train_ct, validation_steps = val_ct, shuffle = True, callbacks = [cp_callback]) model.fit(train_ds, epochs=10, validation_data=val_ds, steps_per_epoch=train_ct, validation_steps=val_ct, shuffle=True, callbacks=[cp_callback, tensorboard_callback]) model.save_weights("./training_1/model.h5py") print("Finished Training.") # export PATH=/usr/local/cuda-10.0/bin:/usr/local/cuda-10.0/NsightCompute-1.0${PATH:+:${PATH}} # export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
adam = tf.keras.optimizers.Adam(lr=0.001, beta_1=0.9, beta_2=0.999, epsilon=1e-08) rmsprop = tf.keras.optimizers.RMSprop(lr=0.001, rho=0.9, epsilon=1e-06) lstm.compile(loss='categorical_crossentropy', optimizer=adam) if MODE == 'train': lstm.fit(input_train, tr_one_hot, batch_size=32, epochs=20, verbose=1, shuffle=True) # Save model lstm.save_weights(r'./saved_model/LSTM/lstm_20.HDF5') print('model saved.') else: # Load model lstm.load_weights(r'./saved_model/LSTM/lstm_20.HDF5') print('model loaded.') pred = lstm.predict(input_validation) pred = np.argmax(pred, axis=1) print('On validate data: ') metrics(y_test, pred) pred_tr = lstm.predict(input_train) pred_tr = np.argmax(pred_tr, axis=1) print('On train data: ') metrics(y_train, pred_tr)