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

【机器学习300问】36、什么是集成学习?

一、什么是集成学习?

(1)它的出现是为了解决什么问题?

  • 提高准确性:单个模型可能对某些数据敏感或者有概念偏见,而集成多个模型可以提高预测的准确性。
  • 让模型变稳定:一些模型,如决策树,对训练数据的微小变化非常敏感。通过集成算法可以平滑这些变化,得到更稳定的预测结果。
  • 增强鲁棒性:不同的模型可能对数据中的不同噪声和异常值有不同程度的敏感性,集成学习通过合并这些模型的输出来提高整体系统对噪声和异常值的耐受能力。
  • 降低过拟合:通过组合多个模型,特别是在这些模型被训练来关注不同的数据子集时,集成学习能减轻单个模型由于对训练数据过度拟合而在实际使用中表现不佳的风险。

(2)集成学习的定义

        集成学习(Ensemble Learning)是一种强大的机器学习范式,它通过构建并组合多个学习器(通常称为基学习器或弱学习器)来解决同一个问题。这类似于寻求多个专家意见而不是仅依靠单个专家的观点。集成学习的核心思想是:多个模型联合起来的整体性能,往往可以超过单个模型的性能。【三个臭皮匠赛过诸葛亮

        弱学习器(Weak Learner):是指那些单独看时预测能力并不特别强的学习模型,其准确率仅略高于随机猜测。在分类任务中,它们的性能仅略优于随机猜测就好,在回归任务中则表现为具有较小但非零预测误差,这些学习器可以是同质的(例如都是决策树)或异质的(来自不同类型的学习算法)

二、集成学习中的三种集成策略

(1)多数表决(Majority Voting)

        在分类问题中,每个模型对于每个实例输出一个类别作为预测。多数表决是指统计所有弱学习器的预测结果,选择得票最多的类别作为最终预测结果。如果有多个类别的得票相同,则可能需要引入其他策略(如打破平局规则)。

        比如有三个模型,两个模型预测一个实例为类别A,一个模型预测为类别B,那么多数表决的结果就是类别A。

(2)平均法(Averaging)

        在回归问题中,或概率预测的分类问题中,最终的预测结果是每个模型输出预测的平均值

        比如一个回归问题中三个模型预测的结果分别是3.5, 4.0, 和4.5,那么平均法的结果就是 (3.5+4.0+4.5)/3 = 4.0。

(3)加权平均(Weighted Averaging)

       在回归问题中,或概率预测的分类问题中, 类似于平均法,不过在加权平均中,每个模型的预测结果都会被赋予一个权重,这个权重通常是基于模型的表现的(比如预测的准确度),更好的模型会被赋予更高的权重。然后在计算出预测的加权平均值作为最终的预测结果。

        比如模型A的权重是0.6,模型B是0.3,模型C是0.1,那么最终的预测结果是每个模型的预测值乘以其对应权重的和。

这三种集成策略可以看下图直观感受:

集成策略

三、集成学习的三大分类

(1)并行集成

        并行集成方法中的弱学习器通常是并行地或者独立地训练出来的,它们之间的训练过程相互独立,没有强依赖关系。并最终将它们的预测结果结合起来。

        如Bagging(Bootstrap Aggregating)和随机森林算法,通过采样数据集生成多个模型,并行训练,最后采用投票、平均或其他统计方法综合结果。

并行集成学习算法Bagging

(2)顺序集成

        顺序集成方法中的弱学习器是按照一定的顺序依次产生的,后续的学习器会基于之前学习器的表现以及训练过程中调整的数据分布来更新和优化。通过顺序地增加模型的复杂度,从而提高整个模型的性能。

        如Boosting算法系列,包括AdaBoost、Gradient Boosting(梯度提升)和XGBoost(极端梯度增强)LightGBM等,其中后续模型是在纠正前序模型错误的基础上进行训练的,逐步迭代形成强大的预测系统。

顺序集成学习算法Boosting

(3)堆叠模型

① 堆叠模型的概念

        堆叠(Stacking)模型可以理解成,混合了并行集成于顺序集成的一种方法。它的核心思想是:使用一个新的模型,称为元学习器(或者叫组合器),去学习如何最有效地合并各个弱学习器(也称为一级学习器)的输出。

堆叠模型

② 它的基本步骤

第一层训练

  • 首先,从原始数据集中选择一组不同的基础模型(可以是同质的,比如都是决策树,也可以是异质的,如包含决策树、神经网络、SVM等不同类型的模型)
  • 使用全部或者交叉验证后的训练数据分别训练这些基础模型,并让它们对整个训练集进行预测
  • 这些基础模型的预测结果被记录下来,组成“元特征”

第二层训练

  • 将第一层产生的元特征集合(即每个基础模型在所有训练样本上的预测结果)与原来的标签一起构成一个新的训练集
  • 在这个新训练集上训练一个新的学习器,通常称之为元学习器或组合器(图中叫二级学习器)。这个元学习器的任务是学习如何最优地结合底层模型的预测结果,以达到最佳的整体预测效果。

预测阶段

  • 当新的数据实例需要被预测时,首先用第一层的所有基础模型进行预测,得到新的元特征向量
  • 然后将该向量输入到第二层的元学习器中,得出最终的预测结果
标题

        在了解完集成学习中的堆叠模型后,可以发现堆叠模型不光是有并行集成的思想还有顺序集成的部分,在堆叠模型中弱学习器(基础模型)的预测结果不是通过之前讲的三种集成策略(投票、平均、加权平均)来得到最终结果。 而是将预测结果变成输入,再用一个叫元学习器的模型来处理,这才得到最终结果。

相关文章:

【机器学习300问】36、什么是集成学习?

一、什么是集成学习? (1)它的出现是为了解决什么问题? 提高准确性:单个模型可能对某些数据敏感或者有概念偏见,而集成多个模型可以提高预测的准确性。让模型变稳定:一些模型,如决策…...

Stargo 管理部署 Starrocks 集群

配置主机间 ssh 互信 ssh-copy-id hadoop02 ssh-copy-id hadoop03配置系统参数 ############################ Swap检查 ############################ echo 0 | sudo tee /proc/sys/vm/swappiness########################### 内核参数检查 ########################## echo…...

CI/CD实战-git工具使用 1

版本控制系统 本地版本控制系统 集中化的版本控制系统 分布式版本控制系统 git官网文档:https://git-scm.com/book/zh/v2 Git 有三种状态:已提交(committed)、已修改(modified) 和 已暂存(sta…...

Linux中udp服务端,客户端的开发

UDP通信相关函数: ssize_t recvfrom(int sockfd, void *buf, size_t len, int flags, struct sockaddr *src_addr, socklen_t *addrlen); 函数说明:接收信息 参数说明:sockfd:套接字buf:要接收的缓冲区len:缓冲区…...

1.python安装

1.检查是否已经安装python 打开cmd 输入 python --version查看是否有返回版本,没有返回则环境变量未设置好,或者未安装 2.下载安转python https://www.python.org/downloads/windows/ 勾选配置环境变量路径 安装成功...

【Flink SQL】Flink SQL 基础概念(三):SQL 动态表 连续查询

《Flink SQL 基础概念》系列,共包含以下 5 篇文章: Flink SQL 基础概念(一):SQL & Table 运行环境、基本概念及常用 APIFlink SQL 基础概念(二):数据类型Flink SQL 基础概念&am…...

科研绘图一:箱线图(添加贝赛尔曲线)

R语言绘图系列—箱线图贝赛尔曲线 (一): 科研绘图一:箱线图(添加贝赛尔曲线) 文章目录 R语言绘图系列---箱线图贝赛尔曲线(一): 科研绘图一:箱线图(添加贝赛尔曲线&…...

最佳实践:Swagger 自动生成 Api 文档

自动生成 API 文档的好处不言而喻,它可以提供给你的团队或者外部协作者,方便 API 使用者准确地调用到你的 API。为了降低手动编写文档带来的错误,很多 API 开发者会偏向于寻找一些好的方法来自动生成 API 文档。本文将会介绍一些常用的文档生…...

搬砖。。。

0搬砖 - 蓝桥云课 (lanqiao.cn) 问题描述 这天,小明在搬砖 他一共有n块砖他发现第砖的重量为w价值为i。他突然想从这些砖中选一些出来从下到上堆成一座塔,并且对于塔中的每一块砖来说,它上面所有砖的重量和不能超过它自身的价值。 他想知道这样堆成的塔的…...

【论文笔记合集】Transformers in Time Series A Survey综述总结

本文作者: slience_me 文章目录 Transformers in Time Series A Survey综述总结1 Introduction2 Transformer的组成Preliminaries of the Transformer2.1 Vanilla Transformer2.2 输入编码和位置编码 Input Encoding and Positional Encoding绝对位置编码 Absolute …...

HarmonyOS(二十)——管理应用拥有的状态之LocalStorage(页面级UI状态存储)

LocalStorage是页面级的UI状态存储,通过Entry装饰器接收的参数可以在页面内共享同一个LocalStorage实例。LocalStorage也可以在UIAbility实例内,在页面间共享状态。 本文仅介绍LocalStorage使用场景和相关的装饰器:LocalStorageProp和LocalS…...

Linux系统安全②SNAT与DNAT

目录 一.SNAT 1.定义 2.实验环境准备 (1)三台服务器:PC1客户端、PC2网关、PC3服务端。 (2)硬件要求:PC1和PC3均只需一块网卡、PC2需要2块网卡 (3)网络模式要求:PC1…...

【运维】StarRocks数据迁移到新集群(针对于集群互通、不互通的情况)

文章目录 一. 迁移整体思路1. 对于新旧集群互通的情况2. 对于新旧集群不互通的情况二、迁移过程(两个集群互通的情况)1. 备份过程1.1. 通过mysqlclient与starrocks进行关联1.2. 创建仓库与minio建立联系1.3. 备份数据到minio2. 迁移过程2.1. 通过mysqlclient与starrocks进行关…...

facebook个人广告账户充值方式有哪些?看这一篇就够了

可以使用虚拟信用卡进行充值,也可以使用虚拟卡绑定paypal进行充值 点击获取虚拟卡 开卡步骤如下图 Facebook如何添加支付方式 1.前往支付设置。 2.在支付方式版块,点击添加支付方式。 3.选择要添加的支付方式,填写相关信息,然…...

蓝桥杯算法练习系统—作物杂交【第十一届】【省赛】【C组】

问题描述 作物杂交是作物栽培中重要的一步。已知有 N 种作物(编号 1 至 N ),第 i 种作物从播种到成熟的时间为 Ti。 作物之间两两可以进行杂交,杂交时间取两种中时间较长的一方。如作物 A 种植时间为 5 天,作物 B 种植时间为 7 天&#xff0…...

java组合模式揭秘:如何构建可扩展的树形结构

组合模式(Composite Pattern)是一种结构型设计模式,它允许将对象组合成树形结构以表示整体/部分层次结构。组合模式使得客户端可以统一对待单个对象和组合对象,从而使得客户端可以处理更复杂的结构。 组合模式的主要组成部分包括&…...

pycharm 历史版本下载地址

pycharm 历史版本下载地址 老版本能用就行,不需要搞最新的,当然了,有些小伙伴就是喜欢新的(最先吃螃蟹) 博主就不搞最新了,哈哈 上菜: https://www.jetbrains.com/pycharm/download/other.html…...

Day39:安全开发-JavaEE应用SpringBoot框架Actuator监控泄漏Swagger自动化

目录 SpringBoot-监控系统-Actuator SpringBoot-接口系统-Swagger 思维导图 Java知识点: 功能:数据库操作,文件操作,序列化数据,身份验证,框架开发,第三方组件使用等. 框架库:MyB…...

VsCode免密登录

创建本地密匙 按下WinR输入cmd,输入 ssh-keygen -t rsa然后连续回车直到结束 找到Your public key has been saved in C:\Users\Administrator/.ssh/id_rsa.pub,每个人都不一样找到密匙所在地 打开id_rsa.pub这个文件,可以用记事本打开&am…...

蓝桥杯第八届A组:分巧克力

题目描述 儿童节那天有 K 位小朋友到小明家做客。小明拿出了珍藏的巧克力招待小朋友们。 小明一共有 NN 块巧克力,其中第 ii 块是 HiWiHi​Wi 的方格组成的长方形。为了公平起见, 小明需要从这 NN 块巧克力中切出 K 块巧克力分给小朋友们。切出的巧克…...

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...

Linux 文件类型,目录与路径,文件与目录管理

文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...

Xshell远程连接Kali(默认 | 私钥)Note版

前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...

相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解

【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了: 这一篇我们开始讲: 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下: 一、场景操作步骤 操作步…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

ssc377d修改flash分区大小

1、flash的分区默认分配16M、 / # df -h Filesystem Size Used Available Use% Mounted on /dev/root 1.9M 1.9M 0 100% / /dev/mtdblock4 3.0M...

连锁超市冷库节能解决方案:如何实现超市降本增效

在连锁超市冷库运营中,高能耗、设备损耗快、人工管理低效等问题长期困扰企业。御控冷库节能解决方案通过智能控制化霜、按需化霜、实时监控、故障诊断、自动预警、远程控制开关六大核心技术,实现年省电费15%-60%,且不改动原有装备、安装快捷、…...

大语言模型如何处理长文本?常用文本分割技术详解

为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...

06 Deep learning神经网络编程基础 激活函数 --吴恩达

深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...

【HTTP三个基础问题】

面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...