You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Individual structure should be modified to facilitate future updates (regression, multi-class, etc.). Ideally, metric-specific substructures/enums should be created, encompassing the current individual.auc, individual.specificity, individual.sensitivity and individual.metrics with different subtypes (BinaryClassification, Regression, etc.), for example, in a single subfield individual.metrics.
This modification is also necessary to enable, among other things, the addition of a direction to the AUC, which is currently impossible (or would require a dirty code).
Activity
fix: improve determinism in ACO and Individual evaluate functions
fix: convert Individual.features from HashMap to BTreeMap for full de…
eprifti commentedon Mar 24, 2026
Partially addressed in commit 8200176
The most critical structural change has been made:
Done:
Individual.featuresconverted fromHashMap<usize, i8>toBTreeMap<usize, i8>compute_hash()(no longer needs BTreeMap conversion)Remaining (original issue scope):
Metrics { BinaryClassification { auc, sensitivity, specificity, ... }, Regression { spearman, mse, ... } }The metrics refactor is the remaining work — it's needed to enable regressions (#15) with Spearman correlation as a fitness function.
feat: refactor Individual metrics into ClassificationMetrics struct
eprifti commentedon Mar 24, 2026
Completed in PR #58. Individual metrics refactored into ClassificationMetrics struct. All 756 tests pass.