统计学习方法学习笔记——概论(一)

news2025/1/18 8:44:27

# 文章内容来自学习李航老师的《统计学习方法》后的总结,相当于学习笔记,若有不正确的地方还请大家指正。

# 所需先验知识:概率论与数理统计、线性代数

一、 统计学习概述

可能有些小伙伴没有听过统计学习,但是我相信机器学习大家一定都耳熟能详。没错,统计学习 = 统计机器学习 = 机器学习(也有可能只是机器学习的一个分支?但一定是最重要的)

那么统计学习(可以约等于机器学习了)研究什么?主要研究内容是什么?为什么需要统计学习?答案如下,统计学习以数据作为研究对象,通过一系列的方法(熟悉的如监督学习、半监督学习、强化学习等等)来构建一个可以预测未知数据的概率统计模型。它的应用场景有大家非常熟悉的人工智能、模式识别、数据挖掘、自然语言处理语音识别图像识别、信息检索和生物信息等计算机应用领域,早已和我们的生活息息相关。

看到这里相信大家已经对统计学习有一些模糊的了解了。

二、 监督学习概述

上面介绍过,统计学习的主要内容有监督学习、半监督学习、强化学习等等,其中最重要,内容最丰富、应用最广泛的就是监督学习,后面我们讨论的统计学习都指的是监督学习,这点请大家记住。

同所有的统计方法一样,监督学习的任务也是构建一个好的模型,使之对任何输入的数据都能做出正确的预测。因此下面介绍监督学习的相关概念,也是整个统计学习的相关概念。

输入空间、特征空间与输出空间

输入空间:所有的输入可能的取值构成的集合

输出空间:所有的输出可能的取值构成的集合,一般输出空间远小于输入空间

特征空间:输入的取值都是用特征向量进行表示的,特征向量的每一个维度都对应数据的一个特征。每个输入取值对应一个特征向量,而所有的特征向量所在的空间就是特征空间。因此有时默认输入空间等价于特征空间,不对两者做区分

将输入、输出看做是输入空间、输出空间中随机变量的取值,输入变量用大写的X表示,输出变量用大写的Y表示。输入的取值用小写的x表示(都是向量),输出的取值用小写的y表示(都是向量)。

= 表示第i个输入变量

训练数据集(Training Data)就是由多个输入输出对构成:

T = {}

输入输出对又叫做样本或者样本点。

输入变量和输出变量包括连续变量和离散变量,根据不同的输入变量和输出变量类型,可以把预测任务划分成三种不同的任务:

  • 回归任务:输入变量与输出变量均为连续型变量。

  • 分类任务:输出变量为有限个离散型变量。

  • 标注问题:输入变量与输出变量均为随机变量序列。

联合概率分布

监督学习假设输入变量X与输出变量Y遵循联合概率分布,这是监督学习对于数据的基本假设。

假设空间

统计学习的任务是实现从输入到输出的映射,这和函数很像。而我们用模型来指代这种输入输出的映射关系。所有映射的集合就是假设空间,通俗的说就是所有模型的集合。

流程

监督学习的流程可以分为两部分,第一部分借助学习系统训练(学习)出一个模型;第二部分运用模型对未知数据进行预测。

在学习过程中,给出的xi在经过模型后会得到一个新的y*,这个y*应当和yi的差足够小才能说明模型够好。学习的过程,其实就是不断更换模型、挑选最好的模型的过程。

三、 统计学习三要素

统计学习就是由模型、策略与算法构成的。实现监督学习其实就是确定这三个要素,其他的如半监督学习、强化学习也是如此。

模型

统计学习首先需要确定学习什么模型(采用哪个模型),例如猜测输入与输出变量之间存在线性关系,那么应当假设采用线性模型,即线性函数。而此时的假设空间就是所有的线性函数,一般假设空间中的模型是无穷的。

而模型之间的区别就在于参数的不同,因此这时假设空间可以用如下方式表示:

其中F表示假设空间,Y表示输出变量,X表示输入变量,表示参数向量。

模型分为两种,决策函数表示的模型(非概率模型)和条件概率表示的模型(概率模型),两者分别用Y = f(X) 和 P(Y|X)表示。后续讨论一般以决策函数为例。

策略

在介绍什么是统计学习的策略时,先允许我介绍下面两个概念:损失函数(代价函数)与风险函数。

损失函数:用于度量模型一次预测的好坏

统计学习的目标就是从假设空间F中取得最优模型f。而我们知道对于一个模型f(X) = Y,当给定一个输入x时,可以取得一个输出y*,同时x也有对应的真实值y,这两个值可能一致,也可能不一致。两者之间的差距越小表明模型的预测越好,而衡量这个差距的方法就是损失函数(loss function)或者代价函数(coss function),用L(Y, f(X))表示。

常见的损失函数如下:

风险函数:用于衡量平均意义下模型预测的结果

通过上面的描述我们知道损失函数值越小越好,而我们还知道输入变量X与输出变量Y遵循联合分布P(X|Y),所以可以得到损失函数的期望是:

我们把这个期望称为风险函数,它表达的意思就是模型f(X)关于联合分布P(X, Y)的平均意义下的损失。所以模型学习的目标就是期望风险最小的模型,但是输入X与输出Y的联合分布P(X, Y)我们并不知道,这就是模型学习的目的——找到X和Y的联合分布函数P(X, Y)。

那么如何求得这个联合分布呢?我们给定一个训练数据集

T = {}

模型f(X)关于训练数据集的平均损失称为经验风险(empirical risk)或经验损失,其值为:

期望风险是模型关于联合分布的期望损失,经验风险是模型关于训练样本集的平均损失。根据大数定律,当样本容量 N 趋于无穷时,经验风险趋于期望风险。所以一个很自然的想法是用经验风险估计期望风险。

但是,由于现实中训练样本数目有限,甚至很小,所以用经验风险估计期望风险常常并不理想,要对经验风险进行一定的矫正。这就引出我们下面要提到的监督学习的两个基本策略:经验风险最小化和结构风险最小化:经验风险最小化就是依据测试数据集的误差去趋近结构风险最小化,而所谓的结构风险化则是在经验风险最小化后面添加一个惩罚项,即一个计算函数复杂度的函数,函数越复杂,则惩罚项越高。

算法

算法就是一个不断计算最终得到一个最优模型的过程。

四、模型评估与模型选择

在给定损失函数的情况下,依据训练数据集合测试数据集得到的误差自然就成为模型评估与选择的重要依据。但除此之外,还需要考虑模型的复杂度,即考虑过拟合的问题。

过拟合

所谓过拟合,就是模型为了去适应某一个数据集的特征,而不断复杂化自身的参数。最终得到的模型复杂度会非常高(简单理解就是模型的参数特别多),这个模型可以很好的解决某一个数据集,但是一旦换到别的数据就会很失败,因为它的参数都是用来解决这个数据集的,对稍微不同的数据集就不适用。也就是泛化能力不行。

因此我们需要选择复杂度合适的模型,有两种常用的模型选择的方法:正则化和交叉验证。

正则化

正则化就是上面提到的结构风险的实现:即在经验风险的基础上添加一个惩罚项,这样模型复杂度太高的话总误差依旧很高。

交叉验证

交叉验证包括简单交叉验证和S折交叉验证

简单交叉验证就是把总的数据集划分成不同比例(如7:3),然后用70%的数据集做不同的训练(如不同的参数量),期待在测试集上得到较小的误差。

S折交叉验证也是把数据集分成不同比例(如9:1),训练完后再重新划分成9:1继续训练。在S次训练后选择平均误差最小的模型。

五、泛化能力

泛化能力就是模型预测未知数据的能力,是评价模型好坏的本质,一般用泛化误差(模型预测测试数据集的误差)评价模型的好坏。

六、分类问题

分类是监督学习的一个核心问题.在监督学习中,当输出变量Y 有限个离散值时,预测问题便成为分类问题.这时,输入变量 X 可以是离散的,也可以是连续的.监督学习从数据中学习一个分类模型或分类决策函数,称为分类器(classifier). 分类器对新的输入进行输出的预测(prediction),称为分类(classification).可能的输出称为类(class).分类的类别为多个时,称为多类分类问题

评价指标:

评价分类器性能的指标一般是分类准确率(accuracy),其定义是:对于给定

的测试数据集,分类器正确分类的样本数与总样本数之比.也就是损失函数是 0-1

损失时测试数据集上的准确率(见公式 (1.17)).

对于二类分类问题常用的评价指标是精确率(precision)与召回率(recall).通

常以关注的类为正类,其他类为负类,分类器在测试数据集上的预测或正确或不

正确,4 种情况出现的总数分别记作:

TP——将正类预测为正类数;

FN——将正类预测为负类数;

FP——将负类预测为正类数;

TN——将负类预测为负类数.

精确率定义为:P = TP/(FN + FP)

召回率定义为:R = TP/(TP + FN)

此外,还有 F1 值,是精确率和召回率的调和均值,即2/F1 =1/P + 1/R ,F1 = 2TP/2TP + FP + FN

精确率和召回率都高时, F1 值也会高.

七、标注问题

标注(tagging)也是一个监督学习问题.可以认为标注问题是分类问题的一个推广,标注问题又是更复杂的结构预测(structure prediction)问题的简单形式.标注问题的输入是一个观测序列,输出是一个标记序列或状态序列.标注问题的目标在于学习一个模型,使它能够对观测序列给出标记序列作为预测.注意,可能的标记个数是有限的,但其组合所成的标记序列的个数是依序列长度呈指数级增长的.

八、回归问题

回归问题的学习等价于函数拟合:选择一条函数曲线使其很好地拟合已知数据且很好地预测未知数据

举个例子:假设知道某一公司在过去不同时间点(比如,每天)的市场上的股票价格(比如,股票平均价格),以及在各个时间点之前可能影响该公司股价的信息(比如,该公司前一周的营业额、利润)。目标是从过去的数据学习一个模型,使它可以基于当前的信息预测该公司下一个时间点的股票价格。可以将这个问题作为回归问题解决。具体地,将影响股价的信息视为自变量(输入的特征),而将股价视为因变量(输出的值)。将过去的数据作为训练数据,就可以学习一个回归模型,并对未来的股价进行预测。


参考文献:

1)李航《统计学习方法》

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

智慧物业管理系统【源码好优多】

简介 《智慧物业》一个免费开源的基于java的物业管理系统。未来将涵盖停车、安保、客服、工单、收费、财务、办公自动化等模块,构建一个软硬件一体的智慧物业解决方案。 功能 系统内置功能: 资产管理 商业区管理、楼栋管理、商铺管理、商铺租售 缴费…

【数电基础】——组合逻辑电路

目录 1.大纲 2.组合逻辑电路的特点 3.组合逻辑电路分析步骤 4.组合逻辑电路设计 5.组合逻辑电路中的竞争和冒险(重要) 6.怎样消除竞争冒险现象 7.常用的MSI组合逻辑器件 1.加法器 1.一位半加器 2.一位全加器 2.数据选择器 1.二选一数据选择器&#x…

spring容器,@Bean 与 @Component 用在同一个类上,会怎么样?

疑虑背景疑虑描述最近,在进行开发的过程中,发现之前的一个写法,类似如下以我的理解,Configuration 加 Bean 会创建一个 userName 不为 null 的 UserManager 对象,而 Component 也会创建一个 userName 为 null 的 UserM…

第七章 分词器:Text Analysis

1、分词器认知基础 1.1 基本概念 分词器官方称之为文本分析器,顾名思义,是对文本进行分析处理的一种手段,基本处理逻辑为按照预先制定的分词规则,把原始文档分割成若干更小粒度的词项,粒度大小取决于分词器规则。 1.2 分词发生时期 分词器的处理过程发生在 Index Tim…

【牛客刷题专栏】0x0D:JZ5 替换空格(C语言编程题)

前言 个人推荐在牛客网刷题(点击可以跳转),它登陆后会保存刷题记录进度,重新登录时写过的题目代码不会丢失。个人刷题练习系列专栏:个人CSDN牛客刷题专栏。 题目来自:牛客/题库 / 在线编程 / 剑指offer: 目录前言问题…

ICV光子盒:2023全球量子通信与安全产业发展展望

近日,全球著名的前沿科技咨询机构ICV与国内专注量子领域的行业研究机构光子盒,联合发布了2023全球量子通信与安全产业发展展望。报告主要从技术进展、产业生态、公司分析、网络建设、投资概况、政策发布、产业预测、展望观点的几方面对2023全球量子通信与…

【Java】Java进阶学习笔记(三)—— 面向对象(多态)

【Java】Java进阶学习笔记(三)—— 面向对象(多态)一、多态的概念1、多态的优点2、多态存在的三个必要条件3、多态中的成员特点4、重写方法的快捷键二、多态的转型1、向上转型2、向下转型3、代码示例4、转型的异常类型转换异常ins…

无线蓝牙耳机哪个品牌延迟低?玩游戏延迟低的蓝牙耳机推荐

无线蓝牙耳机因为摆脱了线的束缚,在使用上会更便捷,不少人喜欢戴蓝牙耳机玩游戏,但又怕蓝牙耳机有延迟。正因为蓝牙耳机摆脱了线的束缚,在信号传输的过程中难免产生延迟。那么,无线蓝牙耳机哪个品牌延迟低?…

【Linux】程序员的易筋经——冯诺依曼体系结构

文章目录👉冯诺伊曼体系结构👈概念内存的重要性👉操作系统(Operating System)👈概念目的定位特征发展和分类运行机制体系结构👉冯诺伊曼体系结构👈 概念 下图是描述冯诺依曼体系结…

6天重建一遍中国台湾省,三维模型还可以这样做!

说起三维模型,大家脑海中显现的大多是一个可通过电子屏幕进行全方位展示的立体物体。一般来说,所显示的物体既可以是现实世界的实体,也可以是通过想象所创作的虚构物体。 而实景三维正是镜像作用于现实世界真实化表达的新兴技术,是…

Java中的过滤器和拦截器

Java中的过滤器和拦截器 一.应用场景 拦截器应用场景 拦截器本质上是面向切面编程(AOP),符合横切关注点的功能都可以放在拦截器中来实现,主要的应用场景包括: 登录验证,判断用户是否登录。权限验证&…

JSP的分页

分页在读取数据库里的数据需要用,在以后数据库肯定还会有很多数据,一个页面装不下,所以需要分页功能。数据库查询的分页语句是“SELECT * FROM emp LIMIT 0, 5;”这里0是指起始行,5是查询5行,第二页起始行就是5&#x…

QT 实现右键菜单

有时我们希望在窗口中右键弹出菜单,这里来介绍一下QT中怎么实现. .h 中添加事件相应函数声明和变量定义: private:// 菜单事件void contextMenuEvent(QContextMenuEvent* event) override;void initMenu();private:QMenu* m_pMenu nullptr;在构造函数中…

聊聊如何避免多个jar通过maven打包成一个jar,多个同名配置文件发生覆盖问题

前言 不知道大家在开发的过程中,有没有遇到这种场景,外部的项目想访问内部nexus私仓的jar,因为私仓不对外开放,导致外部的项目没法下载到私仓的jar,导致项目因缺少jar而无法运行。 通常遇到这种场景,常用…

HUN工训中心:开关电路和按键信号抖动

工训中心的牛马实验 1.实验目的: 1) 认识开关电路,掌握按键状态判别、开关电路中逻辑电平测量、逻辑值和逻辑函数电路。 2) 掌握按键信号抖动简单处理方法。 3) 实现按键计数电路。 2.实验资源: HBE硬件基础电路实验箱、示波器、万用表…

Java学习--网络编程

1. 网络编程入门 1.1 网络编程概述 计算机网络 是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统…

【GIT】git不同仓库设置不同用户名和邮箱

随着业务的拓展,工作中,我们除了要在公司的git库提交代码,还可能在阿里云效codeup、gitcode等上提交代码。 之前git安装时使用的是全局名称,导致所有的git提交都使用了相同的用户名和邮箱。 查看全局用户名和邮箱 $ git config -…

论文调研——23.2.28

文章目录Diffusion Models: A Comprehensive Survey of Methods and ApplicationsADVERSARIAL TRAINING METHODS FOR SEMI-SUPERVISED TEXT CLASSIFICATIONHuman Emotion Knowledge Representation Emerges in LargeAPI 调优上: Decoder Tuning: Efficient Language…

记录一下atlas200模块无法正常通过别的设备SSH连接192.168.1.2问题笔记粗心者用

atlas200远程登录发现登录不了 串口打印内核信息正常显示,如下几个错误记录分别在windows上和ubuntu上分别做了测试,之前都是 安装完 kex_exchange_identification: read: Connection reset 华为atlas200模块 登录显示这个目前没有解决,应该…

220V转5V非隔离2W电源--超低成本

目录 详情 产品特性和优势 设计电路 MP150芯片资料 详情 MP150 是一款原边调节器,可以在无光耦合器的条件下提供精确的恒压(CV)调节。MP150 支持降压、升降压、升压和反激拓扑。它内部集成了 500V MOSFET,可简化结构&#xff0…