Skip to content

v0.9.0

Choose a tag to compare

@xtmtd xtmtd released this 27 Sep 14:47
· 4 commits to main since this release

Opt-in sparse-label fine-tuning: one CB-DRW long-tail strategy and one automatic known-class pseudo-label round.

Added

  • --long-tail none|cb-drw (Class-Balanced Deferred Reweighting) for the class-level cross-entropy term of the ArcFace-family losses.
  • --pseudo-label-from FINETUNE1.pth plus five feature-rule options: --pseudo-similarity-floor (0.75), --pseudo-min-gap (0.10), --pseudo-neighbors (15), --pseudo-cap-multiplier (3), --pseudo-absolute-cap (50).
  • Automatic candidate discovery under the image root minus expert references, with recursive traversal, path-identity subtraction, duplicate-alias rejection, and output-subtree skipping.
  • Raw-CLS scoring, an asymmetric own-class-excluded mutual-kNN filter, per-class acceptance caps, and pseudo_labels.csv / pseudo_summary.json diagnostics.
  • Finetune#2 preflight provenance: expert manifest, SSL file SHA-256, pseudo-source SHA-256, experiment identity, class order, and preprocessing are hard gates; root moves, non-accepted candidate changes, and a missing or edited pseudo_labels.csv warn only.
  • Additive finetune#2 checkpoint metadata: pseudo round, accepted rows and hashes, rule constants, candidate-pool and diagnostics hashes, and a training summary.
  • A design document and implementation plan under docs/superpowers/.

Changed

  • New fine-tune checkpoints record the resolved image root and a top-level class_order alongside the historical sorted-string class_labels.
  • README and README.cn.md document the two-command sparse-label workflow.

Fixed

  • Invalid source checkpoints, unreadable candidate images, and extraction failures raise one PseudoLabelError.
  • Empty-acceptance diagnostics now report candidate count, acceptance rate, per-seed-count-bin acceptance, and the design-specified counterfactual pass counts.
  • Deterministic similarity tie-breaking uses canonical references across candidates and expert seeds, including seed index 0.

Ordinary fine-tuning behavior and all defaults remain unchanged.