Description
0
How can I obtain F1score, Recall, Confusion Matrix and precison in this code.I have used compile and obtained accuracy but i dont know how write the code to obtain these metrics from my model.I would be thankful te help me. for comm_round in range(comms_round):
global_weights = global_model.get_weights()
scaled_local_weight_list = list()
client_names= list(clients_batched.keys())
random.shuffle(client_names)
for client in client_names:
local_model = Transformer
local_model.compile(loss=tf.keras.losses.CategoricalCrossentropy(),
optimizer=tf.keras.optimizers.Adam(learning_rate = 0.001),
metrics='acc')
global_model.set_weights(global_weights)
local_model.set_weights(global_weights)
history = local_model.fit(clients_batched[client], epochs=1, verbose=0, callbacks=[checkpoint_callback])
scaling_factor = weight_scalling_factor(clients_batched, client)
scaled_weights = scale_model_weights(local_model.get_weights(), scaling_factor)
scaled_local_weight_list.append(scaled_weights)
K.clear_session()
average_weights = sum_scaled_weights(scaled_local_weight_list)
global_model.set_weights(average_weights)
for(X_test, Y_test) in test_batched:
global_acc, global_loss = test_model(test_x, test_y, global_model, comm_round + 1)
Also I want to graph the performance of the model on the train and test sets recorded during training using a line plot, one for each of the loss and the classification accuracy.