Spaces:
Sleeping
Sleeping
import numpy as np | |
def calculate_benchmark_metrics(final_point, global_min, path, loss_values): | |
distance = np.linalg.norm(final_point - global_min) | |
convergence_rate = len(path) if loss_values[-1] < 1e-5 else float('inf') | |
return {'distance': float(distance), 'final_loss': float(loss_values[-1]), 'convergence_rate': convergence_rate} | |
def calculate_ml_metrics(train_history, val_history): | |
final_train_acc = train_history['accuracy'][-1] | |
final_val_acc = val_history['accuracy'][-1] | |
generalization_gap = final_train_acc - final_val_acc | |
final_train_loss = train_history['loss'][-1] | |
final_val_loss = val_history['loss'][-1] | |
best_epoch = np.argmax(val_history['accuracy']) + 1 | |
return { | |
'final_train_acc': final_train_acc, | |
'final_val_acc': final_val_acc, | |
'generalization_gap': generalization_gap, | |
'final_train_loss': final_train_loss, | |
'final_val_loss': final_val_loss, | |
'best_epoch': best_epoch | |
} | |