当前位置: 首页 > news >正文

一、西瓜书——绪论

第一章 绪论 

1.独立同分布

        通常 假设 样本空间 体样 ( d i s t r i b u t i o n ) D , 样本地从上采 立同 分布 ( i n d e p e n d e n t a n d i d e n t ic a lly di s t r i b u t e d , i . i . d . ) . 练样 本越 D 信息 越多,这样就越有可能通过学习获得具有强泛化能力的模型.

2.假设空间

        我们可以把学习过程看作一个在所有假设(hypothesis)组成的空间中进行 搜索的过集“匹配(ft) 能够 练集 的瓜 正确的 . 示一旦确定 间及 其规模 . 这里我们的 空间由形如 ( 泽= ? ) A ( 根蒂= ?) A ( 声= ? ) 所形成 .

3.归纳偏好

        对于一个具体的学习算法而言,它必须要产生一个模型.这时,学习算 法本身的“偏好”就会起到关键的作用.例如,若我们的算法喜欢“尽可能特 殊”的模型,则它会选择“好瓜→(色泽=*)^(根蒂=蜷缩)A(敲声=浊响)”; 但若我们的算法喜欢“尽可能一般”的模型,并且由于某种原因它更“相信” 根蒂,则它会选择“好瓜→(色泽=*)^(根蒂=蜷缩)A(敲声=*)”.机器学习 算法在学习过程中 对某种类型 假设的偏 好,称为 “归纳偏好 ”( inductive bias), 或简称为“偏好”
"奥卡姆剃刀”(Occam's razor)是一种常用的、自然科学研究中最基本的原则,即“若有多个假设与观察一致,则选最简单的那个”.如果采用这个原则,并且假设我们认为“更平滑”意味着“更简单”(例如曲线A更易于描述,其方程式是y=-x²+6x+1,而曲线B则要复杂得多),则在图1.3中我们会自然地偏好“平滑”的曲线A.

4.NFL定理

公式推导:

        假设样本空 间X和假设 空间都 是离散 的.令P(h|X,\xi _{a}) 代表算法 \xi _{a} 基于训练数据X产生假设h的概率,再令f代表我们希望学习的 真实目标函数. \xi _{a} 的“训练集外误差”,即 \xi _{a} 在训练集之外的所有样本上的 误差

 

 

 

 

这个公式说明,在所有假设的情况下,误差与算法无关。所以,NFL定理最重要的寓意,是让我们清楚地认识到,脱离具体问题,空泛地谈论“什么学习算法更好”毫无意义,因为若考虑所有潜在的问题,则所有学习算法都一样好.要谈论算法的相对优劣,必须要针对具体的学习问题;在某些问题上表现好的学习算法,在另一些问题上却可能不尽如人意,学习算法自身的归纳与问题定性.

第二章 模型评估与选择

1.训练集与测试集的划分

(1)留出法

        “留出法”(hold-out)直接将数据集D划分为两个互斥的集合,其中一个 集合作为训练集S,另一个作为测试集T

(2)交叉验证法

        “交叉验证法”(cross validation)先将数据集D划分为k个大小相似的互斥子集,每个子集都
尽可能保持数据分布的一致性,即从D中通过分层采样得到.然后,每次用 k-1个子集的并集作为训练集,余下的那个子集作为测试集;重复k次, 最终返回的是这k个测试结果 的均值.

(3)自助法

        给定包含m个样本的数据集D,我们对它进行采样产生数据集D':每次随机从D中挑选一个
样本,将其拷贝放入D',然后再将该样本放回初始数据集D中,使得该样本在下次采样时仍有可能被采到;这个过程重复执行m次后,我们就得到了包含m个样本的数据集D',这就是自助采样的结果.显然,D中有一部分样本会在D'中多次出现,而另一部分样本不出现.样本在m次采样中始终不被采到的概率是:

 

即通过自助采样,初始数据集D中约有36.8%的样本未出现在采样数据集D'中.于是我们可将D'用作训练集,D\D′用作测试集;这样,实际评估的模型与期望评估的模型都使用m个训练样本,而我们仍有数据总量约1/3的、没在训练集中出现的样本用于测试.这样的测试结果,亦称“包外估计”(out-of-bag est i m a t e ) .

自助法在数据集较小、难以有效划分训练/测试集时很有用

2.模型估计与选择

模型评估与选择中用于评估测试的数据集常称为“验证集”(validation set).

3.性能度量

(1)错误率与准确度

(2)查准率、查全率与F1

        错误率衡 量了有多少比例的瓜被判别错误.但是若我们关心的是“挑出的西瓜中有多少
比例是好瓜”,或者“所 有好瓜中有多 少比例被挑 了出来”,那么错误率显然 就不够用了,这时需要使用其他的性能度量.

PR曲线 

F1度量(调和均值) 

 

F1度量的一般形式F_{\beta },能让我们表达出对查准率/查全率的不同偏 好, 定义为

 

        很多时 候我 淆矩 如进行 次训练 / 次得 一个混淆矩 阵; 多个 据集 练/ ,希 算法 性能
是 先各混 矩 阵别计 率 和查 率,再计算平均值

 还可先将各混淆矩阵的对应元进行平均:

 

(3)ROCAUC

        很多学习器是为测试样本产生一个实 值或概率预 测,然后将这个预测值与 一个 阈值 ( t hr es h o ld ) .
        
        在不 的应用 任务中 我们 任务 用不同的 断点 我们更重 查准 , 排序 截断 全率”,则可选择靠后的位置进行截断.
        
        ROC曲线的纵轴是“真正 例率”(True Positive Rat e,简称TPR ),横轴是“ 假正例 率”(False Positive
Rate,简称FPR):

AUC可通过对ROC曲线下各部分的面积求和而得. 

 

 

 

4.代价敏感错误率与代价曲线 

        不同类型的错误所造成的后果不同. 例如在医疗诊断中,错误地把患者诊断 为健康人与错 误地把健康人诊断为患者, 看起来都是犯了“一次错误”,但后者的影响是增加 了进一步检查的麻烦,前
者的后果却可能是丧失了拯救生命的最佳时机; 为权衡不同类型错误所造成的不同损失,可为错误赋予“非均等(unequal cost). 

代价(cost-sensitive)为:

 

        在非均等代价下,ROC曲线不能直接反映出学习器的期望总体代价, “代价曲线”(cost curve)则可达到该目的.代价曲线图的横轴是取值为[0,1] 的正例概率代价:

         其中p是样例为正例的概率;纵轴是取值为[0,1]的归一化代价

         其中FPR是式(2.19)定义的假正例率,FNR=1-TPR是假反例率.代价曲线的绘制很简单:ROC曲线上每一点对应了代价平面上的一条线段,设ROC曲线上点的坐标为(TPR,FPR),则可相应计算出FNR,然后在代价平面上绘制一条从(0,FPR)到(1,FNR)的线段,线段下的面积即表示了该条件下的期望总体代价;如此将ROC曲线上的每个点转化为代价平面上的一条线段,然后取所有线段的下界,围成的面积即为在所有条件下学习器的期望总体代价,如图2.5所示.

4.比较检验

        机器学习中性能比较这件事要比大家想象的复杂得多.这里面涉及几个重要因素:首先,我们希望比较的是泛化性能,然而通过实验评估方法我们获得的是测试集上的性能,两者的对比结果可能未必相同;第二,测试集上的性能与测试集本身的选择有很大关系,且不论使用不同大小的测试集会得到不同的结果,即便用相同大小的测试集,若包含的测试样例不同,测试结果也会有不同;第三,很多机器学习算法本身有一定的随机性,即便用相同的参数设置在同一个测试集上多次运行,其结果也会有不同.

        统计假设检验(hypothesis test)为我们进行学习器性能比较提供了重要依据.

(1)假设检验

 

 

 

 

接下来查表,若t>临界值,落入拒绝域内,则拒绝原假设,否则接受原假设。认为测试错误率与泛化错误率相等。 

 

(2)交叉验证t检验

交叉验证t检验是使用的配对样本的t检验,假设学习器A,B测试错误率相等。

 

(3)McNemar检 

         

(4)FriedmanNemenyi后续检验 

McNemar验:

 

 

 

五.偏差与方差

首先,引入学习算法的期望预测:

 

 

        偏差(2.40)度量了学习算法的期望预测与真实结果的偏离程度,即刻画了学习算法本身的拟合能力;

        方差(2.38)度量了同样大小的训练集的变动所导致的学习性能的变化,即刻画了数据扰动所造成的影响

        噪声(2.39)则表前任务何学差的下界,即刻画了学习问题本身的难度.

        偏差-方差分解说明,泛化性能是由学习算法的能力、数据的充分性以及学习任务本身的难度所共同决定的.给定学习任务,为了取得好的泛化性能,则需使偏差较小,即能够充分拟合数据,并且使方差较小,即使得数据扰动产生的影响小.

         一般来说,偏差与方差是有冲突的,这称为偏差-方差窘境(bias-variancedilemma).2.9.定学假定的训练程度,则在训练不足时,学习器的拟合能力不够强,训练数据的扰动不足以使学习器产生显著变化,此时偏差主导了泛化错误率;随着训练程度的加深,学习器的拟合能力逐渐增强,训练数据发生的扰动渐渐能被学习器学到,方差逐渐主导了泛化错误率;在训练程度充足后,学习器的拟合能力已非常强,训练数据发生的轻微扰动都会导致学习器发生显著变化,若训练数据自身的、非全局的特性被学习器学到了,则将发生过拟合.

相关文章:

一、西瓜书——绪论

第一章 绪论 1.独立同分布 通常 假设 样本空间 中 全 体样 本 服 从 一 个 未 知 “ 分 布 ” ( d i s t r i b u t i o n ) D , 我们获得的每个样本都是独立地从这个分布上采样获得的, 即 “ 独 立同 分布 ” ( i n d e p e n d e n t a n d i d e n t ic a …...

如何连接ChatGPT?无需科学上网,使用官方GPT教程

随着AI的发展,ChatGPT也越来越强大了。 它可以帮你做你能想到的几乎任何事情,妥妥的生产力工具。 然而,对于许多国内的用户来说,并不能直接使用ChatGPT,不过没关系,我最近发现了一个可以直接免科学上网连…...

qt学习:串口

头文件 #include <QSerialPort> #include <QSerialPortInfo> 模块 QT core gui serialport 编程步骤 配置一个ui界面&#xff0c;五个QComboBox和一个按钮和一个QTextEdit 添加一个成员 private:QSerialPort *serial; 在构造函数中初始化ui端口列表和…...

145. 二叉树的后序遍历

给你一棵二叉树的根节点 root &#xff0c;返回其节点值的 后序遍历 。 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[3,2,1]示例 2&#xff1a; 输入&#xff1a;root [] 输出&#xff1a;[]示例 3&#xff1a; 输入&#xff1a;root [1] 输…...

Postgresql 的编译安装与包管理安装, 全发行版 Linux 通用

博客原文 文章目录 实验环境信息编译安装获取安装包环境依赖编译安装安装 contrib 下工具代码 创建用户创建数据目录设置开机自启动启动数据库常用运维操作 apt 安装更新源安装 postgresql开机自启修改配置修改密码 实验环境信息 Ubuntu 20.04Postgre 16.1 编译安装 获取安装…...

【Java EE初阶十】多线程进阶二(CAS等)

1. 关于CAS CAS: 全称Compare and swap&#xff0c;字面意思:”比较并交换“&#xff0c;且比较交换的是寄存器和内存&#xff1b; 一个 CAS 涉及到以下操作&#xff1a; 下面通过语法来进一步进项说明&#xff1a; 下面有一个内存M&#xff0c;和两个寄存器A,B; CAS(M,A,B)&am…...

与AI对话:编写高效Prompt的指南

与AI对话&#xff1a;编写高效Prompt的指南 一、明确目标 引导AI提供特定格式或内容答案的策略一、明确需求二、使用示例三、设置参数四、分步询问五、使用关键词 利用关键词引导AI重点关注核心内容的技巧一、确定关键概念二、使用专业术语三、强调重要性四、避免相关术语的混淆…...

QML用ListView实现带section的GridView

QML自带的GridView只能定义delegate&#xff0c;没有section&#xff0c;类似手机相册带时间分组标签的样式就没法做。最简单的方式就是组合ListViewGridView&#xff0c;或者ListViewFlow&#xff0c;但是嵌套View时&#xff0c;子级View一般是完全展开的&#xff0c;只显示该…...

docker之程序镜像的制作

目录 一、每种资源的预安装&#xff08;基础&#xff09; 安装 nginx安装 redis 二、dockerfile文件制作&#xff08;基础&#xff09; 打包 redis 镜像 创建镜像制作空间制作dockerfile 打包 nginx 镜像 三、创建组合镜像&#xff08;方式一&#xff09; 生成centos容器并…...

Git - 每次 git pull/push 时需要账号和密码解决方案

问题描述 在提交项目代码或者拉取代码的时候&#xff0c;每次 git 都要输入用户名密码&#xff0c;很烦~ 解决方案 让服务器记下来用户名和密码&#xff0c;此时输入一次&#xff0c;以后再 git push /pull 的时候就不用再输账号和密码了 # 配置 git 记录用户名和密码 git c…...

C语言中在main函数之后运行的函数

在 Linux 平台上&#xff0c;atexit 函数同样是一个用于注册终止处理函数的库函数&#xff0c;它是 C 标准库 <stdlib.h> 的一部分。atexit 函数允许你注册一个或多个函数&#xff0c;这些函数会在 main 函数执行结束后&#xff0c;或者在调用 exit 函数时&#xff0c;由…...

pytorch训练指标记录之tensoboard,wandb

详解Tensorboard及使用教程_tensorboard怎么用-CSDN博客文章浏览阅读5.1w次&#xff0c;点赞109次&#xff0c;收藏456次。目录一、什么是Tensorboard二、配置Tensorboard环境要求安装三、Tensorboard的使用使用各种add方法记录数据单条曲线(scalar)多条曲线(scalars)直方图(hi…...

C语言——oj刷题——实现字符串逆序

当我们需要逆序一个字符串的内容时&#xff0c;可以通过C语言编写一个函数来实现。下面将详细介绍如何通过C语言实现这个功能&#xff0c;并附上代码示例。 1、实现原理 要逆序一个字符串的内容&#xff0c;可以使用两个指针来交换字符串中对应位置的字符。具体实现原理如下&am…...

空气质量预测 | Matlab实现基于SVR支持向量机回归的空气质量预测模型

文章目录 效果一览文章概述源码设计参考资料效果一览 文章概述 政府机构使用空气质量指数 (AQI) 向公众传达当前空气污染程度或预测空气污染程度。 随着 AQI 的上升,公共卫生风险也会增加。 不同国家有自己的空气质量指数,对应不同国家的空气质量标准。 基于支持向量机(Su…...

Vue中的请求拦截器

目录 1 前言 2 使用方法 2.1 创建拦截器 2.2 引入拦截器 1 前言 我们常常会使用JWT令牌来验证登录&#xff0c;因此很多请求都需要携带JWT令牌&#xff0c;我们当然可以用{headers:{Authorization:xx}}的方式&#xff0c;向每个请求中都以这样的方式添加JWT令牌。不过这样…...

Java奠基】对象数组练习

目录 商品对象信息获取 商品对象信息输入 商品对象信息计算 商品对象信息统计 学生数据管理实现 商品对象信息获取 题目要求是这样的&#xff1a; 定义数组存储3个商品对象。 商品的属性&#xff1a;商品的id&#xff0c;名字&#xff0c;价格&#xff0c;库存。 创建三个…...

排序算法---快速排序

原创不易&#xff0c;转载请注明出处。欢迎点赞收藏~ 快速排序是一种常用的排序算法&#xff0c;采用分治的策略来进行排序。它的基本思想是选取一个元素作为基准&#xff08;通常是数组中的第一个元素&#xff09;&#xff0c;然后将数组分割成两部分&#xff0c;其中一部分的…...

算法||实现典型数据结构的查找、添加和删除数据 并分析其时间和空间复杂度

实现典型数据结构的查找、添加和删除数据 并分析其时间和空间复杂度 线性结构&#xff1a; 数组&#xff1a;是一种线性表数据结构&#xff0c;它用一组连续的内存空间&#xff0c;来存储一组具有相同类型的数据。 查找数据 &#xff1a;随机访问 流程图 /** 查询元素下标…...

【蓝桥杯冲冲冲】Invasion of the Milkweed G

【蓝桥杯冲冲冲】Invasion of the Milkweed G 蓝桥杯备赛 | 洛谷做题打卡day30 文章目录 蓝桥杯备赛 | 洛谷做题打卡day30[USACO09OCT] Invasion of the Milkweed G题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 题解代码我的一些话 [USACO09OCT] Invasion of the Mi…...

【JAVA WEB】 百度热榜实现 新闻页面 Chrome 调试工具

目录 百度热榜 新闻页面 Chrome 调试工具 --查看css属性 打开调试工具的方式 标签页含义 百度热榜 实现效果&#xff1a; 实现代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"vi…...

[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解

突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 ​安全措施依赖问题​ GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...

【网络】每天掌握一个Linux命令 - iftop

在Linux系统中&#xff0c;iftop是网络管理的得力助手&#xff0c;能实时监控网络流量、连接情况等&#xff0c;帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

反向工程与模型迁移:打造未来商品详情API的可持续创新体系

在电商行业蓬勃发展的当下&#xff0c;商品详情API作为连接电商平台与开发者、商家及用户的关键纽带&#xff0c;其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息&#xff08;如名称、价格、库存等&#xff09;的获取与展示&#xff0c;已难以满足市场对个性化、智能…...

python爬虫:Newspaper3k 的详细使用(好用的新闻网站文章抓取和解析的Python库)

更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Newspaper3k 概述1.1 Newspaper3k 介绍1.2 主要功能1.3 典型应用场景1.4 安装二、基本用法2.2 提取单篇文章的内容2.2 处理多篇文档三、高级选项3.1 自定义配置3.2 分析文章情感四、实战案例4.1 构建新闻摘要聚合器…...

WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成

厌倦手动写WordPress文章&#xff1f;AI自动生成&#xff0c;效率提升10倍&#xff01; 支持多语言、自动配图、定时发布&#xff0c;让内容创作更轻松&#xff01; AI内容生成 → 不想每天写文章&#xff1f;AI一键生成高质量内容&#xff01;多语言支持 → 跨境电商必备&am…...

Matlab | matlab常用命令总结

常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...

自然语言处理——Transformer

自然语言处理——Transformer 自注意力机制多头注意力机制Transformer 虽然循环神经网络可以对具有序列特性的数据非常有效&#xff0c;它能挖掘数据中的时序信息以及语义信息&#xff0c;但是它有一个很大的缺陷——很难并行化。 我们可以考虑用CNN来替代RNN&#xff0c;但是…...

Go 语言并发编程基础:无缓冲与有缓冲通道

在上一章节中&#xff0c;我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道&#xff0c;它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好&#xff0…...

python爬虫——气象数据爬取

一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用&#xff1a; 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests&#xff1a;发送 …...

MyBatis中关于缓存的理解

MyBatis缓存 MyBatis系统当中默认定义两级缓存&#xff1a;一级缓存、二级缓存 默认情况下&#xff0c;只有一级缓存开启&#xff08;sqlSession级别的缓存&#xff09;二级缓存需要手动开启配置&#xff0c;需要局域namespace级别的缓存 一级缓存&#xff08;本地缓存&#…...