一种支持向量机的最佳参数组合(C,σ)快速搜索方法技术

技术编号:16819728 阅读:87 留言:0更新日期:2017-12-16 13:23
本发明专利技术公开一种支持向量机的最佳参数组合(C,σ)快速搜索方法,其中,根据折叠交叉验证参数n,对待训练数据进行n折叠交叉验证训练,并通过计算每份训练数据与其自身的点积,得到n个点积矩阵,并且在后续搜索最佳参数组合的训练过程中计算核函数时,直接将计算好的点积矩阵代入运算即可,从而避免出现点积||x‑z||

A fast search method for the optimal parameter combination of support vector machines (C, sigma)

The best combination of parameters of the invention discloses a support vector machine (C, sigma) fast search method, which, according to fold cross validation parameters N, n fold cross validation training with the training data, and through the calculation of each training data with its own product, get n dot matrix, and compute the kernel function in the the search for the best parameter combination in the process of training, will be directly calculated point by product matrix operation, to avoid the dot product of ||x z||

【技术实现步骤摘要】
一种支持向量机的最佳参数组合(C,σ)快速搜索方法
本专利技术属于机器学习领域,特别涉及一种支持向量机的最佳参数组合(C,σ)快速搜索方法。
技术介绍
支持向量机是一种二类分类模型,其基本模型是定义在特征空间上的间隔最大的线性分类器。Cortes和Vapnik首次提出线性支持向量机,Boser、Guyon与Vapnik又引入核技巧,提出非线性支持向量机。由于核技巧的引入,SVM在解决小样本,非线性及高维模式识别中表现出许多特有的优势,使其广泛应用于包括文本分类等各种应用中。而在需要以支持向量机做分类模型的应用场景中,相比于线性支持向量机,绝大部分以非线性支持向量机居多。设训练集T={(x1,y1),(x2,y2),...,(xN,yN)},xi为第i个特征向量,yi为xi的类标记,i=1,2,...,N,非线性支持向量机学习过程为:选取适当的核函数K(x,z)和适当的参数C,构造并求解最优化问题:假定核函数K(x,z)为求解以上最优化问题,求得最优解α*=(α1*,α2*,...,αN*)T。选择α*的一个正分量0<αj*<C,计算:构造决策函数:当K(x,z)为满足一定条件的核函数时,上述问题为凸二次规划问题并且其解是存在的。在求解如上非线性支持向量机时,首先需选取适当的训练参数C,该训练参数又称为惩罚系数。同时,引入核技巧,并假定核函数为高斯核函数,则求解过程还需选取适当的参数σ。将学习过程需要用到的训练参数C和训练参数σ统称为训练参数(C,σ)组合。然而,在实际应用中,选取不同的训练参数(C,σ)组合用于非线性支持向量机的训练直接影响最终的训练结果。更多时候我们不知道哪组训练参数(C,σ)组合能训练出最好的模型,通过几次零散的测试训练根本无法找出最好的训练参数(C,σ)组合。1998年,JohnC.Platt在文献1“SequentialMinimalOptimization:AFastAlgorithmforTrainingSupportVectorMachines”(MicrosoftResearchTechnicalReportMSR-TR-98-14April21,1998)中首次提出在给定某组训练参数(C,σ)组合下上述非线性支持向量机的求解方法,即最小序列最优化(SequentialMinimalOptimization,SMO)算法。SMO算法是一种启发式算法,以每次迭代优化其中两个变量,最终通过多次迭代直到所有变量均满足KKT条件进而收敛得到所有变量的全局解。然而,SMO只是解决了在给定训练参数(C,σ)组合下非线性支持向量机的求解方法。在实际应用中,选取不同的训练参数(C,σ)组合用于非线性支持向量机的训练直接影响最终的训练结果。更多时候我们不知道哪组训练参数(C,σ)组合能训练出最好的模型,通过几次零散的测试训练根本无法找出最好的训练参数(C,σ)组合。目前,主流思想是通过一种称为网格搜索法的方式搜索最佳(C,σ)组合,该方法分别以C,σ取不同值在横纵坐标上有序展开,不同的横纵坐标经交叉形成二维网格,每个网格对应了一组训练参数(C,σ)组合。通过对每一对参数组合分别进行训练,并通过交叉验证最终得到最好的参数组合,进而由该参数组合训练得到近乎最佳的训练模型。其基本思想为将原始训练数据分成两组,一部分作为训练集,另一部分作为验证集,首先用训练集在某个参数组合下进行训练,得到该参数组合下的训练模型,再利用验证集测试得到的训练模型,以测试结果评价该模型的性能指标。现阶段有多种交叉验证技术,其中常用的是n-折叠交叉验证技术,该方法为:将原始训练数据分为n组(一般为均分),每一组为一个子集,将每个子集数据分别做一次验证集,其余的n-1组子集作为训练集,这样总计会训练n次,验证n次,最终得到n组验证集(也是总训练集)的验证结果,可用该验证结果作为该参数组合下的评价指标。Pai-HsuenChen,Rong-EnFan,andChih-JenLin在文献2“AStudyonSMO-typeDecompositionMethodsforSupportVectorMachines”(DepartmentofComputerScience,NationalTaiwanUniversity,Taipei106,Taiwan)中首先对SMO算法进行了改进,SMO每次迭代都要计算阈值b,文献2基于SMO-type分解的方法,不用在每次迭代时更新b,而只是在全局收敛后根据梯度一次求解b值,一定程度上改善了SMO算法的性能。同时,文献2的作者编写了著名的支持向量机训练库Libsvm,该库包含了各式各样的支持向量机训练模块,其中最著名的是C-SVC模块。该模块核函数为高斯核,以链表存储每次核函数的计算结果,该方法在样本容量很大时能带来核矩阵存储空间的极大节省。然而,在小样本容量下,使用网格搜索法搜索最佳参数组合(C,σ)时,由于每次训练均会计算核函数,即公式(2),且核函数在训练过程中占据了较大的计算量。在计算核函数的过程中,参数组合的遍历仅涉及公式(2)中σ的改变,故而在使用网格搜索法搜索最佳参数组合的多次训练过程中,由于每次参数组合下要计算哪些训练点的点积矩阵及其核矩阵均是随机的,可能存在某些训练点的点积矩阵在之前某个参数组合下已经计算过,而在新的参数组合下又会计算这些训练点的点积矩阵,从而造成点积||x-z||2的重复计算进而导致原算法训练时间过长,减小了算法执行的速度。
技术实现思路
本专利技术的目的在于:解决在小样本容量下,使用网格搜索法搜索最佳参数组合(C,σ)时,由于每次参数组合下要计算哪些训练点的点积矩阵及其核矩阵均是随机的,可能存在某些训练点的点积矩阵在之前某个参数组合下已经计算过,而在新的参数组合下又会计算这些训练点的点积矩阵,从而造成点积||x-z||2的重复计算进而导致原算法训练时间过长的技术问题。为了实现上述专利技术目的,本专利技术提供了以下技术方案:一种支持向量机的最佳参数组合(C,σ)快速搜索方法,其特征在于,包括以下步骤,S1:读取训练系统参数、待训练数据以及所有参数组合;其中,所述训练系统参数包括折叠交叉验证次数n,所述待训练数据由两个单类训练数据构成,且每个单类训练数据的长度均为L,维度均为d;S2:根据所述折叠交叉验证参数n,对数据长度为2L的所述待训练数据进行n折叠交叉验证训练;其中,每份训练数据的长度为每份验证数据的长度为通过计算每份训练数据与其自身的点积,而得到n个VL*VL的点积矩阵;根据已得到的点积矩阵,计算出每个参数组合对应的n份核矩阵,再根据计算出的核矩阵,得到每个参数组合对应的训练结果,最后根据验证数据,验证每个参数组合对应的训练结果,得到每个参数组合的准确率;S3:将准确率最高的参数组合作为最佳训练参数组合。根据一种具体的实施方式,本专利技术的支持向量机的最佳参数组合(C,σ)快速搜索方法,步骤S2中,将数据长度为2L的所述待训练数据平均划分为n份,轮流将其中n-1份作为训练数据,另一份作为验证数据。与现有技术相比,本专利技术的有益效果:本专利技术的支持向量机的最佳参数组合(C,σ)快速搜索方法中,根据折叠交叉验证参数n,对待训练数据进行n折叠本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/55/201710724607.html" title="一种支持向量机的最佳参数组合(C,σ)快速搜索方法原文来自X技术">支持向量机的最佳参数组合(C,σ)快速搜索方法</a>

【技术保护点】
一种支持向量机的最佳参数组合(C,σ)快速搜索方法,其特征在于,包括以下步骤,S1:读取训练系统参数、待训练数据以及所有参数组合;其中,所述训练系统参数包括折叠交叉验证次数n,所述待训练数据由两个单类训练数据构成,且每个单类训练数据的长度均为L,维度均为d;S2:根据所述折叠交叉验证参数n,对数据长度为2L的所述待训练数据进行n折叠交叉验证训练;其中,每份训练数据的长度为

【技术特征摘要】
1.一种支持向量机的最佳参数组合(C,σ)快速搜索方法,其特征在于,包括以下步骤,S1:读取训练系统参数、待训练数据以及所有参数组合;其中,所述训练系统参数包括折叠交叉验证次数n,所述待训练数据由两个单类训练数据构成,且每个单类训练数据的长度均为L,维度均为d;S2:根据所述折叠交叉验证参数n,对数据长度为2L的所述待训练数据进行n折叠交叉验证训练;其中,每份训练数据的长度为每份验证数据的长度为通过计算每份训练数据与其自身的点积,而得到n个VL...

【专利技术属性】
技术研发人员:马上蒋生强陈杰男胡剑浩
申请(专利权)人:电子科技大学
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1