成绩函数、目标函数、代价函数和损失函数

成绩函数(score function)、目标函数(objective function)、代价函数(cost function)和损失函数(loss function)这四个术语经常出现在机器学习和深度学习的各类算法中

目标函数、代价函数和损失函数

目标函数指的是最优化经验风险和结构风险的函数(最大值/最小值优化)。经验风险指的是针对训练数据的损失值,在深度学习中指的是数据损失(data loss);结构风险指的是针对模型复杂度的损失值,在深度学习中指的是正则化损失(regularization loss)。

损失函数和代价函数指的是最小值优化函数,Andrew Ng在机器学习课程 Logistic Regression Cost Function - deeplearning.ai | Coursera中给出一个解释如下:

  • 损失函数用于评判单个训练数据计算结果的好坏

  • 代价函数用于评判整个训练数据计算结果的好坏

目标函数可以看成损失函数或代价函数的泛化形式,在深度学习中,获取最优的分类结果需要最小化损失函数或者代价函数值

关联

理清每个术语的概念以及联系,以分类算法为例,假设有一组训练数据,大小为表示数据个数,表示单个数据维数。中的每个数据都有一个类别,保存为,大小为

想要实现一个算法,输入中的数据就能够输出中相对应的类别,并且希望能够进一步泛化,输入和相同类型的数据也能够输出正确的类别

通常实现方法是设置一个函数,输入数据后输出一组评分,每个评分表示属于某一个标签的可能性,选取最大的评分值作为输入数据所属类别

就是成绩函数,又称为评分函数,其目的是原始数据到类别的映射

那么怎么来计算的好坏呢?可以设置另一个函数,用来计算输出的评分值和正确类别(将类别数值化)之间的差距

就是目标函数,其目的是量化预测分类结果和真实结果之间的的距离

函数的结果越小,表明函数的结果越好,也就是分类效果越好

目标函数的计算包括两部分,一是针对计算结果的评判,二是针对算法复杂度的评判

针对计算结果的评判,就是数据损失,表示损失函数或者代价函数;针对算法复杂度的评判,就是正则化损失

相关阅读