Dataset: heart_disease (classification)
Penalty: 0.2
Seed: 73
Best fitness: -0.9566961369461435
Final val loss: 0.96309816
Final penalty: 0.18601215
Model saved to: logs/classification/heart_disease/models/best_model_penalty_0.2_seed_73.pth

Final architecture & hyperparameters:
  num_layers: 5
  layer_sizes: [16, 10, 32, 3, 22]
  activations: [3, 1, 3, 3, 4]
  dropout_rates: [0.143, 0.104, 0.271, 0.232, 0.095]
  batch_norms: [1, 0, 1, 0, 0]
  learning_rate: 0.0119
  batch_size: 16
  patience: 16
  optimizer_type: 2
  init_type: 0
  l2_penalty: 0.0013

Validation metrics (final):
  accuracy: 57.77777777777777
  precision: 22.000000000000004
  recall: 31.166666666666664
  f1_score: 25.608465608465607
  confusion_matrix: [[23, 0, 0, 1, 0], [7, 0, 0, 1, 0], [0, 4, 0, 2, 0], [0, 2, 0, 3, 0], [0, 0, 0, 2, 0]]
  num_classes: 5
  class_distribution: {0: 24, 1: 8, 2: 6, 3: 5, 4: 2}

Test metrics (final):
  accuracy: 65.21739130434783
  precision: 32.83870967741936
  recall: 42.84444444444445
  f1_score: 35.476190476190474
  confusion_matrix: [[23, 2, 0, 0, 0], [5, 2, 0, 2, 0], [2, 1, 0, 2, 0], [0, 0, 0, 5, 0], [1, 0, 0, 1, 0]]
  num_classes: 5
  class_distribution: {0: 25, 1: 9, 2: 5, 3: 5, 4: 2}
