谈谈损失函数, 成本函数, 目标函数 的区别

谈谈损失函数, 成本函数, 目标函数 的区别

机器学习中经常会碰到“损失函数”,“成本函数”, 和“目标函数”。许多初学者会被这些概念搞晕。但是概念不能混啊,这里顺便备忘一下!

一、“损失函数”一般是指对单个样本的做的损失

损失函数 \left| y_i-f(x_i) \right| ,一般是针对单个样本 i

二、“成本函数”一般是数据集上总的成本和损失

成本函数 1/N.\sum_{i=1}^{N}{\left| y_i-f(x_i) \right|} , 一般是针对总体

当然我们也可以加上正则项

成本函数 1/N.\sum_{i=1}^{N}{\left| y_i-f(x_i) \right|}+正则项

三、目标函数”是一个非常广泛的名称

一般我们都是先确定一个“目标函数”,再去优化它。比如在不同的任务中“目标函数”可以是:

– 最大化后验概率MAP(比如朴素贝叶斯)
– 最大化适应函数(遗传算法)
– 最大化回报/值函数(增强学习)
– 最大化信息增益/减小子节点纯度(CART 决策树分类器)
– 最小化平方差错误成本(或损失)函数(CART,决策树回归,线性回归,线性适应神经元)
– 最大化log-相似度或者最小化信息熵损失(或者成本)函数
– 最小化hinge损失函数(支持向量机SVM)

参考:

https://www.quora.com/What-is-the-difference-between-a-cost-function-and-a-loss-function-in-machine-learningwww.quora.com

编辑于 2018-11-11

文章被以下专栏收录