您好,欢迎来到爱够旅游网。
搜索
您的当前位置:首页适用于不平衡数据集分类的改进SVM算法

适用于不平衡数据集分类的改进SVM算法

来源:爱够旅游网
适用于不平衡数据集分类的改进SVM算法

刘东启;陈志坚;徐银;李飞腾

【摘 要】在分析了传统支持向量机(SVM)对不平衡数据的学习缺陷后,提出了一种改进SVM算法,采用自适应合成(ADASYN)采样技术对数据集进行部分重采样,增加少类样本的数量;对不同的样本点分配不同的权重,减弱噪声对训练结果的影响;使用基于代价敏感的SVM算法训练,缓解不平衡数据对超平面造成的偏移.选择UCI数据库中的6组不平衡数据集进行测试,实验结果表明:在各个数据集上改进SVM算法的性能优于其他算法,并在少类准确率和多类准确率上取得了很好的平衡.%An improved support vector machine(SVM)algorithm is proposed,after analyzing the deficiency of traditional SVM algorithm for imbalanced datasets.It uses adaptive synthetic(ADASYN)sampling technology for partially resampling on dataset,to increase minority class

instances;distribute different weights for different sample point to decrease the influence of noise on training result,cost-sensitive SVM algorithm training is adopted to relieve the bias of hyperplane caused by imbalanced datasets. The proposed algorithm is tested on 6 sets of imbalanced datasets from UCI database. The experimental result shows that the performance of improved SVM algorithm is better than other algorithms and achieve a good balance between minority class accuracy and majority class accuracy. 【期刊名称】《传感器与微系统》 【年(卷),期】2018(037)003

【总页数】4页(P115-117,122)

【关键词】不平衡数据;支持向量机;自适应合成采样;代价敏感 【作 者】刘东启;陈志坚;徐银;李飞腾

【作者单位】浙江大学超大规模集成电路设计研究所,浙江杭州310027;浙江大学超大规模集成电路设计研究所,浙江杭州310027;浙江大学超大规模集成电路设计研究所,浙江杭州310027;浙江大学超大规模集成电路设计研究所,浙江杭州310027

【正文语种】中 文 【中图分类】TP18 0 引 言

现实生活的很多分类问题,如故障诊断[1]、疾病检测[2]等均涉及不平衡数据的分析与处理。传统的分类算法均基于数据平衡的理论,当数据集不平衡时,传统的分类器不能得到理想的分类结果。支持向量机[3,4](support vector

machine,SVM)算法作为一种通用性的学习方法已被广泛应用于各个领域[5,6]。尽管如此,对于不平衡数据,SVM通常也只能得到次优的分类结果[7~8]。 针对不平衡数据,为了获得更好的预测结果,现有的SVM算法通常从数据和算法2个方面进行改进:

1)数据层面解决策略:通过对训练样本进行重采样,平衡多类样本和少类样本的数量。现有的数据重采样方法主要有过采样和降采样2种方法。传统的随机过采样(random oversampling,RAMO)技术常常导致过拟合;随机降采样(random undersampling,RAMU)技术可能会删除有用的信息[9]。因此,出现了合成少类

过采样技术[10](synthetic minority oversampling technique,SMOTE)、自适应合成采样[11](adaptive synthetic sampling,ADASYN)等多种过采样方法和GSVM-RU[12]等降采样方法。

2)算法层面解决策略:主要针对少类和多类样本数量存在的差异,改进SVM训练算法,增强算法本身对不平衡数据的学习效果。常见的方法有基于代价敏感的SVM算法、集成SVM算法、以及修改核函数等方法。

本文结合上述2种方法的优点,提出了改进的SVM算法,在对不平衡数据进行测试中取得了满意的效果。 1 不平衡数据集对SVM的影响 考虑SVM算法的优化问题

s.t.yi(wTφ(xi)+b)≥1-ξi ξi≥0,i=1,2,…,l (1)

式中 ξ为松弛变量;C为惩罚因子;w为权矢量;φ(x)为核空间映射函数;yi为特征向量xi对应的样本标签。式(1)的第一部分试图最大化分类间隔,第二部分试图最小化错误代价。对于平衡数据集,少类样本和多类样本的数量相同,使用相同的惩罚因子并不会引起超平面的偏移。对于不平衡数据集,少类样本的数量远少于多类样本,若使用同样的惩罚因子,则为了降低分类的整体的错误代价,超平面会偏向少类。分类算法上不支持或者未考虑不平衡数据是造成传统SVM分类效果差的一个重要因素。 2 改进的SVM算法

选择基于代价敏感的不同错误代价(different error cost,DEC)算法作为训练算法。文献[13]指出,DEC算法对少类样本非常敏感,如果不平衡数据中少类样本分布

稀疏,通过DEC算法训练得到的超平面形状也会跟随少类样本的分布而在理想的超平面附近有较大波动,因此,选择ADASYN作为重采样技术在训练前增加少类样本的数目。此外,由于样本中可能包含噪声点,需要减少噪声对SVM训练结果的影响。因此,在SVM算法中引入权重因子,对每个样本赋予不同的权值,正常样本的权值高,而噪声点的权值小,从而有效降低噪声点的干扰。其算法流程如图1所示。

图1 改进的SVM算法框架 2.1 ADASYN过采样

改进的SVM算法中选择ADASYN作为过采样算法,ADAYSN算法主要分为4个步骤:

1)计算少类样本需要合成的样本点的数量G G=(|Smaj|-|Smin|)×β (2)

式中 Smaj为多类样本数量;Smin为少类样本数量;β∈(0,1]为修正比例。 2)对于每个少类样本,使用KNN算法计算其合成样本占合成样本点总数量G的比例Γi (3)

式中 K为KNN算法的参数;Δi为距离xi最近的K个点中多类样本的数目;Z为归一化参数,其值为 (4)

3)决定每个少类样本需要合成样本的数目gi gi=Γi×G

(5)

4)对于每个少类样本,在距离其最近的K个样本中随机抽取一个样本,合成新的少类样本xnew (6)

式中 xi为某个少类样本为距离xi最近的K个样本中的一个;δ为一个随机数,δ∈[0,1]。 2.2 权值计算

噪声点为距离自己所属类别较远甚至混入其他类别中的点,可以根据样本距离类中心点的远近确定噪声点并赋予相应的权值。

对于少类样本和多类样本,假设其中心点的值为该类所有样本点的平均值,并假设每个类别的半径为中心点到属于该类的距离最远点的欧氏距离,即 (7)

式中 r+,r-分别为少类和多类的类半径;分别为少类和多类的类中心点。定义权值计算公式为 (8)

式中 δ>0,用于防止权值为0。可以看出:离中心点越远,权值越接近0,而离中心点越近,权值越接近1,从而有效抑制了噪声的影响。 2.3 DEC算法训练

对于式(1),规定多类的惩罚因子为C+,少类的惩罚因子为C-,得到DEC的优化方程

s.t.yi(wTφ(xi)+b)≥1-ξi,ξi≥0,i=1,2,…,l (9)

式中 C+/C-=Smaj/Smin。同时,将权值计算的结果融合进DEC算法的参数C中,即可削弱噪声的干扰。所以,DEC算法和权值计算相结合后,少类和多类的惩罚因子分别为 (10)

3 实验与分析 3.1 测试指标

在机器学习中,其算法的性能通常可以由混淆矩阵概括。如表1所示,其中TP为预测正确的少类样本数目,TN为预测正确的多类样本数目,FP为预测错误的多类样本数目,FN为预测错误的少类样本数目。

表1 混淆矩阵预测为少类预测为多类真实为少类TPFN真实为多类FPTN 考虑到不平衡的情况下,少类样本占据的比例非常小,当预测器对所有样本的预测结果均为负时,预测准确率依然非常高。如果使用灵敏度(sensitivity,SE)和特异度(specificity,SP)作为少类和多类样本的准确率,为了使二者均能获得较高的准确率,在不平衡数据集中,使用G-mean作为性能测试标准 (11) (12) (13) 3.2 数据集

针对提出的模型,使用来自UCI的6个现实世界不平衡数据作为性能测试数据,数据集的详细信息如表2所示。其包含少类样本个数、样本总数、数据集的特征数量以及少类与多类样本比例。

表2 不平衡数据集数据集少类总数特征数比例

yeast(ME2vs.others)51148483∶97abalone(18vs.9)4273176∶94ecoli(imvs.others)77336723∶77haberman(2vs.1)81306326∶74glass(5,6,7vs.others)51178529∶71pima⁃indians(1vs.0)266500835∶65 3.3 测试方法

为了评估分类器的性能,使用五折交叉验证的方法对数据集进行测试。其具体过程如下:

1)在MATLAB软件中对数据进行预处理,将数据集随机分为样本数目相同的5份,并且每份拥有与原样本相同的不平衡比例。

2)每折验证中,将4份作为训练集,1份作为预测集。

3)进行SVM算法的训练:在训练过程中,为了获得最好的预测模型,使用

LIBSVM[14]软件包中的grid函数搜索最优参数C和γ,并使用该参数对训练集进行训练,得到最优预测模型。

4)采用预测模型对预测集进行预测,使用G-mean评估性能评估的标准。 在进行训练中需要使用的参数,选取范围如下:在ADASYN算法中的参数β,其范围是{0.1,0.2,…,0.9};对于权值计算中的参数δ,使用10-5;对于DEC算法,其使用RBF核函数 K(x,y)=e-γ(‖x-y‖2) (14) 4 实验结果

为了评估改进的SVM算法对不平衡数据的分类结果,使用DEC,SMOTE,

ADASYN以及标准SVM作为实验对比。对于每种算法,均使用与改进SVM算法相同的训练预测方法,即基于LIBSVM使用五折交叉验证。所有算法均使用5次结果的平均值作为最终结果。

改进SVM算法在不同数据集上的结果如表3所示。可以看出:使用G-mean作为参数选择标准时,少类样本的准确率SE和多类样本的准确率SP相差较小,能够取得较为平衡的分类结果。

表3 改进SVM算法结果 %数据集

SESPG⁃meanyeast81.86.3783.94abalone83.6285.2283.62ecoli93.4184.8688.90haberman52.8878.76.04glass95.7192.3393.90pima⁃indians71.5573.8072.51

表4给出了不同算法对6个数据集进行训练预测的G-mean结果比较。对比改进SVM算法与其他SVM算法,结果显示:在所有数据集中,复合SVM算法中有5个数据集具有最高的G-mean,余下1个接近最好算法的G-mean,G-mean值较其他算法平均高出了3.7 %~23.6 %。

表4 不同分类算法的G-mean比较 %数据集标准SVMDECSMOTEADASYN改进

SVMyeast52.2482.3781.5183.5283.94abalone62.1283.8467.1384.6583.62ecoli84.9785.3385.5086.3588.90haberman49.6359.5655.5355.26.04glass91.44.6790.82.33.90pima⁃indians65.9069.5871.0167.0072.51 5 结 论

提出和实现了一种改进SVM算法,通过使用重采样、权值计算、DEC算法训练相结合的方法,消除不平衡数据对分类器训练造成的影响。通过在6组数据集上与现有的常见算法比较,证明了改进SVM算法的可行性。实验结果表明:在大多数

情况下,改进SVM算法具有最高的G-mean值。将改进SVM算法应用到现实生活的不平衡分类中,尤其在疾病检测或故障监测等方面,将会有广阔的应用前景。 参考文献:

【相关文献】

[1] 王长坤,袁慎芳,邱 雷,等.基于支持向量机的加筋板健康监测[J].传感器与微系统,2008,27(5):49-51.

[2] 陶泳任,陈冠雄,沈海斌.便携心电传感器的心房肥大诊断研究[J].传感器与微系统,2014,33(9):55-57.

[3] Vapnik V N,Vapnik V.Statistical learning theory[M].New York:Wiley,1998.

[4] Cortes C,Vapnik V.Support-vector networks[J].Machine Lear-ning,1995,20(3):273-297. [5] 卞桂龙,丁 毅,沈海斌.适用于智能传感器系统的SVM集成研究[J].传感器与微系统,2014,33(8):44-47.

[6] 王 成,郝顺义,翁大庆,等.基于混沌PSO算法优化LS-SVM的惯导系统测试[J].传感器与微系统,2011,30(2):125-128.

[7] He H,Garcia E A.Learning from imbalanced data[J].IEEE Transactions on Knowledge and Data Engineering,2009,21(9):1263-1284.

[8] 陶新民,郝思媛,张冬雪,等.不均衡数据分类算法的综述[J].重庆邮电大学学报:自然科学版,2013,25(1):101-110.

[9] Branco P,Torgo L,Ribeiro R P.A survey of predictive modeling on imbalanced domains[J].ACM Computing Surveys,2016,49(2):1-50.

[10] Chawla N V,Bowyer K W,Hall L O,et al.SMOTE:Synthetic minority over-sampling technique[J].Journal of Artificial Intelligence Research,2002,16:321-357.

[11] He H,Bai Y,Garcia E A,et al.ADASYN:Adaptive synthetic sampling approach for imbalanced learning[C]∥2008 IEEE International Joint Conference on Neural

Networks(IEEE World Congress on Computational Intelligence),IEEE,2008:1322-1328. [12] Tang Y,Zhang Y Q,Chawla N V,et al.SVMs modeling for highly imbalanced classification[J].IEEE Transactions on Systems,Man,and Cybernetics,Part B:Cybernetics,2009,39(1):281-288.

[13] Akbani R,Kwek S,Japkowicz N.Applying support vectormachines to imbalanced datasets[C]∥European Conference on Machine Learning,Berlin/Heidelberg:Springer,2004:39-50.

[14] Chang C C,Lin C J.LIBSVM:A library for support vectormachines[J].ACM Transactions on Intelligent Systems and Technology(TIST),2011,2(3):1-27.

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- igbc.cn 版权所有 湘ICP备2023023988号-5

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务