零基础入门数据挖掘之心电图分类 Task5 建模融合

2024-05-02 19:58

本文主要是介绍零基础入门数据挖掘之心电图分类 Task5 建模融合,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

此次学习是整个学习的最后一节。收获颇丰!感谢datawhale提供的平台!

模型融合

在前面的特征工程中,特征融合也是一个重要的环节,而对于模型的融合也是一个相当重要的环节。俗话说:三个臭皮匠顶个诸葛亮

常见的模型融合有以下三大类型的方法

  1. 简单的加权融合:这部分比较好理解,光看名字就可以理解例如
    回归(分类概率):算术平均融合(Arithmetic mean),几何平均融合(Geometric mean);
    分类:投票(Voting)
    综合:排序融合(Rank averaging),log融合
  2. stacking/blending:本次blog主要学习这个给方法
  3. boosting/bagging :在前面的学习提到了

stacking

参考链接

stacking:stacking是一种分层模型集成框架。以两层为例,第一层由多个基学习器组成,其输入为原始训练集,第二层的模型则是以第一层基学习器的输出作为特征加入训练集进行再训练,从而得到完整的stacking模型。stacking的方法在各大数据挖掘比赛上都很风靡,模型融合之后能够小幅度的提高模型的预测准确度。
如图所示
在这里插入图片描述
第一层,我们采用RF、ET、GBDT、XGB四种模型,分别对训练样本进行预测,然后将预测结果作为下一层的训练样本
具体过程:

  1. 划分training data为K折,为各个模型的训练打下基础;
  2. 针对各个模型RF、ET、GBDT、XGB,分别进行K次训练,每次训练保留K分之一的样本用作训练时的 检验,训练完成后对testing data进行预测,一个模型会对应5个预测结果,将这5个结果取平均;
  3. 最后分别得到四个模型运行5次之后的平均值,同时拼接每一系列模型对训练数据集的预测结果带入下一层;
    第二层:将上一层的四个结果带入新的模型,进行训练再预测。第二层的模型一般为了防止过拟合会采用简单的模型。
    具体训练过程:将四个预测结果,拼接上各个样本的真实label,带入模型进行训练,最终再预测得到的结果就是stacking融合之后的最终预测结果了。

blending

  1. Blending方式和Stacking方式很类似,相比Stacking更简单点,两者区别是:
    Blending是直接准备好一部分10%留出集只在留出集上继续预测,用不相交的数据训练不同的 Base Model,将它们的输出取(加权)平均。实现简单,但对训练数据利用少了
  2. blending 的优点是:比stacking简单,不会造成数据穿越(所谓数据穿越,就比如训练部分数据时候用了全局的统计特征,导致模型效果过分的好),generalizers和stackers使用不同的数据,可以随时添加其他模型到blender中。
  3. 缺点在于:blending只使用了一部分数据集作为留出集进行验证,而stacking使用多折交叉验证,比使用单一留出集更加稳健。

一些其他方法

利用stacking的原理,将特征放进模型中预测,并将预测结果变换并作为新的特征加入原有特征中再经过模型预测结果 (Stacking变化)
代码如下

def Ensemble_add_feature(train,test,target,clfs):# n_flods = 5# skf = list(StratifiedKFold(y, n_folds=n_flods))train_ = np

这篇关于零基础入门数据挖掘之心电图分类 Task5 建模融合的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/955053

相关文章

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

基于人工智能的图像分类系统

目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 图像分类是计算机视觉中的一个重要任务,目标是自动识别图像中的对象类别。通过卷积神经网络(CNN)等深度学习技术,我们可以构建高效的图像分类系统,广泛应用于自动驾驶、医疗影像诊断、监控分析等领域。本文将介绍如何构建一个基于人工智能的图像分类系统,包括环境

认识、理解、分类——acm之搜索

普通搜索方法有两种:1、广度优先搜索;2、深度优先搜索; 更多搜索方法: 3、双向广度优先搜索; 4、启发式搜索(包括A*算法等); 搜索通常会用到的知识点:状态压缩(位压缩,利用hash思想压缩)。

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

数论入门整理(updating)

一、gcd lcm 基础中的基础,一般用来处理计算第一步什么的,分数化简之类。 LL gcd(LL a, LL b) { return b ? gcd(b, a % b) : a; } <pre name="code" class="cpp">LL lcm(LL a, LL b){LL c = gcd(a, b);return a / c * b;} 例题:

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多

【IPV6从入门到起飞】5-1 IPV6+Home Assistant(搭建基本环境)

【IPV6从入门到起飞】5-1 IPV6+Home Assistant #搭建基本环境 1 背景2 docker下载 hass3 创建容器4 浏览器访问 hass5 手机APP远程访问hass6 更多玩法 1 背景 既然电脑可以IPV6入站,手机流量可以访问IPV6网络的服务,为什么不在电脑搭建Home Assistant(hass),来控制你的设备呢?@智能家居 @万物互联

poj 2104 and hdu 2665 划分树模板入门题

题意: 给一个数组n(1e5)个数,给一个范围(fr, to, k),求这个范围中第k大的数。 解析: 划分树入门。 bing神的模板。 坑爹的地方是把-l 看成了-1........ 一直re。 代码: poj 2104: #include <iostream>#include <cstdio>#include <cstdlib>#include <al

MySQL-CRUD入门1

文章目录 认识配置文件client节点mysql节点mysqld节点 数据的添加(Create)添加一行数据添加多行数据两种添加数据的效率对比 数据的查询(Retrieve)全列查询指定列查询查询中带有表达式关于字面量关于as重命名 临时表引入distinct去重order by 排序关于NULL 认识配置文件 在我们的MySQL服务安装好了之后, 会有一个配置文件, 也就

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念