计划执行与检查节点
executing-plans
按既定实施计划完成工作,保持过程检查和反馈。
reductions【效率与协作】Use Fairlearn reductions mitigation with ExponentiatedGradient, GridSearch, and Moment constraints for sklearn-compatible estimators.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Use this sub-skill when the task asks to train or compare fairness-constrained models through reductions: ExponentiatedGradient, GridSearch, Moment, DemographicParity, EqualizedOdds, BoundedGroupLoss, sample weights, or sklearn-compatible estimators with fit/predict.
fit(X, y, sample_weight=...) and predict(X).Moment constraint matching the fairness target.ExponentiatedGradient for iterative oracle-based mitigation or GridSearch for a finite grid of Lagrange multipliers.sensitive_features=... to fit.../assessment/ to compare utility and disparity against a baseline estimator.references/workflows-and-api.md for algorithm choice, public signatures, constraint classes, sample-weight routing, and evaluation patterns.references/troubleshooting.md for estimator incompatibility, unsupported constraints, selection-rule errors, and pipeline metadata issues.scripts/smoke_reductions.py for a tiny CPU-only synthetic smoke check covering ExponentiatedGradient and GridSearch.ExponentiatedGradient(estimator, constraints, *, objective=None, eps=0.01, max_iter=50, nu=None, eta0=2.0, run_linprog_step=True, sample_weight_name="sample_weight")GridSearch(estimator, constraints, selection_rule="tradeoff_optimization", constraint_weight=0.5, grid_size=10, grid_limit=2.0, grid_offset=None, grid=None, sample_weight_name="sample_weight")DemographicParity, EqualizedOdds, TruePositiveRateParity, FalsePositiveRateParity, ErrorRateParity.BoundedGroupLoss, SquareLoss, AbsoluteLoss, MeanLoss, ErrorRate, ZeroOneLoss.../postprocessing/ if the base predictor is already trained and only thresholds should change.../preprocessing/ when the user wants to transform features before ordinary training.../adversarial/ when the user wants neural-network adversarial training rather than reductions.../assessment/ for grouped metric reporting, model-comparison plots, and validation tables.random_state) so comparisons are reproducible.sample_weight_name.Pipeline objects, use a routed sample-weight name such as classifier__sample_weight when the final step is named classifier.sensitive_features out of X only if the modeling decision requires that; Fairlearn still needs the vector/matrix at fit time.Run:
python sub-skills/reductions/scripts/smoke_reductions.py
The smoke uses sklearn and synthetic CPU data only.