机器学习_集成学习之偏差和方差

news2024/10/7 6:50:02

文章目录

  • 介绍
  • 偏差和方差——机器学习性能优化的风向标
  • 目标:降低偏差与方差
  • 数据集大小对偏差和方差的影响
  • 预测空间的变化带来偏差和方差的变化


介绍

集成学习,就是机器学习里面的协同作战。

如果训练出一个模型比较弱,又训练出一个模型还是比较弱,但是,几个不大一样的模型组合起来,很可能其效率会好过一个单独的模型。这个思路导出的随机森林、梯度提升决策树,以及XGBoost等算法,都是常用的、有效的、经常在机器学习竞赛中夺冠的“法宝”。

它的核心策略是通过模型的集成减少机器学习中的偏差(bias)和方差(variance)。

偏差和方差——机器学习性能优化的风向标

方差是从统计学中引入的概念,方差定义的是一组数据距离其均值的离散程度。而机器学习里面的偏差用于衡量模型的准确程度。

注:机器学习内部参数w和b中的参数b,英文也是bias,它是线性模型内部的偏置。而这里的 bias是模型准确率的偏差。两者英文相同,但不是同一个概念。

在这里插入图片描述

偏差评判的是机器学习模型的准确度,偏差越小,模型越准确。它度量了算法的预测与真实结果的离散程度,刻画了学习算法本身的拟合能力。也就是每次打靶,都比较靠近靶心。

方差评判的是机器学习模型的稳定性(或称精度),方差越小,模型越稳定。它度量了训练集变动所导致的学习性能变化,刻画了数据扰动所造成的影响。也就是每次打靶,不管打得准不准,击中点都比较集中。

目标:降低偏差与方差

低偏差和低方差,是我们希望达到的效果,然而一般来说,偏差与方差是鱼与熊掌不可兼得的,这被称作偏差-方差窘境(bias-variance dilemma )。

  • 给定一个学习任务,在训练的初期,模型对训练集的拟合还未完善,能力不够强,偏差也比较大。正是由于拟合能力不强,数据集的扰动是无法使模型的效率产生显著变化的——此时模型处于欠拟合的状态,把模型应用于训练集数据,会出现高偏差。
  • 随着训练的次数增多,模型的调整优化,其拟合能力越来越强,此时训练数据的扰动也会对模型产生影响。
  • 当充分训练之后,模型已经完全拟合了训练集数据,此时数据的轻微扰动都会导致模型发生显着变化。当训练好的模型应用于测试集,并不一定得到好的效果——此时模型应用于不同的数据集,会出现高方差,也就是过拟合的状态。

机器学习性能优化领域的最核心问题,就是不断地探求欠拟合-过拟合之间,也就是偏差 - 方差之间的最佳平衡点,也是训练集优化和测试集泛化的平衡点
在这里插入图片描述
如图所示,如果同时为训练集和测试集绘制损失曲线,大概可以看出以下内容。

  • 在训练初期,当模型很弱的时候,测试集和训练集上,损失都大。这时候需要调试的是机器学习的模型,或者甚至选择更好算法。这是在降低偏差。

  • 在模型或者算法被优化之后,损失曲线逐渐收敛。但是过了一段时间之后,发现损失在训练集上越来越小,然而在测试集上逐渐变大。此时要集中精力降低方差。

因此,机器学习的性能优化是有顺序的,一般是先降低偏差,再聚焦于降低方差

数据集大小对偏差和方差的影响

通过调整数据集的大小来观测损失的情况,进而判定是偏差还是方差影响着机器学习效率。

这是因为,数据集越大,越能够降低过拟合的风险。数据集越大,训练集和测试集上的损失差异理论上应该越小,因为更大的数据集会导致训练集上的损失值上升,测试集上的损失值下降。

  • 如果随着数据集逐渐增大,训练集和测试集的误差的差异逐渐减小,然后都稳定在一个值附近。这说明此时模型的方差比较小。如果这个模型准确率仍然不高,需要从模型的性能优化上调整,减小偏差。

在这里插入图片描述

  • 如果随着数据集的增大,训练集和测试集的误差的差异仍然很大,此时就说明模型的方差大。也就是模型受数据的影响大,此时需要增加模型的泛化能力。

预测空间的变化带来偏差和方差的变化

知道偏差大还是方差大,就知道应该把模型往哪个方向调整。

不同的模型,有不同的复杂度,其预测空间大小不同、维度也不同。一个简单的线性函数,它所能够覆盖的预测空间是比较有限的,其实也可以说简单的函数模型方差都比较低。这是好事儿。那么如果增加变量的次数,增加特征之间的组合,函数就变复杂了,预测空间就随着特征空间的变化而增大。再发展到很多神经元非线性激活之后组成神经网络,可以包含几十万、几百万个参数,它的预测空间维度特别大。这个时候,方差也会迅速增大。
在这里插入图片描述
简单的线性函数虽然方差低,但是偏差高。对于稍微复杂的问题,根本不能解决。那么只能用威力比较大的、覆盖面比较大的‘大杀器’来解决问题了。而神经网络就像是原子弹,一旦被发射,肯定能够把要打击的目标击倒。但是如何避免误伤无辜,降低方差,就又回到如何提高精度的问题了。这样,偏差一方差窘境就又出现了。

集成学习之所以好,是因为它通过组合一些比较简单的算法来保留这些算法低方差的优势。在此基础之上,它又能引入复杂的模型来扩展简单算法的预测空间。这样,我们就就理解为何集成学习是同时降低方差和偏差的大招。

集成学习算法有:
(1).Bagging:集成多个模型,以降低整体的方差
(2).Boosting:提升较弱的模型,以降低弱模型的偏差
(3).Stacking/Blending:利用基模型的预测结果,作为新特征训练新模型
(4).Voting/Averating:集成基模型的预测结果


学习机器学习的参考资料:
(1)书籍
利用Python进行数据分析
西瓜书
百面机器学习
机器学习实战
阿里云天池大赛赛题解析(机器学习篇)
白话机器学习中的数学
零基础学机器学习
图解机器学习算法

(2)机构
光环大数据
开课吧
极客时间
七月在线
深度之眼
贪心学院
拉勾教育
博学谷

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

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

相关文章

【LIBS】交叉编译TCPDUMP

目录 1. 安装编译工具2. 设置环境变量3. 编译libpcap3.1 安装依赖3.2 交叉编译 4. 编译TCPDUMP4.1 克隆仓库与生成构建环境4.2 静态链接LIBPCAP4.3 动态链接LIBPCAP4.4 构建与安装 5. 查看交叉编译结果5.1 文件布局 1. 安装编译工具 sudo apt-get install -y autoconf automak…

【云原生】Docker如何构建镜像

目录 前言 一、基于已有的镜像创建 步骤一:先基于现有的镜像创建一个容器,然后进入容器去完成修改 步骤二:将该容器作为一个模板提交创建为一个新的镜像 步骤三:基于新的镜像,docker run创建一个容器,进…

2024年PMP备考学习资料整合汇总!!

你是否也有过类似的经历? 为了获取备考资料,有的同学在论坛、知乎或者相关垂直类网站下载了很多的资料,这些资料大部分是机构进行获客引流的资料,没有真正的干货。 经常会看到10G、20G的资料包,感觉内容很丰富&#xf…

当项目遭遇资源冲突时,如何巧妙化解?

在项目管理中,资源冲突是一个常见且棘手的问题。当多个项目争夺有限的资源时,如何妥善分配并确保项目顺利进行,成为每个项目经理必须面对的挑战。今天,我们就来探讨几个实用的行动方案,帮助你化解资源冲突,…

Git笔记:常用使用Git命令+使用Git关联本地仓库和远程仓库操作步骤

Git 分布式版本控制系统 常用Git命令 创建一个管理代码的文件目录右键Git Bath打开完成配置信息,输入个人用户名、邮件信息 git config --global user.name 用户名 git config --global user.email 邮箱地址初始化仓库 git init: 初始化仓库 文件目录里会出现一个…

Spring5学习笔记

Spring5 框架概述IOC(Inversion Of Control)IOC基本过程:IOC接口(BeanFactory)IOC接口实现类IOC操作Bean管理一、什么是Bean管理?二、什么是DI?三、Bean管理的两种实现方式1.基于XML配置文件方式实现基于XML方式创建对象基于XML方式注入属性常规属性注入特殊属性值的注入…

Windows中Zookeeper与kafka的安装配置

一、Zookeeper安装与使用 1.安装包下载 直接在官网下载即可Apache ZooKeeper。 下载后直接解压到本地即可。 2.环境配置 1> 在目录中下增加data和log文件夹 2> 解压目录下的 conf 目录,将目录中的 zoo_sample.cfg 文件,复制一份,重…

element el-date-picker type=“datetimerange“

刚写完结果需求变更了。封装的时间组件重新做。结合eacharts 。 直接上代码了 日期选择组件封装 <template><section class"warning-container"><header class"query-head"><el-form :inline"true" class"query-form…

IP被封怎么办?如何绕过IP禁令?

相信很多人遇到过IP禁令&#xff1a;比如你在访问社交媒体、搜索引擎或电子商务网站时会被限制访问&#xff0c;又或者你的的账号莫名被封&#xff0c;这些由于网络上的种种限制我们经常会遭遇IP被封的情况&#xff0c;导致无法使用继续进行网络行动。在本文中&#xff0c;我们…

nvm安装nodejs报错解决

1.出现如下报错 2.解决 去到nvm的安装目录&#xff0c;找到 /settings.txt文件 添加如下代码&#xff1a; node_mirror:npm.taobao.org/mirrors/node/ npm_mirror:npm.taobao.org/mirrors/npm/3.重新下载 如图成功解决

浅析HTTP协议

首先&#xff0c;前端请求后端数据&#xff0c;后端响应数据给前端&#xff0c;这是我们大家都知道的&#xff0c;那其中所涉及到的数据传输协议又是什么呢&#xff1f;这个传输规范就是我们大名鼎鼎的HTTP协议&#xff01; 什么是HTTP协议&#xff1f; HTTP&#xff08;超文本…

Springfox Swagger2从入门到精通

概述&#xff1a;Swagger 是一种用于设计、构建、文档化和使用 RESTful API 的工具。Springfox 是 Swagger 在 Spring 应用中的集成库&#xff0c;提供了自动生成 API 文档的功能。在本文中&#xff0c;我们将探讨如何使用 Springfox Swagger2 在 Spring Boot 项目中生成、配置…

使用json-server提供简易接口

json-server是一款 json 数据服务器&#xff0c;它运行 Express 服务器&#xff0c;可以对json文件、js脚本生成的json数据、远程json数据进行restful风格的增删改查操作&#xff0c;通过指定一个json文件作为api数据源&#xff0c;可以进行分页、排序、关联查询、范围查询等各…

紫光展锐M6780丨超分辨率技术——画质重构还原经典

上一期&#xff0c;我们揭秘了让画质更加炫彩的AI-PQ技术。面对分辨率较低的老电影&#xff0c;光有高饱和度的色彩是不够的&#xff0c;如何能够提高视频影像的分辨率&#xff0c;使画质更加清晰&#xff0c;实现老片新看&#xff1f; 本期带大家揭晓紫光展锐首颗AI8K超高清智…

数据安全之对称加密(九)- 数据填充实现

AES 是一种采用分组加密方法的算法。待加密的明文首先被分割成若干固定大小的块&#xff0c;每个块大小通常是128位。接着&#xff0c;这些块逐一被加密&#xff0c;转换成对应的密文块。这种处理方式确保了加密的一致性和效率&#xff0c;同时也方便了对数据的管理和加密处理。…

从物联网看智慧文旅的未来:技术与实践的完美结合,重塑旅游体验的新篇章

一、物联网技术&#xff1a;智慧文旅的基石 随着科技的飞速发展&#xff0c;物联网技术已经深入到我们生活的方方面面&#xff0c;尤其在智慧文旅领域&#xff0c;物联网技术更是起到了不可或缺的作用。它如同智慧文旅的基石&#xff0c;为旅游行业带来了前所未有的创新和变革…

基于Java SSM框架实现大学生社团管理系统项目【项目源码+论文说明】计算机毕业设计

基于java的SSM框架实现大学生社团管理系统演示 摘要 在网络迅速发展的时代&#xff0c;众多的软件被开发出来&#xff0c;给社团带来了很大的选择余地&#xff0c;而且学生越来越追求更个性的需求。在这种时代背景下&#xff0c;社团只能以学生为导向&#xff0c;按学生所需要…

AMEYA360--思瑞浦推出16通道高精度ADC—TPAFE51760

聚焦高性能模拟芯片和嵌入式处理器研发的半导体公司——思瑞浦推出全新16通道高精度ADC——TPAFE51760。 TPAFE51760内置高精度基准&#xff0c;工作温度支持-40C to 125C&#xff0c;产品广泛应用于电力自动化领域中的DTU、FTU、MU等装置。 TPAFE51760产品优势 业界领先的30V模…

成本更低、更可控,云原生可观测新计费模式正式上线

云布道师 在上云开始使用云产品过程中&#xff0c;企业一定遇见过两件“讨厌”事&#xff1a; 难以理解的复杂计费逻辑&#xff0c;时常冒出“这也能收费”的感叹&#xff1b; 某个配置参数调节之后&#xff0c;云产品使用成本不可预估的暴涨。 可观测作为企业 IT 运维必须品…

Redis系列-数据结构篇

数据结构 string&#xff08;字符串&#xff09; redis的字符串是动态字符串&#xff0c;类似于ArrayList&#xff0c;采用预分配冗余空间的方式减少内存的频繁分配。 struct SDS<T>{ T capacity; T len; byte flags; byte[] content; } 当字符串比较短时&#xff0c…