CTPN实战(2)LOSS

基础知识

机器学习可以理解为对目标函数的最大化或最小化过程,而需要最小化的目标函数称为损失函数。

1.1

针对分类问题和回归问题,有不同的损失函数,首先简单介绍回归问题常用的损失函数,
1.1.1均方误差(MSE):
均方误差是回归损失函数中最常用的误差,它是预测值与目标值之间差值的平方和,也叫L2范数损失函数,y为真实值,f(xi)为预测值,其公式如下所示:
在这里插入图片描述
1.1.2平均绝对误差
指的是误差的距离的平均值,是一种L1范数误差,其表达式为:
在这里插入图片描述
1.1.3 SmoothL1Loss:
在这里插入图片描述
x为真实值和预测值的差值,smoothL1损失函数,使得误差很小时loss足够小,误差很大时loss也不至于过大。

1.1.4
三种损失函数值随误差变化的图像为:
在这里插入图片描述
(1.1参考文献:https://www.cnblogs.com/wangguchangqing/p/12021638.html)

1.2

之后介绍分类问题常用的损失函数:
1.2.1交叉熵损失函数(CrossEntropy Loss):
首先引入信息熵的概念:
在这里插入图片描述
可以把熵理解为不确定度,当先验概率P(xi)越大时,结果的熵H(X)就越小,也就是结果不确定性越小。
再介绍相对熵(KL散度)的概念:

在这里插入图片描述
用来衡量两个分布P和Q的差异,二者分布更接近时,散度越小。
我们了解了以上两个概念后,可以更好的理解交叉熵的概念,其公式为:
在这里插入图片描述
可以看出,交叉熵是信息熵和相对熵的和。在分类问题中,P(x)表示真实分布,p(xi)也就是标签值,Q(x)表预测分布,q(xi)也就是预测值。
对于监督学习,P(X)是确定的,最小化交叉熵可以理解为最小化预测分布和真实分布的差别,之所以采用交叉熵,是因为它要比相对熵的计算简便很多。
二分类问题(logistic regression)的交叉熵:
在这里插入图片描述
多分类问题(softmax regression)的交叉熵
在这里插入图片描述

CTPN的LOSS

其loss为三项之和:
在这里插入图片描述
其中:
第一项为得分的分类Loss,采用交叉熵

nn.CrossEntropyLoss()
#nn.CrossEntropyLoss()是nn.logSoftmax()和nn.NLLLoss()的整合
#所以网络输出不需要softmax

第二项为竖直方向中心点y坐标和高h的的回归Loss,采用SmoothL1Loss

nn.SmoothL1Loss()

第三项为中心点的水平偏移量x的回归Loss,采用SmoothL1Loss

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值