svdd算法详解
- 格式:doc
- 大小:200.50 KB
- 文档页数:4
svd算法模型原理
SVD(奇异值分解)是一种矩阵分解的方法,可以将一个矩阵分解为三个矩阵的乘积。
SVD的模型原理如下:
给定一个m×n的实数矩阵A,SVD将A分解为以下形式:
A = UΣV^T
其中,U是一个m×m的正交矩阵,其列向量为A与A^T的特征向量;Σ是一个m×n的对角矩阵,对角线上的元素称为奇异值,且按降序排列;V^T是一个n×n的正交矩阵,其列向量为A^TA的特征向量。
SVD的主要步骤包括:
1. 计算矩阵A与A^T的乘积A^TA,得到一个n×n的对称矩阵。
2. 对对称矩阵进行特征值分解,得到其特征值和特征向量。
3. 根据特征值和特征向量构建对角矩阵Σ和正交矩阵V^T。
4. 计算矩阵A与A^T的乘积AA^T,得到一个m×m的对称矩阵。
5. 对对称矩阵进行特征值分解,得到其特征值和特征向量。
6. 根据特征值和特征向量构建正交矩阵U。
通过SVD分解,我们可以实现降维、压缩和重建等功能。
在机器学习领域,SVD经常被用于图像压缩、推荐系统和信息检索等任务中。
SVD算法原理及应用给定一个矩阵A(m×n),SVD将其分解为三个矩阵的乘积:A=UΣV^T。
其中U(m×m)是一个正交矩阵,V(n×n)也是一个正交矩阵,Σ(m×n)是一个对角矩阵,并且对角线上的元素称为奇异值。
在SVD中,U的列向量称为左奇异向量,V的列向量称为右奇异向量,Σ的对角线元素即为奇异值。
奇异值的大小表示了矩阵的重要程度,越大表示信息保留得越多。
1.对矩阵A进行转置,得到A^T。
2.将A^TA进行特征值分解,得到特征值和对应的特征向量。
3.对特征值按从大到小的顺序排序,选择前k个最大的特征值及对应的特征向量,构成对角矩阵Σ和矩阵U。
4.对A进行SVD分解时,可以利用步骤2得到的特征向量构成矩阵V。
SVD的应用:1.数据降维:SVD可以用于减少数据集的维度,提取出重要的特征,去除无关的噪声和冗余信息。
2.图像压缩:SVD可以将图像矩阵分解为较小的矩阵,以实现图像的压缩和存储。
3.推荐系统:SVD可以用于基于用户的协同过滤算法,通过分解用户-物品评分矩阵,找出用户和物品之间的潜在关系,从而预测用户对未评分物品的喜好程度。
4.文本分析:SVD可以用于对文本数据进行降维,提取出关键词,构建文本的特征空间模型。
5.人脸识别:SVD可以用于人脸图像的降维和特征提取,从而实现人脸识别和人脸检测的任务。
总结:SVD是一种强大的矩阵分解方法,能够对矩阵进行降维、特征提取和数据压缩等操作。
它在数据分析、图像处理、推荐系统等领域有广泛的应用。
通过SVD,可以更好地理解和利用矩阵中的信息,从而提高数据分析和处理的效果。
svdd算法原理SVDD(Support Vector Data Description)算法是一种用于异常检测和无监督学习的机器学习算法。
它的原理基于支持向量机(SVM)算法,通过将正常数据映射到高维空间,构建一个边界区域,从而实现对异常数据的识别。
SVDD算法的主要思想是通过找到一个最小的球形区域,将正常数据包围其中,而异常数据则远离这个区域。
这个球形区域的中心被称为支持向量,它是由一些正常数据点决定的。
而在球形区域外部的数据点则被认为是异常点。
为了构建这个球形区域,SVDD算法首先需要将数据映射到高维空间。
这是通过使用核函数来实现的,核函数能够将原始数据从低维空间映射到高维空间,从而使数据更容易分离。
常用的核函数包括线性核函数、多项式核函数和径向基核函数等。
在映射到高维空间后,SVDD算法通过最小化球形区域的半径来确定最优解。
这个优化问题可以通过拉格朗日乘子法转化为一个凸优化问题,然后使用支持向量机的方法来求解。
通过求解这个优化问题,SVDD算法能够找到一个最小的球形区域,使得正常数据点尽可能地靠近球的中心,而异常数据点则远离球的边界。
SVDD算法在异常检测和无监督学习中有广泛的应用。
在异常检测中,它可以用于检测网络入侵、信用卡欺诈等异常行为。
在无监督学习中,它可以用于聚类分析、数据降维等任务。
与传统的聚类算法相比,SVDD算法能够更好地处理非球状的数据分布,具有更强的泛化能力。
然而,SVDD算法也存在一些限制和挑战。
首先,由于SVDD是一种无监督学习算法,它对异常数据的定义是相对的,需要根据具体应用场景进行调整。
其次,SVDD算法对参数的选择比较敏感,需要通过交叉验证等方法来确定最优参数。
最后,由于SVDD算法需要将数据映射到高维空间,计算复杂度较高,对大规模数据集的处理效率较低。
为了克服这些问题,研究者们提出了一些改进的SVDD算法。
例如,基于核函数的耦合SVDD算法(Coupled SVDD)可以处理带有标签信息的数据,进一步提高异常检测的准确性。
收稿日期:2022-11-22基金项目:国家自然科学基金(82102002)引用格式:王小飞,陈永展,王强,等.面向大规模数据的SVDD在线学习算法[J].测控技术,2023,42(8):1-6.WANGXF,CHENYZ,WANGQ,etal.SVDDOnlineLearningAlgorithmforLarge ScaleData[J].Measurement&ControlTechnology,2023,42(8):1-6.面向大规模数据的SVDD在线学习算法王小飞1,陈永展1,王 强1,高艳丽1,李健增2(1.海军航空大学青岛校区,山东青岛 266041;2.天河超级计算淮海分中心,山东临沂 276002)摘要:针对支持向量数据描述(SupportVectorDataDescription,SVDD)在线学习时的支持向量数量随样本规模的扩大呈线性增加,进而导致模型更新时间呈非线性增长的问题,提出一种基于支持向量约减的支持向量数据描述(R SVDD)在线学习方法。
该算法通过执行支持向量约减,控制在线学习时的支持向量数量,从而使其具有比其他SVDD算法更快速且更稳定的模型更新时间,适合大规模数据的分类处理。
首先阐述了支持向量约减的原理;进而给出了在线R SVDD算法。
在单分类和多分类数据集上的实验结果表明,R SVDD算法相较于SVDD算法,能够在保持分类精度的基础上拥有更快的学习速度。
关键词:大规模数据;支持向量数据描述;支持向量约减;在线学习中图分类号:TP181 文献标志码:A 文章编号:1000-8829(2023)08-0001-06doi:10.19708/j.ckjs.2023.02.212SVDDOnlineLearningAlgorithmforLarge ScaleDataWANGXiaofei1牞CHENYongzhan1牞WANGQiang1牞GAOYanli1牞LIJianzeng2牗1.QingdaoCampusofNavalAviationUniversity牞Qingdao266041牞China牷2.TianheSupercomputingCenterofHuaihai牞Linyi276002牞China牘Abstract牶Inordertosolvetheproblemthatthenumberofsupportvectorsinsupportlearningofsupportvectordatadescription牗SVDD牘increaseslinearlywiththeenlargementofsamplesize牞whichleadstothenonlineargrowthofmodelupdatetime牞anonlinelearningmethodofsupportvectordatadescriptionbasedonsupportvectorreduction牗R SVDD牘isproposed.Byperformingsupportvectorreduction牞thenumberofsupportvectorsinonlinelearningiscontrolled牞soithasafasterandmorestablemodelupdatetimethanotherSVDDalgo rithms牞whichissuitableforlarge scaledataclassificationprocessing.Firstly牞theprincipleofsupportvectorre ductionisdescribed牞andthenanonlineR SVDDalgorithmisgiven.TheexperimentalresultsonsingleandmulticlassificationdatasetsshowthattheR SVDDalgorithmcanimprovethelearningspeedsignificantlywhilemaintainingtheaccuracyofonlineSVDDclassification.Keywords牶large scaledata牷SVDD牷supportvectorsreduction牷onlinelearning机器学习是人工智能领域的热门研究课题,在信息采集技术不断发展的今天,大规模数据的处理能力已经成为衡量一个机器学习算法好坏的核心因素[1-3]。
一、概述svdd是一种基于支持向量机(SVM)的新型异常检测方法,它可以对数据集中的异常值进行有效识别。
使用svdd的matlab程序有助于在实际工作中快速、准确地实施异常检测。
本文将介绍svdd的基本原理和matlab程序的编写方法,希望能够帮助读者更好地理解svdd算法和如何利用matlab实现该算法。
二、svdd的基本原理svdd(Support Vector Data Description)是一种用于异常检测的监督学习方法。
其基本原理是通过构建一个能够将正常样本包围起来的超球体,然后利用该超球体来判断测试样本是否为异常值。
在svdd 中,超球体的中心和半径是通过最小化目标函数来确定的,目标函数的形式为:minimize 1/2 ||w||^2 + 1/νΣξi - r^2subject to: (w·x + b)^2 - r^2 ≤ ξi, ξi ≥ 0, i = 1, ..., N其中w和b是超平面的系数,ξi是松弛变量,r是超球体的半径,ν是松弛因子。
通过求解目标函数,我们可以得到超球体的中心和半径,从而实现对正常样本的描述。
对于测试样本,根据其与超球体的关系可以判断其是否为异常值。
三、matlab程序的编写1. 导入数据我们需要将数据导入matlab中。
假设我们的数据集为X,Y,其中X 为特征矩阵,Y为标签。
我们可以使用matlab中的csvread函数或者直接定义矩阵来导入数据。
2. 训练svdd模型在导入数据后,我们可以开始编写训练svdd模型的代码。
我们需要使用svddtr本人n函数来训练模型,该函数的基本用法如下:model = svddtr本人n(X, 'RadialBasis');其中,X为特征矩阵,'RadialBasis'表示使用径向基核函数。
通过该函数,我们可以得到训练好的svdd模型model。
3. 测试svdd模型训练好模型后,我们可以使用svddclassify函数来对测试样本进行异常检测。
基于密度敏感最大软间隔SVDD不均衡数据分类算法陶新民;李晨曦;沈微;常瑞;王若彤;刘艳超【摘要】为了提高传统支持向量域描述(C-SV DD)算法处理不均衡数据集的分类能力,提出一种基于密度敏感最大软间隔支持向量域描述(DSMSM-SVDD)算法.该算法通过对多数类样本引入相对密度来体现训练样本原始空间分布对求解最优分类界面的影响,通过在目标函数中增加最大软间隔正则项,使C-SVDD的分类边界向少数类偏移,进而提高算法分类性能.算法首先对每个多数类样本计算相对密度来反映样本的重要性,然后将训练样本输入到DSMSM-SVDD中实现数据分类.实验部分,讨论了算法参数间的关系及其对算法分类性能的影响,给出算法参数取值建议.最后通过与C-SVDD的对比实验,表明本文建议的算法在不均衡数据情况下的分类性能优于C-SVDD算法.【期刊名称】《电子学报》【年(卷),期】2018(046)011【总页数】8页(P2725-2732)【关键词】支持向量域数据描述;不均衡数据;相对密度【作者】陶新民;李晨曦;沈微;常瑞;王若彤;刘艳超【作者单位】东北林业大学工程技术学院,黑龙江哈尔滨150040;东北林业大学工程技术学院,黑龙江哈尔滨150040;东北林业大学工程技术学院,黑龙江哈尔滨150040;东北林业大学工程技术学院,黑龙江哈尔滨150040;东北林业大学工程技术学院,黑龙江哈尔滨150040;东北林业大学工程技术学院,黑龙江哈尔滨150040【正文语种】中文【中图分类】TP3911 引言分类问题作为一项重要的任务,在机器学习、模式识别与数据挖掘领域有着广泛的应用[1~3].在分类问题的模型构造方面,通常分为二分类算法和单分类算法.以往基于二分类的算法都是在样本均衡的前提条件下进行的.其中,基于统计学习理论结构风险最小化的支持向量机(Support Vector Machine,SVM)算法[4-5]作为一个经典的二分类算法,因其良好的非线性区分能力近年来引起了广泛关注.然而在实际应用过程中所能得到的训练数据在数量上或质量上并不都是均衡的,因此受不均衡数据的影响,传统SVM分类性能严重下降[6].那么如何提高分类算法在不均衡数据下的分类性能成为了众多学者关注的重点.近些年,学者们相继提出了各种处理不均衡数据分类的改进算法.其中针对二分类算法的研究方向主要分为两大类:第一类是为了改进现有分类器的模型.其中代价敏感学习方法就是通过把各类的不同错分代价应用到分类决策中去,来尽可能地降低误分类的整体代价,然而由于代价敏感值的大小在现实应用中难以确定,使得该方法在实际应用中受到限制[7].第二类方法是数据均衡化处理,即将不均衡数据分类问题转化为均衡的两类分类问题进行研究,最具代表性的就是利用抽样算法[8]实现数据均衡,其中又分为对多数类样本的欠抽样[9]和对少数类样本的过抽样[10].欠抽样算法由于只抽取了多数类的子集来训练分类器,忽略掉了多数类样本的重要结构分布信息,从而引起边界偏移.传统过抽样算法因为复制的少数类样本没有增加任何新知识,从而导致过学习问题.虽然后来提出的基于SMOTE[11]过取样能在一定程度上降低非平衡度且优于传统的过抽样方法,但是由于训练样本的增加会使决策域减小,导致算法过度拟合,同时人为增加样本有可能造成噪声点增加,从而降低分类精度.与传统两分类算法相比,单分类算法在处理不均衡数据的分类问题时,因为能有效地分辨出多数类样本与少数类样本,且具有更高的识别率与精度.因此,近年来受到了学者们广泛关注.其中传统支持向量域描述(C-SVDD)算法因其原理简单、训练速度快,现已被广泛应用于不均衡数据分类领域[12-13].然而由于C-SVDD在训练过程中没有考虑到训练样本在原始空间的分布差异对求解最优分类界面的影响,使得求解后的分类界面受野性噪声点的影响出现偏移,进而降低了分类器的泛化性能.另外,C-SVDD利用的是惩罚因子对两类样本集的错分总和进行调整,当面对线性可分问题时,两类样本集的错分样本总和为零,因此没有起到调整边界的作用.鉴于此,本文为了充分考虑原始空间中样本的分布信息,通过引入相对密度[14]来反映训练样本的重要程度,使处于相对密度高区域的训练样本较相对密度低的训练样本更易落入超球体之内,进而消除噪声影响.同时借鉴传统SVM分类间隔最大化思想,对C-SVDD进行改进[15],通过引入最大软间隔正则项[16]来充分利用少数类样本信息,将分类界面向少数类偏移,进而提高算法处理不均衡数据的分类性能.本文通过将上述两种思想结合后提出一种基于密度敏感最大软间隔SVDD不均衡数据分类算法.实验部分将本文提出的方法同C-SVDD进行比较,结果表明本文的方法在数据不均衡情况下的分类性能较C-SVDD有较大幅度提高.2 理论分析2.1 C-SVDD算法C-SVDD作为直接使用目标训练数据进行分类判别的经典单分类算法,其中心思想是借助非线性映射φ(·)将训练样本映射到高维特征空间中,然后在特征空间中通过求解球心a和半径R来寻找包含大多数映射训练样本的最小超球体.C-SVDD通过引入惩罚因子来控制对不同类别错分样本的惩罚力度,由于该算法不依赖少数类样本的个数,因此非常适合处理不均衡数据分类问题.其简要数学模型如下:(1)约束条件为:∀i=1,2,…,N∀(2)其中,R为超球体半径,a为圆心,表示多数类与少数类训练样本数目,为用于控制多数和少数训练样本损失函数大小的惩罚因子,ξi,ξj分别为不同类别样本实际错误的松弛变量,φ(xi),φ(xj)表示训练样本xi,xj在高维特征空间的映射.这里由拉格朗日最优化理论,可得上述问题的对偶问题:(3)约束条件为:(4)∀i,yi=1,i=1,2,…,N(5)∀(6)其中,为拉格朗日乘子,在描述中所对应的xi,xj称为支持向量,即为位于球体边缘决定分类界面的训练样本.2.2 DSMSM-SVDD算法2.2.1 密度敏感因子C-SVDD作为经典的单分类算法因其原理简单易实现被广泛应用于不均衡数据的分类问题.但是由于C-SVDD没有充分考虑训练样本的自身分布情况,导致在反映目标数据集整体密度分布特性上具有一定的局限性.在C-SVDD模型的训练过程中,尽管惩罚因子C对错分样本点具有一定的约束作用,但是由于C是一个不变的常参量,即表示对所有的训练样本同等处理,导致C-SVDD模型在训练过程中对异常点或者噪声点非常敏感,甚至造成算法过分拟合.另外,C-SVDD在训练过程中与经典的SVM算法一样,最优分类界面仅仅依靠小部分被称为支持向量的数据来确定,忽略了球体内非支持向量对数据域描述的影响.但由于具有较高密度的非支持向量周围区域比较低密度区域更重要,所以对其错分的惩罚力度应该增加,以便于更准确地识别出目标数据集的数据域描述,提高算法的分类性能.因此,仅依靠支持向量来确定最优分类界面而不考虑密度分布可能会错过最优解.针对C-SVDD的上述问题,本文通过对每个目标数据点引入相对密度,并与错分惩罚项相结合,改造C-SVDD优化目标的方式来体现相对密度对算法最优解的影响.即达到使分布在相对密度较大区域的样本点尽可能地包含在描述区域边界内,而相对密度较小的噪声点因惩罚因子的作用不会对最优分类界面的求解产生影响的目的.其中,本文采用Parzen-window算法来计算样本的相对密度,具体方法描述如下:设X=[x1,x2,…,xN]为给出的目标训练样本集,其中N代表目标训练样本的个数.对于任意一个训练样本xi其相对密度ρi的定义如下:∀i=1,2,…,N(7)其中D为输入数据的维度,ω为权重,s是Parzen-window的平滑参数.若训练样本点xi获取的相对密度值ρi越大,则表明xi所处的区域越紧致.2.2.2 最大软间隔项C-SVDD虽然通过对多数类与少数类样本增加不同惩罚因子的方式使其分类界面向少数类样本方向偏移,进而提高算法的分类性能.但是C-SVDD在解决线性可分问题时,由于多数类样本与少数类样本错分总和为零,惩罚因子对算法达不到调整分类界面的效果.因此,针对上述问题,本文在充分借助少数类样本信息的前提下,借鉴传统SVM最大软间隔思想,对C-SVDD算法的优化目标进行改进,通过增加少数类样本与多数类样本的最大软间隔正则项信息,使得算法的最优分类界面向少数类偏移,提升算法分类性能,进而提高C-SVDD处理不均衡数据集的能力.2.2.3 DSMSM-SVDD算法针对C-SVDD存在的上述两方面问题,本文提出一种DSMSM-SVDD算法.令为目标训练样本数据集,其中xi为目标训练样本,ρi为对应目标样本xi的相对密度.针对不均衡数据分类问题,当xi∈多数类时,ρi求法如上节所述.考虑到少数类样本稀少,按上述方法计算后的相对密度无法体现少数类样本真实的密度分布信息,因此当xj∈少数类时,令ρj=1.为了便于描述,这里采用φ(xi)表示训练样本xi在高维特征空间的映射.DSMSM-SVDD算法具体的数学模型表示如下:(8)约束条件为:yi(R2-〈φ(xi)-a,φ(xi)-a〉)≥d2-ξi(9)ξi≥0,∀(10)其中,d表示超球面S距离最近多数、少数类训练样本的距离,M≥1为调节超球面半径和间隔项的参数,为用于控制多数和少数训练样本损失函数大小的惩罚因子,ξi、ξj为实际错误.由上述的优化问题,得广义的拉格朗日函数:L(a,R,d,ξi,ξj,α,β)=(11)其中,利用KKT条件有:(12)(13)(14)∀i,yi=1(15)∀j,yj=-1(16)还有松弛互补条件:αi[d2-ξi-yi(R2-〈φ(xi)-a,φ(xi)-a〉)]=0 (17)αi≥0(18)-βiξi=0(19)βi≥0(20)由于αi,βi均是非负实数,由式(12)得:(21)由式(13)得:(22)由式(15),(18)得:∀i,yi=1(23)由式(16),(18)得:∀j,yj=-1(24)由式(14),(21)得:(25)将式(15),(16),(21),(22),(25)代入L中,得:L(a,R,d,ξi,ξj,α,β)=(26)做下变换kernel(xi,xj)=φ(xi)·φ(xj),本算法引用经典高斯核函数,则得到原问题的对偶问题:(27)约束条件:(28)(29)αi≥0,∀(30)∀i,yi=1,i=1,2,…,N(31)∀(32)通过求解上述问题,得到α.进而求得a与R.令∀则:(33)R2=(34)其中,Nn为属于多数类且是支持向量的样本点个数,Na为属于少数类且是支持向量的样本点个数.xl为多数类支持向量,xm为少数类支持向量,k(xi,xj)为高斯核函数.对于待测样本xnew,构造决策函数对其进行分类:(35)表明待测样本xnew为多数类样本,表明待测样本xnew为少数类样本.根据KKT最优化条件得:位于多数类间隔内的多数类样本满足:αi=0⟹位于少数类间隔内的少数类样本满足:αj=0⟹位于多数类间隔上的多数类样本满足:位于少数类间隔上的少数类样本满足:位于多数类间隔外的多数类样本满足:位于少数类间隔外的少数类样本满足:(36)2.2.4 M值的取值范围由式(36)知,带有间隔错误的多数类样本对应的ξi>0,根据松弛互补条件-βiξi=0,则相对应的拉格朗日乘子βi=0,同时由式(15)可推得同理,对于带有间隔错误的少数类样本结合式(29),(30)可以得到:ρj(37)我们分别通过式(31)、(32)可以得到并且由于只有多数类、少数类支持向量和错分的多数类、少数类样本对应的αi>0,αj>0.可得:ρj(38)综上,(39)其中,Pm+是带有间隔错误的多数类样本的数目,Qm+是多数类支持向量的数目,Pm-是带有间隔错误的少数类样本的数目,Qm-是少数类支持向量的数目.2.2.5 DSMSM-SVDD算法引入相对密度的必要性由于则由式(39)可以推得:(40)假如算法没有考虑每个样本的相对密度,即ρi=1,ρj=1.则式(40)化为:M<c1+c2(41)由式(41)可知,在c1,c2都较小的情况下,不考虑密度的影响,M的取值范围完全取决于惩罚因子C的大小.当实验注重多数类和少数类训练样本的最大软间隔时,由于M受取值上界的限制,可能会导致算法的泛化能力提升不明显.因为ρi≥1,ρj≥1可以使M的取值更灵活,所以密度参数的提出是必要的.3 实验与分析3.1 不均衡数据分类性能度量指标为了能量化地衡量分类算法对不均衡数据分类性能的影响,近些年来研究人员提出了一些适用于不均衡数据分类性能的评测指标,为了方便描述,这里首先介绍混合矩阵的定义:表1 混合矩阵预测正类预测负类真正正类TPFN真正负类FPTN其中,TP(True Positive)指使用分类算法将原本属于正类的样本正确地预测为正类的样本数;FP(False Positive)指使用分类算法将原本属于负类的样本错误地预测为正类的样本数;FN(False Negative)指使用分类算法将原本属于正类的样本错误地预测为负类的样本数;TN(True Negative)指使用分类算法将原本属于负类的样本正确地预测为负类的样本数.因此,可得:正类样本正确率(Sensitivity):负类样本正确率(Specificity):正类样本准确率(Precision):几何平均正确率G-Mean:正类样本F-Measure指标:3.2 实验数据来源为了验证本文提出的DSMSM-SVDD算法在处理不均衡数据分类方面的优势,我们进行了下列实验.其中实验数据均来源于国际机器学习标准数据库UCI中的11组不同的数据集,数据特征信息见表2.其中类别表示选择出来作为少数类和多数类样本的代表类别.实验环境:Windows7操作系统,CPU:Intel i7,3.4G处理器,仿真软件为Matlab2010b.表2 实验数据集描述数据集属性少数类/多数类类别german24300/700B/Gyeast8429/463NUC:CYTwpbc3446/148R:Npima8268/5001:0abalone8634/68910:9sonar6097/11 1-1:1haberman381/2252:1ionosphere33126/225Bad:Goodphome5317/6831:0breast cancer9239/4444:2wine1371/592:13.3 M与取值范围的相互影响为了测试参数M与取值范围之间的关系,令DSMSM-SVDD算法中ρi=1,ρj=1,则式(39)化为:(42)我们设计了如下实验:选定C=(0.01,1),通过将M从1至1000逐步增加,来显式观察算法的分类界面位置和支持向量分布情况,结果如图1所示.其中,DSMSM-SVDD选取核半径参数为σ=1的高斯核函数.通过图1对比可以发现M=1时由于算法中最大间隔项的权重较小,算法等同于C-SVDD.当M从1增加至10时,最大间隔项的权重增大,使得分类界面向两类样本最大间隔处偏移,呈现SVM分类特征,降低多数类样本错分率,泛化能力有所提升.但随着M值的进一步增加,其分类界面位置和支持向量分布情况并不理想.其原因由不等式(42)知:当C取值较小,随着M值的增大,因受不等式(42)中M 上界的约束,导致支持向量个数增多,当M=50时,几乎所有多数类样本成为支持向量,出现过拟合现象.另外,当M=1000时,最优分类界面出现SVM分类特征是因M值过大,所有的多数类样本作为支持向量也不能满足不等式(42)约束,迫使所有少数类样本也充当支持向量,虽分类界面向中间移动,但此时算法要消耗大量的时间与空间,降低算法实现速度,且算法完全过拟合.因此可初步得出如下结论:M值的调节范围是受C值的影响.当C取值较小,M的取值不能过大,否则为了满足M值上界的约束将导致支持向量个数增多,出现过拟合现象.因此当C 较小,应尽可能地选取较小合理的M值.为了能够进一步量化地观察M与C值之间的相互关系,我们选取来自UCI的wine数据集作为本次实验的测试数据,其中多数类与少数类样本数目按30:1的比例来选取.M值从1至1000逐渐增加,观察C在分别为(0.01,1),(0.1,1),(10,100)时的G-Mean,F-Measure性能曲线变化趋势,F-Measure,G-Mean值越大,说明该算法的综合分类性能越好.其他参数同上,测试结果如图2所示.通过图2可知:在M值逐渐增大的过程中,较大C值的G-Mean,F-Measure 性能达到稳定时的M值要大于较小C值的G-Mean,F-Measure性能达到稳定时的M值.即当C值较大时,M的取值范围扩大;同样,当C值较小时,M的取值范围缩小,该实验现象也进一步验证了前期实验得出的M值的上界受C值影响的初步结论.另外,通过实验可知当M取值较大时,C必须取相应较大的值,才能防止因受式(42)右半部分不等式限制导致支持向量个数增大而产生过拟合现象.而当M值较小时,C的取值范围可适当扩大,但C的取值不可以无限制小,仍要满足不等式(42).该实验结论同样与前面实验得到的初步结论相吻合.3.4 DSMSM-SVDD与C-SVDD算法性能比较实验及分析为了比较本文提出的DSMSM-SVDD算法与C-SVDD算法在处理不均衡数据分类问题上的性能,这里做了如下实验:实验数据集如表2所示.我们将表2中的多数类数据和少数类数据按10:1的比例进行选取.对于每类数据集,为了防止数据的随机影响,我们通过10次交叉验证法进行实验测试.DSMSM-SVDD与C-SVDD的分类性能最终以G-Mean性能指标与支持向量个数(Support Vector,SV)的统计平均值作为评价标准.其中,DSMSM-SVDD与C-SVDD均采用核半径参数σ=10的高斯核函数,C=(0.01,1)的惩罚因子,DSMSM-SVDD算法中M=50,ω=2,s=3.实验结果如图3及图4所示.通过图3可知,本文提出的DSMSM-SVDD算法的G-Mean性能指标值均高于C-SVDD,即本文算法在处理不均衡数据分类问题时,较C-SVDD具有更好的泛化能力.这是由于C-SVDD只考虑包含多数类样本的超球面半径项,而没能考虑两者的间隔信息,使得到的分类界面受不均衡数据的影响产生偏移.同时,该算法在处理训练样本整体分布特性上具有一定局限性,很可能将密度大的非支持向量区域误判,导致分类精度不高.而本文提出的算法不仅充分考虑了两类样本的间隔信息,同时通过对多数类样本增加相对密度的方式来保证在目标函数的求解过程中考虑到数据分布差异的影响,使求解的最优分类界面更加合理,进而提升了算法泛化性能.另外,通过图4的条形图可以看到,除了breast cancer ,wine数据集之外,本文算法的支持向量个数远远小于C-SVDD.由于两种算法的复杂度均取决于支持向量的个数,因此可以说本文算法在时间和空间上的消耗都远小于C-SVDD算法.3.5 高斯核函数半径值对算法分类性能的影响为了考察高斯核函数半径参数σ对DSMSM-SVDD算法分类性能的影响,我们从表2的数据集中选取pima,yeast,haberman,german,ionosphere 5类难分数据集作为本次实验数据.每类数据按10∶1的比例进行多数类与少数类样本的选取,通过10次交叉验证方法测试.其中,σ的选定区间为[3,100],其他参数M=50,ω=2,s=3,C=(0.1,1).实验通过改变σ值来观察DSMSM-SVDD算法的G-Mean性能的变化趋势,结果如图5所示.通过图5我们可以得出:DSMSM-SVDD算法随着参数σ值的增大,各数据集的综合分类性能指标G-Mean值的变化趋势缓慢,彼此之间的区分不明显.这是因为本文提出的DSMSM-SVDD算法中采用了最大软间隔正则项,使得优化后得到的分类界面泛化能力的提升很大程度上取决于间隔项的影响,这也在一定程度上抵消了高斯核半径对算法分类性能的影响.4 结论针对不均衡数据的分类问题,提出一种基于密度敏感最大软间隔支持向量域描述算法.通过实验分析得到如下结论:(1) 为了消除噪声影响同时防止算法欠拟合,本文通过引入相对密度来反映训练样本的重要程度,使处于相对密度高的非支持向量区域的训练样本较相对密度低的训练样本更易落入超球体之内,进而消除噪声影响.实验部分通过和C-SVDD进行对比的结果表明,该方法更有利于算法准确地识别出给定目标数据集的数据域描述,进而提高了算法的泛化性能.(2) 为了消除不均衡数据集对C-SVDD算法性能的影响,本文在充分利用少数类样本信息的前提下,借鉴传统SVM最大化间隔思想,将最大软间隔加入C-SVDD 的优化目标函数中.实验结果表明,该方法有效提高算法处理不均衡数据的分类性能,同时使分类结果不随高斯核参数的改变而明显改变,这在一定程度上消除了高斯核参数对算法性能的影响.(3) 实验部分将间隔项参数M、惩罚因子C以及高斯核半径参数σ之间的关系进行分析讨论并给出相应的结论.值得一提的是,如何实现两个参数的联合优化对于提升本文算法处理不均衡数据分类性能而言至关重要,这也将是本课题下一阶段研究的重点.参考文献【相关文献】[1] Gu B,Sun X M,Sheng V S.Structural minimax probability machine[J].IEEE Transactions on Neural Networks and Learning Systems,2016,28(7):1646-1656.[2] Luo FF,Guo W Z,Yu Y L,et al.A multi-label classification algorithm based on kernel extreme learning machine[J].Neurocomputing,2017,260:313-320.[3] H B,Ho H C,Z J,et al.An overview and comparison of machine-learning techniques for classification purposes in digital soil mapping[J].Geoderma,2016,265:62-77.[4] Zhang X,Zhang X.Adaptive multiclass support vector machine for multimodal data analysis[J].Pattern Recognition,2017,70:177-184.[5] Zuo W M,Wang F Q,Zhang D,et al.Distance metric learning via iterated support vector machines[J].IEEE Transactions on Image Processing,2017,26(10):4937-4950.[6] 陶新民,李震,刘福荣,等.基于精简集支持向量机的变压器故障检测方法[J].高电压技术,2016,42(10):3199-3206.Tao Xinmin,Li Zhen,Liu Furong,et al.Fault detection method for power transformer based on SVM using reduced vector set[J].High Voltage Engineering,2016,42(10):3199-3206.(in Chinese)[7] Zhou Y H,Zhou Z rge margin distribution learning with cost interval and unlabeled data[J].IEEE Transactions on Knowledge and Data Engineering,2016,28(7):1749-1763. [8] 毕冉,李建中,高宏.无线传感器网络中基于双阈值的分布式检测算法[J].电子学报,2014,42(8):1594-1600.Bi Ran,Li Jianzhong,Gao Hong.Dual threshold based distributed monitoring algorithm in wireless sensor network[J].Acta Electronica Sinica,2014,42(8):1594-1600.(in Chinese) [9] 陶新民,张冬雪,郝思媛,等.基于谱聚类欠取样的不均衡数据SVM分类算法[J].控制与决策,2012,27(12):1761-1768.Tao Xinmin,Zhang Dongxue,HaoSiyuan,et al.SVM classifier forunbalanced data based on spectrum cluster-based under-sampling approaches[J].Control andDecision,2012,27(12):1761-1768.(in Chinese)[10] Abdi L,Hashemi S.To combat multi-class imbalanced problems by means of over-sampling techniques[J].IEEE Transactionson Knowledgeand DataEngineering,2016,28(1):238-251.[11] Jian C X,Gao J,Ao Y H.A new sampling method for classifying imbalanced data based on support vector machine ensemble[J].Neurocomputing,2016,193:115-122.[12] 杨金鸿,邓廷权.一种基于单簇核PCM的SVDD离群点检测方法[J].电子学报,2017,45(4):813-819.Yang Jinhong,Deng Tingquan.A one-cluster kernel PCM based SVDD method for outlier detection[J].Acta Electronica Sinica,2017,45(4):813-819.(in Chinese)[13] Lazzaretti A E,Tax D M J,Neto H V,et al.Novelty detection and multi-class classification in power distribution voltage waveforms[J].Expert Systems with Applications,2016,45:322-330.[14] 程昊翔,王坚.基于快速聚类分析的支持向量数据描述算法[J].控制与决策,2016,31(3):551-554.Cheng Haoxiang,Wang Jian.Support vector data description based on fast clustering analysis[J].Control and Decision,2016,31(3):551-554.(in Chinese)[15] Huang J,Yan X F.Related and independent variable fault detection based on KPCA and SVDD[J].Journal of Process Control,2016,39:88-99.[16] 文传军,詹永照,陈长军.最大间隔最小体积球形支持向量机[J].控制与决策,2010,25(1):79-83.Wen Chuanjun,Zhan Yongzhao,Chen Changjun.Maximal-margin minimal-volume hypersphere support vector machine [J].Control and Decision,2010,25(1):79-83.(in Chinese)。
SVD算法原理及应用SVD全称Singular Value Decomposition,即奇异值分解,是一种常用的线性代数技术。
SVD的主要作用在于降维和矩阵分解,已经被广泛应用在图像处理、自然语言处理、推荐系统等领域。
本文将着重介绍SVD的原理与应用,并举例说明SVD能够解决哪些实际问题。
1. SVD算法原理SVD算法最初是由Eckart和Young在1961年提出的,它可以将一个$m$行$n$列的矩阵$A$表示为如下的矩阵积形式:$$A=U\Sigma V^T$$其中,$U$是一个$m$行$m$列的正交矩阵,$V$是一个$n$行$n$列的正交矩阵,$\Sigma$是一个$m$行$n$列的对角矩阵,其主对角线上的元素被称为$A$的奇异值。
SVD的另一种等价形式是将$\Sigma$表示为一个由奇异值构成的向量$\sigma$与一个$m$行$n$列的正交矩阵$B$的积:$$\Sigma=\begin{bmatrix} \sigma_1 & 0 & \cdots & 0 \\ 0 &\sigma_2 & \cdots & 0\\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 &\cdots & \sigma_p \\ 0 & 0 & \cdots & 0 \\ \vdots & \vdots & \ddots &\vdots \\ 0 & 0 & \cdots & 0 \end{bmatrix}$$其中,$p=\min\{m,n\}$。
SVD的原理可以解释为矩阵分解,通过分解原始矩阵$A$可以获得一组对应的正交基,并将矩阵$A$分成三份:一个由左奇异向量组成的矩阵、一个由奇异值构成的对角线矩阵和一个由右奇异向量组成的矩阵。
不均衡最大软间隔SVDD轴承故障检测模型【摘要】本文介绍了一种基于不均衡最大软间隔SVDD的轴承故障检测模型。
在不均衡问题分析中,我们探讨了传统模型在处理不均衡数据集时的局限性。
随后介绍了最大软间隔支持向量数据描述器(SVDD)的原理,以及如何应用于轴承故障检测中。
我们设计了基于SVDD的轴承故障检测模型,并对其进行了模型评估和实验结果分析。
实验结果表明,该模型在不均衡数据集下具有较高的准确性和稳定性。
结论部分总结了该模型的优势,同时展望了未来在该领域的研究方向。
该模型为轴承故障检测提供了一种新的解决方案,具有重要的理论和应用价值。
【关键词】不均衡、最大软间隔、SVDD、轴承、故障检测、模型设计、模型评估、实验结果分析、优势、研究展望1. 引言1.1 研究背景引言轴承故障检测是工程领域中一个重要的问题,轴承的故障会导致设备的损坏和工作效率的降低,严重影响生产和安全。
及早准确地发现轴承故障是至关重要的。
传统的轴承故障检测方法主要包括振动分析、声音分析、温度分析等,这些方法虽然在一定程度上可以检测出轴承的故障,但仍然存在着一些问题,比如无法处理高维数据、对不均衡数据的处理能力较弱等。
为了解决这些问题,近年来,基于支持向量数据描述器(SVDD)的故障检测方法逐渐受到了研究者的关注。
SVDD是一种基于支持向量机(SVM)的无标签学习方法,它可以有效地处理高维数据和不均衡数据,并且可以很好地处理异常检测问题。
传统的SVDD方法在处理不均衡数据时存在着一些问题,比如对于少数类样本的处理能力较弱,容易导致模型的偏向性。
本文将结合最大软间隔的方法,提出一种不均衡最大软间隔SVDD轴承故障检测模型,旨在提高模型的泛化能力,准确地检测出轴承的故障,从而保证设备的正常运行和工作效率。
1.2 研究意义轴承是机械设备中不可或缺的重要部件,其运行状态直接影响着设备的工作性能和寿命。
轴承故障检测一直是工程领域关注的焦点。
传统的轴承故障检测方法主要依赖于振动信号分析和频域特征提取,存在着对运行状态非常敏感、易受干扰和背景噪声影响等缺点。
一、概述matlab是一种十分流行的科学计算软件,它提供了丰富的工具箱,在数据分析领域有着广泛的应用。
svdd算法是一种用于单类别分类的支持向量机算法,它在异常检测和数据挖掘中被广泛使用。
在使用svdd 算法时,合适的超参数选择对算法的性能起着至关重要的作用。
本文将介绍如何利用matlab进行svdd算法的超参数寻优。
二、svdd算法简介1. svdd算法原理svdd(Support Vector Data Description)算法是一种基于支持向量机的单类别分类算法。
它的目标是找出一个以数据集为中心的超球体,使得该超球体内尽可能包含更多的数据点,而超球体外部的数据点被认为是异常点。
svdd算法的目标函数可以表示为:minimize (1/2)∑_(i=1)^n?α_i?-∑_(i=1)^n?∑_(j=1)^n?(α_i?α_j?η_(ij)?)subject to ∑_(i=1)^n?α_i?y_i?= 1/θ0≤ α_i ≤ C其中n为数据点的个数,α为lagrange 乘子,yi为样本的类别标签,C为惩罚参数,θ为超参数,ηij为核函数。
2. svdd算法的优势svdd算法在异常检测和数据挖掘中有着广泛的应用,它的优势主要体现在以下几个方面:(1)对异常点的鲁棒性。
svdd算法能够有效地忽略正常样本的扰动,更加关注异常样本,对于异常点检测具有较强的鲁棒性。
(2)内核技巧的应用灵活性。
svdd算法可以根据具体问题选择不同的核函数,增加了算法的灵活性和适用性。
(3)泛化能力强。
svdd算法在处理高维数据的时候,能够有效地利用支持向量,具有较强的泛化能力。
三、matlab中的svdd算法实现在matlab中,可以使用libsvm工具箱来实现svdd算法。
libsvm是一个广泛使用的用于支持向量机的软件包,提供了丰富的函数和工具,可以帮助用户实现各种支持向量机算法。
1. matlab中的libsvm安装在matlab中安装libsvm工具箱非常简单,只需要下载libsvm的压缩包并解压,添加到matlab的路径中即可使用。
4.3.3实现技术
(1)KKT 条件,工作集选取及停止准则
在求最小包围球的过程中,迭代没有结束前,每轮迭代会有一个新点被选中,核集中加入新的点后,在核集中的点是下面三种情况之一:
1.核向量,满足KKT 条件;
2.处在球内的非核向量,对应的i α为0,也满足KKT 条件;
3.在(,)t t B c R 外面。
刚加入进来的点0l α=违反KKT 条件。
加入新的训练点后,参照传统SVM 方法对核集中的样本点检查是否违反KKT 条件的算法推导如下:
原始问题的KKT 条件:
2
2
(||()||)0i i i R c x αξϕ+--= (4.16)
加上已知条件
0i i βξ=,0i i C αβ--=
根据i α的不同,有三种情况:
● 0i α=,有22||()||0i i R c x ξϕ+--≥,又i C β=,则0i ξ=,因此有
2
2
||()||i c x R
ϕ-≤ (4.17)
● 0i C α<<,有22||()||0i i R c x ξϕ+--=,又0i β>,则0i ξ=,因此有
2
2
||()||i c x R
ϕ-= (4.18)
● i C α=,有22||()||0i i R c x ξϕ+--=,又0i β=,则0i ξ≥,因此有
2
2
||()||i c x R
ϕ-≥ (4.19)
每次迭代以对KKT 条件破坏最多的两个样本为工作集,因此,选取以下两个样本下标
2
arg m ax(||()|||)
i i s c x C ϕα=-<
2
arg m in(||()|||0)i i t c x ϕα=->
若记
2
||()||
s i g c x ϕ=-,2||()||t i g c x ϕ=-
则根据KKT 条件,我们有s t g g ≤。
实际中我们考虑(0)s t g g δδ≤+>,因此在算法停止前,都有
s t g g δ
>+ (4.20)
在运算的过程中因为有
,(,)2(,)(,)t
i t
s i j i j i i s s s i j S x S g k x x k x x k x x ααα∈∈=-+∑
∑
,(,)2(,)(,)t
i t
t i j i j i i t t t i j S x S g k x x k x x k x x ααα∈∈=
-+∑
∑
所以实际上是:(,)(,)2
i t
i t
i i t i i s x S x S k x x k x x δαα∈∈-
>
∑∑
(2)规模为2问题的解析解
找出核集中违反KKT 条件的训练点后,更新其对应的Lagrange 因子值。
这里我们依然采用SMO 算法,解规模为2的原问题的对偶问题。
不失一般性,在(4.14)对偶问题中将,s t αα看成待求变量,其他看成已知参数,得到求解,s t αα的优化问题如下:
2
2
,max {22[()()]()}s ss t tt s t st s s t t i i i s t
L k k k x x x const
αααααϕαϕαϕ≠=-+++++∑(4.21)
S.t. s t ααγ+=,0,s t C αα≤≤
其中old
old s
t
α
α
γ
+=,1
()m
i
i
i c x αϕ==
∑
2
22
m ax (2)2()t t ss t tt t t st L k k k γ
γαααγαα=--+---
,,2()()()2()()t s i i t t i i i s t
i s t
x x x x const
γαϕαϕαϕαϕ≠≠---+∑∑
若记,()()()(()())old old old j j i i j s s t t i s t
x x x c x x υϕαϕϕαϕαϕ≠==--∑
则 ,()()s s i i i s t
x x υϕαϕ≠=∑,,()()t t i i i s t
x x υϕαϕ≠=∑
2222222222ss t ss t ss t tt t st t st s t s t t L k k k k k k const γγαααγααγυαυαυ=-+---+-+-+ 2
(2)2()s t s
s t t
t s s s t s t
t k k
k k k c o n s t αγγυυα=--+-+-+ 因为 ()()o l d o l d
o l d
o l d
s s s t s t s t s s
s
t
s t
k k k k γγυυαααα-+-=+-+
()(()(
))()(()o l d
o l d
o l d
o l d
o l d
o l d
s s
s t
t
t
s
s t
t
x c
x x x c x x
ϕαϕαϕϕαϕαϕ+-----
old
old
old
old
s ss t ss s st t st k k k k αααα=+--
11
(,)(,)m
m
old old old
old
i i s s
ss t
st i i t s st t tt i i K x x k k K x x k k αα
α
ααα==+---++∑∑
11
(,)(,)(2)m
m
old
i
i s i i t st ss tt t
i i K x x K x x k k k α
αα===
----∑∑
21
1
(2)2[(,)(,)(2)]m
m
old
st ss tt t
i i s i i t st ss tt t
t i i L k k k K x x K x x k k k const
ααααα===--+----+∑∑
令
0t
L α∂=∂, 可得
1
1
(,)(,)
2m
m
i
i t i i s old
i i t t
st ss tt
K x x K x x k k k α
ααα==-=+
--∑∑ (4.22)
有 20st ss tt k k k --≤,在迭代结束前都有1
1
(,)(,)0m
m
i i t i i s i i K x x K x x αα==-<∑∑
则当20st ss tt k k k --=,1
1
[(,)(,)]m
m
i i s i i t t i i L K x x K x x const ααα===-+∑∑,L 为线性函数,
因为0i C α≤≤,()()0t t s t c x c x ϕϕ->,所以t C α=。
最后,由优化问题的等式约束得出
s t αγα=- (4.23)
这样就得出了,s t αα的解析解,不过这是在没有考虑优化问题的不等式约束
0,s t C
αα≤≤的情况下得到的解析解。
存在不等式约束为0,s t C αα≤≤,因此,考虑不等式约束,需要对求出的,s t
αα进行如下裁剪:
若0s α<,则0,s t ααγ==
若0t α<,则0,t s ααγ== 若s C α>,则,s t C C ααγ==-
若t C α>,则,t s C C ααγ==-。