SSFairnessAudit is an R package for auditing group fairness metrics when labels are fully observed or only partially available. The repository contains the package source, generated documentation, and a small set of research scripts used for simulation experiments.
Use Audit_Fairness() as the high-level entry point or call SSFairness()
directly when you want more control over the semi-supervised estimator.
SSFairness() now supports useful controls:
cross_fit_variance = TRUEto use the cross-fitted imputation path for variance estimationreturn_imputation_quality = TRUEto return imputation diagnostics plus the labeled and unlabeled imputationsfolds = ...to reuse the same labeled-data folds across candidate models when comparing them withSelect_Model()
The semi-supervised basis options now include polynomial, natural spline,
interaction, beta-calibration, and kernel branches. The natural spline path is
available through basis = "Spline(S)", basis = "Spline(S) + X", and
basis = "Spline Interaction". The additive spline branch uses a shared
smooth in S plus additive covariate effects; the spline interaction branch
adds spline-by-covariate interactions so the shape in S can vary with X.
R/: package source codeman/: generated.Rddocumentationdocs/: pkgdown site outputscripts/: simulation and exploratory analysis scripts
Audit_Fairness(): wrapper for supervised and semi-supervised auditingSupervisedFairness(): fairness estimation with labeled outcomesSSFairness(): semi-supervised fairness estimation and optional imputation diagnosticsDataGeneration(): synthetic data generator for simulationsSelect_Model(): candidate-model selection helper Default selection now uses a TPR-weighted cross-fitted squared-error criterion, withcriterion = "brier"still available for the plain Brier score.
When comparing candidate semi-supervised models with cross-fitted imputation
quality, reuse the same folds object across all SSFairness() calls so the
comparison is based on the same labeled-data splits.
docs/is committed so the package website can be served from GitHub Pages.scripts/is intentionally excluded from package builds because it supports experiments rather than the package API.