CN117892209A - 一种基于支持向量机和进化计算的过采样方法 - Google Patents
一种基于支持向量机和进化计算的过采样方法 Download PDFInfo
- Publication number
- CN117892209A CN117892209A CN202410001797.0A CN202410001797A CN117892209A CN 117892209 A CN117892209 A CN 117892209A CN 202410001797 A CN202410001797 A CN 202410001797A CN 117892209 A CN117892209 A CN 117892209A
- Authority
- CN
- China
- Prior art keywords
- samples
- sample
- generated
- gene
- minority
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000012706 support-vector machine Methods 0.000 title claims abstract description 41
- 230000007246 mechanism Effects 0.000 claims abstract description 11
- 238000011156 evaluation Methods 0.000 claims abstract description 9
- 230000002068 genetic effect Effects 0.000 claims abstract description 7
- 108090000623 proteins and genes Proteins 0.000 claims description 47
- 238000012549 training Methods 0.000 claims description 26
- 230000008569 process Effects 0.000 claims description 24
- 238000007781 pre-processing Methods 0.000 claims description 10
- 238000005070 sampling Methods 0.000 claims description 6
- 230000001186 cumulative effect Effects 0.000 claims description 5
- 238000010187 selection method Methods 0.000 claims description 5
- 239000013598 vector Substances 0.000 claims description 5
- 238000010200 validation analysis Methods 0.000 claims description 4
- 238000004321 preservation Methods 0.000 claims description 3
- 238000012360 testing method Methods 0.000 claims description 3
- 238000012795 verification Methods 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 2
- 238000010606 normalization Methods 0.000 claims 1
- 239000000758 substrate Substances 0.000 claims 1
- 201000004569 Blindness Diseases 0.000 abstract description 3
- 238000004364 calculation method Methods 0.000 abstract description 2
- 238000005259 measurement Methods 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 9
- 238000009826 distribution Methods 0.000 description 7
- 238000013459 approach Methods 0.000 description 5
- 238000007796 conventional method Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000003090 exacerbative effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 238000009828 non-uniform distribution Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Genetics & Genomics (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Physiology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Investigating Or Analysing Biological Materials (AREA)
Abstract
本发明提供了一种基于支持向量机和进化计算的过采样方法,属于不平衡数据分类技术领域。本发明使用支持向量机自身的独特能力判别不同的少数类样本对决策边界的影响程度并以此为依据为它们分配合理的权重,从而进一步确定每个少数类样本生成的样本数量,避免了对人的经验的依赖。同时本发明采用了一种全新的方式即进化计算来生成样本,即使用了实数编码遗传算法自动生成新样本并搜索更优的替代方案,同时也强调了间隔对于分类的重要性,增加了对生成样本的评估机制,使用RCGA内置的评估机制以间隔作为衡量标准对生成样本进行评估,避免了传统样本生成方式的盲目性和局限性。
Description
技术领域
本发明属于不平衡数据分类技术领域,涉及一种基于支持向量机和进化计算的过采样方法。
背景技术
在现实生活中,经常会遇到许多领域的不平衡数据,如故障检测、医疗诊断、生物信息学等方面,如何对不平衡数据进行合理的分类是一项具有挑战性的任务。不平衡数据是指来自不同类别的样本数量存在显著差异的数据。由于不均匀的数据分布,分类器会过度关注样本较多的类别(即多数类)而忽视样本较少的类别(即少数类),从而导致决策出现偏差。在现实生活中,误判少数类的代价可能远远高于误判多数类的代价,例如,在故障检测中,故障数据属于少数类,如果漏检故障,则很可能会造成巨大损失。
为解决不平衡数据分类问题,人们进行了大量研究,这些研究可分为两类:数据层面方法和算法层面方法。数据层面方法的目标是改善原始数据集不均匀分布并使其达到平衡,包括过采样、欠采样和混合采样方法等;算法层面方法的目标是改进现有的分类方法使其可以更好的处理不平衡数据或为不平衡数据设计新的分类方法,包括核方法、单类学习、代价敏感学习和集成学习等。
过采样方法是通过增加少数类样本的数量来消除类不平衡的一种方法,并已经被证明对不平衡数据分类问题有效,例如SMOTE、Borderline-SMOTE、ADASYN和MWMOTE等。虽然这些方法在解决不平衡数据分类问题取得了一定的效果,但仍存在一些局限性,具体如下:
(1)对不同样本的权重分配可能不准确。传统方法一般是基于少数类样本的k近邻样本的类别分布从而决定其权重,也存在一些方法考虑了其他的因素,例如MWMOTE考虑了closeness factor和density factor,但是这些因素都需要设置参数而依赖人的经验,很容易造成不准确。
(2)样本生成的范围有限。传统方法一般是在少数类样本和其邻居之间进行插值来生成新样本,也存在一些方法在此基础之上进行了一些改进,例如MWMOTE引入了聚类方法从而扩大了生成新样本的范围,但是这些方法生成的样本仍被限制在一定范围内,缺乏一定的探索性,并且可能出现生成样本不均匀分布的现象,从而不利于分类。
(3)对生成新样本的质量没有评估机制。传统方法对于生成新样本的质量没有任何的评估机制,无法对它们进行筛选,具有较大的盲目性,从而可能影响最终分类的效果。
发明内容
针对以上所提到的现有过采样方法存在的局限性,本发明提出了一种基于支持向量机(SupportVectorMachine,SVM)和进化计算的过采样方法。本发明利用SVM自身的独特能力判别少数类样本对决策边界不同的影响程度从而给它们分配合理的权重,大大提高了权重分配的准确性,并避免了噪声的影响;然后通过支持向量的指导来生成样本,确保生成样本位于最关键的区域,这一过程可有效纠正因类不平衡造成的决策边界偏斜问题,并使分类器有效识别少数类的边界;考虑到如果一个样本被错误分类,那么它很有可能位于不合适的区域。因此,为了避免引入噪声或加剧类重叠,使分类更加困难,被错误分类的样本则不被考虑。本发明采用了一种全新的方式即进化计算从而来生成样本,具体来说,使用了实数编码遗传算法(Real-coded Genetic Algorithm,RCGA)自动生成新样本并搜索更优的替代方案。基于RCGA的特点,生成的样本更加多样化,从而缓解了传统方式生成样本分布不均的问题,而且通过RCGA内置的评估机制来实现对生成样本的评估。此外,本发明还强调了间隔在数据分类中的重要性,并将其作为对生成样本评估的指标,上述改进有效克服了传统样本生成方式的局限性。本发明优化过程主要涉及两个阶段:
(1)数据预处理阶段:本阶段是为了确定不同少数类样本的权重值和间隔值。在本阶段,使用SVM来判别不同少数类样本对决策边界的影响程度从而为它们分配相应的权重,权重的确定则是由SVM的拉格朗日乘子所决定。具体地,首先对SVM进行训练,然后通过训练好的SVM来确定不同少数类样本相应的拉格朗日乘子并作为其权重值,从而来进一步决定每个少数类样本生成样本的数量,同时保存它们距离决策边界的间隔用于样本生成阶段。
(2)样本生成阶段:在本阶段,使用RCGA生成所需的最佳样本,RCGA可以自动的生成样本并搜索更优的替代方案,从而避免了传统方法的局限性,同时其适应度函数的评估指标是样本距离决策边界的间隔,并使用上一阶段保存的间隔作为评估标准。
为了达到上述目的,本发明采用的技术方案如下:
一种基于支持向量机和进化计算的过采样方法,具体步骤如下:
步骤1:数据预处理
这一阶段旨在识别对决策边界有关键影响的样本,具体过程如下:
1.1)使用分层抽样方法将现有数据集分成三个子集:训练集、验证集和测试集,以确保每个子集具有相同的类不平衡比率;其中验证集的作用是为了避免SVM在训练过程中出现过拟合的情况。
1.2)考虑到SVM是一种基于间隔最大化来确定决策边界的分类器,在训练过程之前以训练集作为基准对所有样本进行归一化,如下式所示:
其中,xk表示第k个样本,其中k=1,...,T,T是所有样本的数量;n是训练集的样本数量;d是xk的维度数;minxnl和maxxnl分别表示训练集所有样本第l个维度的最小值和最大值。
1.3)训练SVM分类器,具体的训练过程如下:
1.3.1)将包含两种类别样本的训练集根据样本所属类别划分为两个不同的集合,两个集合中数量较多的集合称为多数类集合M,数量较少的集合称为少数类集合m。
1.3.2)从M中随机抽取与m中数量相同的样本并将这些样本与m组成平衡数据集,使用此平衡数据集来训练SVM分类器。
1.3.3)重复步骤1.3.2)t次,t设置范围为[5000,6000],获得在验证集上G-mean值最高的SVM模型,具体如下式所示:
其中TN是被正确分类的多数类样本数量,TP是被正确分类的少数类样本数量,FN是被错误分类的多数类样本数量,FP是被错误分类的少数类样本数量。
1.3.4)根据已获得的SVM模型,保存被正确分类的少数类样本xc={xc1,...,xci,...,xcmc}T以及它们的权重α={α1,...,αi,...,αmc}T和距离决策边界的间隔γ={γ1,...,γi,...,γmc}T,其中mc表示被正确分类的少数类样本的数量,权重α是由SVM模型中的拉格朗日乘子λ={λ1,...,λi,...,λmc}T所表示,间隔γ是由SVM模型的决策函数f(X)所计算得出,具体如下式所示:
其中X={X1,...,Xg,...,XL}T表示SVM的训练数据,φ(Xg)是将Xg映射到高维特征空间后的特征向量,yg是样本Xg的类别标签,κ(·,·)是核函数,L是X的样本数量,w是决定超平面方向的法向量,b是决定超平面与原点距离的截距,λg是样本Xg的拉格朗日乘子。
1.3.5)根据α={α1,...,αi,...,αmc}T计算被正确分类的少数类样本xc对应的生成样本数量S={S1,...,Si,...,Smc}T,如下式所示:
Si=(|M|-|m|)×αi
其中|M|和|m|分别表示多数类集合M和少数类集合m的样本数量。
步骤2:样本生成
此阶段采用实数编码遗传算法(RCGA)寻找最优样本。RCGA可以自动生成样本并使用其内置的评估机制对生成样本进行评估,进而不断寻找更优越的替代方案。在未达到终止条件的时候将一直循环迭代,其具体流程如下:
2.1)初始化种群
种群表示为p={p1,...,pj,...,pN}T,其中pj表示种群中第j个生成样本,N表示为种群的大小,样本pj中的每个基因表示其特定维度的特征,每个基因值设置在范围[0,1]。
为了更快地收敛并找到更优的样本,在数据预处理阶段保存的少数类样本xci的周围空间中随机初始化生成样本,具体步骤是:生成样本pj是在少数类样本xci基础之上对其每个基因进行不同的随机扰动而确定,即给xci的每个基因增加不同的随机数r,并将r设置在范围[-0.5,0.5]。扰动后,需仍然保证基因值在范围[0,1],如果基因值小于0,则设为0;同样,如果基因值大于1,则设为1。
2.2)使用适应度函数评估样本适应度值
适应度函数在RCGA中起着至关重要的作用,通过它可以对不同样本的优劣程度进行判断和衡量,并以此作为标准对样本进行筛选和淘汰。本发明使用数据预处理中保存的间隔γ作为标准从而来指导样本生成过程,具体的适应度函数的形式如下:
其中pj表示生成样本,表示pj距离决策边界的间隔,γi是少数类样本xci的间隔。
2.3)选择
此步骤是在种群中根据样本的适应度值选择较为优秀的样本,从而使得种群朝着更加优秀的方向进化。本发明采用了轮盘赌选择法。轮盘赌选择法首先根据生成样本pj的适应度值来确定其被选择的概率pb(pj),进而计算出其累计概率q(pj),具体如下所示:
其中fitnessmax表示种群中样本的最大适应度值,β是阈值参数。然后轮盘赌选择法产生一个在[0,1]内的随机数,如果此随机数在生成样本对应的累计概率范围内,则该样本被选中。当已被选择的样本数量达到N时即停止选择。
2.4)交叉
此步骤按照选择后产生的种群中样本顺序依次遍历相邻的两个样本,并以概率crossoverpb决定是否对它们进行交叉,crossoverpb设置在范围[0.5,1]。如果它们被确定进行交叉,采用均匀交叉的方式,具体步骤是:依次遍历其中一个样本的基因,并以0.5的概率确定是否与另一个样本相同位置的基因进行交换。通过交叉算子,不同样本之间可以进行基因的交流和共享优秀的基因,进而产生更加优秀的后代。
2.5)变异
此步骤是按照交叉后产生的种群中样本顺序依次遍历其中的样本,并以概率mutationpb决定是否对样本进行变异,mutationpb设置在范围[0,0.5]。如果样本被确定进行变异,则依次遍历其基因并以0.5的概率决定基因是否发生变异。如果基因发生变异,给其增加一个随机扰动值r,并将r的范围设定为[-1,1]。扰动后,如果基因值小于0,则设为0;如果基因值大于1,则设为1。
2.6)判断终止条件
本发明的终止条件是达到最大的迭代次数时即终止迭代,并且最大的迭代次数被设置为50。如果未达到终止条件则返回到步骤2.2),继续循环迭代直至满足终止条件结束循环。
步骤3:保留最优样本
本步骤通常需要保留不止一个最优的样本,然而在进化过程中,交叉和变异算子可能导致当前群体中的最优样本在下一代群体中发生丢失,而且这种最优样本丢失现象可能会一直出现在整个进化过程中,选择算子也存在使得最优样本没有被选择的可能性。为了确保最优样本不会被丢失,同时不影响RCGA的搜索能力,本发明采用了一种额外的机制来保存整个进化过程中生成的最优样本,具体过程如下:
3.1)初始化一个空列表lbest以保存最优样本,lbest的最大长度设置为被正确分类的少数类样本xci对应的生成样本数量Si。
3.2)评估生成样本从而获得其适应度值。此时如果lbest为空,则直接将样本保存其中。如果lbest不为空,则检查lbest中是否已经存在与生成样本相同的样本,如果存在,则忽略当前生成样本;否则,将其添加到lbest中。
3.3)如果lbest已满,则记录lbest中适应度值最差的样本,称为indwors。在随后的进化过程中,如果新的生成样本比indwors适应度值更高,用它替换indworst;否则,不执行任何操作。
此过程确保lbest总是包含了目前为止在进化过程中发现的最优样本。
步骤4:获得最终解
将所有被正确分类的少数类样本xci(i=1,...,mc)生成的样本组合起来即是所需的最终解。
本发明的有益效果:本发明在不同少数类样本权重分配和样本生成方式两个方面对传统的过采样方法进行分析,并强调了间隔对于最终分类的重要性,阐述了如何使用支持向量机(SVM)和进化计算在上述两个方面进行改进,从而设计了一种新型的过采样方法。在不同少数类样本权重分配方面,本发明使用SVM自身的独特能力来寻找对决策边界具有关键影响的样本,并使用拉格朗日乘子来确定不同少数类样本的权重,从而给予它们不同的关注,同时避免了噪音的影响。在样本生成方式方面,使用进化计算中的实数编码遗传算法(RCGA)来自动的生成样本并且搜索更优的替代方案,同时使用其内置的评估机制以间隔作为衡量标准对生成样本进行评估,避免了传统的样本生成方式的盲目性。
附图说明
图1为本发明的整体流程图。
图2为本发明的SVM分类中不同少数类样本区分图。
图3为本发明的少数类样本距离决策边界的间隔示意图。
具体实施方式
以下结合附图和技术方案,进一步说明本发明的具体实施方式。
本发明提供了一种基于支持向量机和进化计算的过采样方法,可用于各种场景下的不平衡数据分类任务,本发明的整体流程如图1所示,具体包括以下步骤:
步骤1:数据预处理
这一阶段旨在识别对决策边界有关键影响的样本,具体过程如下:
1.1)使用分层抽样方法以6∶2∶2的比例将现有数据集分成三个子集:训练集、验证集和测试集,以确保每个子集具有相同的类不平衡比率,SVM分类器是基于scikit-learn机器学习库实现,其参数是默认参数。
1.2)考虑到SVM是一种基于间隔最大化来确定决策边界的分类器,在训练过程之前以训练集作为基准对所有样本进行归一化。
1.3)训练SVM分类器,具体的训练过程如下:
1.3.1)将包含两种类别样本的训练集根据样本所属类别划分为两个不同的集合,两个集合中数量较多的集合称为多数类集合M,数量较少的集合称为少数类集合m。
1.3.2)从M中随机抽取与m中数量相同的样本并将这些样本与m组成平衡数据集,使用此平衡数据集来训练SVM分类器。
1.3.3)重复步骤1.3.2)5000次,获得在验证集上G-mean值最高的SVM模型。
1.3.4)根据已获得的SVM模型,保存被正确分类的少数类样本xc={xc1,...,xci,...,xcmc}T以及它们的权重α={α1,...,αi,...,αmc}T和距离决策边界的间隔γ={γ1,…,γi,…,γmc}T。
1.3.5)根据α={α1,...,αi,...,αmc}T计算被正确分类的少数类样本xc对应的生成样本数量S={S1,...,Si,...,Smc}T。
步骤2:样本生成
此阶段采用实数编码遗传算法(RCGA)寻找最优样本。在未达到终止条件的时候将一直循环迭代,其具体流程如下:
2.1)初始化种群:种群表示为p={p1,...,pj,...,pN}T,其中pj表示种群中第j个生成样本,N表示为种群的大小。N设置为1024。样本pj中的每个基因表示其特定维度的特征,每个基因值设置在范围[0,1]。为了更快地收敛并找到更优的样本,在数据预处理阶段保存的少数类样本xci的周围空间中随机初始化生成样本,具体步骤是:生成样本pj是在少数类样本xci基础之上对其每个基因进行不同的随机扰动而确定,即给xci的每个基因增加不同的随机数r,并将r设置在范围[-0.5,0.5]。扰动后,需仍然保证基因值在范围[0,1],如果基因值小于0,则设为0;同样,如果基因值大于1,则设为1。
2.2)使用适应度函数评估样本适应度值:本发明使用数据预处理中保存的间隔γ作为标准从而来指导样本生成过程,具体的适应度函数的形式如下:
其中pj表示生成样本,表示pj距离决策边界的间隔,γi是少数类样本xci的间隔。
2.3)选择:此步骤是在种群中根据样本的适应度值选择较为优秀的样本,从而使得种群朝着更加优秀的方向进化。本发明采用了轮盘赌选择法。轮盘赌选择法首先根据生成样本pj的适应度值来确定其被选择的概率pb(pj),进而计算出其累计概率q(pj),具体如下所示:
其中fitnessmax表示种群中样本的最大适应度值,β是阈值参数。然后轮盘赌选择法产生一个在[0,1]内的随机数,如果此随机数在生成样本对应的累计概率范围内,则该样本被选中。当已被选择的样本数量达到N时即停止选择。
2.4)交叉
此步骤按照选择后产生的种群中样本顺序依次遍历相邻的两个样本,并以0.9的概率决定是否对它们进行交叉。如果它们被确定进行交叉,采用均匀交叉的方式,具体步骤是:依次遍历其中一个样本的基因,并以0.5的概率确定是否与另一个样本相同位置的基因进行交换。
2.5)变异
此步骤是按照交叉后产生的种群中样本顺序依次遍历其中的样本,并以0.1的概率决定是否对样本进行变异。如果样本被确定进行变异,则依次遍历其基因并以0.5的概率决定基因是否发生变异。如果基因发生变异,给其增加一个随机扰动值r,并将r的范围设定为[-1,1]。扰动后,如果基因值小于0,则设为0;如果基因值大于1,则设为1。
2.6)判断终止条件
当达到最大的迭代次数时即终止迭代,并且最大的迭代次数被设置为50。如果未达到终止条件则返回到步骤2.2),继续循环迭代直至满足终止条件结束循环。
3)获得最优样本
为了确保最优样本不会被丢失,同时不影响RCGA的搜索能力,本发明采用了一种额外的机制来保存整个进化过程中生成的最优样本,具体过程如下:
3.1)初始化一个空列表lbest以保存最优样本,lbest的最大长度设置为少数类样本xci对应的生成样本数量Si。
3.2)评估生成的每个样本从而获得其适应度值。此时如果lbest为空,则直接将样本保存其中。如果lbest不为空,则检查lbest中是否已经存在与生成样本相同的样本,如果存在,则忽略当前生成样本;否则,将其添加到lbest中。
3.3)如果lbest已满,则记录lbest中适应度值最差的样本,称为indworst。在随后的进化过程中,如果新的生成样本比indwors适应度值更高,用它替换indwors;否则,不执行任何操作。
此过程确保lbest总是包含了目前为止在进化过程中发现的最优样本。
4)获得最终解
将所有被正确分类的少数类样本xci(i=1,...,mc)生成的样本组合起来即是所需的最终解。
前述对本发明的具体示例性实施方案的描述是为了说明和例证的目的。这些描述并非想将本发明限定为所公开的精确形式,并且很显然,根据上述教导,可以进行很多改变和变化。对示例性实施例进行选择和描述的目的在于解释本发明的特定原理及其实际应用,从而使得本领域的技术人员能够实现并利用本发明的各种不同的示例性实施方案以及各种不同的选择和改变。本发明的范围意在由权利要求书及其等同形式所限定。
Claims (8)
1.一种基于支持向量机和进化计算的过采样方法,其特征在于,该方法包括以下步骤:
步骤1:数据预处理
1.1)使用分层抽样方法将现有数据集分成三个子集:训练集、验证集和测试集,以确保每个子集具有相同的类不平衡比率;
1.2)SVM是一种基于间隔最大化来确定决策边界的分类器,在训练过程之前以训练集作为基准对所有样本进行归一化;
1.3)训练SVM分类器;
步骤2:样本生成
采用实数编码遗传算法RCGA寻找最优样本;RCGA自动生成样本并使用其内置的评估机制对生成样本进行评估,进而不断寻找更优越的替代方案;在未达到终止条件的时候将一直循环迭代;
步骤3:保留最优样本
为了确保最优样本不会被丢失,同时不影响RCGA的搜索能力,采用一种额外的机制来保存整个进化过程中生成的最优样本;
步骤4:获得最终解
将所有被正确分类的少数类样本生成的样本组合起来即是所需的最终解。
2.根据权利要求1所述的一种基于支持向量机和进化计算的过采样方法,其特征在于,所述步骤1.3)的具体训练过程如下:
1.3.1)将包含两种类别样本的训练集根据样本所属类别划分为两个不同的集合,两个集合中数量较多的集合称为多数类集合M,数量较少的集合称为少数类集合m;
1.3.2)从M中随机抽取与m中数量相同的样本并将这些样本与m组成平衡数据集,使用此平衡数据集来训练SVM分类器;
1.3.3)重复步骤1.3.2)t次,t设置范围为[5000,6000],获得在验证集上G-mean值最高的SVM模型,具体如下式所示:
其中,TN是被正确分类的多数类样本数量,TP是被正确分类的少数类样本数量,FN是被错误分类的多数类样本数量,FP是被错误分类的少数类样本数量;
1.3.4)根据已获得的SVM模型,保存被正确分类的少数类样本xc={xc1,...,xci,...,xcmc}T以及它们的权重α={α1,...,αi,...,αmc}T和距离决策边界的间隔γ={γ1,...,γi,...,γmc}T,其中mc表示被正确分类的少数类样本的数量,权重α是由SVM模型中的拉格朗日乘子λ={λ1,...,λi,...,λmc}T所表示,间隔γ是由SVM模型的决策函数f(X)所计算得出,具体如下式所示:
其中X={X1,...,Xg,...,XL}T表示SVM的训练数据,φ(Xg)是将Xg映射到高维特征空间后的特征向量,yg是样本Xg的类别标签,κ(·,·)是核函数,L是X的样本数量,w是决定超平面方向的法向量,b是决定超平面与原点距离的截距,λg是样本Xg的拉格朗日乘子;
1.3.5)根据α={α1,...,αi,...,αmc}T计算被正确分类的少数类样本xc对应的生成样本数量S={S1,...,Si,...,Smc}T,如下式所示:
Si=(|M|-|m|)×αi
其中|M|和|m|分别表示多数类集合M和少数类集合m的样本数量。
3.根据权利要求1或2所述的一种基于支持向量机和进化计算的过采样方法,其特征在于,所述步骤2的具体流程如下:
2.1)初始化种群
种群表示为p={p1,...,pj,...,pN}T,其中pj表示种群中第j个生成样本,N表示为种群的大小,样本pj中的每个基因表示其特定维度的特征,每个基因值设置在范围[0,1];
为了更快地收敛并找到更好的样本,在数据预处理阶段保存的少数类样本xci的周围空间中随机初始化生成样本,具体步骤是:生成样本pj是在少数类样本xci基础之上对其每个基因进行不同的随机扰动而确定,即给xci的每个基因增加不同的随机数r,并将r设置在范围[-0.5,0.5];扰动后,需仍然保证基因值在范围[0,1],如果基因值小于0,则设为0;同样,如果基因值大于1,则设为1;
2.2)使用适应度函数评估样本适应度值
使用数据预处理中保存的间隔γ作为标准从而来指导样本生成过程,具体的适应度函数的形式如下:
其中pj表示生成样本,表示pj距离决策边界的间隔,γi是少数类样本xci的间隔;
2.3)选择
采用轮盘赌选择法,首先根据生成样本pj的适应度值来确定其被选择的概率pb(pj),进而计算出其累计概率q(pj),具体如下所示:
其中fitnessmax表示种群中样本的最大适应度值,β是阈值参数;然后轮盘赌选择法产生一个在[0,1]内的随机数,如果此随机数在生成样本对应的累计概率范围内,则该样本被选中;当已被选择的样本数量达到N时即停止选择;
2.4)交叉
按照选择后产生的种群中样本顺序依次遍历相邻的两个样本,并以概率crossoverpb决定是否对它们进行交叉;若它们被确定进行交叉,采用均匀交叉的方式,具体步骤是:依次遍历其中一个样本的基因,并以0.5的概率确定是否与另一个样本相同位置的基因进行交换;
2.5)变异
按照交叉后产生的种群中样本顺序依次遍历其中的样本,并以概率mutationpb决定是否对样本进行变异;若样本被确定进行变异,则依次遍历其基因并以0.5的概率决定基因是否发生变异;如果基因发生变异,给其增加一个随机扰动值r,并将r的范围设定为[-1,1];扰动后,如果基因值小于0,则设为0;如果基因值大于1,则设为1;
2.6)判断终止条件
当达到最大的迭代次数时即终止迭代;若未达到终止条件则返回到步骤2.2),继续循环迭代直至满足终止条件结束循环。
4.根据权利要求3所述的一种基于支持向量机和进化计算的过采样方法,其特征在于,所述步骤2.4)中,crossoverpb设置在范围[0.5,1];所述步骤2.5)中,mutationpb设置在范围[0,0.5]。
5.根据权利要求3所述的一种基于支持向量机和进化计算的过采样方法,其特征在于,所述步骤2.6)中,最大的迭代次数被设置为50。
6.根据权利要求1、2、4或5所述的一种基于支持向量机和进化计算的过采样方法,其特征在于,所述步骤3具体如下:
3.1)初始化一个空列表lbest以保存最优样本,lbest的最大长度设置为被正确分类的少数类样本xci对应的生成样本数量Si;
3.2)评估生成样本从而获得其适应度值;此时如果lbest为空,则直接将样本保存其中;如果lbest不为空,则检查lbest中是否已经存在与生成样本相同的样本,如果存在,则忽略当前生成样本;否则,将其添加到lbest中;
3.3)如果lbest已满,则记录lbest中适应度值最差的样本,称为indworst;在随后的进化过程中,如果新的生成样本比indwor适应度值更高,用它替换indworst;否则,不执行任何操作。
7.根据权利要求3所述的一种基于支持向量机和进化计算的过采样方法,其特征在于,所述步骤3具体如下:
3.1)初始化一个空列表lbest以保存最优样本,lbest的最大长度设置为被正确分类的少数类样本xci对应的生成样本数量Si;
3.2)评估生成样本从而获得其适应度值;此时如果lbest为空,则直接将样本保存其中;如果lbest不为空,则检查lbest中是否已经存在与生成样本相同的样本,如果存在,则忽略当前生成样本;否则,将其添加到lbest中;
3.3)如果lbest已满,则记录lbest中适应度值最差的样本,称为indworst;在随后的进化过程中,如果新的生成样本比indwo适应度值更高,用它替换indwors;否则,不执行任何操作。
8.根据权利要求1、2、4、5或7所述的一种基于支持向量机和进化计算的过采样方法,其特征在于,所述步骤1.2)中,归一化公式如下:
其中,xk表示第k个样本,其中k=1,...,T,T是所有样本的数量;n是训练集的样本数量;d是xk的维度数;minxnl和maxxnl分别表示训练集所有样本第l个维度的最小值和最大值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410001797.0A CN117892209A (zh) | 2024-01-02 | 2024-01-02 | 一种基于支持向量机和进化计算的过采样方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410001797.0A CN117892209A (zh) | 2024-01-02 | 2024-01-02 | 一种基于支持向量机和进化计算的过采样方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117892209A true CN117892209A (zh) | 2024-04-16 |
Family
ID=90646897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410001797.0A Pending CN117892209A (zh) | 2024-01-02 | 2024-01-02 | 一种基于支持向量机和进化计算的过采样方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117892209A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118505380A (zh) * | 2024-07-18 | 2024-08-16 | 南京昱鑫辰信息技术有限公司 | 电子信息管理方法及平台 |
-
2024
- 2024-01-02 CN CN202410001797.0A patent/CN117892209A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118505380A (zh) * | 2024-07-18 | 2024-08-16 | 南京昱鑫辰信息技术有限公司 | 电子信息管理方法及平台 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Bhowan et al. | Developing new fitness functions in genetic programming for classification with unbalanced data | |
Luengo et al. | On the choice of the best imputation methods for missing values considering three groups of classification methods | |
Nguyen et al. | Particle swarm optimisation with genetic operators for feature selection | |
CN110853756B (zh) | 基于som神经网络和svm的食管癌风险预测方法 | |
CN117892209A (zh) | 一种基于支持向量机和进化计算的过采样方法 | |
CN112821559B (zh) | 一种非侵入式家电负荷深度再识别方法 | |
CN110956277A (zh) | 一种交互式的迭代建模系统及方法 | |
CN114818809A (zh) | 基于交叉小波的sca-svm电机滚动轴承的故障诊断方法 | |
CN113052268A (zh) | 区间集数据类型下基于不确定性度量的属性约简算法 | |
CN107766887A (zh) | 一种局部加权的不完整数据混杂聚类方法 | |
CN112183598A (zh) | 一种基于遗传算法的特征选择方法 | |
CN111813669A (zh) | 基于多目标群体智能的适应性随机测试用例生成方法 | |
Özyer et al. | Multi-objective genetic algorithm based clustering approach and its application to gene expression data | |
Cai et al. | Fuzzy criteria in multi-objective feature selection for unsupervised learning | |
Senthamilarasu et al. | A genetic algorithm based intuitionistic fuzzification technique for attribute selection | |
Li et al. | Ensemble-based multi-objective clustering algorithms for gene expression data sets | |
Vignolo et al. | Evolutionary local improvement on genetic algorithms for feature selection | |
CN112801197A (zh) | 一种基于用户数据分布的K-means方法 | |
Du Plessis | Adaptive multi-population differential evolution for dynamic environments | |
CN112308160A (zh) | 一种k—均值聚类人工智能优化算法 | |
Wang et al. | Semisupervised Bacterial Heuristic Feature Selection Algorithm for High‐Dimensional Classification with Missing Labels | |
Liu et al. | Tumor classification based on gene microarray data and hybrid learning method | |
Liu et al. | Cluster validity analysis of alternative results from multi-objective optimization | |
CN117727373B (zh) | 基于样本和特征双加权的特征约简中智c-均值聚类方法 | |
Qu et al. | Multi-objective automatic clustering with gene rearrangement and cluster merging |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |