인터페이스는 현지화되어 있으며, Skill 소개와 설명 문서는 선택한 언어로 AI가 자동 번역합니다. 코드·명령어·경로·전문 용어는 원문을 유지하며 원작자 문서가 우선합니다.
Skills 둘러보기
생산성 및 협업 · SKILL.md

postprocessing

postprocessing

Use Fairlearn ThresholdOptimizer and threshold-optimizer plots to adjust trained predictors under group fairness constraints.

Independent GitHub snapshot · Automated classification · Original documentation governs

Skill 문서

GitHub

name: postprocessing description: "Use Fairlearn ThresholdOptimizer and threshold-optimizer plots to adjust trained predictors under group fairness constraints." disable-model-invocation: true metadata: disco-role: operating license: MIT

Fairlearn postprocessing

Use this sub-skill when the task asks to adjust a trained predictor's scores or predictions with group-specific thresholds: ThresholdOptimizer, plot_threshold_optimizer, prefit, predict_method, tol, demographic parity, equalized odds, false/true positive/negative rate parity, or threshold interpolation dictionaries.

Quick workflow

  1. Choose or fit a base estimator that exposes a useful score method: predict_proba, decision_function, or predict.
  2. Create ThresholdOptimizer(estimator=..., constraints=..., objective=..., predict_method=...).
  3. Set prefit=True only when the estimator is already fitted and will not be cloned by cross-validation.
  4. Fit the threshold optimizer with sensitive_features=....
  5. Predict with the same sensitive-feature grouping and, when deterministic output matters, pass random_state to predict.
  6. Route to ../assessment/ to compare subgroup metrics before and after postprocessing.

Read these references

Core APIs to recognize

  • ThresholdOptimizer(*, estimator=None, constraints="demographic_parity", objective="accuracy_score", grid_size=1000, flip=False, prefit=False, predict_method="auto", tol=None)
  • ThresholdOptimizer.fit(X, y, *, sensitive_features, **kwargs)
  • ThresholdOptimizer.predict(X, *, sensitive_features, random_state=None)
  • plot_threshold_optimizer(threshold_optimizer, ax=None, show_plot=True)

Boundary rules

  • This sub-skill owns post-fit threshold/interpolation mitigation. Use ../reductions/ for fairness-constrained retraining and ../preprocessing/ for feature transformation.
  • Use ../assessment/ for grouped metrics and model-comparison plots. plot_threshold_optimizer visualizes the postprocessor internals, not a full fairness report.
  • Use ../installation/ or root troubleshooting when matplotlib is missing.
  • Use ../adversarial/ for neural adversarial fairness; it is not a threshold optimizer.

Operating rules

  • y must be binary for ThresholdOptimizer in this source.
  • sensitive_features are required for both fit and predict.
  • Prefer predict_proba or decision_function over hard-label predict when meaningful scores are available.
  • equalized_odds does not support tol relaxation in the inspected source.
  • prefit=True is unsafe with estimator cloning workflows such as cross_val_score or GridSearchCV; use prefit=False there.
  • Postprocessing can change output randomness. Use random_state in predict for reproducible reports.

Fast validation

Run:

python sub-skills/postprocessing/scripts/smoke_threshold_optimizer.py

Run plot coverage in a matplotlib-capable environment:

python sub-skills/postprocessing/scripts/smoke_threshold_optimizer.py --plot --output-dir /tmp/fairlearn-threshold-plots
저장한 Skills