一种面向不平衡数据集的数据处理方法

未命名 09-21 阅读:67 评论:0


1.本发明涉及机器学习领域,特别是数据挖掘领域,尤其涉及不平衡数据集的特征选择和数据生成。


背景技术:

2.在实际的机器学习任务中,数据集通常是不平衡的,即某些类别的样本数量远远少于其他类别。这种情况会对分类器的性能产生负面影响,尤其是对于少数类类别的识别效果。
3.目前,研究人员主要从数据层面和算法层面入手解决不平衡数据分类问题。在数据层面上,主要采用人为干预的方法,通过调整不平衡数据的分布来获得相对平衡的数据集。而在算法层面上,旨在调整传统的分类算法或提出对现有分类思想进行优化和改进,使其适应不平衡数据集的内在特征,从而提高对少数类样本的识别能力。
4.针对不平衡的数据集,传统的特征选择方法只以精度为优化目标,无法充分考虑数据的分布情况。这种方法容易导致对多数类有利的特征被偏重考虑,从而无法有效解决少数类的识别问题。因此,需要设计适用于不平衡数据集的特征选择方案,以获取适用于不平衡数据集的最佳特征。


技术实现要素:

5.技术问题:本发明提供了一种面向不平衡数据集的特征选择与数据生成方法,旨在提高学习算法对少数类的识别能力。
6.针对传统特征选择方法只以精度为优化目标而忽略数据分布情况的问题,本发明提供一种基于bagging-lightgbm的特征选择算法。该算法通过对每个类别的样本进行有放回抽样,形成多个样本子集,从而使样本子集中每个类别的样本个数大致均衡,提高学习算法对少数类样本的识别能力。
7.同时,本发明还提供一种不平衡数据集的数据生成方法lof-enhanced smote算法。该算法结合lof(局部异常因子,local outlier factor)算法和不同的概率分布函数,通过启发式选择的参数生成人工样本,使得生成的人工样本不受边界噪声的影响,同时能够更多地保证生成样本的多样性。相较于传统的borderlinesmote算法,lof-enhanced smote算法在生成人工样本时使用局部异常因子算法剔除边界噪声,并引入不同的概率分布函数以保证生成样本的多样性,从而提高分类器的性能。
8.因此,本发明提供的特征选择和数据生成方法可以有效地应对不平衡数据集的问题,提高学习算法对少数类的识别能力,具有实用性和先进性,适用于机器学习、数据挖掘等领域。
9.技术方案:本发明提供了一种面向不平衡数据集的数据处理方法,包括:
10.bagging-lightgbm的不平衡数据集特征选择算法:面向不平衡数据集的特征选择算法;
11.lof-enhanced smote算法:面向不平衡数据集的数据生成算法。
12.所述bagging-lightgbm的不平衡数据集特征选择算法包括:
13.(1)对于每一轮采样,从训练集d中随机选取m个样本,得到一个平衡的数据集di,其中每个类别的样本个数大致相等。重复这个过程k次。
14.(2)在每个平衡的数据集di中,使用lightgbm模型对子集样本进行训练,并得到每个特征的重要性值。这个过程得到k个特征重要性向量,分别为i
(1)
,i
(2)
,...,i
(k)
,其中每个向量的长度为p,p为特征数目。
15.(3)将k个特征重要性向量合并为一个特征重要性矩阵i=[i
(1)
,i
(2)
,...,i
(k)
],其中i的大小为p
×
k,p为特征数目。
[0016]
(4)计算每个特征的平均重要性值即对于每个特征i,将其在矩阵i中的k个值进行平均:
[0017][0018]
(5)对特征按照平均重要性值进行排序,选取前q个特征作为最终的特征集合,其中q是需要选择的特征数目。
[0019]
所述lof-enhanced smote算法包括:
[0020]
(1)对于每个少数类样本xi∈minority
samples
,使用n
neighbors
计算其局部密度lof得分。
[0021]
(2)根据设定的阈值threshold,将lof得分小于等于threshold的样本划分为边界样本(boundary
samples
),大于threshold的样本划分为噪声样本(noise
samples
)。
[0022]
(3)对于每个边界样本xi∈boundary
samples
,使用k
neighbors
找到其k
neighbor
个最近邻样本点x1,x2,...,x
kneighbors

[0023]
(4)对于每个边界样本xi∈boundary
samples
,对于其每个最近邻样本点xj∈xi的k
neighbors
个最近邻样本点,执行以下步骤:
[0024]
a.计算diff=x
j-x;
[0025]
b.基于设定的不同的概率分布函数distribution
kind
,生成一个随机向量r;
[0026]
c.生成合成样本x

=x+r
·
diff;
[0027]
d.将x

添加到合成样本集synthetic
samples
中。
[0028]
(5)重复执行步骤(4),直到生成新样本数达到设定的n。
[0029]
有益效果:从以上技术方案可以看出,本发明具有以下优点:
[0030]
本发明提供了一种面向不平衡数据集的特征选择与数据生成方法,解决了传统的特征选择方法只以精度为优化目标,无法充分考虑数据的分布情况以及传统的数据生成方法对噪声数据敏感的问题,并引入不同的概率分布函数以保证生成样本的多样性。
[0031]
本发明的基于bagging-lightgbm的特征选择算法,采用多次有放回抽样来构建样本子集,从而使得每个样本子集中每个类别的样本个数大致均衡,以弥补数据集不平衡的影响。通过多次随机抽样,可以使样本子集的有偏分布得到有效地平衡,同时可以让不同类别区分能力的特征互补,提高模型对少数类样本的识别能力。
[0032]
smote是针对不平衡数据集的一种常用的算法,但是smote算法有内在缺陷。首先
它可能对噪声数据进行生成,从而生成新的噪声数据。其次,smote使用线性插值生成数据,没有考虑到原始数据的分布。本发明的lof-enhanced smote算法,通过引入lof异常值检测算法,用于检测噪声,并基于设定的概率分布函数生成随机向量r,替换掉smote算法中的随机值r。smote算法的r是随机数,这里的r使用概率分布函数生成。lof-enhanced smote算法通过引入lof算法,可以更加准确地计算每个数据点的密度,从而有效地剔除噪声样本的影响。其次lof-enhanced smote使用设定的概率分布函数合成新的样本点。这种方法可以增加对少数类样本的关注程度,并在生成新样本时更加准确地反映原始数据集中的数据分布。
附图说明
[0033]
图1为bagging算法中每个基学习器的算法流程图。
[0034]
图2为概率分布函数图像,其中图2.1、2.2、2.3分别为高斯分布、伽马分布、拉普拉斯分布的函数图形。
[0035]
图3为lof-enhanced smote算法、smote、borderlinesmote算法生成新样本图,其中3.1、3.2、3.3、3.4、3.5、3.6分别为原始样本分布、smote过采样后的样本分布、borderlinesmote过采样后的样本分布、lof-enhanced smote算法分别使用高斯分布、伽马分布、拉普拉斯分布的概率分布函数过采样后的样本分布。
[0036]
图4为将本发明应用于入侵检测领域构建入侵检测模型的流程图。
具体实施方式
[0037]
本发明提供了一种面向不平衡数据集的特征选择与数据生成方法,解决了传统的特征选择方法只以精度为优化目标,无法充分考虑数据的分布情况以及传统的数据生成方法对噪声数据敏感的问题,并引入不同的概率分布函数以保证生成样本的多样性。
[0038]
为使得本技术实施例的发明目的、特征、优点能够更加的明显和易懂,下面将对本技术实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。
[0039]
本发明提供了一种面向不平衡数据集的特征选择与数据生成方法,包括:
[0040]
bagging-lightgbm的不平衡数据集特征选择算法:面向不平衡数据集的特征选择算法;
[0041]
lof-enhanced smote算法:面向不平衡数据集的数据生成算法。
[0042]
具体地,bagging是一种可并行化的套袋算法,其中每个基学习器之间不存在强依赖关系。如图1所示,bagging算法的每个基学习器都采用相同的算法,并且从原始的训练样本集上进行有放回地随机采样(bootstrap)。然后,每个基学习器在不同的训练子集上进行训练。
[0043]
具体地,通过集成多个基学习器的分类结果,bagging可以获得较高的分类性能。bagging算法的优点在于可以有效地降低模型的方差,减少过拟合的风险。同时,由于每个基学习器都是在不同的训练子集上进行训练的,因此可以有效地利用原始训练集中的信息,提高模型的性能和泛化能力。
[0044]
具体地,lightgbm中,每次节点分裂时都会计算一个分裂增益(split gain),以决
定如何将该节点分裂成两个子节点。分裂增益是基于某种分裂准则计算的,通常是通过最小化分裂后子节点的平方误差或最大化分裂后的信息增益来实现的。
[0045]
具体地,设当前节点为n,其子节点为n
left
和n
right
,则分裂增益的计算公式为:
[0046][0047]
其中,g
left
和g
right
分别是子节点的一阶梯度之和,h
left
和h
right
分别是子节点的二阶梯度之和,λ是正则化参数,用于避免过拟合。
[0048]
具体地,在lightgbm中,每个特征的重要性是基于其平均分裂增益来计算的。具体而言,对于每个特征fi,我们将其在每个节点上的分裂增益相加,然后除以节点数目来得到平均分裂增益,即:
[0049][0050]
其中,n是节点数目。
[0051]
优选地,bagging-lightgbm的不平衡数据集特征选择算法,对于每一轮采样,从训练集d中随机选取m个样本,得到一个平衡的数据集di,其中每个类别的样本个数大致相等。重复这个过程k次。
[0052]
优选地,在每个平衡的数据集di中,使用lightgbm模型对子集样本进行训练,并得到每个特征的重要性值。这个过程得到k个特征重要性向量,分别为i
(1)
,i
(2)
,...,i
(k)
,其中每个向量的长度为p,p为特征数目。
[0053]
优选地,将k个特征重要性向量合并为一个特征重要性矩阵i=[i
(1)
,i
(2)
,...,i
(k)
],其中i的大小为p
×
k,p为特征数目。
[0054]
优选地,计算每个特征的平均重要性值即对于每个特征i,将其在矩阵i中的k个值进行平均:
[0055][0056]
优选地,对特征按照平均重要性值进行排序,选取前q个特征作为最终的特征集合,其中q是需要选择的特征数目。
[0057]
具体地,lof算法通过计算每个点的局部异常因子(lof)来判断该点是否为异常点,lof值越大,说明该点越可能是一个异常点。
[0058]
具体地,对于数据集中的任意一个数据点x,其密度ρ
x
被定义为在以x为中心、以半径∈为为邻域的球体内包含的点数,即:
[0059][0060]
其中,n

(x)表示以x为中心,以半径∈为邻域的球体内的所有点的集合。
[0061]
具体地,对于数据集中的两个数据点x和y,如果y在以x为中心、以半径∈为邻域的球体内,即y∈n

(x),则称y可到达x。x和y之间的可达密度reachdist

(x,y)被定义为x到y的距离d(x,y)和y的密度rhoy的较大值,即:
[0062]
reachdist

(x,y)=max{d(x,y),ρy}
[0063]
具体地,对于数据集中的一个数据点x,其局部异常因子(lof)值为x的邻居点的可达密度与x的可达密度的比值的平均值的倒数,即:
[0064][0065]
具体地,传统的过采样算法,使用线性插值合成新样本的方式可能存在问题,特别是当处理较为复杂的数据集时。例如,当数据集具有高维度或非线性特征时,合成的新样本可能会跨越多个类别之间的边界,从而生成不准确的合成样本。换言之,合成数据可能会集中在同一条线上,这可能会加剧过度生成的问题。为了解决这个问题,我们可以考虑使用不同的概率分布函数生成随机向量进行插值,以在生成人工样本时更多地保证多样性。
[0066]
优选地,选用以下常见的概率分布函数。
[0067]
(1)高斯分布(gaussian distribution)
[0068][0069]
其中,μ表示分布的中心位置,控制着高斯分布的中心位置。σ控制着高斯分布的形状和分布的范围大小。设置μ=0。
[0070]
(2)伽马分布(gamma distribution)
[0071][0072]
其中,k》0是形状参数,θ》0是尺度参数,γ(k)是gamma函数,定义为:
[0073][0074]
设置k=1。
[0075]
(3)拉普拉斯分布(laplace distribution)
[0076][0077]
其中,μ表示分布的中心位置(即平均值),b表示分布的尺度(即方差的倒数)。设置μ=0。
[0078]
图2.1、2.2、2.3分别为高斯分布、伽马分布、拉普拉斯分布的函数图形。
[0079]
优选地,对于每个少数类样本xi∈minority
samples
,使用n
neighbor
计算其局部密度lof得分。
[0080]
优选地,根据设定的阈值threshold,将lof得分小于等于threshold的样本划分为边界样本(boundary
samples
),大于threshold的样本划分为噪声样本(noise
samples
)。
[0081]
优选地,对于每个边界样本xi∈boundary
samples
,使用k
neighbor
找到其k
neighbor
个最近邻样本点
[0082]
优选地,对于每个边界样本xi∈boundary
samples
,对于其每个最近邻样本点xj∈xi的k
neighbors
个最近邻样本点,执行以下步骤:
[0083]
a.计算diff=x
j-x;
[0084]
b.基于设定的概率分布函数distribution
kind
,生成一个随机向量r;
[0085]
c.生成合成样本x

=x+r
·
diff;
[0086]
d.将x

添加到合成样本集synthetic
samples
中。
[0087]
优选地,重复执行步骤上述步骤,直到生成新样本数达到设定的n。
[0088]
具体地,与传统的smote、borderlinesmote算法相比,lof-enhanced smote算法结合了lof算法和不同的概率分布函数,使用启发式选择的参数来生成新样本。这样,我们可以在不受边界噪声影响的情况下,更多地保证生成样本的多样性。如图3.1、3.2、3.3、3.4、3.5、3.6分别为原始样本分布、smote过采样后的样本分布、borderlinesmote过采样后的样本分布、lof-enhanced smote算法分别使用高斯分布、伽马分布、拉普拉斯分布的概率分布函数过采样后的样本分布。
[0089]
具体地,如图4,将本发明应用于入侵检测领域,构建入侵检测模型。在数据预处理阶段,首先对入侵检测数据集进行label encoder编码和归一化处理,然后将数据集划分为训练集和测试集。接着,在特征选择阶段,使用bagging-lightgbm算法得出适用于不平衡数据集的最优特征。得到最优特征后,使用lof-enhanced smote算法合成新样本,然后可以使用贝叶斯优化算法对lof-enhanced smote算法进行超参数优化。最后,将通过lof-enhanced smote算法得到的数据集送入lightgbm进行训练,使用测试集进行测试,并使用贝叶斯优化算法对lightgbm模型进行超参数优化。

技术特征:
1.一种面向不平衡数据集的数据处理方法,其特征在于,该方法包括:采用bagging-lightgbm算法提取不平衡数据集的特征,进而生成采样数据;所述bagging-lightgbm算法的步骤包括:(1)对于每一轮采样,从训练集d中选取m个样本,得到一个平衡的数据集d
i
,重复这个过程k次;(2)在每个平衡的数据集d
i
中,使用lightgbm模型进行样本训练,得到每个特征的重要性值;得到k个特征重要性向量,分别为i
(1)
,i
(2)
,...,i
(k)
,其中每个向量的长度为p,p为特征数目;将k个特征重要性向量合并为一个特征重要性矩阵i=[i
(1)
,i
(2)
,...,i
(k)
],其中i的大小为p
×
k;(3)计算每个特征的平均重要性值即对于每个特征i,将其在特征重要性矩阵i中的k个值进行平均;(4)对特征按照平均重要性值进行排序,选取前q个特征作为最终的特征集合,其中q是需要选择的特征数目。2.根据权利要求1所述的一种面向不平衡数据集的数据处理方法,其特征在于,采用lof-enhanced smote算法生成采样数据,具体步骤包括:(1)对于每个少数类样本x
i
∈minority
samples
,使用n
neighbor
计算其局部密度lof得分;(2)根据设定的阈值threshold,将lof得分小于等于threshold的样本划分为边界样本boundary
samples
,大于threshold的样本划分为噪声样本noise
samples
;(3)对于每个边界样本x
i
∈boundary
samples
,使用k
neighbors
找到其k
neighbors
个最近邻样本点(4)对于每个边界样本x
i
∈boundary
samples
,对于其每个最近邻样本点x
j
∈x
i
的k
neighbors
个最近邻样本点,执行以下步骤:a.计算diff=x
j-x;b.基于设定的概率分布函数distribution
kind
,生成一个随机向量r;c.生成合成样本x

=x+r
·
diff;d.将x

添加到合成样本集synthetic
samples
中;(5)重复执行步骤(4),直到合成样本集synthetic
samples
中新样本数达到设定的n。3.根据权利要求2所述的一种面向不平衡数据集的数据处理方法,其特征在于,所述概率分布函数distribution
kind
为高斯分布函数、伽马分布函数、拉普拉斯分布函数中的一种或几种。4.权利要求1-3任一所述面向不平衡数据集的数据处理方法在入侵检测领域的应用。

技术总结
本发明提供一种面向不平衡数据集的数据处理方法,通过对每个类别的样本进行有放回抽样,形成多个样本子集,从而使样本子集中每个类别的样本个数大致均衡,提高学习算法对少数类样本的识别能力。本发明结合LOF算法和不同的概率分布函数,通过启发式选择的参数生成人工样本,使得生成的人工样本不受边界噪声的影响,同时能够更多地保证生成样本的多样性。相较于传统的BorderlineSMOTE算法,本发明在生成人工样本时使用局部异常因子算法剔除边界噪声,并引入不同的概率分布函数以保证生成样本的多样性,从而提高分类器的性能。本发明可以有效地应对不平衡数据集的问题,提高学习算法对少数类的识别能力,适用于机器学习、数据挖掘等领域。挖掘等领域。挖掘等领域。


技术研发人员:胡静 宋铁成 张状状 陈然 夏玮玮 燕锋 沈连丰
受保护的技术使用者:东南大学
技术研发日:2023.03.20
技术公布日:2023/9/20
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐