1. 何为损失函数:
在机器学习里面,基本上所有的算法都是在对一个目标函数进行最大化或者最小化的一个过程,那么我们常常把这个最小化的函数称为损失函数,一般采用梯度下降法求解这个损失函数的最小值所对应的参数。可以认为,损失函数为我们的模型优化提供了方向。
2. 损失函数类型:
2.1 平方损失L2 (回归损失函数):预测值和目标值之间差值的平方和
2.2 平方绝对误差L1
2.3 对数损失函数(Cross Entropy Loss,Softmax Loss ):用于Logistic 回归与Softmax 分类中;
2.4 指数损失函数(Exponential Loss) :主要用于Adaboost 集成学习算法中;
2.5 铰链损失函数(Hinge Loss):主要用于支持向量机(SVM) 中
3. 对数损失函数
对数损失函数用到了极大似然估计思想,p(y|x)。
假设样本服从伯努利分布(0-1)分布,然后求得改分布的似然函数,接着取对数求极值(最小化负的似然函数)。利用已知的样本分布,找到最有可能(即最大概率)导致这种分布的参数值
4. 交叉熵
交叉熵刻画的是实际的输出(概率)和期望的输出(概率)的距离,交叉熵的值越小,两个概率分布越接近。
log
类型损失函数的优势可以将连乘转为求和,由于是单调函数,不会改变原结果,并且还很方面求最优,因此log
类型的损失函数函数也非常常用,比较著名的一种就是交叉熵(cross entropy
),也就是logistic regression
用的损失函数
对数损失函数就是交叉熵