您的当前位置:首页正文

基于欠采样支持向量机不平衡的网页分类系统

2021-04-02 来源:爱go旅游网
计算机系统应用 http://www.C—s—a.org.cn 2017年第26卷第4期 基于欠采样支持向量机不平衡的网页分类系统① 李村合,唐磊 (中国石油大学计算机与通信工程学院,青岛266580) 摘要:在这个信息爆炸的时代,如何处理这些海量的数据如何有效的分类已经引起了人们的高度重视,尤其是 在互联无技术迅速发展的阶段,网页分类这领域己成为热点.与传统的分类方法相比,支持向量机具有高维、小 样本、适应性强的特点,能够非常有效率的解决网页分类问题,但是不平衡数据的分类这一方面,存在着分类不 精确的问题.所以本文提出了新的解决不平衡数据样本策略,便是将欠采样策略与传统的支持向量机结合起来, 在减少多数类样本集中噪声数据的基础上增加少数类的样本集数量,从而使得不平衡样本集趋向于平衡,最后 结合SMO(Senquential Minimal Optimization)算法改进分类器 提高了分类的准确性. 关键词:支持向量机;SMO算法;训练集缩减算法;网页分类;多类分类 Realization of Web Page Classiicatifonn System Based on Under-Sampling Support Vector Machine LICun-He,TANGLei (College of Computer and Communication Engineering,China University of Petroleum,Qingdao 266580,China) Abstract:In this era of information explosion,how to handle these vast amounts of data and how to classify the data effectively has attracted much attention,especially in the stage of rapid development of Internet technology free,the ield of web classiffication has become a hot spot.Compared with the traditional classification methods,support vector machine has the characters of high—dimensional,small sample size,strong adaptability,and can be very effective to solve he probltem of web page classification.But in the field of classiication of imbalanced data,tfhere is a problem of inaccurate classification.Therefore,this paper proposes a new strategy to solve the imbalance data samples,that is, combining the under—sampling strategy with the traditional support vector machines to increase the number of samples seI in he mitnority class and to reduce the concentrated noise data in the majority class,SO that imbalanced sample set tends to be balanced.Finally SMO algorithm is used to improve the accuracy of classification. Key words:support vector machine;SMO algorithm;reduction in the training set;classification of web page; multi—class C1assjfication l 引言 随着互联网的发展,网络的信息量爆炸式的增长, 人们从互联网中获取有用的信息越来越困难,也给互 联网的企业带来的挑战,由此,网页分类技术如雨后 结构风险最小化原则为基础的学习机器L2J,在分类领 域具有非常广泛的应用,在平衡问题的表现上效果非 常好,可以克服局部最小值问题,但是在支持向量机 在处理不平衡样本集时其分类效果并不理想 j.出现 春笋般发展起来,在众多的分类方法中,支持向量机 具有较强的学习能力,经成为网页分类界研究的热点 尤其是搜索引擎领域【】】.在分类的算法里,支持向量 机是非常优秀的算法,支持向量机是一统计学理论和 上述问题的原因是传统的分类算法都是以提高整体分 类准确率作为目标,然而,实际问题中存在大量的不 平平衡样本集:某一类的样本数量远少于其他样本数 量,例如信用卡欺诈行为检测,网络入侵行为检测医 ①收稿时间:2O16—07 O9;收到修改稿时间:20l6—08—08[doi:10.15888 ̄.cnki.csa.005671] 230研究开发Research and Development 2017年第26卷第4期 http://www.c—s—a.org.ca 计算机系统应用 学疾病诊断[ ,产品合格检查.不平衡样本集的分类 问题是。总体准确率还可以,然而少数样本的分类准 确率很低,可是在很多的实际问题中,比如在癌症检 测中,健康细胞现相对于癌细胞是多数类,对癌细胞 的正确分类更重要【5】,在辨别垃圾邮件中,垃圾邮件 是少数类,然而对垃圾邮件的辨别更重要.在众多解 决支持向量机不平衡分类的研究中,比较出色的的策 略是欠采样算法,和修改核函数[6].本文绍了支持向 解如下问题: maX ( ) =eTa-一吉  ̄5 Qa Y <Xi,xj>f71 得到最优超平面: =∑I』  ̄'iYiXi r(、 8) (9) b =一 1< ,X+ > 量机。并且在传统的支持向量机中结合欠采样策略在 一定程度上解决了不平衡网页分类的问题. 2相关技术 2.1支持向量机 最早,是由Vapnik提出支持向量机(SVM)理论[7】. 该方法采用结构风险最小化原则代替传统经验啊风险 最小化原则,可以使其在训练样本数量有限的情况下, 很好的兼顾分类识别准确率和分类推广能力,因此 SVM被广泛的运用到模式识别和分类问题中[8].其原 理如下:假设存在一个具有两类样本的训练样本集合 如公式(1)所示: D={Xl,Y。),…,( , )}, ∈ ,Y∈{+1,一1)(1) 当线性可分时则有如下公式(2)所示超平面: (w,X)+b=0 (2) 其中,国代表的是该超平面的法线的方向. 求解最优分类超平面(W,X)+b=0,即在训练集 一定的情况下,确定参数 和b的最佳值,以最小化 下面的公式(3): ( )= I (3) 同时满足约束条件: [<W, >+6]≥l,i=1,…, (4) 该问题的求解是一个寻优问题,在此为凸二次规 划问题[ ,通过引进拉格朗日算子 0,i=l,...,,,得 到如下拉格朗日公式: 三( ,b, )={II l l一∑ { [<CO, >+b]-I} (5) /=1 这里L的极值点为鞍点,可取L对 的最大值 ,和对国、b的最小值缈=∞ ,b=b ,将原问 题的求解最小化问题转换成求解最大化问题,满足约 束条件: , ∑Yi ̄ti=0,0 C,f-l,...,, (6) 其中,Xr 为任意支持向量.从公式(8)中可以发现, 当一个样本的 =0时,它对分类没有任何影响,只 有当 >0才会影响到03*,进而对分类结果产生影 响分类,这种对分类结果有影响的样本称之为支持向 量. 相应的分类器为: 厂( )=sgn(< , >+6 )=sgn{Zot;y,K< , >+6 }(10) 对于一个未知类别的样本 ,若f(x)=+l,则样 本 属于正类,即当前类别,若f(x)=一1,则样本X属 于负类。即非当前类别. 2.2 SMO算法 SMO算法的全称是Senquential Minimal Optimization,是由John C.Platttu提出来的【加1.支持向 量机训练的问题实际上是一个凸优化问题,即求解一 个受约束的二次规 ̄lJ(quadratic programming,QP)ih]题, 其中比较有名的就是SMO算法,SMO算法的思想是 循环迭代:都是将原有大规模的QP问题分解成一系 列小的QP问题,按照某种迭代策略,反复求解小的 QP问题,构造出原有的大规模QP问题的近似解,并 使该近似解逐渐收敛到最优解【“]. 3基于欠采样不平衡SVM算法实现 针对不平衡数据集上使用传统支持向量机的时候, 少数类的分类精度非常低.最近有许多解决不平衡 SVM分类的方法,这些解决方法主要是从数据和算法 方面入手[1 .从数据这方面入手,主要有重采样方法, 随机下采样方法,向下采样方法[B】.把训练数据集中 的的多数类样本减少,以提高分类性能,被称为欠采 样方法[1 .为了减少样不平衡样本集中多数类,本文 对多数类样本集进行欠采样处理,于是提出了基于欠 采样不平衡SVM算法(Under-sampling—SVM). 下面是算法的定义: 定义1.(距离)给定两个数据集, , ,在特征空间 Research and Development研究开发23 1 计算机系统应用 http://www.c—S—a.org.cn 2017年第26卷第4期 上两个样本之间的距离可以表示为: 多数类样本集 ,(保持 和4比例为2)那么, 中心的 d(xl, ,)=√ ( , )一2K(xi,Xj)+ ( ,,Xj) (11) 新的样本集 =4 u …。.那么A一和 1 定义2.这些发样本的平均特征成为这些样品的 距离表示为:根据公式(2),A 的中心表示为: 中心.给定训练样本{X , ,...,Xn},所以这些样本的中 心可以表达为: 1 c+=一1∑ (一 ) , f∈ (13) 其中■ 是 中的一个样本.通过公式(1),A一中的一 c= ∑ ( ) ieX (12) 个样本 和 的中心 距离为: dc ̄。如果使用不平衡训练数据集,传统SVM分类分级 后,将接收到的样本的类别是相同的少数类训练数据 =x/K(x_ , )一2K(x_ ,c+)+ (c+,C+) (14) 集的有准确的分类.每当在不平衡数据样本集上采用 传统的SVM进行分类,得到的超平面会靠近少数类的 侧面.分类后,少数类的几个样品被分类为多数,一 边,多数类的样品几乎列为多数的侧面.因此少数类 的分类精度不高.如示于图1. __:!! __=_I_一 dema1三 m Um曼 :m_m__ ● ● ●● ・二◆ 图1 不平衡训练样本集表现 根据支持向量机的几何特征确定如何减少大多数 类的不平衡支持向量机学习的大小应该考虑一个样本 的大多数类和少数类的中心之间的距离.基于定义1 的结果,增加不平衡支持向量机学习中的少数类的大 小应该考虑不平衡支持向量机分类的结果因此,当做 不平衡的支持向量机学习时,我们使用下面的筛选机 制:尽我们所能选择的样本,大多数类封闭的少数类 的中心作为新的大多数样本,增加少数类的样本添加 到少数样本的不平衡支持向量机分类. 所以,基于欠采样不平衡SVM算法可以概括如 下:(设置原始不平衡样本集作为一个 ,设置少数类 样本A ,设置多数类样本集为 ) 本文使用的是核函数为:高斯核函数(PJ3F1 第一步:在多数类样本集 上,通过欠采样获得 一个新的样本集 …。.首先,如果 和4比例超过 了2,对多数类样本集 进行欠采样,得到一个新的 232研究开发Research and Development 第二步:对于经过欠采样处理的样本集 ,通 过使用SMO算法对其进行训练l1引,从而的得到一个训 练模型 .,即得到一个分类器(分类函数),如2.1所讲 f(x)=sgn(< ,X>+6 )=sgn{ZaTY,K< , >+6 }(15) l 第三步:通过使用得到的模型(分类器) 对测试 集 进行分类,测试样本的分类结果为 (和4标记 一样,为少数类), (和 一的标记一样,为多数类) 第四步:获得新的训练样本集 :.首先,往 添加 ,于是我们就可以得到一个新的少数类样 本集4 ,那么 = u .接下来,通过对少 数类样本集 进行向下采样得到一个新的样本集 …:(保证 …:和4… 的比率为2),那么 =4 :u :,向下采样的方法和第一步相同. 第五步:通过SMO算法对新得到的样本集 进行训练,从而得到一个新的训练模型 ,,即得到一 个新的分类器. 第六步:利用这新得到的模型 ,对测试集进行 分类. 4实验结果 大多数不平衡学习的研究更关注两个类别,因为 多分类问题可以简化为两类.根据惯例,少数样本被 标记为正类,而大多数样本被标记为负类.通常应用 两个评价标准,准确率,召回率 】,评估不平衡数据 集上的分类.他们描述如下: 准确率= ,召回率= TP TP七FP TP FN TP(真正类),TN(真负类),分别代表正类和负类样 本的数量要正确分类的次数.FN(假负类),FP(假正类), 分别代表被错误分类的样本数.他们描述如下.表1 代表着两类矩阵. 2017年第26卷第4期 http://www.c-s-a.org.cn 计算机系统应用 表1两类矩阵 表4随机抽样SVM算法实验结果 为了测试Under-sampling SVM算法的性能,我们 将该算法应用到网页分类.我们比较Under-sampling .SVM算法下采样对不平衡数据集传统的SVM算法和 (3)Under-sampling—SVM算法等结果如表5所示 表5 Under-sampling—SVM实验结果 随机抽样SVM.所有的算法都是在用libsvm.3.1工具 包进行.三种算法的简单描述如下: 传统SVM:在支持向量机训练之前没有任何操 作. 随机抽样SVM:在该算法中,一些训练样本被随 机删除之前,支持向量机训练. Under-sampling—SVM:该算法不仅消除了一些样 品(非支持向量)的基础上的距离,也提高了少数类反 馈机制. 在这实验中,我们使用了四种不同的UCI数据 集 "】,包括Iris,Abalone,Balance Scale nad Yeast数据 集.在四个UCI数据集,一种是选择作为一个少数类 和其余类型分为多数类.每个数据集被随机分为训练 集和测试集.还我们给他们不同的不平衡比(少数类与 多数类的比率),描述4个数据集具体况如表2所示 表2数据集详情 UCI数据集的向量形式是矩阵形式.所以,在我 们的实验之前,我们应该先格式化样本集.样品的格 式如下:<label><valuel><value2>….这里在这里,标 签是网页类别,值是特征权重.预处理后,UCI数据集 转成到矢量格式.然后,我们使用这两种算法来做的 学习.实验的结果如下. (1)传统支持向量机算法的实验结果如表3所示. 表3传统SVM算法实验结果 (2)随机抽样SVM算法等结果如表4所示. 训练集训 少 回 从上表的实验结果,我们可以看到,从训练时间 上Under-sampling—SVM比随机采样VM算法的时间较 长,但短于传统的支持向量机.从少数类别的查准率 和查全率来看,Under-smapling.SVM算法具有更优秀 的表现,原因是经过欠采样,改善了超平面的位置. Under-sampling.SVM算法比随机采样SVM具有更好 的表现原因是,Under-sampling-SVM算法通过反馈机 制改善了超平面位置. 5不平衡SVM网页分类分类系统实现 5.1实验环境 本文所设计的网页分类系统是在visual studio 2010编程工具基础上开发的,C++设计语言具备结构 化控制语句,程序的执行效率高,而且C++语言还具 有汇编语言的优点,并支持C语言. 5.2不平衡SVlVl网页分类系统框架 本文设计的不平衡网页分类系统框架如图2所示. 图2 网页分类流程 Research and Development研究开发233 计算机系统 用 http://www.C—S—a.org.cn 2017年第26卷第4则 5.2.1网页预处理子系统 测试州艇向譬鬃 + 网页预处理主要包括3个步骤: 第一步:网页去噪,因为分类系统处理的对象主 埘数槲进行 J处理 要是web页面,但是页面中含有的元素丰富,像文本, 图像,音乐,动态图片,视频,以及html标签,这些因 l I J * 、—:曼J 素会干扰我们处理信息.经过大量的研究发现HTML 的网页大多具有相同的格式,如图3所示. < HTLE>l叫虹标题内窬</TITI E </HEAD’ (BODY) 删负i}-史内容 <,BODY (/HTMI 图3 HTML DOM树 所以本文的占噪方法主要是,去掉网页中的 “script”,“image”,“style”,“form”,“iframe”等标签. 第二步:相关信息的提取主要是提取的TD标签, 表标签,div标签的里的信, ̄,sFD相关链接的信息,在这 个时候只有去除埘分类的贡献没有HTML标签,保留 中文字符即可. 第三步:对提取好的有用信息,进行中文分词, 本文采用的是中科院分词软件(ICTCLA). 5.2.2预处理予系统 在经过对原始网页样本集进行净化之后,这些网页 就被变成了分类系统能识别的样本,训练的过程用这测 试数据得带基于欠采样不平衡SVM分类的初始模型, 不平衡SVM数据预处理子系统的过程如图4所示. 初始样奉集 欠采样处理 ’ 满足平衡度 新数据 集 图4预处理子系统流程 5.2.1分类子系统 在经过预处子系统处理过之后,得到一个不平衡 SVM模型,接下来用设计好的分类子系统对网页进行 分类判断,主要的过程如图5所示. 234研究开发Research and Development 』 。 ’j入文僻 图5分类子系统流程 5.3不平衡SVM网页分类系统界面以及运行结果 本文设计的系统的丰界面图6所示. 第一步.先将本地的测试数据集读墩到该系统 中,在点击界面中的“选择本地样本集”,如图7所示. 图7 分类系统选取不平衡测试集界面l 第二步.按“训练分类器”按钮,此时该分类系统 变会对本地的样本集进行训练,经过训练之后,分类 器系统会把样本训练集进行提取,之后得到本地样本 集的特征. 第三步.训练结段结束后,点击“测试分类器”按钮, 接下来,该系统会显示分类效果的界面,如图8所示. 2017 第26卷第4期 http:Hwww.c-S—a.org.cn 计算机系统应用 参考文献 l Priore P'Pa ̄eno J,Pino R,et a1.Learning—based scheduling of flexible manufacturing systems using support vector machines.Applied Aritifcial Intelligence,2010,24(3):194-209 2刘苏苏,丁福利,孙立民.优化支持向量机核参数的核矩阵方 法研究.烟台大学学报(自然科学与工程版),2013, 26(2):l31-135. 3韩芳'孑,J\立民.不平衡样本集分类算法研究.计算机应用研究, 2015,32(8):2323—2325. 4杨智明.面向不平衡数据的支持向量机分类方法研究『博士 图8系统分类结果图 该系统还有一个特点,当你点击其中一个主题是 学位论文1.哈尔滨:哈尔滨工业大学,2009. 5丁福利,孙立民.基于支持向量机的不平衡样本分类研究. 科学技术与工程,2014,14(3):8 1-85. 时,该体统会弹出一个界面,上面显示着网页的具体 信息,像网页的大小、类别,如图9所示. 6刘苏苏,孙立民.支持向量机与RBF神经网络回归性能比较 研究.计算机工程与设计,2012,32(12):4202-4205. 7 Vapnik VN.The nature of statistical learning theory.IEEE Trans.on Neural Networks,1995,8(6):1564一l564. 8李琼,陈利.一种改进的支持向量机文本分类方法.计算机技 术与发展,20 1 5,(5):78—82. 9 Joachims Making large—scale SVM learning practia1. Advances in Kernel Methods-Suppo ̄Vector Learning,MIT Press,1999. 1 0 Platt JC.Sequential minimal optimization:A fast algorithm for training support vector machines.Advances in Kernel Methods-Suppo ̄Vector Learning,1998:212-223. 1 1柴岩,王庆菊.基于边界向量的样本取样SMO算法.系统工 图9系统的主界面 程,2015,(6):142—145. 12 Hwang JP,Park S,Kim E.A new weighted approach to 内存占用小、运行稳定,分类精度高等优点,具有 较强的实用价值. 第四步:接F来点击”分类器评测”按钮,该系统 评测界面,该页面主要包括查准率和查全率这两大标 准. imbalanced data classiication problfem via support vector machine with quadratic cost function.Expe ̄Systems with Applications,201 1,38:8580--8585. 1 3 Liu Yu XH,Huang JX,An A.Combining integrated sampling with SVM ensembles for learning from imbalanced datasets. Information Processing and Management,2011,47:6l7—631. 14 Dendamrongvit S,Kubat M.Undersampling approach for imbalanced training sets and induction from multi—label text-categorization domains.New Frontiers in Applied Data Mining,2010,5669:4O一52. 1 5曾一平.中文文本情感分类的研究[硕士学位论文】.北京:北 京交通大学.201 1. 16余桂兰,陈珂,左敬龙.基于云模型的并行蚁群.SVM分类方 法.计算机技术与发展,2014,(4):131-134. 1 7 Frank A,Asuncion A.UCI machine learning repository. Irvine.CA:University of California,School of Information 图l0分类系统的评测结果 and Computer Science,2010. Research and Development研究开发235 

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