Many real-world analytics problems involve two significant challenges: prediction and optimization. Due to the typically complex nature of each challenge, the standard paradigm is predict-then-optimize. By and large, machine learning tools are intended to minimize prediction error and do not account for how the predictions will be used in the downstream optimization problem. In contrast, we propose a new and very general framework, called Smart "Predict, then Optimize" (SPO), which directly leverages the optimization problem structure, i.e., its objective and constraints, for designing better prediction models. A key component of our framework is the SPO loss function which measures the decision error induced by a prediction. Training a prediction model with respect to the SPO loss is computationally challenging, and thus we derive, using duality theory, a convex surrogate loss function which we call the SPO+ loss. Most importantly, we prove that the SPO+ loss is statistically consistent with respect to the SPO loss under mild conditions. Our SPO+ loss function can tractably handle any polyhedral, convex, or even mixed-integer optimization problem with a linear objective. Numerical experiments on shortest path and portfolio optimization problems show that the SPO framework can lead to significant improvement under the predict-then-optimize paradigm, in particular when the prediction model being trained is misspecified. We find that linear models trained using SPO+ loss tend to dominate random forest algorithms, even when the ground truth is highly nonlinear.
翻译:许多现实世界分析问题涉及两个重大挑战:预测和优化。由于每项挑战的典型复杂性质,标准范式的典型性质是预测时优化。总的来说,机器学习工具旨在尽量减少预测错误,而没有说明下游优化问题将如何使用预测。相反,我们提出了一个新的非常笼统的框架,称为智能“预演,然后优化”(SPO),它直接利用优化问题结构,即,它的目标与制约,设计更好的预测模型。我们框架的一个关键组成部分是衡量预测引起的决定错误的SPO损失函数。培训有关SPO损失的预测模型具有计算上的挑战性,因此我们用双轨理论来计算,一个我们称之为SPO+损失的Convex代谢损失函数。最重要的是,我们证明SPO+损失在温和的条件下,甚至其目标与SPO损失模型的计算模式一致。我们的SPO+损失功能可以直截面处理任何多面、直线式、直线式模型的模型,或者甚至混合的模型在SO-PO的预测中,在最短线性模型的预测框架下,在SPO的预测中显示一个直线式的路径上的最佳问题。