Optimal Training of Fair Predictive Models