Paper Reading: Imbalanced ensemble learning leveraging a novel data-level diversity metric

news/2024/9/28 2:45:56

目录
  • 研究动机
  • 文章贡献
  • 本文方法
    • 基于实例欧氏距离的多样性度量 IED
    • PBIL 引导的不平衡集成学习
  • 实验结果
    • 数据集和实验设置
    • 对比不同的采样比
    • 配对算法的鲁棒性
    • 复杂度分析
    • 投票策略的评估
    • 对比实验
  • 优点和创新点

Paper Reading 是从个人角度进行的一些总结分享,受到个人关注点的侧重和实力所限,可能有理解不到位的地方。具体的细节还需要以原文的内容为准,博客中的图表若未另外说明则均来自原文。

论文概况 详细
标题 《Imbalanced ensemble learning leveraging a novel data-level diversity metric》
作者 Ying Pang, Lizhi Peng, Haibo Zhang, Zhenxiang Chen, Bo Yang
发表期刊 Pattern Recognition
发表年份 2025
期刊等级 中科院 SCI 期刊分区(2023年12月最新升级版)1 区,CCF-B
论文代码 文中未公开

作者单位:

  1. Quancheng Laboratory, Jinan, 250022, China
  2. School of Computing, University of Otago, Dunedin, 9016, New Zealand
  3. School of Information Science and Engineering, University of Jinan, 250022, China

研究动机

数据不平衡是机器学习任务的关键挑战,训练数据的偏态分布会对标准机器学习模型的性能造成严重的负面影响。将集成学习与数据重采样或成本敏感学习相结合的不平衡集成学习算法性能较高,其中多样性是集成学习的关键属性之一。为了衡量集成学习模型的多样性,已经有几个常用的基于分类器的度量,如 Q 统计量、相关系数 𝑝 和分歧度量,其中 Q 统计量是常用的度量。然而现有的多样性指标都是用来衡量基分类器生成的预测结果的多样性,在测量模型多样性之前必须先训练集成学习模型的每个基分类器。如果多样性评估的性能较差,则必须通过重新采样训练数据或调整基本分类器来重复模型训练,这大大增加了训练集成学习模型的复杂性。

文章贡献

为了解决基于现有多样性度量的学习复杂性较高的问题,本文提出了一种新的数据级多样性度量 IED。它能够直接基于训练数据集度量多样性,而不需要训练分类器,同时本文也设计了两种基于最优实例配对和贪婪实例配对的 IED 计算方法。在此基础上,本文设计了一种不平衡集成学习模型 P-EUSBagging,它使用基于种群的增量学习(PBIL)来生成子数据集,再用这些数据集用于训练具有最大数据级多样性的基分类器。P-EUSBagging 采用 Bagging 来集成,并设计了一种新的权重自适应投票策略,奖励给出正确预测的基本分类器。实验使用 44 个不平衡数据集,实验结果表明 IED 可以显著减少训练集成学习模型所需的时间,PEUSBagging 在 G-Mean 和 AUC 上都显著提高了学习性能。

本文方法

基于实例欧氏距离的多样性度量 IED

本文提出了一个种名为 IED 的方法来度量相同大小的 𝐿 子数据集的多样性,IED 的主要思想是分两步计算多样性:首先计算 𝐿 子数据集中任意两个子数据集的多样性,然后通过平均 L 子数据集中两个子数据集的所有成对多样性来计算所有 𝐿 子数据集的 IED。
设 𝐷𝑝={𝑑𝑝1,𝑑𝑝2,…,𝑑𝑝𝑛} 和 𝐷𝑞={𝑑𝑞1,𝑑𝑞2,…,𝑑𝑞𝑛} 为两个子数据集,每个子集包含 𝑛 个样本。对这两个子数据集中的实例进行如下配对:对于 𝐷𝑝 中的每个实例,根据两个实例的欧几里得距离从 𝐷𝑞 中找到“最匹配”的一个。这两个“最匹配”的实例称为实例对,每个实例只能出现在一个实例对中,因此实例对中的两个实例并不总是彼此最近的邻居。如下图所示,尽管 𝑥2 是 𝑧1 和 𝑧2 最近的邻居,但是符合要求的情况是 𝑧1 与 𝑥1 配对,𝑥2 与 𝑧2 配对。

令 𝑃={{𝑑𝑝11,𝑑𝑞12},{𝑑𝑝21,𝑑𝑞22},……,{𝑑𝑝𝑛1,𝑑𝑞𝑛2}} 为实例配对的集合,此时两个子数据集 𝐷𝑝 和 𝐷𝑞 的多样性用 𝐼𝐸𝐷𝑝,𝑞 表示,使用如下公式计算,其中 𝑚 为数据实例的特征维度。

𝐿 子数据集的多样性是通过平均任意两个子数据集的多样性来计算的,使用如下公式计算。

计算最优配对 𝐼𝐸𝐷 的伪代码如下所示。

为了降低实例配对的复杂度,本文设计了一种基于随机化的贪心算法,伪代码如下所示。该方法从一个数据集中随机选择一个实例,然后在另一个数据集中找到最佳配对实例。

PBIL 引导的不平衡集成学习

在此基础上,本文提出了一种新的非平衡集成学习框架,如下图所示。该框架首先使用基于种群的增量学习(Population Based Incremental Learning, PBIL) 生成实例多样性最大的子数据集,然后使用每个子数据集来训练基本分类器,最后使用权重自适应投票策略集成所有基分类器。

因为欠采样过程可以模拟为进化算法中的二进制编码过程,同时 PBIL 是一种结合遗传算法机制和简单竞争学习的进化算法,所以使用 PBIL 来优化生成用于训练基分类器的子数据集的过程。将欠采样视为一个优化问题,原始数据集被分成多数类样本和少数类样本两个子集。然后创建一个二进制编码字符串来表示由所有多数类样本组成的染色体作为基因,每个基因可以有两种状态 1 和 0,1 表示选择相应的多数实例包含在子数据集中,0 表示排除。PBIL 维护一个概率向量,每一代的新个体都被采样。然后利用适应度最优的个体更新每一代的概率向量,强制下一代个体携带更多最优个体的基因。

为了选择实例多样性最大的 𝐿 平衡子数据集,使用 IED 作为 PBIL 的适应度函数。如下图所示,生成一条由 𝐿 片段组成的长而完整的染色体,每个段是一个子数据集的大多数实例的选择。因为每个子数据集必须是类平衡的,所以每个片段中为 1 的基因的总数应该等于少数类实例的数量。

由于 Bagging 的简单性和良好的泛化能力,因此本文的不平衡集成学习框架中使用 Bagging 策略。本文进一步提出了一种新的投票策略——自适应权重投票,这种策略可以根据每个基分类器的分类性能自适应地分配权重。关键思想是奖励给出正确预测的分类器,惩罚给出错误预测的分类器。对于训练集中的 𝑖th 实例样本样本的预测结果,𝐿 基分类器的预测结果分别表示为 𝑦'1,𝑦'2,…,𝑦'𝐿,使用 𝑧1i,𝑧2i,…,𝐿i 来表示预测结果的正确性:

不正确的预测实例的数量用 𝑛-i=−∑𝐿𝑙=1𝑧𝑙i⋅𝛼𝑙i 表示,当 𝑧𝑙i=1 时 𝛼𝑙i=0,当 𝑧𝑙i=-1 时 𝛼𝑙i=1。对于基分类器 𝑙th 将被分配一个分数 𝑠𝑙,该分数由如下公式计算:

对于一个样本,如果不是所有的基分类器都给出了错误的预测结果,给出正确预测结果的基分类器将得到奖励(𝑛-i/𝐿),而其他基分类器将得到惩罚(−𝑛-i/)。使用 𝑛-i/𝐿 作为奖励或惩罚可以实现:如果大多数分类器给出了错误的结果,则给出正确结果的少数分类器将获得较大的奖励,其他分类器将受到较大的惩罚。
最后将基分类器 𝑙 的分数计算为所有实例的分数之和,即 𝑆𝑙=∑𝑚i=1=𝑠𝑙i,其中 𝑚 为训练数据集中的实例数。在用于投票之前,需要对基本分类器的分数进行规范化,首先使用线性函数或 s 型函数将它们映射到 [0,1] 的范围。

基于上述权重分配机制,集成学习模型的最终预测结果从如下公式得出,其中 h𝑙(x) 为基础分类器𝑙对测试实例分式预测的结果。每当基分类器的分类性能发生变化时,投票权重就会自动更新。

实验结果

数据集和实验设置

使用来自 KEEL 库的 44 个不平衡数据集进行实验,使用五折交叉验证和 KEEL 中指定的相同数据分区来确保可重复性。使用 DT 作为集成学习的基本分类器,所有方法都使用 scikit-learn 实现。使用 G-Mean 和 AUC 作为评价指标。

对比不同的采样比

使用随机欠采样来生成训练基分类器的子数据集,通过改变欠采样比率来控制数据集的多样性。例如比率为 0.1 意味着 90% 的实例在所有子数据集中是相同的, 10% 是从使用随机欠采样的原始数据集中选择的。每个子数据集有相同数量的多数类和少数类实例,集成学习模型由 10 个基分类器组成。欠采样率在 0.05~1 之间变化,步长为 0.05,过程如下:

  1. 对于每个随机抽样比率,生成 10 个子集作为训练集,然后使用 IED 评估这 10 个子集的多样性。
  2. 使用生成的子集构建 10 个基分类器,并在测试数据集上进行测试,使用 Q 统计量评估 10 个基分类器的多样性。
  3. 使用多数投票来集成基本分类器的预测,以生成测试数据集的总体分类结果,然后计算当前集成模型的 AUC。

下图展示了随机选取的 20 个数据集的 IED 和 Q 统计量测试结果进行对比,其中 x 表示多样性,y 轴表示 AUC。可见 IED 与 Q 统计量曲线方向相反,IED 值越大则多样性越大,Q 统计量值越小则多样性越大。这表明 AUC 和多样性值的拟合结果与少数类实例的绝对数量的相关性更强,而不是与 IR 的相关性有关。当训练实例数量较少时,实例多样性对集成学习性能的影响较弱。

接着计算 IED 与其他三个多样性指标之间的 Pearson 相关系数,分别是 Q 统计量、相关系数 𝜌 和分歧度量。Pearson 相关系数衡量两个变量之间的关联强度,接近 1 的值表示强相关性。结果如下图所示,其中 x 轴表示按少数类实例数升序排序的 44 个数据集,y 轴表示系数值。可见在大多数数据集上,从 IED 数据级度量和三个基于分类器的度量中获得的多样性值之间的高度相关性。

配对算法的鲁棒性

此处通过比较贪婪配对算法和最优配对算法来评估 IED 的鲁棒性,下图显示了两种配对算法对每个数据集的 IED 结果的 Pearson 相关系数。平均 Pearson 相关系数为 0.98,表明两种配对算法的评价具有较高的相关性。随着少数群体数量的增加,皮尔逊相关系数略有下降,总体而言两种算法计算的多样性之间存在很强的相关性。表明贪婪算法在测量数据级多样性方面几乎与最优配对算法一样有效,但复杂度更低。

复杂度分析

使用 IED 和其他三个多样性度量来分析训练集成学习模型的时间复杂度,使用梯度提升决策树(GBDT)作为基分类器。下图显示了使用不同基数分类器数量的比较方法的运行时间,当基分类器比较复杂时,IED 的运行时间明显低于其他三种多样性指标。

下图显示了基于实现多样性所需的重采样操作次数的不同方法的运行时间,其中基分类器的个数设置为 10。结果表明随着重采样的增加,需要更多的时间来训练集成学习模型,IED 的运行时间增长明显低于其他三个多样性指标。

投票策略的评估

此处对 Min-Max 函数和 Sigmoid 函数的性能进行比较,同时将本文的方案与其他四种投票策略进行了比较,分别是:Majority、Weight-accuracy、Weight-LR、Cascade voting。每种投票策略的获胜时间如下图所示,其中 Adaptive-M 和 Adaptive-S 分别表示使用 Min-Max 函数和 Sigmoid 函数的权重自适应投票策略,可见本文提出的策略在 AUC 和 G-Mean 指标上都始终具有优势。

对比实验

将提出的不平衡集成学习模型 P-EUSBagging 与其他 8 种方法进行了比较,这些对比算法和参数设置如下表所示。

下面两张表给出了 44 个数据集上所有方法的 AUC 和 G-mean 的测试结果,P-EUSBagging 在 AUC 和 G-mean 结果方面优于其他集成模型。

优点和创新点

个人认为,本文有如下一些优点和创新点可供参考学习:

  1. 针对现有的评估集成学习模型中基分类器的多样性的方法的复杂性较高的问题,本文基于欧氏距离设计了一种新的指标 IED,结合本文提出的贪心算法能够高效地对多样性进行评估;
  2. 基于 IED 指标,本文使用 PBIL 算法生成实例多样性最大的子数据集来训练分类器,增强了基分类器的多样性;
  3. 本文提出了一种自适应权重投票策略,该策略可以增大较强的基分类器的投票权重。

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

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

相关文章

Git 分支本质及与 commit、HEAD、tag 的关系

基于: Git - Git 是什么? Git - 分支简介 Git - 打标签快照 在介绍 Git 分支前,需要知道什么是 commit 对象,介绍 commit 对象前,需要先了解 Git 保存数据的方式。Git 直接记录快照,而非差异比较。 从概念上来说,其它大部分版本控制系统(包括 Subversion 和近似工具)以…

深度讲解-互联网算法备案指南和教程

随着人工智能和大数据技术的迅猛发展,互联网算法在内容推荐、用户画像、智能客服等领域发挥着越来越重要的作用。然而,算法的广泛应用也带来了潜在的安全风险和合规挑战。为了规范互联网算法的开发与应用,国家互联网信息办公室等相关部门发布了《互联网算法备案管理规定》,…

Git 分支本质及与 commit、HEAD、tag 之间的关系

基于: Git - Git 是什么? Git - 分支简介 Git - 打标签快照 在介绍 Git 分支前,需要知道什么是 commit 对象,介绍 commit 对象前,需要先了解 Git 保存数据的方式。Git 直接记录快照,而非差异比较。 从概念上来说,其它大部分版本控制系统(包括 Subversion 和近似工具)以…

k8s 分布式存储平台 -- Longhorn

目录一、什么是 Longhorn二、架构设计1、工作原理2、工作流程3、基于微服务设计的优势三、安装1、安装要求2、使用 Longhorn 命令行工具(验证方式一)3、使用环境检查脚本(验证方式之二)3.1、安装 jq3.2、运行脚本4、安装 open-iscsi4.1、SUSE 和 openSUSE4.2、Debian 和 Ub…

全网最适合入门的面向对象编程教程:53 Python 字符串与序列化-字符串与字符编码

在 Python 中,字符串是文本的表示,默认使用 Unicode 编码,这允许你处理各种字符集,字符编码是将字符转换为字节的规则,常见的编码包括UTF-8、UTF-16和ASCII。全网最适合入门的面向对象编程教程:53 Python 字符串与序列化-字符串与字符编码摘要: 在 Python 中,字符串是文…

【基础岛第3关】浦语提示词工程实践

[to2024-09-25 18:32:11 星期三c] 案例描述 0、前期准备 创建开发机 0.1 环境配置创建虚拟环境并激活创建虚拟环境conda create -n langgpt python=3.10 -y conda activate langgpt 2. 安装必要的库 # 安装一些必要的库 conda install pytorch==2.1.2 torchvision==0.16.2 torc…

9月27日swing知识点

swing是一系列图形用户界面的控件的集合 Swing中GUI类分为三大类: 容器类 JFrame、JPanel、JScrollPane UI组件类 JLabel、JTextField、JTextArea、JButton JCheckBox、JRadioButton、JComboBox 帮助类 Color、Font、Dimension 这三者的依存关系为组件必须依存在顶层容器中,组…