不平衡数据加权集成学习算法

不平衡数据[1-2]分类问题一直备受关注,已成为机器学习领域中的研究热点。现实生活中,存在着许多不平衡数据的例子。如:医疗诊断、故障检测等。目前,不平衡数据分类问题的处理方法主要分为两类:

数据层面上,主要是对原始数据集进行处理,利用少数类过采样、多数类欠采样等方法使原始数据集各类别数据个数达到相对平衡。过采样技术(Synthetic Minority Ove-rsampling Technique,SMOTE)[3]通过少类样本和其近邻样本的线性关系获得新的少类样本,减少了过拟合现象,但在生成新样本时存在盲目性,容易出现样本混叠现象,增加噪音样本。单边选择欠采样技术(One-sided Selection)[4]寻找互为最近邻的异类样本对,并将其中的多类样本判断为噪声点并删除,但将噪声点完全删除,会丢失重要的数据信息。

算法层面上,主要是对已有分类算法进行改进或是设计新算法。赵相彬等人提出基于欠采样与修正核函数相结合的SVM算法[5],根据保角变换修正SVM的核函数,有效地提高了分类准确率。Seref等人提出Weighted Relaxed Support Vector Machine(WRSVM)[6],WRSVM是代价敏感学习和Relaxed SVM(RSVM)的结合,减少了离群点的影响。Lin等人提出基于SVM和聚类的不平衡数据分类算法[7],该算法利用模糊聚类(FCM)将训练集的多类数据集分成几个子集,然后用每个子集和训练集的少类分别训练子分类器,最后通过投票原则确定最终分类结果。但FCM并不是对数据集平均分组。例如,设多类数据个数为100个,少类数据个数为30个,则需将100个多类数据分为3个子集,各子集个数可能为(24,36,40)、(10,25,65),当子集个数为65时,和少类数据个数30相比,两类数据个数依然是不平衡的。

因此,针对这一问题,本文提出一种加权集成学习算法——Ensemble Weighted Sup-port Vector Machine based on FCM(FCM-EN WSVM)。首先提出加权支持向量机模型,该模型根据不同类别数据所占比例不同,为各类别分配不同的权重。然后利用FCM将训练集的多类数据分为若干子集,每个子集分别和训练集的少类作为新的训练集训练多个WSVM分类器,最后对测试集进行测试,通过投票原则确定最终分类结果。新算法有效地解决了不平衡数据的分类问题。

1 支持向量机

支持向量机(Support Vector Machine,SVM)[8-9]是Corinna Cortes和Vapnik等人于1995年首先提出的,其基本原理:假设给定带有标签的训练集S={(x1,y1),…,(xn,yn)},其中,xi∈RN表示样本点,yi∈{-1,1}表示所属类别标签,i=1,…,n。则SVM模型的目标函数为:

其中?孜i为松弛变量,C为惩罚参数,建立拉格朗日函数,式(1)转化为其对偶问题:

则其决策函数为:

在非线性可分情况下,输入样本空间找不到最优分类超平面,因此将数据通过核函数映射到高维特征空间中,此时:

其决策函数为:

2 本文提出的算法

2.1 加权支持向量机(WSVM)

为了减小数据类别不平衡对SVM训练模型的影响,根据每个类别数据对分类贡献的不同,区别对待每一类别数据,为其分配不同的权值,则WSVM模型的目标函数为:

其中W为各类别的权值矩阵。

式(6)的对偶问题为:

那么,映射到高维空间的决策函数为:

2.2 权值的定义

权值W需满足以下条件:

(1)少类数据的权值大于多类数据的权值,即Wshao>Wduo;

设训练集的样本数为N,类别数为C,各类别的样本数从小到大排序依次为n1,n2,…,nC,则第i类数据的权值定义为:

根据不同类别样本个数所占的比例为其分配不同的权重,多类数据的权重大,少类数据的权重小,从而使各类别数据比例趋于平衡。

2.3 FCM-ENWSVM

模糊C均值聚类算法(Fuzzy C-means,FCM)[10]于1981年被Bezdek提出。它的思想是将数据集划分为不同的簇,要求同一簇的对象之间的相似度尽可能的大,而不同簇的对象之间的相似度尽可能的小。

FCM-ENWSVM算法(基于支持向量机和聚类的不平衡数据加权集成学习算法):

(1)计算训练集的多类数据和少类数据的个数,并将其个数比记为M;

(2)利用FCM算法将多类数据集分为M个子集;

(3)M个子集分别和少类数据构成新的训练集,训练M个WSVM分类器;

(4)分别用M个分类器对测试集进行测试。

最终结果通过投票原则决定。

3 实验结果及分析

3.1 人造数据

随机生成一个300×2的数据集,按3∶1的比例随机分为训练集和测试集。实验中,分别用训练集训练SVM、WSVM两种分类器,核函数选择文献[11]中的Linear、RBF。图1、图2分别表示两种核函数的条件下,两种分类器对测试集的测试结果,其中每幅图中Original表示测试集真实的类别分布,SVM、WSVM表示用SVM、WSVM两种分类器分类后的测试集类别分布,加号表示正类(少类)1,点表示负类(多类)0,圈表示错分的数据点F。

从图1、图2可以看出,在两种核函数下,WSVM的分类正确数都明显高于SVM的。WSVM考虑了不同类别数对分类准确率的贡献多少,权值起到了平衡的作用,有效地提高了分类器的性能。

3.2 UCI数据实验

从UCI数据库中选取了6个数据集,分别为wine、glass、housing、pima、breast、bupa,各数据集的基本信息如表1所示。

实验中,将表1中的数据集按3∶1的比例随机分为训练集和测试集,分类方法选择SVM、FSVM[12]、RSVM[11]、FCM-SVM[7]、FCM-ENWSVM(本文算法),评价准则选择文献[13]中的G-means、F-measure[13]。为了充分验证本文算法的有效性,图3、图4分别为glass、wine数据的训练集打乱顺序进行8次实验的结果折线图,表2~表5为其他4个数据集的实验结果,均取循环20次的平均值。

从图3、图4可以看出,本文提出的算法FCM-ENWSVM的G-means和F-measure明显高于其他方法。FCM-ENWSVM的变化比较稳定,而SVM、FSVM、RSVM的变化较大,FCM-SVM虽然比较稳定,但是准确率低,没有考虑到FCM不是对数据集进行平均分组,训练集的多类、少类个数依然是不平衡的。然而,FCM-ENWSVM改进了这些算法的不足之处,通过FCM和权值改善了数据的不平衡性,具有更好的分类效果。

从表2~表5中可以看出,在不同的核函数下,FCM-ENWSVM的G-means、F-measure都高于其他方法。特别地,对于housing数据,当核函数为Linear时,SVM、FSVM的G-means、F-measure都为0,而FCM-ENWSVM的准确率相对较高。还可以发现,当多类少类的不平衡性差时,如bupa数据,SVM和FCM-SVM的结果相同,说明在FCM-SVM中,FCM并没有起到作用,准确率依然不高,而FCM-ENWSVM的却相对较高。FCM-ENWSVM利用了FCM算法,并考虑到用权值来改善数据的类别不平衡度,从而解决了FCM不平均分组再次造成数据不平衡的问题,有效地提高了分类准确率。

4 结论

本文针对传统分类算法对不平衡数据的分类准确率低的问题,基于支持向量机和模糊聚类,提出了一种不平衡数据加权集成学习算法。该算法根据不同类别样本对分类贡献的不同为每个类别分配不同的权重,提出加权支持向量机模型,并且利用模糊聚类算法对训练集的多类数据进行聚类,聚类后的每个子集分别和训练集的少类数据作为训练集,训练加权支持向量机子分类器。最后通过投票原则决定最终分类结果。将新算法应用于实例数据集的分类问题中,有效性和优越性得到了证明。

参考文献

[1] JAPKOW I, STEPHEN S. The class imbalance problem: a systermatic studay[J]. Intelligent Data Analysis Journal,2002,6(5):429-450.

[2] YANG Q,WU X. 10 challenging problems in data mining research[J]. International Journal of Info-rmation Technology&Decision Making,2006, 5(4): 597-604.

[3] CHAWLA N V, BOWYER K W, HALL L O, et al. SMOTE: synthetic minority over-sampling Technique[J]. Journal of Artificial Intelligence Resaerch, 2002(16):321-357.

[4] KUBAT M, MATWIN S. Addressing the curse of  imbalanced training sets: one-sided selection[C]. Proceedings of the 14th International Conference on Machine Learning, San Francisco, 1997:179-186.

[5] 赵相彬,梁永全,陈雪.基于支持向机的不平衡数据分类研究[J].计算机与数字工程,2013,41(2):241-243.

[6] SEREF O, RAZZAGHI T, XANTHOPOULOS P. Weighted relaxed support vector machines[J]. Annals of Opearations Research,Springer US,2014(9):1-37.

[7] Lin Kaibiao, Weng Wei, ROBERT K, et al. Imbalance data classification algorithm based on SVM and clustering function[C]. The 9th International Conference on Computer Science & Education, 2014:544-548.

[8] CORTES C, VAPNIK V. Support-vector networks[J]. Machine Learning,1995,20(3):237-297.

[10] BEZDEK J. Pattern recognition with fuzzy objec-tive function algorithms[M]. New York: Plenum press,1981.

[11] 梁红霞,闫德勤.粗糙支持向量机[J].计算机科学,2009,36(4):208-210.

[12] Huang Hanpang, Liu Yihung. Fuzzy support vector machines for pattern recognition and data mining[J]. International Journal of Fuzzy Systems, 2002,4(3):826-835.

[13] 徐丽丽,闫德勤,高晴.基于聚类欠采样的极端学习机[J].微型机与应用,2015,34(17):81-84.

THE END
0.机器学习支持向量机模型建立支持向量机模型,并给出具体的过程。2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 实验结果 机器学习---支持向量机模型 1.导入所需的包,生成本次实验的数据以及数据分布图 fromjvzquC41dnuh0lxfp0tfv8|gkzooa=9478>7:8ftvkimg8igvcomu86345>4:<8
1.SVMMY:构建高效扫描与检测工具2. SVM训练流程详解 2.1 SVM模型的基本概念 2.1.1 支持向量机的原理 支持向量机(Support Vector Machine, SVM)是一种二分类模型,它的基本模型定义为特征空间上间隔最大的线性分类器,间隔最大使它有别于感知机;SVM还包括核技巧,这使它成为实质上的非线性分类器。支持向量机的学习策略就是间隔最大化,可形式化为jvzquC41dnuh0lxfp0tfv8|gkzooa=78279:98ftvkimg8igvcomu86699;46;>
2.支持向量机|菜鸟教程支持向量是离超平面最近的样本点。这些支持向量对于定义超平面至关重要。 支持向量机通过最大化支持向量到超平面的距离(即最大化间隔)来选择最佳的超平面。 最大间隔: SVM的目标是最大化分类间隔,使得分类边界尽可能远离两类数据点。这可以有效地减少模型的泛化误差。 jvzquC41o0xvpxtd0eun1vq1on3txv3jvor
3.深度学习的开胃菜——常用的机器学习知识梳理AI浩1.16.21 常见的类别不平衡问题解决方法 1.17 决策树 1.17.1 决策树的基本原理 1.17.2 决策树的三要素? 1.17.3 决策树学习基本算法 1.17.4 决策树算法优缺点 1.17.5 熵的概念以及理解 1.17.6 信息增益的理解 1.17.7 剪枝处理的作用及策略 1.18 支持向量机 1.18.1 什么是支持向量机 1.18.2 支持向量 jvzq<84|jcthuqn{w0ipo8uquv536@820jznn
4.下一篇:变电站的运行管理制度供应商信用管理范文平衡记分卡法的思路认为:以企业的战略和远景目标为核心,把企业的长远目标具体化为企业的行动策略,即根据表一中的指标体系数据,应用层次分析法构建YC信用管理绩效的层次结构模型,组织行业专家利用层次分析法关键词:政府采购;信用分析;支持向量机 Abstract:Support Vector Machines (SVM) based on structural riskjvzquC41yy}/i€~qq0ipo8mcqyko1:>2349/j}rn
5.MATLAB实现基于支持向量机(SVM)进行多特征分类预测的详细项目实例MATLAB实现基于支持向量机(SVM)进行多特征分类预测的详细项目实例 1 项目背景介绍 1 项目目标与意义 2jvzquC41ddy/rrsiiw4ptp4vjtkbf668548:::23/34ivvq
6.机器学习中样本不平衡,怎么办?在处理诸如此类的样本不均衡的任务中,使用常规方法并不能达到实际业务需求,正确且尽可能多捕获少数类样本。因为样本不均衡会使得分类模型存在很严重的偏向性。本文中,介绍了在机器学习中样本不平衡处理策略及常用方法和工具。 在银行要判断一个"新客户是否会违约",通常不违约的人VS违约的人会是99:1的比例,真正违约jvzquC41yy}/7:hvq0ipo8ftvkimg8<2:3960qyon
7.支持向量机详解Svm(support Vector Mac)又称为支持向量机,是一种二分类的模型。当然如果进行修改之后也是可以用于多类别问题的分类。支持向量机可以分为线性核非线性两大类。其主要思想为找到空间中的一个更够将所有数据样本划开的超平面,并且使得本本集中所有数据到这个超平面的距离最短。 jvzquC41dnuh0lxfp0tfv8iaa9<11jwvkerf1mjvckrt1A55:9:44
8.机器学习算法之支持向量机向量支持机本文介绍支持向量机(SVM)算法,它是二分类算法,能造最大间距决策边界,提高分类鲁棒性。阐述基于最大间隔分割数据的线性模型、超平面和支持向量概念,详细讲解线性可分、线性、非线性SVM算法原理,还进行SVM手写体识别实验,并总结SVM与Logistic回归的区别与联系。 目录 一、前言 二、基于最大间隔分割数据 2.1线性模型 三、算法原理 3.jvzquC41dnuh0lxfp0tfv8r2a8862:5221gsvrhng1jfvjnnu17479;22:<
9.机器学习SVM算法介绍及应用消费金融风控联盟支持向量机(SVM)是一种 二分类模型 ,可以处理线性和非线性的 分类问题 。jvzquC41yy}/uqfpi{kykwjk0ipo8ftvkimg8<5:87937mvon
10.基于全景病理图像细胞密度和异型特征的胶质瘤自动分级首先分析全局细胞密度定位感兴趣区域(ROI),提取全扫描图像的全局密度特征,然后对感兴趣区域提取局部密度特征和异型特征,最后利用特征选择并构建平衡权重的支持向量机(SVM)分类器,5折交叉验证的受试者工作特性曲线下的面积(AUC)为0.92 ± 0.01,准确率(ACC)为0.82 ± 0.01。实验结果表明,本文提出的感兴趣区域定位方法jvzquC41yy}/vlxwti4ptp4ctvodnn4320=62@43227.7>670463398272
11.机器学习中最常见的四种分类模型一对一:为每对类别拟合一个二分类模型。 可以使用这些策略进行多分类的二分类算法包括: 逻辑回归(Logistic Regression) 支持向量机(Support Vector Machine) 接下来,让我们仔细看一下数据集,通过实践和思考来训练出对多类分类问题的直觉。 我们可以使用make_blobs()函数[6]生成一个综合的多类分类数据集。 jvzquC41fg|fnxugt0gmk‚zp0eun1jwvkerf1::;:494
12.基于深度学习的源代码缺陷检测研究综述深度学习方法应用于源代码缺陷检测在数据集构建和模型设计方面依然面临众多挑战. 本综述即聚焦于基于深度使用支持向量机对其进行分类. 但该类方法在效率与效果上均存在较大的不足: 一方面, 大多数机器学习方法再由2人逐一对查询结果的标题、摘要进行人工审查, 过滤不使用深度学习方法的无关内容, 在出现分歧时共jvzquC41yy}/lxx0qtm/ew4jvor0497514578B;0jvs
13.机器学习算法篇支持向量机原理在模型训练时自动求解 如果ξᵢ = 0 → 该样本完全分类正确; 如果0 < ξᵢ < 1 → 样本在“间隔区”内,但仍然在正确一侧; 如果ξᵢ > 1 → 样本被误分类(落到错误一侧)。 训练支持向量机就是不断选取C的值,最后寻找最好超平面,随着C的不断增大,超平面划分地越加仔细。 jvzquC41dnuh0lxfp0tfv8|gkzooa?8::8>548ftvkimg8igvcomu8675;<45=: