logger.plot_model(model, 'Classifier') log('Create Networks Successfully') #%% ################################################################### ######################## Start training ########################### ################################################################### for epoch in range(epochs + 1): log("Epoch {}".format(epoch + 1)) # train loss_sum, acc_sum = 0, 0 for i in range(batch_steps): x_batch, y_batch, showlabels = dataset.train_next_batch() loss, acc = model.train_on_batch(x_batch, y_batch) loss_sum = loss_sum + loss acc_sum = acc_sum + acc utils.progressbar(i, batch_steps) logger.write_tensorboard(['train_acc', 'train_loss'], [acc_sum / batch_steps, loss_sum / batch_steps], epoch) print('Training Acc :\t{:.4f}'.format(acc_sum / batch_steps)) # valid if (epoch % eval_freq == 0): loss, acc = evaluator.EvaluateModel(model, epoch) print('Validate Loss:\t{:.4f}'.format(loss)) print('Validate Acc :\t{:.4f}'.format(acc)) logger.save_weights(model, "Round{}_Weights".format(epoch))