fix up PredictiveModelOptimizer API, still not 100% happy with it