统计学习方法与实战——统计学习方法概论

news/2024/9/17 3:30:28/ 标签: pytorch, 深度学习, python

统计学习方法概论

文章目录

  • 统计学习方法概论
    • 前言
      • 章节目录
      • 导读
    • 实现统计学习方法的步骤
    • 统计学习方法三要素
      • 模型
        • 模型是什么?
      • 策略
        • 损失函数与风险函数
        • 常用损失函数
        • ERM与SRM
      • 算法
    • 模型评估与模型选择
      • 过拟合与模型选择
    • 正则化与交叉验证
    • 泛化能力
    • 生成模型与判别模型
      • 生成方法
      • 判别方法
    • 分类问题、标注问题、回归问题
      • 1. 分类问题
      • 2. 标注问题(序列标注问题)
      • 3. 回归问题
      • 总结

前言

章节目录

  1. 统计学习
  2. 监督学习
    1. 基本概念
    2. 问题的形式化
  3. 统计学习三要素
    1. 模型
    2. 策略
    3. 算法
  4. 模型评估与模型选择
    1. 训练误差与测试误差
    2. 过拟合与模型选择
  5. 正则化与交叉验证
    1. 正则化
    2. 交叉验证
  6. 泛化能力
    1. 泛化误差
    2. 泛化误差上界
  7. 生成模型与判别模型
  8. 分类问题
  9. 标注问题
  10. 回归问题

导读

  1. 统计学习三要素对理解统计学习方法起到提纲挈领的作用
  2. 主要讨论监督学习
  3. 分类问题、标注问题和回归问题都是监督学习的重要问题
  4. 本书中介绍的统计学习方法包括…。这些方法是主要的分类、标注以及回归方法。他们又可归类为生成方法与判别方法。
  • 输入和输出对称为样本

  • 注意在介绍输入空间,输出空间等概念的时候,以及这一章的很多部分都会有个帽子,监督学习中监督学习可以概括如下:从给定有限的训练数据出发,假设数据是独立同分布的,而且假设模型属于某个假设空间,应用某一评价准则,从假设空间中选取一个最优的模型,使它对已给的训练数据以及未知测试数据在给定评价标准意义下有最准确的预测。,理解下这里的假设。

实现统计学习方法的步骤

统计学习方法三要素:模型,策略,算法

  1. 得到一个有限的训练数据集合
  2. 确定包含所有可能的模型的假设空间,即学习模型的集合
  3. 确定模型选择的准则,即学习的策略
  4. 实现求解最优模型的算法,即学习的算法
  5. 通过学习方法选择最优的模型
  6. 利用学习的最优模型对新数据进行预测或分析

统计学习方法三要素

模型

模型是什么?

在监督学习过程中,模型就是所要学习的条件概率分布或者决策函数

策略

损失函数与风险函数

损失函数度量模型一次预测的好坏,风险函数度量平均意义下模型预测的好坏。
损失函数:衡量模型的推理结果与我们实际标签的差距

  1. 损失函数(loss function)或代价函数(cost function)
    损失函数定义为给定输入 X X X预测值 f ( X ) f(X) f(X)真实值 Y Y Y之间的非负实值函数,记作 L ( Y , f ( X ) ) L(Y,f(X)) L(Y,f(X))

  2. 风险函数(risk function)或期望损失(expected loss)
    这个和模型的泛化误差的形式是一样的
    R e x p ( f ) = E p [ L ( Y , f ( X ) ) ] = ∫ X × Y L ( y , f ( x ) ) P ( x , y ) d x d y R_{exp}(f)=E_p[L(Y, f(X))]=\int_{\mathcal X\times\mathcal Y}L(y,f(x))P(x,y)\, {\rm d}x{\rm d}y Rexp(f)=Ep[L(Y,f(X))]=X×YL(y,f(x))P(x,y)dxdy
    模型 f ( X ) f(X) f(X)关于联合分布 P ( X , Y ) P(X,Y) P(X,Y)平均意义下的损失(期望损失),但是因为 P ( X , Y ) P(X,Y) P(X,Y)是未知的,所以前面的用词是期望,以及平均意义下的

    这个表示其实就是损失的均值,反映了对整个数据的预测效果的好坏,P(x,y)转换成 ν ( X = x , Y = y ) N \frac {\nu(X=x, Y=y)}{N} Nν(X=x,Y=y)更容易直观理解, 但是真实的数据N是无穷的。

  3. 经验风险(empirical risk)或经验损失(empirical loss)
    R e m p ( f ) = 1 N ∑ i = 1 N L ( y i , f ( x i ) ) R_{emp}(f)=\frac{1}{N}\sum^{N}_{i=1}L(y_i,f(x_i)) Remp(f)=N1i=1NL(yi,f(xi))
    模型 f f f关于训练样本集的平均mean损失
    根据大数定律,当样本容量N趋于无穷大时,经验风险趋于期望风险

  4. 结构风险(structural risk)
    R s r m ( f ) = 1 N ∑ i = 1 N L ( y i , f ( x i ) ) + λ J ( f ) R_{srm}(f)=\frac{1}{N}\sum_{i=1}^{N}L(y_i,f(x_i))+\lambda J(f) Rsrm(f)=N1i=1NL(yi,f(xi))+λJ(f)
    J ( f ) J(f) J(f)为模型复杂度, λ ⩾ 0 \lambda \geqslant 0 λ0是系数,用以权衡经验风险和模型复杂度。

常用损失函数

损失函数数值越小,模型就越好

L ( Y , f ( X ) ) L(Y,f(X)) L(Y,f(X))

  1. 0-1损失
    L = { 1 , Y ≠ f ( X ) 0 , Y = f ( X ) L=\begin{cases}1, Y \neq f(X) \\0, Y=f(X) \end{cases} L={1,Y=f(X)0,Y=f(X)
  2. 平方损失,张量之差的平方
    L = ( Y − f ( X ) ) 2 L=(Y-f(X))^2 L=(Yf(X))2
  3. 绝对损失,两个值直接相减
    L = ∣ Y − f ( X ) ∣ L=|Y-f(X)| L=Yf(X)

L ( Y , P ( Y ∣ X ) ) L(Y,P(Y|X)) L(Y,P(YX))

  1. 对数损失
    这里 P ( Y ∣ X ) ⩽ 1 P(Y|X)\leqslant 1 P(YX)1,对应的对数是负值,所以对数损失中包含一个负号,为什么不是绝对值?因为肯定是负的。
    L = − log ⁡ P ( Y ∣ X ) L=-\log P(Y|X) L=logP(YX)
ERM与SRM

经验风险最小化(ERM)与结构风险最小化(SRM)

  1. 极大似然估计是经验风险最小化的一个例子
    当模型是条件概率分布,损失函数是对数损失函数时,经验风险最小化等价于极大似然估计
  2. 贝叶斯估计中的最大后验概率估计是结构风险最小化的一个例子
    当模型是条件概率分布,损失函数是对数损失函数,模型复杂度由模型的先验概率表示时,结构风险最小化等价于最大后验概率估计

算法

模型评估与模型选择

训练误差和测试误差是模型关于数据集的平均损失。

统计学习方法具体采用的损失函数未必是评估时使用的损失函数`,这句理解下。参考下在数据科学比赛中给出的评分标准,与实际学习采用的损失函数之间的关系。

  • 训练时使用的损失函数与测试时的损失函数不一定一样

过拟合与模型选择

这部分讲到了最小二乘法,举例:

这个问题中训练数据 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯ , ( x N , y N ) } T=\{(x_1, y_1),(x_2,y_2),\cdots,(x_N,y_N)\} T={(x1,y1),(x2,y2),,(xN,yN)}

模型

f M ( x , w ) = w 0 + w 1 x + w 2 x 2 + ⋯ + w M x M = ∑ j = 0 M w j x j f_M(x,w)=w_0+w_1x+w_2x^2+\cdots+w_Mx^M=\sum\limits_{j=0}^Mw_jx^j fM(x,w)=w0+w1x+w2x2++wMxM=j=0Mwjxj

经验风险最小化策略下

L ( w ) = 1 2 ∑ i = 1 N ( f ( x i , w ) − y i ) 2 L(w)=\frac{1}{2}\sum\limits_{i=1}^N(f(x_i,w)-y_i)^2 L(w)=21i=1N(f(xi,w)yi)2

将模型和训练数据带入到上式得到

L ( w ) = 1 2 ∑ i = 1 N ( ∑ j = 0 M w j x i j − y i ) 2 = 1 2 ∑ i = 1 N ( w ⋅ x i − y i ) 2 L(w)=\frac{1}{2}\sum\limits_{i=1}^N\left(\sum\limits_{j=0}^Mw_jx_i^j-y_i\right)^2=\frac{1}{2}\sum\limits_{i=1}^N(w\cdot x_i-y_i)^2 L(w)=21i=1N(j=0Mwjxijyi)2=21i=1N(wxiyi)2

这个问题要求 w = ( w 0 ∗ , w 1 ∗ , ⋯ , w M ∗ ) w=(w_0^*,w_1^*,\cdots,w_M^*) w=(w0,w1,,wM)

w w w求偏导令其为零,得到一系列方程,求解可以用梯度下降或者矩阵分解。

求解线性方程组 A x = b Ax=b Ax=b,可以表示为 x = A / b x=A/b x=A/b,问题展开之后可以涉及到矩阵分解

TODO: 这个例子展开一下

正则化与交叉验证

  1. 正则化
    模型选择的典型方法是正则化
  2. 交叉验证
    另一种常用的模型选择方法是交叉验证
    • 简单
    • S折(K折, K-Fold)[^1]
    • 留一法

泛化能力

  • 现实中采用最多的方法是通过测试误差来评价学习方法的泛化能力

  • 统计学习理论试图从理论上对学习方法的泛化能力进行分析

  • 学习方法的泛化能力往往是通过研究泛化误差的概率上界进行的, 简称为泛化误差上界(generalization error bound)

注意泛化误差的定义,书中有说事实上,泛化误差就是所学习到的模型的期望风险

生成模型与判别模型

监督学习方法可分为生成方法(generative approach)与判别方法(discriminative approach)

生成方法

generative approach

  • 可以还原出联合概率分布 P ( X , Y ) P(X,Y) P(X,Y)
  • 收敛速度快, 当样本容量增加时, 学到的模型可以更快收敛到真实模型
  • 当存在隐变量时仍可以用

判别方法

discriminative approach

  • 直接学习条件概率 P ( Y ∣ X ) P(Y|X) P(YX)或者决策函数 f ( X ) f(X) f(X)
  • 直接面对预测, 往往学习准确率更高
  • 可以对数据进行各种程度的抽象, 定义特征并使用特征, 可以简化学习问题

分类问题、标注问题、回归问题

Classification, Tagging, Regression

  • 分类系统和标注系统的差异外,没看到其他差异,但实际上这两幅图中对应的输入数据有差异,序列数据的 x i = ( x i ( 1 ) , x i ( 2 ) , … , x i ( n ) ) T x_i = (x_i^{(1)},x_i^{(2)},\dots,x_i^{(n)})^T xi=(xi(1),xi(2),,xi(n))T对应了
  • 回归问题的产出为 Y = f ^ ( X ) Y=\hat f(X) Y=f^(X)

分类和回归其实都是相对而说,分类模型其实也可以用于回归,只是用于任务的不同
在机器学习和深度学习中,问题通常可以分为几种类型,包括分类问题、标注问题和回归问题。以下是对这三种问题的详细解释:

1. 分类问题

定义:分类问题是指将输入数据分配到预定义的类别或标签中。目标是根据输入特征预测离散的输出类别。

特点

  • 输出是离散的,通常是有限个类别。
  • 常见的评估指标包括准确率、精确率、召回率和F1-score等。

示例

  • 二分类问题:例如,判断一封电子邮件是否为垃圾邮件(是/否)。
  • 多分类问题:例如,识别图像中的物体(如猫、狗、鸟等)。

应用

  • 图像分类(如手写数字识别、物体检测)
  • 文本分类(如情感分析、主题分类)
  • 医疗诊断(如疾病分类)

2. 标注问题(序列标注问题)

定义:标注问题是指对输入序列中的每个元素进行标注,通常用于处理序列数据。目标是为每个输入元素分配一个标签。

特点

  • 输入是一个序列,输出是与输入序列长度相同的标签序列。
  • 常见的评估指标包括准确率、F1-score等。

示例

  • 命名实体识别(NER):在文本中识别出人名、地名、组织名等。
  • 词性标注:为句子中的每个单词分配词性标签(如名词、动词、形容词等)。
  • 语音识别:将语音信号转换为文本,并为每个音素或词分配标签。

应用

  • 自然语言处理(如文本分析、信息提取)
  • 生物信息学(如基因序列标注)
  • 计算机视觉(如图像分割)

3. 回归问题

定义:回归问题是指预测一个连续的数值输出。目标是根据输入特征预测一个实数值。

特点

  • 输出是连续的,可以是任意实数。
  • 常见的评估指标包括均方误差(MSE)、均绝对误差(MAE)和R²(决定系数)等。

示例

  • 预测房价:根据房屋的特征(如面积、位置、卧室数量等)预测其市场价格。
  • 股票价格预测:根据历史数据预测未来的股票价格。
  • 温度预测:根据气象数据预测未来的温度。

应用

  • 财务预测(如销售额、利润预测)
  • 经济学(如GDP预测)
  • 工程(如材料强度预测)

总结

  • 分类问题:将输入分配到离散类别中,输出是类别标签。
  • 标注问题:对输入序列中的每个元素进行标注,输出是与输入序列长度相同的标签序列。
  • 回归问题:预测连续的数值输出,输出是实数值。

这三种问题在机器学习中有着广泛的应用,选择合适的模型和算法来解决这些问题是机器学习实践中的关键。


http://www.ppmy.cn/news/1522127.html

相关文章

Spark的Web界面

http://localhost:4040/jobs/ 在顶部导航栏上,可以点击以下选项来查看不同类型的Spark应用信息: Jobs - 此视图将列出所有已提交的作业,并提供每个作业的详细信息,如作业ID、名称、开始时间、结束时间等。Stages - 此视图可以查…

线性因子模型 - 引言篇

序言 在当今数据爆炸的时代,如何从海量、高维的数据中提炼出有价值的信息,已成为机器学习乃至人工智能领域的重要课题。深度学习,作为这一领域的璀璨明珠,凭借其强大的特征学习与表示能力,在图像识别、自然语言处理、…

探索EasyCVR与AI技术深度融合:视频汇聚平台的新增长点

随着5G、AI、边缘计算、物联网(IoT)、云计算等技术的快速发展,万物互联已经从概念逐渐转变为现实,AIoT(物联网人工智能)的新时代正在加速到来。在这一背景下,视频技术作为信息传输和交互的重要手…

深入RabbitMQ世界:探索3种队列、4种交换机、7大工作模式及常见概念

文章目录 文章导图RabbitMQ架构及相关概念四大核心概念名词解读 七大工作模式及四大交换机类型0、前置了解-默认交换机DirectExchange1、简单模式(Simple Queue)-默认DirectExchange2、 工作队列模式(Work Queues)-默认DirectExchange3、发布/订阅模式(Publish/Subscribe)-Fano…

【Java毕业设计】基于SpringBoot+Vue+uniapp的农产品商城系统

文章目录 一、系统架构1、后端:SpringBoot、Mybatis2、前端:Vue、ElementUI4、小程序:uniapp3、数据库:MySQL 二、系统功能三、系统展示1、小程序2、后台管理系统 一、系统架构 1、后端:SpringBoot、Mybatis 2、前端…

水晶连连看 - 无限版软件操作说明书

水晶连连看 – 无限版游戏软件使用说明书 文章目录 水晶连连看 – 无限版游戏软件使用说明书1 引言1.1 编写目的1.2 项目名称1.3 项目背景1.4 项目开发环境 2 概述2.1 目标2.2 功能2.3 性能 3 运行环境3.1 硬件3.2 软件 4 使用说明4.1 游戏开始界面4.2 游戏设定4.2.1 游戏帮助4…

数据库MySQL基础

目录 一、数据库的介绍 1.数据库概述 (1)数据的存储方式 (2)数据库 2.常见数据库排行榜 二、数据库的安装与卸载 1.数据库的安装 2.数据库的卸载 三、数据库服务的启动与登录 1.Windows 服务方式启动 (1&…

如何解决PCDN技术与边缘计算技术融合后的安全和隐私问题(壹)?

PCDN(Peer-assisted Content Delivery Network)技术与边缘计算技术的融合可以带来显著的性能提升和效率优化,但同时也带来了新的安全和隐私挑战。以下是一些解决这些安全和隐私问题的操作策略: 1. 强化数据加密 传输加密&#x…

U盘怎么加密保护?U盘加密方法介绍

在数字化时代,U盘作为一种便携式存储设备,广泛应用于我们的日常生活和工作中。然而,U盘中存储的数据安全性问题日益凸显。为了保护个人隐私和重要数据,学会U盘加密方法显得尤为重要。本文将为您详细介绍几种U盘加密方法&#xff0…

linux————根据端口查找运行目录的三种方法

先查询端口找到进程 netstat -anlpt | grep 16443 | grep -v grep tcp 0 0 0.0.0.0:16443 0.0.0.0:* LISTEN 3710563/nginx: mast tcp 0 0 192.168.110.253:16443 192.168.110.22:64430 ESTABLISHED 3710580/n…

Spark MLlib模型训练—回归算法 Survival Regression

Spark MLlib模型训练—回归算法 Survival Regression 生存回归(Survival Regression)是一种用于分析时间到事件数据的回归方法,广泛应用于医学、生物统计学、工程可靠性分析等领域。它的核心是预测一个事件发生的时间或概率,比如患者生存时间、设备故障时间等。本文将详细…

net、udp、tcp

Makefile的main.c文件中的全局变量SONG song,要在fun.c文件里面写成extern SONG song 编译方法 第一次编写 或 网络编程 物理层的网线规定有八根,颜色不一样,功能不一样,光猫把光信号转换成电信号,光纤10Gb WiFi叫无线局域网,一般也就50米左右,手机流量叫蜂窝网络,…

golang闭包中变量获取

闭包的本质是一个语法糖,其本质是获取外部变量在其内部使用。文中case2和case3并未涉及闭包,只是作为对比案例。case4这个案例有点不能理解,汇编看着太吃力了。case4和case5留待后续再研究。 案例1: package main// 探究go语言中…

ARM SIMD instruction -- fcmpe

FCMPE Floating-point signaling Compare (scalar). This instruction compares the two SIMD&FP source register values, or the first SIMD&FP source register value and zero. It writes the result to the PSTATE.{N, Z, C, V} flags. 浮点数比较(标量…

【重学 MySQL】五、MySQL 的卸载

【重学 MySQL】五、MySQL 的卸载 停止MySQL服务卸载MySQL程序删除残余文件清理注册表删除环境变量配置重启电脑 MySQL的卸载过程需要仔细操作,以确保彻底卸载并清理所有相关文件和配置。 停止MySQL服务 打开任务管理器:右键点击任务栏空白处&#xff0…

挂轨巡检机器人在发电厂与煤矿皮带机场景的应用

一、引言 在发电厂和煤矿等重工业领域,皮带机作为关键设备,其运行状态直接关系到生产效率和安全。然而,传统的人工巡检方式不仅效率低下,还存在安全隐患。随着智能巡检技术的不断发展,杭州旗晟智能科技有限公司推出的…

汽车智能驾驶算法汇总

汽车智能驾驶算法是自动驾驶技术的核心,它们集成了多个学科的知识,包括计算机视觉、机器学习、控制理论、路径规划等。以下是对汽车智能驾驶算法的一个详细汇总,内容分为几个关键部分进行阐述。 一、计算机视觉算法 计算机视觉是智能驾驶算…

Gemini AI 与 ChatGPT:哪个更适合为我策划婚礼?

我在六月订婚后,一心想着婚礼钟声,但在看到这些婚礼场地报价后,更像是警铃声响起。 “叮咚”已经被重新混音成“哗啦啦”——我需要帮助。 我甚至不知道如何 开始 计划婚礼。第一步是什么?我需要优先考虑什么?哪些任…

坐牢第三十四天(c++)

一.作业 1.栈的手写 #include <iostream> using namespace std; // 封装一个栈 class stcak { private:int *data; //int max_size; // 最大容量int top; // 下标 public:// 无参构造函数stcak();// 有参构造函数stcak(int size);// 拷贝构造函数stcak(const s…

深度学习从入门到精通——感知损失介绍及基本实现

Perceptual Losses 感知损失&#xff08;Perceptual Loss&#xff09;感知损失的定义 图像转换问题&#xff08;Image Transformation Tasks&#xff09;现有方法代码解释感知损失&#xff08;Perceptual Loss&#xff09;1. 感知损失的背景2. 感知损失的定义3. 感知损失的优点…