目标函数是数学优化问题中的一种函数,它为每个候选解赋予一个数值。优化的目的是在满足各种选择限制的前提下,找到目标函数值最小或最大的候选解。这个函数表达了数学模型中衡量优劣的标准,例如支出更低、产出更高、预测误差更小,或其他指定的准则。目标函数不同于待选择的决策变量,也不同于界定哪些选择被允许的约束条件。(stanford.edu)
数学表述
标量最小化问题可以写成
[ \min_{x\in\mathcal F} f(x), ]
其中,(x) 表示决策变量,(\mathcal F) 是可行集,(f) 是目标函数。变量可以是连续的、离散的,也可以兼有两者。约束通常采用 (g_i(x)\leq 0) 和 (h_j(x)=0) 的形式。无约束问题允许取函数指定定义域中的任意点。(stanford.edu)
最优值为
[ p^\star=\inf_{x\in\mathcal F}f(x). ]
最优解 (x^\star) 满足 (f(x^\star)=p^\star)。最优值和最优解是不同的对象:多个解可能具有同一个最优值,而下确界不一定能取到。将 (f) 替换为 (-f),即可把最大化问题转化为最小化问题。(stanford.edu)
例如,在所有实数 (x) 上最小化 (f(x)=(x-3)^2),得到的最优解是 (x^\star=3),最优值为零。如果将可行集限制为 (0\leq x\leq2),最优解就变为 (x^\star=2),最优值为一。这说明,仅有目标函数并不能确定问题的答案:定义域和约束同样重要。
结构与最优性
目标函数的数学结构有助于确定适用的求解方法。线性规划采用线性目标函数以及线性等式和不等式约束。二次目标函数包括平方误差表达式,而非线性目标函数则可能涉及乘积、指数或其他非线性关系。即使目标函数本身是线性的,离散取值限制也会形成整数规划等问题。(web.stanford.edu)
在凸优化中,目标函数是凸函数,可行集也是凸集。此时,每个局部最小值都是全局最优值。严格凸性意味着,在凸可行集上至多存在一个最小化解,但严格凸性本身并不能保证解的存在。非凸问题可能存在多个局部极小点和鞍点。(web.stanford.edu)
对于可微的目标函数,梯度描述其一阶变化。在无约束问题的内部局部极小点处,梯度必须为零。但这一条件通常并不充分:驻点也可能是极大点或鞍点。梯度下降通过沿负梯度方向迭代来降低目标函数值,而牛顿法还会利用二阶信息。存在约束时,边界上的解不一定具有零梯度;在适当假设下,卡鲁什—库恩—塔克条件可用于描述最优性。(web.stanford.edu)
统计学习中的目标函数
在机器学习中,决策变量通常是模型参数。损失函数用于衡量预测值与目标值之间的差异;训练目标函数通常汇总训练数据上各个样本的损失。术语的用法并不统一,“损失”“代价”和“目标”有时指同一个表达式。更准确地说,目标函数可以同时包含数据拟合损失和附加项。(deeplearningbook.org)
一种常见形式为
[ J(\theta)=\frac{1}{n}\sum_{i=1}^{n} \ell\bigl(h_\theta(x_i),y_i\bigr) +\lambda R(\theta). ]
其中,(h_\theta) 是预测模型,(\ell) 是单个样本的损失,(R) 是正则化惩罚项,(\lambda\geq0) 控制惩罚的强度。不含惩罚项时,最小化平均训练损失就是经验风险最小化。惩罚项不仅考虑预测的拟合程度,还可以表达对特定参数配置的偏好。(deeplearningbook.org)
对于线性回归,普通最小二乘法最小化残差平方和。将其除以观测数量,就得到均方误差目标函数;在其他项不变的情况下,两者具有相同的最小化解。最大似然估计最大化似然函数;在似然为正的范围内,这等价于最小化其负对数。(deeplearningbook.org)
总体目标函数通常是损失在数据生成分布下的期望值。与之对应的经验目标函数则由有限样本计算得出。因此,训练目标函数值的降低并不自动意味着泛化(机器学习)能力有所提升;表达能力强的模型可能出现过拟合。(deeplearningbook.org)
等价目标函数与数值表现
某些变换不会改变最优解。加上一个常数或乘以一个正常数,都不会改变最小化解。更一般地,对目标函数施加严格递增变换,会保留可行目标函数值之间的大小顺序。不过,这些变换仍可能改变凸性、导数和数值表现,因此数学上等价的目标函数未必产生相同的计算轨迹。(web.stanford.edu)
对于复合目标函数,尺度调整也很重要。将每一项都乘以同一个正常数,不会改变最小化解;但只调整数据拟合项的尺度,会改变它与正则化项之间的相对权重。例如,将损失总和替换为平均损失,同时保持惩罚系数不变,通常会改变优化问题。(deeplearningbook.org)
多重准则
多目标优化同时考虑多个目标,例如同时最小化制造成本和产品重量。如果不存在另一个可行解能够在不使任何准则变差的情况下改善某个准则,那么该可行解就是帕累托最优解。这将帕累托效率的思想推广到一般优化模型中,通常得到的是一组体现不同权衡的解,而不是一个在所有方面都最好的选择。(direct.mit.edu)
一种常见的标量化方法是最小化加权和:
[ F(x)=\sum_{k=1}^{m}w_k f_k(x). ]
各分目标的权重和尺度会影响最终选定的权衡方案。加权和方法很有用,但在非凸问题中可能无法找到某些帕累托最优解。其他表述方式则是在优化一个准则的同时,对其余准则施加界限,从而通过约束表达不同的偏好。(ocw.mit.edu)