Loss进化史

作为机器学习跟深度学习的三大要素之一,损失函数的定义极为讲究。不仅要连续可导,求导公式还要尽可能简洁,同时还要适应各种不同类型的问题,如回归问题一般用MSE,分类问题采用交叉熵。那我们就来看看loss的进化史,了解一下为什么要这么搭配。

1. 案例引入:政治倾向预测

希望根据一个人的年龄、性别、年收入等相互独立的特征,来预测一个人的政治倾向,有三种可预测结果:民主党、共和党、其他党。假设我们当前采用两个不同的模型分别预测,得到了三个样本属于每个类别的概率值:
模型1:

prediction label yes/or
0.3 0.3 0.4 0 0 1 (民主党) yes
0.3 0. 4 0.3 0 1 0 (共和党) yes
0.1 0.2 0.7 1 0 0 (其他党) no

模型1对于样本1和样本2以非常微弱的优势判断正确,对于样本3的判断则彻底错误。

模型2:

prediction label yes/or
0.1 0.2 0.7 0 0 1 (民主党) yes
0.1 0. 7 0.2 0 1 0 (共和党) yes
0.3 0.4 0.3 1 0 0 (其他党) no

模型2对于样本1和样本2判断更加准确,对于样本3判断错误,但是相对来说没有错得太离谱。

有了模型之后,如何定义损失函数来判断模型在样本上的表现呢?

2. 错误率(error rate)

就是识别错误的样本占总样本的比例,定义如下:

e r r o r   r a t e = n u m b e r   o f   e r r o r   s a m p l e s n u m b e r   o f   a l l   s a m p l e s error \ rate = \dfrac{number \ of \ error \ samples}{number \ of \ all \ samples} error rate=number of all samplesnumber of error samples

对于模型1: e r r o r   r a t e = 1 3 error \ rate = \dfrac{1}{3} error rate=31

对于模型2: e r r o r   r a t e = 1 3 error \ rate = \dfrac{1}{3} error rate=31

可以看到,得到的结果是一样的。虽然模型1和模型2都判别错了一个,但从概率值来看,模型2相比模型1更为贴近真实值,损失函数应该更小才对。但是错误率无法体现这个差异。

3. 均方差(MSE)

均方差用来衡量两个向量之间的差异,定义如下:

M S E = 1 n ∑ i n ( y i ′ − y i ) 2 MSE = \dfrac{1}{n} \sum_i ^n (y'_i-y_i)^2 MSE=n1in(yiyi)2

对于模型1,

sample 1: M S E 1 = ( 0.3 − 0 ) 2 + ( 0.3 − 0 ) 2 + ( 0.4 − 1 ) 2 = 0.54 MSE_1=(0.3-0)^2 + (0.3-0)^2 + (0.4-1)^2 = 0.54 MSE1=(0.30)2+(0.30)2+(0.41)2=0.54
sample 2: M S E 2 = ( 0.3 − 0 ) 2 + ( 0.4 − 1 ) 2 +

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值