机器学习中的损失函数

损失函数是机器学习中用来衡量模型预测值 F(x) 和真实值 Y 之间的不一致程度的,通常越小越好。损失函数通常由经验风险和正则化项组成:

J(θ)=1Ni=1NL(yi,f(xi;θ))+λΦ(θ)

第一项是经验风险,后面是正则化项,正则化项通常有L1正则化和L2正则化,这里不考虑正则化项,只考虑经验风险项,损失函数通常由以下几种:

平方损失函数

平方损失函数常用在最小二乘法中。它的思想是使得各个训练点到最优拟合线的距离最小(平方和最小)。平方损失函数定义如下:

L(θ)=1NiN(yif(xi;θ))2

对数损失函数

对于逻辑回归

hθ(x)=g(θTx)=11+eθTx

逻辑回归,标签 y=0 y=1 ,那么代价函数

cost(hθ(x),y)={log(hθ(x))log(1hθ(x))ify=1ify=0

综合起来,可以得到

L(hθ(x),y)=1Ni=1N[y(i)loghθ(x(i))+(1y(i))log(1hθ(x(i)))

这只是二分类的情况,如果是多分类,则用到Softmax,,假设有k类,对应每个类别的概率分别为:

hθ(x)=1kj=1eθTixeθT1xeθT2xeθTkx

那么损失函数为

L(hθ(x),y)=1Ni=1N[j=1k1{y(j)=j}log(y(j)=j|x;θ)]

Hinge损失函数

SVM分类器中,常常使用hinge loss函数,用来最大化“分类间隔”。加上正确类别为 y ,分类间隔最小为m,那么

Loss(y)=max(0,m+maxty(WtXWyX))

其中 WyX 为正确类别的得分,即正确类别的得分,最少要比错误类别大 m <script type="math/tex" id="MathJax-Element-16">m</script>,否则Loss就不为零。

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值