阅读笔记(3) 单层网络:回归(下)

该笔记是DataWhale组队学习计划(共度AI新圣经:深度学习基础与概念)的Task03

以下内容为个人理解,可能存在不准确或疏漏之处,请以教材为主。

1. 为什么书上要提到决策理论?

在刚看到这小节内容的时候很懵,为什么突然蹦出来“决策理论”这一小节?这部分主要是为了回答一个关键问题:在已知条件概率分布 p ( t ∣ x ) p(t|x) p(tx) 的前提下,如何做出最优的预测决策?

书中将回归任务建模为 条件概率分布 p ( t ∣ x ) p(t|x) p(tx),这是一种概率建模视角,即:

  • 我们不再直接预测一个确定的输出值 t t t,而是预测一个关于 t t t 的概率分布(知道了分布,要进行预测就简单了)。

  • 这个分布我们通常假设为高斯分布:
    p ( t ∣ x ) = N ( t ∣ y ( x , w ) , σ 2 ) p(t | x) = \mathcal{N}(t \mid y(x, w), \sigma^2) p(tx)=N(ty(x,w),σ2)
    其中均值 y ( x , w ) y(x, w) y(x,w) 是由模型参数决定的预测函数,方差 σ 2 \sigma^2 σ2 则表示噪声水平(之前提到过的)。

虽然我们得到了这个分布,但实际应用中往往需要输出一个具体的数值(,这就引出了一个问题:

我们应该从分布 p ( t ∣ x ) p(t|x) p(tx) 中选择哪一个值作为最终的预测值?

这个问题本质上涉及到损失函数的设计和风险最小化原则,而决策理论就是在已知预测分布的前提下,回答:“我应该做出什么样的具体决策才能最小化预期损失?”

明白了这一点,再去看书上的内容就更容易理解了。这一小节的核心目的就是说明:在给定损失函数的前提下,如何从分布中选择一个最优的预测值。

2. 书中式(4.35)到式(4.36)的推导过程

个人推导,可能会有误,欢迎指出。(其实这部分推导并不是特别重要,重点在于理解式(4.37)的结论)

我们要解决的是这样一个问题:

在所有可能的函数 f ( x ) f(x) f(x) 中,哪个函数能使如下期望损失最小?

E [ L ] = ∬ ( f ( x ) − t ) 2 p ( x , t ) d x d t \mathbb{E}[L] = \iint \left( f(x) - t \right)^2 p(x, t) dx dt E[L]=(f(x)t)2p(x,t)dxdt

这是一个典型的泛函优化问题,即我们要找一个函数 f ( x ) f(x) f(x),使得某个“关于函数的函数”取极小值。这类问题需要用到变分法

推导步骤如下:

引入扰动函数:设 f ϵ ( x ) = f ( x ) + ϵ η ( x ) f_\epsilon(x) = f(x) + \epsilon \eta(x) fϵ(x)=f(x)+ϵη(x),其中:

  • η ( x ) \eta(x) η(x) 是任意光滑函数(扰动函数)
  • ϵ \epsilon ϵ 是一个小参数(标量)

将扰动函数代入期望损失中:
E [ L ϵ ] = ∬ ( f ( x ) + ϵ η ( x ) − t ) 2 p ( x , t ) d x d t \mathbb{E}[L_\epsilon] = \iint \left( f(x) + \epsilon \eta(x) - t \right)^2 p(x, t) dx dt E[Lϵ]=(f(x)+ϵη(x)t)2p(x,t)dxdt
ϵ \epsilon ϵ 求导并令其为0:
d d ϵ E [ L ϵ ] ∣ ϵ = 0 = ∬ 2 ( f ( x ) − t ) η ( x ) p ( x , t ) d x d t \frac{d}{d\epsilon} \mathbb{E}[L_\epsilon] \Big|_{\epsilon=0} = \iint 2(f(x) - t)\eta(x) p(x, t) dx dt dϵdE[Lϵ] ϵ=0=2(f(x)t)η(x)p(x,t)dxdt
交换积分顺序:
= ∫ η ( x ) [ ∫ 2 ( f ( x ) − t ) p ( x , t ) d t ] d x = \int \eta(x) \left[ \int 2(f(x) - t)p(x, t) dt \right] dx =η(x)[2(f(x)t)p(x,t)dt]dx
因为上式必须对任意扰动函数 η ( x ) \eta(x) η(x) 成立,所以括号内的部分必须恒等于0:
∫ 2 ( f ( x ) − t ) p ( x , t ) d t = 0 \int 2(f(x) - t)p(x, t) dt = 0 2(f(x)t)p(x,t)dt=0
这就是书中的式(4.36)。

3. 偏差-方差分解的理解

书中讲的内容涉及了很多额外的知识点,这里试着用自己的语言解释一下我对偏差-方差分解的理解。仅供参考

我们现在要分析的是一个回归模型的预测性能。假设:真实的目标函数为 h ( x ) h(x) h(x),即理想情况下我们希望模型学到的函数;模型通过训练数据集 D \mathcal{D} D 学到的函数为 f ( x ; D ) f(x; \mathcal{D}) f(x;D),它是依赖于具体数据集的随机变量;数据集是从某个分布中采样得到的,因此 f ( x ; D ) f(x; \mathcal{D}) f(x;D) 是一个随机函数;使用平方损失衡量误差:

L = ( f ( x ; D ) − t ) 2 L = (f(x; \mathcal{D}) - t)^2 L=(f(x;D)t)2
我们关心的是,在固定输入 x x x 下,模型预测值与真实值之间的平均误差,即:

E D , t ∣ x [ ( f ( x ; D ) − t ) 2 ] \mathbb{E}_{\mathcal{D}, t|x} \left[ (f(x; \mathcal{D}) - t)^2 \right] ED,tx[(f(x;D)t)2]

这是模型在该点 x x x 的“期望预测误差”。

我们可以把模型预测拆成两个部分:

f ( x ; D ) = E D [ f ( x ; D ) ] ⏟ 平均预测值 + ( f ( x ; D ) − E D [ f ( x ; D ) ] ) ⏟ 偏离平均的部分 f(x; \mathcal{D}) = \underbrace{\mathbb{E}_{\mathcal{D}}[f(x; \mathcal{D})]}_{\text{平均预测值}} + \underbrace{(f(x; \mathcal{D}) - \mathbb{E}_{\mathcal{D}}[f(x; \mathcal{D})])}_{\text{偏离平均的部分}} f(x;D)=平均预测值 ED[f(x;D)]+偏离平均的部分 (f(x;D)ED[f(x;D)])

于是有:
f ( x ; D ) − h ( x ) = ( f ( x ; D ) − E D [ f ( x ; D ) ] ) + ( E D [ f ( x ; D ) ] − h ( x ) ) f(x; \mathcal{D}) - h(x) = \left( f(x; \mathcal{D}) - \mathbb{E}_{\mathcal{D}}[f(x; \mathcal{D})] \right) + \left( \mathbb{E}_{\mathcal{D}}[f(x; \mathcal{D})] - h(x) \right) f(x;D)h(x)=(f(x;D)ED[f(x;D)])+(ED[f(x;D)]h(x))

两边平方得:
( f ( x ; D ) − h ( x ) ) 2 = ( f ( x ; D ) − E D [ f ( x ; D ) ] ) 2 + ( E D [ f ( x ; D ) ] − h ( x ) ) 2 + 2 ⋅ ( f ( x ; D ) − E D [ f ( x ; D ) ] ) ⋅ ( E D [ f ( x ; D ) ] − h ( x ) ) + (f(x; \mathcal{D}) - h(x))^2 = \left( f(x; \mathcal{D}) - \mathbb{E}_{\mathcal{D}}[f(x; \mathcal{D})] \right)^2 + \left( \mathbb{E}_{\mathcal{D}}[f(x; \mathcal{D})] - h(x) \right)^2 + 2 \cdot \left( f(x; \mathcal{D}) - \mathbb{E}_{\mathcal{D}}[f(x; \mathcal{D})] \right) \cdot \left( \mathbb{E}_{\mathcal{D}}[f(x; \mathcal{D})] - h(x) \right)+ (f(x;D)h(x))2=(f(x;D)ED[f(x;D)])2+(ED[f(x;D)]h(x))2+2(f(x;D)ED[f(x;D)])(ED[f(x;D)]h(x))+

对所有可能的训练集 D \mathcal{D} D 取期望后,最后一项消失(因为期望为0),最终得到:

E D [ ( f ( x ; D ) − h ( x ) ) 2 ] = ( E D [ f ( x ; D ) ] − h ( x ) ) 2 ⏟ 偏差项 (Bias) 2 + E D [ ( f ( x ; D ) − E D [ f ( x ; D ) ] ) 2 ] ⏟ 方差项 (Variance) \mathbb{E}_{\mathcal{D}} \left[ (f(x; \mathcal{D}) - h(x))^2 \right] = \underbrace{(\mathbb{E}_{\mathcal{D}}[f(x; \mathcal{D})] - h(x))^2}_{\text{偏差项 (Bias)}^2} + \underbrace{\mathbb{E}_{\mathcal{D}} \left[ (f(x; \mathcal{D}) - \mathbb{E}_{\mathcal{D}}[f(x; \mathcal{D})])^2 \right]}_{\text{方差项 (Variance)}} ED[(f(x;D)h(x))2]=偏差项 (Bias)2 (ED[f(x;D)]h(x))2+方差项 (Variance) ED[(f(x;D)ED[f(x;D)])2]

4. 习题(4.8 - 4.12)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/86827.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/86827.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/86827.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mac OS系统每次开机启动后,提示:输入密码来解锁磁盘“Data”,去除提示的解决方法

问题描述: Mac mini外接了一个磁盘(EX_Mac)为默认使用的系统盘,内置的硬盘(Macintosh HD)为Mac mini自带的系统盘 外置硬盘系统每次开机都会挂载内置磁盘,同时会提示需要输入密码来解锁磁盘“…

CSS Flex 布局中flex-shrink: 0使用

flex-shrink: 0 是 CSS Flexbox 布局中的一个关键属性,用于禁止弹性项目(flex item)在容器空间不足时被压缩。以下是详细解释和示例: 核心作用 当容器的可用空间小于所有弹性项目的总宽度(或高度)时&#…

WHERE 子句中使用子查询:深度解析与最佳实践

🔍 WHERE 子句中使用子查询:深度解析与最佳实践 在 WHERE 子句中使用子查询是 SQL 的高阶技巧,可实现动态条件过滤。以下是全面指南,涵盖语法、类型、陷阱及优化策略: 📜 一、基础语法结构 SELECT 列 FR…

从0到1:不文明现象随手拍小程序开发日记(一)

前期调研 不文明现象随手拍小程序:在城市的快速发展进程中,不文明现象时有发生,为了有效解决这一问题,提升城市文明程度, 市民若发现不文明行为,如乱扔垃圾、随地吐痰、破坏公共设施、违规停车等&#xff…

STM32F103之SPI软件读写W25Q64

一、W25Q64简介 1.1 简介 W25Q64(Nor flash)、 24位地址,64Mbit/8MByte、是一种低成本、小型化、使用简单的非易失性存储器,常用于数据存储、字库存储、固件程序存储等场景 时钟频率:最大80MHz(STM32F103系统时钟为72MHz…

vue3+element-plus 组件功能实现 上传功能

一、整体功能概述 这段代码实现了一个基于 Vue 3 和 Element Plus 组件库的文件导入及预览功能模块。主要包含了一个主导入对话框(用于上传文件、展示文件相关信息、进行导入操作等)以及一个用于预览文件内容的预览对话框。支持导入特定格式(…

OpenCV中创建Mat对象

第1章 创建Mat对象 1.1. 创建空的 Mat 对象 cv::Mat mat; 1.2. 创建灰度图像 // 创建一个 3 行 4 列、8位无符号单通道矩阵(相当于灰度图) cv::Mat mat(3, 4, CV_8UC1); 1.3. 创建彩色图像 // 创建三通道矩阵(相当于彩色图像&#xff0…

10、做中学 | 五年级下期 Golang循环控制

一、一个小需求 我想要打印10遍hello world,你想怎么编写呢? // 需求:打印10遍"hello world"fmt.Println("hello world")fmt.Println("hello world")fmt.Println("hello world")fmt.Println("hello world…

机器学习算法-K近邻算法-KNN

1. K近邻算法是什么? 定义: K近邻是一种基于实例的懒惰学习(Lazy Learning)算法,用于分类和回归任务。 核心思想:“物以类聚”——通过计算样本间的距离,找到目标点的最近K个邻居,…

基于vue框架的法律知识咨询普及系统gwuv7(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。

系统程序文件列表 项目功能:用户,知识类型,律师,律师推荐,法律知识,新闻类型,法律新闻,咨询律师 开题报告内容 基于Vue框架的法律知识咨询普及系统开题报告 一、研究背景与意义 随着法治社会建设的深入推进,公众对法律知识的需求呈现爆发式增长。然而…

Netty 揭秘CompositeByteBuf:零拷贝优化核心技术

CompositeByteBuf 类 核心设计目标​​ ​​虚拟缓冲区​​:将多个 ByteBuf 合并为单一逻辑视图,减少数据复制。​​零拷贝优化​​:通过组合而非复制提升性能。​​引用计数管理​​:统一管理底层 ByteBuf 的生命周期。 核心成…

用css实现文字字体颜色渐变

用css实现文字字体颜色渐变 background-clip 是CSS3中新增的属性,可以用于指定背景图片或颜色的绘制范围。利用 background-clip 属性实现文字颜色从左到右、从绿到白的渐变效果: 代码如下: .gradient-color {background-image: linear-gr…

SpringBatch处理数据性能优化

SpringBatch的Step默认使用同步方式批量处理数据,也可以通过配置将读数改为同步,处理和写入改为异步方式。 1、同步处理Step SpringBatch的Step一般由ItemReader、ItemProcessor和ItemWriter组成,其中ItemProcessor是可选的。他的设计思路的…

【机器学习深度学习】前馈神经网络(单隐藏层)

目录 一、什么是前馈神经网络? 二、数学表达式是什么? 三、为什么需要“非线性函数”? 四、NumPy 实现前馈神经网络代码示例 五、 运行结果 六、代码解析 6.1 初始化部分 6.2 前向传播 6.3 计算损失(Loss) 6…

设计模式系列(08):创建型模式 - 原型模式

系列导读:完成创建型模式的学习,我们来看最后一个创建型模式——原型模式。它通过复制已有对象来创建新对象,是一种独特的创建方式。 解决什么问题:通过复制现有对象来创建新对象,而不是重新实例化。适用于对象创建成本…

区块链到底是什么?

区块链本质上是一种去中心化的分布式账本技术,具有以下核心特点: - 去中心化:没有中央管理机构,数据由网络中的多个节点共同维护,比如比特币网络中各个节点都保存着完整账本。 - 分布式存储:数据不是存在一…

系统架构设计师论文分享-论ATAM的使用

我的软考历程 摘要 2023年2月,我司通过了研发纱线MES系统的立项,该系统为国内纱线工厂提供SAAS服务,旨在提高纱线工厂的数字化和智能化水平。我在本项目中担任系统架构设计师,负责整个项目的架构设计工作。本文结合我在该项目中…

vue-28(服务器端渲染(SSR)简介及其优势)

服务器端渲染(SSR)简介及其优势 服务器端渲染(SSR)是现代网络应用的关键技术,特别是使用 Vue.js 等框架构建的应用。它通过在服务器上渲染初始应用状态来弥补传统单页应用(SPA)的局限性&#x…

工业电子 | 什么是SerDes,为何工业和汽车应用需要它?

重点内容速览: 1. 什么是SerDes? 2. ADI:私有协议的GMSL将向公有协议转变 3. TI:工业和汽车有两套SerDes解决方案 4. Microchip:推出通用协议SerDes芯片 5. 罗姆:主要针对汽车领域 6. 国产SerDes芯…

大事件项目记录4-用户接口开发-更新用户基本信息

4)更新用户基本信息。 UserController.java: UserMapper.java: Update("update user set nickname #{nickname},email #{email},update_time #{updateTime} where id #{id}")void update(User user); UserServiceInterface…