A governance and training pattern that builds repentance into learning: Confess → Make Amends → Explain → Resolve. Algorithms that improve in fairness the more they run.
while training:
y_hat = model(x)
loss = task_loss(y_hat, y)
metrics = fairness_audit(y_hat, y, groups)
if metrics.exceeds():
weights = reweight(x, y, groups, metrics)
x_cf, y_cf = counterfactual_augment(x, y, groups, metrics)
constraints = update_fairness_constraints(metrics)
loss += fairness_penalty(y_hat, y, groups, constraints)
x, y = concat((x, y), (x_cf, y_cf))
write_provenance(harm_repair_note(metrics, constraints))
step(loss)