机器学习中常见的损失函数和代价函数

本文介绍了机器学习中的损失函数,用于衡量模型预测值与真实值的不一致程度,根据变量类型分为离散型和连续型。对于分类问题,包括0-1损失、指数损失和对数损失等;对于回归问题,涉及L2、L1和Huber损失。代价函数则是所有样本损失的总和,其大小直接影响模型的鲁棒性。

损失函数 (loss function) 是用来估量在一个样本点上模型的预测值 h(x) 与真实值 y 的不一致程度。它是一个非负实值函数,通常使用 L(y, h(x)) 来表示。

 

损失函数可由 y 的类型来分类,而第三章提升树的梯度提升法在高层面上讲是相同的,不同的是用的不一样损失函数。

 

如果 y 是离散型变量 (对应着提升分类树 y 和 sign(h) 取 -1 和 1)

 

  • 0-1 损失函数 (misclassification)

  • 指数损失函数 (adaBoost)

  • 对数损失函数 (logitBoost)

  • 支持向量损失函数 (support vector)

如果 y 是连续性变量 (对应着提升回归树 y 和 h 取任意实数)

 

  • L损失函数 (regression boost)

  • L损失函数

  • Huber 损失函数

下表列出了每个损失函数的具体表达式:


当 y 是离散性变量时对应的问题都是分类问题

 

  • 真实值 y 和预测值 sign(h) 都规定只能取正负 1

  • 损失函数里面都有 y∙h 这一项而且函数是它的减函数。在这里我们用 1 表示正类-1 表示反类,那么 y∙h > 0 代表预测结果和真实结果一致,因而损失值低些;反之 y∙h < 0 代表预测结果和真实结果不一致,因而损失值高些

 

当 y 是连续性变量时对应的问题都是回归问题

 

  • 真实值 y 和预测值 h(x) 可以取任意实数

  • 损失函数里面都有 |y – h(x)| 这一项而且函数是它的增函数。当真实值 y 和预测值 h(x) 之间差别越大(小),损失值越高(低)

 

代价函数 (cost function)就是所有样本点上的损失函数的加总。代价函数越小,模型的鲁棒性 (robustness) 就越好。

文章参考地址:https://mp.weixin.qq.com/s/mf4QIw6pILRoin50O4t1pg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值