Skip to content

v0.6.10 Release - #440

Merged
Mec-iS merged 6 commits into
mainfrom
development
Aug 21, 2026
Merged

v0.6.10 Release#440
Mec-iS merged 6 commits into
mainfrom
development

Conversation

@Mec-iS

@Mec-iS Mec-iS commented Aug 21, 2026

Copy link
Copy Markdown
Collaborator

No description provided.

Mec-iS added 6 commits August 21, 2026 16:09
Relax Precision, Recall and F1 (structs and free functions) from
Number + RealNumber + FloatNumber to Number. Classification metrics
need only equality and a canonical class key, so ordered integer
labels (u16, i32, ...) now work. This lets the same y feed
RandomForestClassifier::fit (Number + Ord) and cross_validate with
&precision / &recall / &f1.

Class keys are derived through a shared label_bits helper (to_f64
widening) instead of RealNumber::to_f64_bits raw transmutation;
float-input scores are unchanged.

- add integer-label unit tests to precision/recall/f1
- add regression test: cross_validate(RandomForestClassifier, ...,
  &precision) with Vec<u16> labels (#322)
- bump patch 0.6.8 -> 0.6.9
- label_bits: replace unwrap with expect for a clear panic message
  when a custom Number impl fails to_f64 conversion
- regression test: use DenseMatrix<f32> features, mirroring the
  exact report in #322
precision/recall/f1 on ClassificationMetrics<T> still required
Number + RealNumber + FloatNumber, so the struct-based entry point
could not be used with integer labels even though Precision/Recall/F1
and the free functions accept any Number (#322). Split roc_auc_score
into its own impl block with the bounds AUC itself needs.

Also complete the CHANGELOG wording: FloatNumber was dropped from the
bounds too.
Under --all-features the std_rand feature makes an unseeded KFold draw
OS entropy, so every CI run shuffled the folds differently. A sweep of
20k seeds showed 0.17% of shuffles violate the MAE < 10.0 assertion in
test_cross_val_predict_knn (worst 12.81) and 0.01% violate
train_score < test_score in test_cross_validate_knn.

Pin seed Some(11) in both tests; margins are comfortable (predict MAE
2.84 vs 10, validate test 2.71 vs 15). The entropy path stays covered
by the rand_custom tests.
@Mec-iS
Mec-iS merged commit f115ed7 into main Aug 21, 2026
13 checks passed
@Mec-iS
Mec-iS deleted the development branch August 21, 2026 16:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant