https://biggerhao.github.io/blog/2018/03/PRML-1-90/
原文回顾
在上文中,我们已经推导出了(y(x) 的最优解是给定 x 的 t 的条件期望。 y(x)=∫tp(x,t)dtp(x)=∫tp(t|x)dt=Et[t|x](1.89) 而期望损失的定义如下 E[L]=∫∫{y(x)−t}2p(x,t)dxdt(1.87)\)
公式推导
对式(1.87)中的平方项进行如下的替换{y(x)−t}2={y(x)−E[t|x]+E[t|x]−t}2={y(x)−E[t|x]}2+2{y(x)−E[t|x]}{E[t|x]−t}+{E[t|x]−t}2
从而可得
E[L]=∫∫{y(x)−E[t|x]}2p(x,t)dxdt+2∫∫{y(x)−E[t|x]}{E[t|x]−t}p(x,t)dxdt+∫∫{E[t|x]−t}2p(x,t)dxdt
其中
∫∫{y(x)−E[t|x]}{E[t|x]−t}p(x,t)dxdt=∫∫{y(x)−E[t|x]}E[t|x]p(x,t)dtdx−∫∫{y(x)−E[t|x]}tp(x,t)dtdx=∫{y(x)−E[t|x]}E[t|x]p(x)dx−∫∫{y(x)−E[t|x]}tp(t|x)p(x)dtdx=∫{y(x)−E[t|x]}E[t|x]p(x)dx−∫{y(x)−E[t|x]}E[t|x]p(x)dx=0
注意当(x)给定时,(E[t|x])的值是确定的,因此在对(t)进行积分时,(E[t|x])相当于常数.
从而有
E[L]=∫∫{y(x)−E[t|x]}2p(x,t)dxdt+∫∫{E[t|x]−t}2p(x,t)dxdt=∫∫{y(x)−E[t|x]}2p(x,t)dtdx+∫∫{E[t|x]−t}2p(t|x)p(x)dtdx =∫{y(x)−E[t|x]}2p(x)dx+∫var[t|x]p(x)dx
其中(以下省略了(E)右下角的角标(t)
var[t|x]=E[(t−E[t|x])2|x]=∫(t−E[t|x])2p(t|x)dt
注意原书中式(1.90)等号右侧的第二项是错误的,在对(x)的被积函数中不可能出现未知的(t),这一错误在官方的勘误表中已经作出了修正。
公式3.40推导类似
考虑式(3.37)的第一项的被积函数,对于一个特定的数据集D,它的形式为:
{y(x;D)−h(x)}2(3.38)
展开有
{y(x;D)−ED[y(x;D)]+ED[y(x;D)]−h(x)}2={y(x;D)−ED[y(x;D)]}2+{ED[y(x;D)]−h(x)}2+2{y(x;D)−ED[y(x;D)]}{ED[y(x;D)]−h(x)}(3.39)
再在D上求期望
其中3.39中的
第一项求期望后
ED[{y(x;D)−ED[y(x;D)]}2],也就是下面的方差项
第二项求期望后
ED[{ED[y(x;D)]−h(x)}2],因为h(x)和D无关,所以这一项不动,仍然={ED[y(x;D)]−h(x)}2
第三项求期望后
ED[2{y(x;D)−ED[y(x;D)]}{ED[y(x;D)]−h(x)}]=0
其中ED[2{y(x;D)−ED[y(x;D)]}]=2ED[y(x;D)−ED[y(x;D)]=0
ED[{y(x;D)−h(x)}2]={ED[y(x;D)]−h(x)}2(偏置 )2+ED[{y(x;D)−ED[y(x;D)]}2]方差 (3.40)
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· spring官宣接入deepseek,真的太香了~