有关损失函数推导

损失函数推导

线性回归

首先损失函数是为了衡量模型预测的数据与真实数据之间的区别,那么问题来了为什么是平方损失,而不是绝对值损失,四次方损失。

一个很浅显的理解:二次方简单,导数是线性的且连续,而且离预测值远的值会被放大。

推导

假设模型已被训练到最佳,这时候与真实值必然会存在一些误差。比如房子供应商的心情突然好了,进行促销。这些都是不可知的,但所有的误差叠加到一起,
可以将其看做成一个高斯分布。也就是说所有点的误差ϵN(0,σ2)
误差为x的概率P(ϵ=x)=12πσex22σ2
所以每个XXi因为误差取得yyi的概率P(yyi|XXi)=12πσe(XXiθθyyi)22σ2
以上都是对一训练好的模型来说的。

而对于θθ未确定来说,XXi因为误差取得yyi的概率P(yyi|XXi;θθ)=12πσe(XXiθθyyi)22σ2
这时yi都发生的概率应为P(yy|XX;θθ),将其设为L(θθ)

L(θθ)=P(yy|XX;θθ)=i=1nP(yyi|XXi;θθ)=i=1n12πσe(XXiθθyyi)22σ2

如上式,所表示的是yy发生的概率,只需要求能使得这个式子取得最大值的θθ即可,观此式,为积式,而且还有许多我们可以通过log函数将其转化为和式并去掉指数函数。设l(θθ)=log(L(θθ))

l(θθ)=log(L(θθ))=log(i=1n12πσe(XXiθθyyi)22σ2)=i=1n(log(12πσ)+log(e(XXiθθyyi)22σ2))=nlog(12πσ)+i=1n(XXiθθyyi)22σ2=nlog(12πσ)+i=1n(XXiθθyyi)22σ2

由此得到了函数i=1n(yiXiθ)2,即(XXθθyy)T(XXθθyy),且只需要求函数的最小值,就是求L(θθ)的最大值。

即:
J(θθ)=(XXθθyy)T(XXθθyy)

这时求其梯度得

J(θθ)θθ=((XXθθyy)T(XXθθyy))θθ=xx=XXθθyy(xxTxxxx)T(XXθθyy)θθ=(2xx)TXX=2(XXθθyy)TXX

逻辑回归

h(XXi)=11+eXXiθθ

求逻辑回归线性回归同理:

l(θθ)=log(L(θθ))=log(P(yy|XX;θθ))=log(i=1nP(yyi|XXi;θθ))=log(i=1nhθθ(XX)yyi(1hθθ(XX))1yyi)=i=1n(yyilog(hθθ(XX))+(1yyi)log(1hθθ(XX)))

J(θθ)=l(θθ)

对其求梯度得

J(θθ)θθ=i=1n(yyilog(hθθ(XX))+(1yyi)log(1hθθ(XX)))θθ=i=1nyyilog(h)+(1yyi)log(1h)hh(θθ)θθ=i=1n(yyih1yyi1h)h(1h)XXi=i=1n(yyi(1h)h(1yyi))XXi=i=1n(hθθ(XXi)yyi)XXi=([hθθ(XXi)]yy)TXX

为什么是sigmoid

在线性回归的时候我们假设了误差ϵ,将其视为一个高斯分布,得到每个yyi的概率,
为什么到了逻辑回归就不用假设,而是hθθ直接得到的就是概率呢?是通过推导得出来的还是只是因为此函数比较优异?

链接

posted @   孑然520  阅读(102)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示