当前位置:文档之家› 基于支持向量机的多类分类在变压器故障诊断中的应用

基于支持向量机的多类分类在变压器故障诊断中的应用

基于支持向量机的多类分类在变压器故障诊断中的应用
基于支持向量机的多类分类在变压器故障诊断中的应用

收稿日期:2009-12-29;修回日期:2010-03-15。作者简介:徒伟(1980-),男,江苏南京人,硕士研究生,主要研究方向:油浸式变压器在线检测与故障诊断;张广明(1965-),男,江苏江

都人,教授,博士,主要研究方向:计算机测控技术、机电一体化。

文章编号:1001-9081(2010)S1-0097-02

基于支持向量机的多类分类在变压器故障诊断中的应用

伟,张广明

(南京工业大学自动化与电气工程学院,南京210004)

(netmagictwzy@sohu.com)

要:提出一种基于支持向量机(SVM )多类分类的变压器故障诊断方法。根据SVM 理论建立变压器故障预测

数学模型,应用决策二叉树方法建立诊断模型,通过Matlab 对各节点处的支持向量机进行训练及仿真,最终得到了变

压器故障分类的结果。仿真结果表明,该方法对变压器故障类型能较为准确地分类。

关键词:油浸式变压器;故障诊断;多类分类;支持向量机;二叉树

中图分类号:TM411;TP182

文献标志码:A

Application of SVM multi-class classification in transformer fault diagnosis

TU Wei,ZHANG Guang-ming

(College of Automation,Nanjing University of Technology,Nanjing Jiangsu 210004,China )

Abstract:This paper proposed a novel algorithm of transformer fault diagnosis,based on Support Vector Machine (SVM)multi-class classification.The mathematical model of fault prediction for transformer was built based on SVM theory.Decision-binary tree was used to establish the diagnosis model.Transformer faults were classified exactly by training and simulating SVM on nodes with Matlab.

Key words:oil-filled transformer;fault diagnosis;multi-class classification;Support Vector Machine (SVM);binary tree

0引言

支持向量机(Support Vector Machine ,

SVM )是在统计学习理论基础上发展起来的一种新的机器学习方法[1]

。支持向量机最初是为了两类分类问题而设计的,

在实际应用中,多类分类的问题更为普遍。如何将二类分类问题推广到多类分类问题上,

已经成为支持向量机研究新的热点。支持向量机广泛应用于人脸识别、故障分类、手写字体识别、非线性系统建模与识别等问题领域,并取得了比较好的效果。

电力变压器作为电力系统的枢纽设备,其故障诊断不仅有利于保证其安全运行,而且可以提高电力系统的可靠性[2]

。文献[

3]实现了一种专家系统在变压器故障诊断中的应用,该系统采用基于置信度的模糊推理方法,由观测到的信

息,利用知识库来推断结论,实验证明此方法降低了判断的随机性,提高了诊断水平。文献[4]提出了一种基于自适应神经模糊推理系统的变压器绝缘故障诊断方法,该方法能自动跟踪数据输入特征的变化,弥补模糊诊断系统的不足。目前比较常用的模糊技术,如专家系统和人工神经网络等智能识别方法一般需要大的故障数据样本和先验知识,而实际工程中得到的样本数量有限,因此,基于小样本理论的支持向量机在电力变压器故障诊断中有明显的优势。

1电力变压器故障预测模型

假设有变压器故障指标实例(x i ,

y i ),i =1,2,3,…,k ;x i ∈R n ,这些指标就是变压器发生故障时产生的各种特征指

标,

y i (y i ∈R )表示变压器故障类型。建立如下关系:f :R n

→R

y i =f (x i );i =1,2,…,k

其中:R n

为变压器发生故障时产生的特征指标的集合,

R 是变压器故障类型的集合。根据支持向量机理论,建立如下关

系式:

f (x )=w ·x +b =

∑k

i =1

(a

i

-a *i )K (x ,

x i )+b 其中:x 为变压器发生故障时的特征指标;x i 为k 个样本中的第i 个样本;K (x ,

x i )为核函数。油浸式变压器的内部故障主要有过热性故障和放电性故

障,一般通过油中溶解气体分析(Dissolved Gases Analysis ,DGA )技术,根据分析组分和其浓度的变化规律来判断变压器所处的状态。一般采用H 2,

CO ,CH 4,C 2H 2,C 2H 4,C 2H 6这6种气体作为特征气体。本文采用上述气体的相对含量作为支持向量机的输入变量。变压器故障的故障类型为:低温过

热、中温过热、高温过热、低能放电、高能放电

[5-6]

。本文在多个类别的故障诊断中采用的是基于支持向量机决策二叉树多类分类的方法,其基本思想是将该节点处所包

含的类别划分为2个子类别,然后对2个子类进一步划分,直至得到样本故障的精确类型。最后在每个决策节点处训练支持向量机,实现对待分样本的分类。

2实例验证

本文从多个地区供电局的历史资料和近年来的有关文献

资料上收集了大量具有明确结论的变压器故障数据[7-9]

,建

立了基于支持向量机的决策二叉树故障诊断结构模型。如图

1所示。

决策二叉树结构的理论依据是通过计算欧氏距离,将欧

第30卷增刊12010年6月

计算机应用

Journal of Computer Applications Vol.30Suppl.1

June 2010

氏距离最小的两类作为最相似的两类,再将这两类合并成一个临时的类。而支持向量机从差异性最大的两个类开始分类,可以得到最佳的分类结果。根据欧氏距离理论,放电性故障和过热性故障之间的欧氏距离值是最大的,

因此可以作为根节点的分类依据,所有的热性故障都临时性地归纳到过热故障的类中,

而电性故障则归纳到放电故障的类中。以此类推,得到整个的二叉树模型结构

图1基于支持向量机的决策二叉树故障诊断模型

3Matlab 训练及仿真

为了验证基于支持向量机的决策二叉树结构模型对变压

器故障诊断的判断,从已知故障结论的故障数据中选择66条作为训练和测试的样本,其中训练样本46例,测试样本20例。训练测试平台选择了Matlab7.1。故障类型涵盖了低能放电、

高能放电、低温过热、中温过热、高温过热5种故障。按照图1所示的决策二叉树结构模型,首先建立了支持向量机SVM1,用来训练和测试区分过热性故障和放电性故障,Matlab 测试报告如图2(a )所示,其中X 轴的数值表示测试样本的数目,分类结果中值为“1”的表示支持向量机故障分类

结果同实际故障相吻合,而值为“0”的表示故障反判。由图2可以看出,

SVM1对过热性故障和放电性故障的判断的准确率能达到95%左右。而这一判断位于根节点处,也就是对故障的第一次分类,要求准确率较高,而该分类的准确率基本还是可以满足实际要求的。当过热性故障和放电性故障分类完成后,根据决策二叉树的结构,分类进入下一环节:若故障属

于放电性故障,

则由支持向量机SVM2来判断故障具体所属类别。支持向量机SVM2中,训练样本18例,测试样本5例。

训练测试结果报告如图2(b )所示。若故障分类属于过热性故障,则由支持向量机SVM3来判断故障所属类别,即中低温过热故障和高温过热故障。支持向量机SVM3中,训练样本28例,测试样本7例。训练测试结果报告如图2(c )所示。最

后根据决策二叉树结构模型,

SVM4用于分类低温过热故障和中温过热故障。支持向量机SVM4中,

用于训练样本15例,测试样本7例。训练测试结果报告如图2(d )所示。基本支持向量机的二叉树决策模型在诊断变压器故障时具有小样本、速度快、没有盲区的优点,但同时该模型也有其不足和缺陷:首先是对根节点处判断的准确率要求较高,若根节点处判断错误,

会直接影响整个系统的精确度。其次是由于各个变压器的参数不同,特征气体的样本分布有一定的差异,

在建立模型训练测试时要综合考虑

。图2

二叉树决策模型节点支持向量机测试报告

4结语

支持向量机方法作为一种优秀的学习方法和搜索算法,

具有很好的推广能力和较强的非线性动态数据处理能力,为变压器的故障分析提供了一种很好的解决途径。通过深入挖掘变压器DGA 数据中所包含的故障信息,在小训练样本下也能得到较为准确的诊断结果,因此具有非常好的应用前景。参考文献:

[1]李天云,王爱凤,程思勇,等.用LS-SVMs 分析油浸式变压器故障[J].高电压技术,2008,34(2):643-943.

[2]吴宏岐,贾宏宾,刘霞,等.变压器故障特征分析及综合诊断[J].电气技术,2006,1(3):38-40.

[3]魏鲁原,崔霞.专家系统在变压器故障诊断中的应用[J].徐州工程学院学报,2007,22(6):17-20.

[4]赵峰,苏宏升.基于自适应神经模糊推理系统的变压器故障诊断[J].中国高新技术企业,2008(4):69-70.

[5]操敦奎.变压器油中气体分析诊断与故障检查[M].北京:中国电力出版社,2005:84-105.

[6]贾瑞君,范玉华.DL /T 722-2000变压器油中溶解气体分析与判断导则[S].北京:中国电子出版社,2000:14-15.

[7]程启明,唐雯.三种变压器故障诊断方法比较研究[J].电网技术,2006,30(10):423-425.

[8]乔维德.基于模拟退火改进粒子群混合算法的变压器故障诊断[J].高压电气,2008,44(3):208-211.

[9]

陈利,蒋维东,杨礼.支持向量数据描述法在变压器故障预警中的应用[J].西南民族大学学报,2008,34(3):568-571.

(上接第93页)

[4]

SLOOT P M A,BOUKHANOVSKY A V,KEULEN W.A grid-based HIV expert system [J].Journal of Clinical Monitoring and Computing,2005,19(4/5):104-120.[5]

CHRYSLER E.Using decision tree analysis to develop an expert system[J].Information System Education Journal,2006,19(4):679-681.[6]李新,何华灿.基于EP 算法的模糊神经推理机研究[J].小型微型计算机系统,2003,24(3):467-469.

[7]

YOON Y,GUIMARAES T,SWALES G.Intergrading artificial neural networks with rule-based expert systems[J].Decision Support Systems,

1994,11(5):497-507.[8]

FU L M .Rule generation from neural networks [J ].IEEE Transactions on System,Man,and Cybernetics,1994,24(8):1114-1124.[9]

LACHER R C,HRUSKA S I,KUNCICKY D C.Back propagation learning in expert networks[J].IEEE Transactions on Neural Networks,1992,3(1):62-67.

[10]LEE H J,AHN B S,PARK Y M.A fault diagnosis expert system for

distribution substations[J].IEEE Transactions on Power Delivery,2000,15(1):92-97.

89计算机应用第30卷

支持向量机(SVM)算法推导及其分类的算法实现

支持向量机算法推导及其分类的算法实现 摘要:本文从线性分类问题开始逐步的叙述支持向量机思想的形成,并提供相应的推导过程。简述核函数的概念,以及kernel在SVM算法中的核心地位。介绍松弛变量引入的SVM算法原因,提出软间隔线性分类法。概括SVM分别在一对一和一对多分类问题中应用。基于SVM在一对多问题中的不足,提出SVM 的改进版本DAG SVM。 Abstract:This article begins with a linear classification problem, Gradually discuss formation of SVM, and their derivation. Description the concept of kernel function, and the core position in SVM algorithm. Describes the reasons for the introduction of slack variables, and propose soft-margin linear classification. Summary the application of SVM in one-to-one and one-to-many linear classification. Based on SVM shortage in one-to-many problems, an improved version which called DAG SVM was put forward. 关键字:SVM、线性分类、核函数、松弛变量、DAG SVM 1. SVM的简介 支持向量机(Support Vector Machine)是Cortes和Vapnik于1995年首先提出的,它在解决小样本、非线性及高维模式识别中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中。支持向量机方法是建立在统计学习理论的VC 维理论和结构风险最小原理基础上的,根据有限的样本信息在模型的复杂性(即对特定训练样本的学习精度,Accuracy)和学习能力(即无错误地识别任意样本的能力)之间寻求最佳折衷,以期获得最好的推广能力。 对于SVM的基本特点,小样本,并不是样本的绝对数量少,而是与问题的复杂度比起来,SVM算法要求的样本数是相对比较少的。非线性,是指SVM擅长处理样本数据线性不可分的情况,主要通过松弛变量和核函数实现,是SVM 的精髓。高维模式识别是指样本维数很高,通过SVM建立的分类器却很简洁,只包含落在边界上的支持向量。

(完整word版)支持向量机(SVM)原理及应用概述分析

支持向量机(SVM )原理及应用 一、SVM 的产生与发展 自1995年Vapnik (瓦普尼克)在统计学习理论的基础上提出SVM 作为模式识别的新方法之后,SVM 一直倍受关注。同年,Vapnik 和Cortes 提出软间隔(soft margin)SVM ,通过引进松弛变量i ξ度量数据i x 的误分类(分类出现错误时i ξ大于0),同时在目标函数中增加一个分量用来惩罚非零松弛变量(即代价函数),SVM 的寻优过程即是大的分隔间距和小的误差补偿之间的平衡过程;1996年,Vapnik 等人又提出支持向量回归 (Support Vector Regression ,SVR)的方法用于解决拟合问题。SVR 同SVM 的出发点都是寻找最优超平面(注:一维空间为点;二维空间为线;三维空间为面;高维空间为超平面。),但SVR 的目的不是找到两种数据的分割平面,而是找到能准确预测数据分布的平面,两者最终都转换为最优化问题的求解;1998年,Weston 等人根据SVM 原理提出了用于解决多类分类的SVM 方法(Multi-Class Support Vector Machines ,Multi-SVM),通过将多类分类转化成二类分类,将SVM 应用于多分类问题的判断:此外,在SVM 算法的基本框架下,研究者针对不同的方面提出了很多相关的改进算法。例如,Suykens 提出的最小二乘支持向量机 (Least Square Support Vector Machine ,LS —SVM)算法,Joachims 等人提出的SVM-1ight ,张学工提出的中心支持向量机 (Central Support Vector Machine ,CSVM),Scholkoph 和Smola 基于二次规划提出的v-SVM 等。此后,台湾大学林智仁(Lin Chih-Jen)教授等对SVM 的典型应用进行总结,并设计开发出较为完善的SVM 工具包,也就是LIBSVM(A Library for Support Vector Machines)。LIBSVM 是一个通用的SVM 软件包,可以解决分类、回归以及分布估计等问题。 二、支持向量机原理 SVM 方法是20世纪90年代初Vapnik 等人根据统计学习理论提出的一种新的机器学习方法,它以结构风险最小化原则为理论基础,通过适当地选择函数子集及该子集中的判别函数,使学习机器的实际风险达到最小,保证了通过有限训练样本得到的小误差分类器,对独立测试集的测试误差仍然较小。 支持向量机的基本思想:首先,在线性可分情况下,在原空间寻找两类样本的最优分类超平面。在线性不可分的情况下,加入了松弛变量进行分析,通过使用非线性映射将低维输

支持向量机的实现

模式识别课程大作业报告——支持向量机(SVM)的实现 姓名: 学号: 专业: 任课教师: 研究生导师: 内容摘要

支持向量机是一种十分经典的分类方法,它不仅是模式识别学科中的重要内容,而且在图像处理领域中得到了广泛应用。现在,很多图像检索、图像分类算法的实现都以支持向量机为基础。本次大作业的内容以开源计算机视觉库OpenCV为基础,编程实现支持向量机分类器,并对标准数据集进行测试,分别计算出训练样本的识别率和测试样本的识别率。 本报告的组织结构主要分为3大部分。第一部分简述了支持向量机的原理;第二部分介绍了如何利用OpenCV来实现支持向量机分类器;第三部分给出在标准数据集上的测试结果。 一、支持向量机原理概述

在高维空间中的分类问题实际上是寻找一个超平面,将两类样本分开,这个超平面就叫做分类面。两类样本中离分类面最近的样本到分类面的距离称为分类间隔。最优超平面指的是分类间隔最大的超平面。支持向量机实质上提供了一种利用最优超平面进行分类的方法。由最优分类面可以确定两个与其平行的边界超平面。通过拉格朗日法求解最优分类面,最终可以得出结论:实际决定最优分类面位置的只是那些离分类面最近的样本。这些样本就被称为支持向量,它们可能只是训练样本中很少的一部分。支持向量如图1所示。 图1 图1中,H是最优分类面,H1和H2别是两个边界超平面。实心样本就是支持向量。由于最优超平面完全是由这些支持向量决定的,所以这种方法被称作支持向量机(SVM)。 以上是线性可分的情况,对于线性不可分问题,可以在错分样本上增加一个惩罚因子来干预最优分类面的确定。这样一来,最优分类面不仅由离分类面最近的样本决定,还要由错分的样本决定。这种情况下的支持向量就由两部分组成:一部分是边界支持向量;另一部分是错分支持向量。 对于非线性的分类问题,可以通过特征变换将非线性问题转化为新空间中的线性问题。但是这样做的代价是会造成样本维数增加,进而导致计算量急剧增加,这就是所谓的“维度灾难”。为了避免高维空间中的计算,可以引入核函数的概念。这样一来,无论变换后空间的维数有多高,这个新空间中的线性支持向量机求解都可以在原空间通过核函数来进行。常用的核函数有多项式核、高斯核(径向基核)、Sigmoid函数。 二、支持向量机的实现 OpenCV是开源计算机视觉库,它在图像处理领域得到了广泛应用。OpenCV 中包含许多计算机视觉领域的经典算法,其中的机器学习代码部分就包含支持向量机的相关内容。OpenCV中比较经典的机器学习示例是“手写字母分类”。OpenCV 中给出了用支持向量机实现该示例的代码。本次大作业的任务是研究OpenCV中的支持向量机代码,然后将其改写为适用于所有数据库的通用程序,并用标准数据集对算法进行测试。本实验中使用的OpenCV版本是,实验平台为Visual

多分类簇支持向量机方法

第30卷第1期2010年1月 计算机应用 JournalofComputerApplications V01.30No.1 Jan.2010 文章编号:1001—9081(2010)01—0143—03 多分类簇支持向量机方法 王之怡.杨一帆 (西南财经大学经济信息工程学院,成都610074) (wangzy_t@swufe.edu.cn) 摘要:针对支持向量机的多分类问题,提出一种新颖的基于非平行超平面的多分类簇支持向量机。它针对k模式分类问题分别训练产生k个分割超平面,每个超平面尽量靠近自身类模式而远离剩余类模式;决策时,新样本的类别由它距离最近的超平面所属的类决定,克服了一对一(OAO)和一对多(OAA)等传统方法存在的“决策盲区”和“类别不平衡”等缺陷。基于UCI和HCL2000数据集的实验表明,新方法在处理多分类问题时。识别精度显著优于传统多分类支持向量机方法。 关键词:支持向量机;超平面;核函数;手写体汉字识别 中图分类号:TP391.4文献标志码:A Multi-classclustersupportvectormachines WANGZhi.yi.YANGYi-fan (SchoolofEconomicsInformation西讲M咖’SouthwestUniversityofFinanceandEconomics,ChengduSichuan610074,China) Abstract:Basedontheideaofnonparallelhyperplanes,anovelmulti—classclustersupportvectormachinemethodwas proposedtosettlethemulti-classclassificationproblemofsupportvectormachines.Forak—classclassificationproblem,ittrainedk—hyperplanesrespoctivcly,andeachonelayascloseaspossibletoself-classwhilebeingapartfromtherestclasPSasfaraspossible.Then,labelsofnewsamplesweredeterminedbytheclassoftheirnearesthyperplane,thustheinherentlimitationsofOne—Against—One(OAO)andOne-Against—Au(OAA)methodscallbeavoided,suchas”decisionblind—area” and”unbalancedclasses”.Finally,experimentsonUCIandHCL2000datasetsshowthattheproposedmethodsignificantlyoutperformstraditionalOAOandOAAintermsofrecognitionaccuracy. Keywords:SupportVectorMachine(SVM);hyperplane;kernelfunction;handwrittenChinesecharacterrecognition 0引言 支持向量机(SupportVectorMachine,SVM)是一种新型的基于统计学习理论的机器学习方法,具有推广能力强、维数不敏感等优点¨】。大量研究表明旧。1,它在处理文本分类、手写体汉字识别、图像检索等高维小样本数据时,识别精度显著优于神经网络、贝叶斯网络、隐马尔可夫模型等传统机器学习方法。然而,SVM在本质上解决的是二值模式分类问题,虽然已提出O从(One-Against—AU)、OAO(One—Agianst-One)、ECOC等方法能够将它扩展到多分类问题HJ,但是,这些方法尚存在“决策盲区”、“不平衡类”等缺陷,分类器的推广能力受到一定影响。多分类支持向量机方法仍然是机器学习的研究热点之一。 本文将广义特征值支持向量机(ProximalSupportVectorMachineviaGeneralizedEigenvalues,GEPSVM)的非平行超平面的思想引入到多分类问题”J,提出一种新颖的多分类簇支持向量机方法,并推导了它的非线性形式。基于UCI和HCL2000的实验表明,新方法能够取得非常优异的识别精度。 1支持向量机及其多分类问题 考虑乃维实空间R4中的模式二分类问题…:已知m个训练样本A;(i=1,2,…,m)和它们的类别标记YlE{1,一1},寻找一个分类函数使得R8划分为两个子空间,两类样本分别属于不同的子空间。这里,A;=(A¨A矗,…,Ah)ER8。在两类样本线性可分的情况下,超平面(1)可将它们区分开:可?并+b=0(1)其中,可∈R“且b∈R。考虑到两类样本到超平面都应该有一定的距离,超平面还应该满足如下的不等式约束:Y‘(Af可+6)≥l;i=1,2,…,m(2)显然,满足要求的分类超平面不止一个。在结构风险最小化准则下,支持向量机寻找最优分类超平面,使得两类之间的分类间隔百三丁最大,等价于求解如下的二次优化: ¨qm"¨2 Min÷面’可(3) 田,b二 s.t.Yf(A‘曰+b)≥1;i=1,2,…,m 然而,完全满足优化问题(3)的精确分类超平面是不经常存在的。因此,考虑到某些训练样本可能不满足约束条件(2),引入松弛变量: 玉≥0;i=1,2,…,m(4)根据结构风险最小化准则,分类超平面不仅应该使分类间隔最大,同时应保持训练样本分类误差尽可能小。因此,优化问题(3)变为: 墨i曼扣7口+c姜磊(5) 收藕日期:2009一07-21;修回日期:2009一08—31。 基金项目:国家自然科学基金资助项目(69732010);西南财经大学科学研究基金资助项目(QN0806)。 作者简介:王之怡(1964一),男,上海人,副教授,主要研究方向:图像处理、电子支付;杨一帆(1970一),男,四川乐山人。博士研究生,主 要研究方向:电子支付。 万方数据

支持向量机分类器

支持向量机分类器 1 支持向量机的提出与发展 支持向量机( SVM, support vector machine )是数据挖掘中的一项新技术,是借助于最优化方法来解决机器学习问题的新工具,最初由V.Vapnik 等人在1995年首先提出,近几年来在其理论研究和算法实现等方面都取得了很大的进展,开始成为克服“维数灾难”和过学习等困难的强有力的手段,它的理论基础和实现途径的基本框架都已形成。 根据Vapnik & Chervonenkis的统计学习理论 ,如果数据服从某个(固定但未知的)分布,要使机器的实际输出与理想输出之间的偏差尽可能小,则机器应当遵循结构风险最小化 ( SRM,structural risk minimization)原则,而不是经验风险最小化原则,通俗地说就是应当使错误概率的上界最小化。SVM正是这一理论的具体实现。与传统的人工神经网络相比, 它不仅结构简单,而且泛化( generalization)能力明显提高。 2 问题描述 2.1问题引入 假设有分布在Rd空间中的数据,我们希望能够在该空间上找出一个超平面(Hyper-pan),将这一数据分成两类。属于这一类的数据均在超平面的同侧,而属于另一类的数据均在超平面的另一侧。如下图。 比较上图,我们可以发现左图所找出的超平面(虚线),其两平行且与两类数据相切的超平面(实线)之间的距离较近,而右图则具有较大的间隔。而由于我们希望可以找出将两类数据分得较开的超平面,因此右图所找出的是比较好的超平面。 可以将问题简述如下: 设训练的样本输入为xi,i=1,…,l,对应的期望输出为yi∈{+1,-1},其中+1和-1分别代表两类的类别标识,假定分类面方程为ω﹒x+b=0。为使分类面对所有样本正确分类并且具备分类间隔,就要求它满足以下约束条件: 它追求的不仅仅是得到一个能将两类样本分开的分类面,而是要得到一个最优的分类面。 2.2 问题的数学抽象 将上述问题抽象为: 根据给定的训练集

20.ENVI4.3 支持向量机分类原理、操作及实例分析

ENVI4.3 支持向量机分类原理、操作及实例分析 一、支持向量机算法介绍 1.支持向量机算法的理论背景 支持向量机分类(Support Vector Machine或SVM)是一种建立在统计学习理论(Statistical Learning Theory或SLT)基础上的机器学习方法。 与传统统计学相比,统计学习理论(SLT)是一种专门研究小样本情况下及其学习规律的理论。该理论是建立在一套较坚实的理论基础之上的,为解决有限样本学习问题提供了一个统一的框架。它能将许多现有方法纳入其中,有望帮助解决许多原来难以解决的问题,如神经网络结构选择问题、局部极小点问题等;同时,在这一理论基础上发展了一种新的通用学习方法——支持向量机(SVM),已初步表现出很多优于已有方法的性能。一些学者认为,SLT和SVM正在成为继神经网络研究之后新的研究热点,并将推动机器学习理论和技术的重大发展。 支持向量机方法是建立在统计学习理论的VC维(VC Dimension)理论和结构风险最小原理基础上的,根据有限的样本信息在模型的复杂性(即对特定训练样本的学习精度)和学习能力(即无错误地识别任意样本的能力)之间寻求最佳折衷,以期获得最好的推广能力。 支持向量机的几个主要优点有: (1)它是专门针对有限样本情况的,其目标是得到现有信息下的最优解而不仅仅是样本数趋于无穷大时的最优值; (2)算法最终将转化成为一个二次型寻优问题,从理论上说,得到的将是全局最优点,解决了在神经网络方法中无法避免的局部极值问题; (3)算法将实际问题通过非线性变换转换到高维的特征空间(Feature Space),在高维空间中构造线性判别函数来实现原空间中的非线性判别函数,特殊性质能保证机器有较 好的推广能力,同时它巧妙地解决了维数问题,其算法复杂度与样本维数无关; 2.支持向量机算法简介 通过学习算法,SVM可以自动寻找那些对分类有较大区分能力的支持向量,由此构造出分类器,可以将类与类之间的间隔最大化,因而有较好的推广性和较高的分类准确率。 最优分类面(超平面)和支持向量

随机森林与支持向量机分类性能比较

随机森林与支持向量机分类性能比较 黄衍,查伟雄 (华东交通大学交通运输与经济研究所,南昌 330013) 摘要:随机森林是一种性能优越的分类器。为了使国内学者更深入地了解其性能,通过将其与已在国内得到广泛应用的支持向量机进行数据实验比较,客观地展示其分类性能。实验选取了20个UCI数据集,从泛化能力、噪声鲁棒性和不平衡分类三个主要方面进行,得到的结论可为研究者选择和使用分类器提供有价值的参考。 关键词:随机森林;支持向量机;分类 中图分类号:O235 文献标识码: A Comparison on Classification Performance between Random Forests and Support Vector Machine HUANG Yan, ZHA Weixiong (Institute of Transportation and Economics, East China Jiaotong University, Nanchang 330013, China)【Abstract】Random Forests is an excellent classifier. In order to make Chinese scholars fully understand its performance, this paper compared it with Support Vector Machine widely used in China by means of data experiments to objectively show its classification performance. The experiments, using 20 UCI data sets, were carried out from three main aspects: generalization, noise robustness and imbalanced data classification. Experimental results can provide references for classifiers’ choice and use. 【Key words】Random Forests; Support Vector Machine; classification 0 引言 分类是数据挖掘领域研究的主要问题之一,分类器作为解决问题的工具一直是研究的热点。常用的分类器有决策树、逻辑回归、贝叶斯、神经网络等,这些分类器都有各自的性能特点。本文研究的随机森林[1](Random Forests,RF)是由Breiman提出的一种基于CART 决策树的组合分类器。其优越的性能使其在国外的生物、医学、经济、管理等众多领域到了广泛的应用,而国内对其的研究和应用还比较少[2]。为了使国内学者对该方法有一个更深入的了解,本文将其与分类性能优越的支持向量机[3](Support Vector Machine,SVM)进行数据实验比较,客观地展示其分类性能。本文选取了UCI机器学习数据库[4]的20个数据集作为实验数据,通过大量的数据实验,从泛化能力、噪声鲁棒性和不平衡分类三个主要方面进行比较,为研究者选择和使用分类器提供有价值的参考。 1 分类器介绍 1.1 随机森林 随机森林作为一种组合分类器,其算法由以下三步实现: 1. 采用bootstrap抽样技术从原始数据集中抽取n tree个训练集,每个训练集的大小约为原始数据集的三分之二。 2. 为每一个bootstrap训练集分别建立分类回归树(Classification and Regression Tree,CART),共产生n tree棵决策树构成一片“森林”,这些决策树均不进行剪枝(unpruned)。在作者简介:黄衍(1986-),男,硕士研究生,主要研究方向:数据挖掘与统计分析。 通信联系人:查伟雄,男,博士,教授,主要研究方向:交通运输与经济统计分析。 E-mail: huangyan189@https://www.doczj.com/doc/6615854360.html,.

支持向量机数据分类预测

支持向量机数据分类预测 一、题目——意大利葡萄酒种类识别 Wine数据来源为UCI数据库,记录同一区域三种品种葡萄酒的化学成分,数据有178个样本,每个样本含有13个特征分量。50%做为训练集,50%做为测试集。 二、模型建立 模型的建立首先需要从原始数据里把训练集和测试集提取出来,然后进行一定的预处理,必要时进行特征提取,之后用训练集对SVM进行训练,再用得到的模型来预测试集的分类。 三、Matlab实现 3.1 选定训练集和测试集 在178个样本集中,将每个类分成两组,重新组合数据,一部分作为训练集,一部分作为测试集。 % 载入测试数据wine,其中包含的数据为classnumber = 3,wine:178*13的矩阵,wine_labes:178*1的列向量 load chapter12_wine.mat; % 选定训练集和测试集 % 将第一类的1-30,第二类的60-95,第三类的131-153做为训练集 train_wine = [wine(1:30,:);wine(60:95,:);wine(131:153,:)]; % 相应的训练集的标签也要分离出来 train_wine_labels = [wine_labels(1:30);wine_labels(60:95);wine_labels(131:153)]; % 将第一类的31-59,第二类的96-130,第三类的154-178做为测试集 test_wine = [wine(31:59,:);wine(96:130,:);wine(154:178,:)]; % 相应的测试集的标签也要分离出来 test_wine_labels = [wine_labels(31:59);wine_labels(96:130);wine_labels(154:178)]; 3.2数据预处理 对数据进行归一化: %% 数据预处理 % 数据预处理,将训练集和测试集归一化到[0,1]区间 [mtrain,ntrain] = size(train_wine); [mtest,ntest] = size(test_wine); dataset = [train_wine;test_wine]; % mapminmax为MATLAB自带的归一化函数 [dataset_scale,ps] = mapminmax(dataset',0,1); dataset_scale = dataset_scale';

基于支持向量机的多分类方法研究_郎宇宁

中国西部科技
2010年06月(中旬)第09卷第17期 总第214期
基于支持向量机的多分类方法研究
郎宇宁1 蔺娟如2
(1.西南交通大学,四川 成都 610031;2.山西师范大学数学与计算机科学学院,山西 临汾 041000) 摘 要:支持向量机是一种典型的两类分类方法,如何将其扩展到多分类领域是一个重要的问题。本文对现有的多类 支 持向量机算法作了一定的分析,并提出了一些建议,希望对研究者以后的研究有所帮助。 关键词:统计学习;支持向量机;多分类 DOI:10.3969/j.issn.1671-6396.2010.17.012 Abstract:Support Vector Machine (SVM) is a typical two-class classification. It has been an important issue to how to extend it to multi-class field. In the thesis, based on existing multi-class support vector machine methods are analyzed, then puts forward some suggestions to help researchers in later studies. Key words:Statistical learning theory;Support vectormachine;Multi-class classification

引言 支持向量机(Support Vector Machine)是Cortes和
2.1 一类对多类法 OVR(One Versus Rest)方法其步骤是构造K个两类分类 器(共K个类别),第i(0<i<K+1)个分类器可以区分第i个类 别和其他剩余的所有类别。训练是取第i类为正类,其余的 都算作负类。测试时让每个训练样本都经过K个分类器,最 后考察K个结果。若第i分类器的结果为正,则把这个样本判 给第i类,若没有一个分类器的结果为正,则拒绝判定。该 方法的优点是简单,直观,缺点就是存在拒分区域 (A,B,C,D),决策边界比较复杂,容易导致“数据倾斜”, 泛化能力不强。
Vapnik于1995年首先提出的,它在解决小样本、非线性及高 维模式识别中表现出许多特有的优势,并能够推广应用到 函数拟合等其他机器学习问题中。支持向量机方法是建立 在统计学习理论的VC 维理论和结构风险最小原理基础上 的,根据有限的样本信息在模型的复杂性(即对特定训练 样本的学习精度)和学习能力(即无错误地识别任意样本 的能力)之间寻求最佳折衷,以期获得最好的推广能力。 然而, 支持向量机本身是一个两类问题的判别方 法,实际应用中经常需要对多类问题进行分类, 这就涉及 到多类问题到二类问题的转换。本文对目前常用的多分类 方法进行了分析,并给出了一些建议。 2 多分类支持向量机 目前关于支持向量机的多类分类方法研究主要是在两 种指导思想下进行的: (1)直接方法:将多个分类面的参数求解合并到一 个最优化问题中来,通过求解该问题实现“一次性”的多 类分类。真的一次性考虑所有样本,并求解一个多目标函 数的优化问题,一次性得到多个分类面:
图1
约束条件为: 其中i=1,2,……n,n为样本数量;m=1,2……k, k为类别数量。 决策函数: ,判别结果为第i类。 (2)间接方法:通过构造一系列的两类分类器并将 他们通过某种方式组合在一起间接实现多类分类。 第一种方法看起来比较直观,但是在求解过程中的变 量远远多于第二种方法,在求解速度及精度方面不及第二 种方法,本文着重对第二种方法进行了分析。
收稿日期:2010-05-03 修回日期:2010-05-30 作者简介:郎宇宁,男,汉族,研究生,研究方向为数据仓库、数据挖掘。 图2
28

用于分类的支持向量机

文章编号:100228743(2004)0320075204 用于分类的支持向量机 黄发良,钟 智Ξ (1.广西师范大学计算机系,广西桂林541000;  2.广西师范学院数学与计算机科学系,广西南宁530001) 摘 要:支持向量机是20世纪90年代中期发展起来的机器学习技术,建立在结构风险最小化原理之上的支持向量机以其独有的优点吸引着广大研究者,该文着重于用于分类的支持向量机,对其基本原理与主要的训练算法进行介绍,并对其用途作了一定的探索. 关键词:支持向量机;机器学习;分类 中图分类号:TP181 文献标识码:A 支持向量机S VM (Support Vector Machine )是AT&T Bell 实验室的V.Vapnik 提出的针对分类和回归问题的统计学习理论.由于S VM 方法具有许多引人注目的优点和有前途的实验性能,越来越受重视,该技术已成为机器学习研究领域中的热点,并取得很理想的效果,如人脸识别、手写体数字识别和网页分类等. S VM 的主要思想可以概括为两点:(1)它是针对线性可分情况进行分析,对于线性不可分的情况,通过使用非线性映射算法将低维输入空间线性不可分的样本转化为高维特征空间使其线性可分,从而使得高维特征空间采用线性算法对样本的非线性特征进行线性分析成为可能;(2)它基于结构风险最小化理论之上在特征空间中建构最优分割超平面,使得学习器得到全局最优化,并且在整个样本空间的期望风险以某个概率满足一定上界. 1 基本原理 支持向量机理论最初来源于数据分类问题的处理,S VM 就是要寻找一个满足要求的分割平面,使训练集中的点距离该平面尽可能地远,即寻求一个分割平面使其两侧的margin 尽可能最大. 设输入模式集合{x i }∈R n 由两类点组成,如果x i 属于第1类,则y i =1,如果x i 属于第2类,则y i =-1,那么有训练样本集合{x i ,y i },i =1,2,3,…,n ,支持向量机的目标就是要根据结构风险最小化原理,构造一个目标函数将两类模式尽可能地区分开来,通常分为两类情况来讨论,(1)线性可分,(2)线性不可分. 1.1 线性可分情况 在线性可分的情况下,就会存在一个超平面使得训练样本完全分开,该超平面可描述为: w ?x +b =0(1) 其中,“?”是点积,w 是n 维向量,b 为偏移量. 最优超平面是使得每一类数据与超平面距离最近的向量与超平面之间的距离最大的这样的平面.最优超平面可以通过解下面的二次优化问题来获得: min <(w )= 12‖w ‖2(2) Ξ收稿日期:2004202206作者简介:黄发良(1975-),男,湖南永州人,硕士研究生;研究方向:数据挖掘、web 信息检索. 2004年9月 广西师范学院学报(自然科学版)Sep.2004 第21卷第3期 Journal of G u angxi T eachers Education U niversity(N atural Science Edition) V ol.21N o.3

基于支持向量机的分类方法

基于支持向量机的分类方法 摘要:本文首先概述了支持向量机的相关理论,引出了支持向量机的基本模型。当训练集的两类样本点集重合区域很大时,线性支持向量分类机就不适用了,由此介绍了核函数相关概念。然后进行了核函数的实验仿真,并将支持向量机应用于实例肿瘤诊断,建立了相应的支持向量机模型,从而对测试集进行分类。最后提出了一种支持向量机的改进算法,即根据类向心度对复杂的训练样本进行预删减。 1、支持向量机 给定训练样本集1122{[,],[,], ,[,]}()l l l T a y a y a y Y =∈Ω?L ,其中n i a R ∈Ω=,Ω是输入空间,每一个点i a 由n 个属性特征组成,{1,1},1,,i y Y i l ∈=-=L 。分类 就是在基于训练集在样本空间中找到一个划分超平面,将不同的类别分开,划分超平面可通过线性方程来描述: 0T a b ω+= 其中12(;;;)d ωωωω=K 是法向量,决定了超平面的方向,b 是位移项,决定 了超平面与原点之间的距离。样本空间中任意点到超平面的距离为|| |||| T a b r ωω+=。 支持向量、间隔: 假设超平面能将训练样本正确分类,即对于[,]i i a y T ∈,若1i y =+,则有 0T i a b ω+>,若1i y =-,则有0T i a b ω+<。则有距离超平面最近的几个训练样本点使得 11 11 T i i T i i a b y a b y ωω?+≥+=+?+≤-=-? 中的等号成立,这几个训练样本点被称为支持向量;两个异类支持向量到超平面 的距离之和2 |||| r ω=被称为间隔。 支持向量机基本模型: 找到具有最大间隔的划分超平面,即 ,2max ||||..()1,1,2,...,b T i i s t y a b i m ωωω+≥= 这等价于 2 ,||||min 2..()1,1,2,...,b T i i s t y a b i m ωωω+≥= 这就是支持向量机(SVM )的基本模型。 支持向量机问题的特点是目标函数2 ||||2 ω是ω的凸函数,并且约束条件都是 线性的。

支持向量机(SVM)原理及应用概述

支持向量机(SVM)原理及应用 一、SVM得产生与发展 自1995年Vapnik(瓦普尼克)在统计学习理论得基础上提出SVM作为模式识别得新方法之后,SVM一直倍受关注。同年,Vapnik与Cortes提出软间隔(soft margin)SVM,通过引进松弛变量度量数据得误分类(分类出现错误时大于0),同时在目标函数中增加一个分量用来惩罚非零松弛变量(即代价函数),SVM得寻优过程即就是大得分隔间距与小得误差补偿之间得平衡过程;1996年,Vapnik等人又提出支持向量回归 (Support Vector Regression,SVR)得方法用于解决拟合问题。SVR同SVM得出发点都就是寻找最优超平面(注:一维空间为点;二维空间为线;三维空间为面;高维空间为超平面。),但SVR得目得不就是找到两种数据得分割平面,而就是找到能准确预测数据分布得平面,两者最终都转换为最优化问题得求解;1998年,Weston等人根据SVM原理提出了用于解决多类分类得SVM方法(MultiClass Support Vector Machines,MultiSVM),通过将多类分类转化成二类分类,将SVM应用于多分类问题得判断:此外,在SVM算法得基本框架下,研究者针对不同得方面提出了很多相关得改进算法。例如,Suykens 提出得最小二乘支持向量机(Least Square Support Vector Machine,LS—SVM)算法,Joachims等人提出得SVM1ight,张学工提出得中心支持向量机 (Central Support Vector Machine,CSVM),Scholkoph与Smola基于二次规划提出得vSVM等。此后,台湾大学林智仁(Lin ChihJen)教授等对SVM得典型应用进行总结,并设计开发出较为完善得SVM工具包,也就就是LIBSVM(A Library for Support Vector Machines)。LIBSVM就是一个通用得SVM软件包,可以解决分类、回归以及分布估计等问题。 二、支持向量机原理 SVM方法就是20世纪90年代初Vapnik等人根据统计学习理论提出得一种新得机器学习方法,它以结构风险最小化原则为理论基础,通过适当地选择函数子集及该子集中得判别函数, 使学习机器得实际风险达到最小,保证了通过有限训练样本得到得小误差分类器,对独立测试集得测试误差仍然较小。 支持向量机得基本思想:首先,在线性可分情况下,在原空间寻找两类样本得最优分类超平面。在线性不可分得情况下,加入了松弛变量进行分析,通过使用非线性映射将低维输入空

支持向量机(SVM)多分类matlab程序代码

%模型训练及数据整理 model_12=svmtrain(class_12_label,class_12_value); model_13=svmtrain(class_13_label,class_13_value); model_14=svmtrain(class_14_label,class_14_value); model_23=svmtrain(class_23_label,class_23_value); model_24=svmtrain(class_24_label,class_24_value); model_34=svmtrain(class_34_label,class_34_value); %??DD?¤2a [predict_labe1,accuracy_1,dec_values_1] =svmpredict(test_scale_label, test_scale_value, model_12); [predict_labe2,accuracy_2,dec_values_2] =svmpredict(test_scale_label, test_scale_value, model_13); [predict_labe3,accuracy_3,dec_values_3] =svmpredict(test_scale_label, test_scale_value, model_14); [predict_labe4,accuracy_4,dec_values_4] =svmpredict(test_scale_label, test_scale_value, model_23); [predict_labe5,accuracy_5,dec_values_5] =svmpredict(test_scale_label, test_scale_value, model_24); [predict_labe6,accuracy_6,dec_values_6] =svmpredict(test_scale_label, test_scale_value, model_34); predict_labe7=[predict_labe1,predict_labe2,predict_labe3,predict_labe4,predict_labe5,predict_labe 6]; [m,n]=size(predict_labe7); predict_labe=zeros(m,1); for i=1:m n1=0;n2=0;n3=0;n4=0; for j=1:n if predict_labe7(i,j)==1 n1=n1+1; else if predict_labe7(i,j)==2 n2=n2+1; else if predict_labe7(i,j)==3 n3=n3+1; else if predict_labe7(i,j)==4 n4=n4+1; end end end end end B=[n1 n2 n3 n4]; max=B(1,1) ; predict_labe(i,1)=1; for k=1:3 if max<=B(1,k+1) max=B(1,k+1); predict_labe(i,1)=k+1; end end

支持向量机SVM分类算法

支持向量机SVM分类算法 SVM的简介 支持向量机(Support Vector Machine)是Cortes和Vapnik于1995年首先提出的,它在解决小样本、非线性及高维模式识别中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中[10]。 支持向量机方法是建立在统计学习理论的VC 维理论和结构风险最小原理基础上的,根据有限的样本信息在模型的复杂性(即对特定训练样本的学习精度,Accuracy)和学习能力(即无错误地识别任意样本的能力)之间寻求最佳折衷,以期获得最好的推广能力[14](或称泛化能力)。 以上是经常被有关SVM 的学术文献引用的介绍,我来逐一分解并解释一下。 Vapnik是统计机器学习的大牛,这想必都不用说,他出版的《Statistical Learning Theory》是一本完整阐述统计机器学习思想的名著。在该书中详细的论证了统计机器学习之所以区别于传统机器学习的本质,就在于统计机器学习能够精确的给出学习效果,能够解答需要的样本数等等一系列问题。与统计机器学习的精密思维相比,传统的机器学习基本上属于摸着石头过河,用传统的机器学习方法构造分类系统完全成了一种技巧,一个人做的结果可能很好,另一个人差不多的方法做出来却很差,缺乏指导和原则。所谓VC维是对函数类的一种度量,可以简单的理解为问题的复杂程度,VC维越高,一个问题就越复杂。正是因为SVM关注的是VC维,后面我们可以看到,SVM解决问题的时候,和样本的维数是无关的(甚至样本是上万维的都可以,这使得SVM很适合用来解决文本分类的问题,当然,有这样的能力也因为引入了核函数)。 结构风险最小听上去文绉绉,其实说的也无非是下面这回事。 机器学习本质上就是一种对问题真实模型的逼近(我们选择一个我们认为比较好的近似模型,这个近似模型就叫做一个假设),但毫无疑问,真实模型一定是不知道的(如果知道了,我们干吗还要机器学习?直接用真实模型解决问题不就可以了?对吧,哈哈)既然真实模型不知道,那么我们选择的假设与问题真实解之间究竟有多大差距,我们就没法得知。比如说我们认为宇宙诞生于150亿年前的一场大爆炸,这个假设能够描述很多我们观察到的现象,但它与真实的宇宙模型之间还相差多少?谁也说不清,因为我们压根就不知道真实的宇宙模型到底是什么。 这个与问题真实解之间的误差,就叫做风险(更严格的说,误差的累积叫做风险)。我们选择了一个假设之后(更直观点说,我们得到了一个分类器以后),真实误差无从得知,但我们可以用某些可以掌握的量来逼近它。最直观的想法就是使用分类器在样本数据上的分类的结果与真实结果(因为样本是已经标注过的数据,是准确的数据)之间的差值来表示。这个差值叫做经验风险Remp(w)。以前的机器学习方法都把经验风险最小化作为努力的目标,但后来发现很多分类函数能够在样本集上轻易达到100%的正确率,在真实分类时却一塌糊涂(即所谓的推广能力差,或泛化能力差)。此时的情况便是选择了一个足够复杂的分类函数(它的VC维很高),能够精确的记住每一个样本,但对样本之外的数据一律分类错误。回头看看经验风险最小化原则我们就会发现,此原则适用的大前提是经验风险要确实能够逼近真实风险才行(行话叫一致),但实际上能逼近么?答案是不能,因为样本数相对于现实世界要分类的文本数来说简直九牛

相关主题
文本预览
相关文档 最新文档