损失函数的简介
损失函数,又称目标函数,或误差函数,用来度量网络实际输出与期望输出之间的不一致程度,指导网络的参数学习和表示学习。
0、损失函数特点
损失函数是一个非负实值函数。
针对不同的问题,会采用不同的损失函数
– 回归问题(连续型):平方损失等
– 分类问题(离散型):对数损失、交叉熵等
不同的损失函数会影响网络的训练速度和网络的泛化性能
1、损失函数-连续型输出
平方损失函数(Square Loss)
绝对值损失函数(Absolute Value Loss)
2、损失函数-离散型输出
交叉熵损失(Cross-Entropy Loss; Log Loss),交叉熵损失:真实概率?? ; 模型预测概率??
熵:用于度量变量的不确定性程度
交叉熵:主要用于度量两个概率分布间的差异性信息
(1)、二分类问题的交叉熵损失函数:
对于样本(?, ?),?为样本, ?为对应的标签, 在二分类问题中,其取值的集合可能为{0,1}。假设某个样本的真实标签为?,该样本的? = 1的概率为?,则该样本的损失函数为:− (????(?) + 1 − ? log(1 − ?))。
2.1、交叉熵和Softmax在多分类问题的结合应用
ML之SR:Softmax回归(Softmax Regression)的简介、使用方法、案例应用之详细攻略
损失函数/代价函数/目标函数之间区别
损失函数
用来估计你模型的预测值与真实值Y的不一致程度,它是一个非负实数值函数。损失函数越小,模型的鲁棒性就越好。是定义在单个样本上的,算的是一个样本的误差。
(1)、均方误差:也叫平方损失,是回归任务中最常见的性能度量。我们把均方误差当做线性回归的损失函数。因此我们可试图让其最小化
代价函数 定义在整个训练集上的,是所有样本误差的平均,也就是损失函数的平均。
目标函数
定义为最终需要优化的函数。等于结构风险Cost Function+正则化项。
正则化项:我们直接最小化经验风险很容易产生过拟合现象,所以一般需要在经验风险上加正则化项或损失,结构风险定义为
其中为模型的复杂度。模型越复杂,复杂度越大。复杂度表示了对复杂模型的惩罚。结构风险最小化,需要经验风险与模型复杂度同时最小。
损失函数的案例应用
后期更新……