发明内容
针对上述现有技术中存在的应用图像处理以及模式识别等领域的分类问题,由于往往因为应用领域的不同,其数据具有不同的物理生化特点,本发明要解决的技术问题是提供一种根据其数据特点的动态构造合成核支持向量机方法,用于其分类识别,最终提高实际应用的精度的面向数据特点的合成核支持向量机的实现方法。
为解决上述技术问题,本发明采用的技术方案是:
本发明一种面向数据特点的合成核支持向量机的实现方法包括以下步骤:
(1)数据预处理:根据不同应用领域的不同预处理要求,对数据进行预处理;
(2)特征提取、选择与分组:根据需要分类识别的类别,对预处理后的数据进行选择,提取特征矢量并分组,完成数据从数据空间到特征空间的转换,所选择特征反映分类识别目标的特性;
(3)训练样本、验证样本以及待分类样本的选择:对训练样本、验证样本及待分类样本进行选择,其中,训练样本用于分类器的学习训练,验证样本用于对训练得到的分类器进行性能验证,待分类样本为实际需要分类的样本数据;
(4)分类器的选择与实现:选择面向数据特点的合成核支持向量机分类器,即DOCKSVM,确定合成核的结构,修改其中各个核函数以及确定相应核权系数,最后计算得到合成核参数C、G;
(5)分类器的训练:利用训练样本,开展对DOCKSVM分类器的学习训练,获得训练后的DOCKSVM分类器;
(6)分类器性能验证:利用验证样本,开展对训练后的DOCKSVM分类器进行验证,通过对验证样本分类检验其性能,判断其性能是否满足用户要求,如满足,则获得验证满意的DOCKSVM分类器;
(7)待分样本的分类:利用满意的分类器,对所有待分类样本进行分类;
(8)分类结果输出:输出保存分类结果。
所述分类器的选择与实现包括的步骤是:
(4-1)确定合成核结构:根据特征提取、选择以及分组结果,确定合 成核的结构;
(4-2)修改核函数:根据每个核函数对应特征的物理意义,为每个核函数选择相应的相似性或距离度量函数;
(4-3)合成核权系数的确定:利用基于信息熵的合成核权系数优化算法计算合成核权值λ,对于多类分类问题,假设N为类别数目,采用OAO分类策略,对分类问题涉及的所有样本类别N两两组合,对应N(N-1)/2个分类器,分别计算每个分类器的合成核权系数;
(4-4)合成核参数的计算:利用网格搜索算法,对已知样本数据进行K-折交叉验证,优化求解合成核参数:惩罚值C、宽度系数G;
所述分别计算每个分类器的合成核权系数包括如下步骤:
假设此处选择第q个分类器,q取值是遍历范围[1,N(N-1)/2]的整数,同时从所有N类训练样本中,提取第q个分类器对应的两类训练样本数据;
计算每个分类特征熵值H(Fj):假设选取了n个分类特征,并分成S个特征组,H(Fj)为第j个特征的熵值;利用第q个分类器对应的两类训练样本数据计算每个分类特征熵值H(Fj);
计算每个分类特征的归一化权系数:步骤2得到所有n个特征的熵值后,计算第j个特征归一化权值ωj如下:
其中
计算第q个分类器的合成核权系数:上述特征参数数目n实际是s个特征域中所有参与分类特征的总和,每个合成核权系数是分别对应一个特征域的,设第i个特征域有ni个特征参数,第i个特征域所对应的核加权系数λi如下计算:
其中,i=1,2,......s;ωi为从求得的ω中抽取的第i特征域的ni元素的子集;
重复上述步骤,直到q取值遍历范围[1,N(N-1)/2]内的整数,完成N(N-1)/2个分类器合成核权系数的计算。
如果判断DOCKSVM分类器性能不能满足用户要求,则接续步骤(4)。
本发明具有以下有益效果及优点:
1.改善了支持向量机用于分类的精度。本发明方法考虑应用领域数据的特点,选取并构造合适的合成核函数,并利用信息熵确定支持向量机合成核的权系数,更加客观地将应用领域的数据生化特点融入到最终训练获得的支持向量机中,进而提高具体分类与识别问题的结果精度。
2.应用广泛。本发明方法可以用于多个应用领域,尤其是高维特征空 间的分类识别问题,如图像目标分类、文本分类、网页分类、遥感图像地物分类、军事目标识别等,可有效提高含有易混淆分类目标多类分类问题的精度,实际应用中,程序运行效率高,人工干预少,可实现系统的自动分类,并提高分类的精度。
具体实施方式
下面结合附图对具体实施方式加以详细说明。
本发明提出了一种面向数据特点的合成核支持向量机DOCKSVM(DataOriented Composite Kernel based SVM)的实现方法,解决数据分类问题属于向量机学习问题,其目的是针对应用图像处理以及模式识别等领域的分类问题,由于往往因为应用领域的不同,其数据具有不同的物理生化特点,提出一种根据其数据特点的动态构造合成核支持向量机方法,用于其分类识别,最终提高实际应用的精度。本发明实现方法提出根据数据的物理生化特性,对不同具体物理意义的特征向量选择不同核函数,即选择了合适的相似性度量函数;同时提出基于信息熵确定合成核权系数的方法,从而使得采用OAO(One Against One:一对一)支持向量机分类策略(参见图2所示)时,获得了最终每个分类器的合成核的合理权值,获得更好的分类精度。图2为以3类数据为例的OAO多类问题分类策略示意图。其中F1,2(x)代表类别1和2之间的分类器;F2,3(x)代表类别2和3之间的分类器;F1,3(x)代表类别1和3之间的分类器。
具体实施步骤如图1所示。
步骤(1)数据预处理:首先开展对分类数据的预处理工作,不同的应用领域有不同的预处理要求,实际应用根据应用的特定问题而定,如应用于图像分类识别,要开展对图像数据的几何矫正、量化、采样、预滤波、去噪声等处理工作。
步骤(2)特征提取、选择与分组:根据需要分类识别的类别,对预处理后的数据进行选择,提取特征矢量并分组,完成数据从数据空间到特征空间的转换;所选择特征要反映待分类识别目标的特性。
步骤(3)训练样本、验证样本以及待分类样本的选择:对训练样本、验证样本及待分类样本进行选择,训练样本用于后续的分类器的学习训练(即从待处理数据中抽取出具普遍性、代表性的数据作为训练样样本);验证样本用于对上述训练得到的分类器进行性能验证;待分类样本为实际需要分类的样本数据。
步骤(4)分类器的选择与实现:机器学习分类问题需要选择合适的分类器,比如神经网络、支持向量机、最大似然法等,选择分类器后需要确定分类器的结构以及参数予以实现。
本发明中提出的DOCKSVM(Data Oriented Composite Kernel basedSVM,面向数据特点的合成核支持向量机)实质是一种新型的支持向量机分类器,DOCKSVM的实现流程如图3所示,具体包括如下4个子步骤:
步骤(4-1)确定合成核结构:根据步骤(2)得到特征提取、选择以及分组结果,确定合成核的结构;
步骤(4-2)修改核函数:选择相似性或距离度量函数,根据每个核函数对应特征的物理意义,为每个核函数选择相应的相似性或距离度量函数;
步骤(4-3)合成核权系数的确定:根据基于信息熵的合成核权系数优化算法计算合成核权系数λ,实际应用中采用一对一(OAO:One AgainstOne)分类策略,即将分类问题涉及的所有样本类别N两两组合,对应N(N-1)/2个分类器,分别计算每个分类器的合成核权系数;
步骤(4-4)合成核参数的计算:支持向量机模型参数中涉及惩罚值C及宽度系数G,是影响分类结果的关键参数。本发明利用传统经典的网格搜索算法以及对已知样本数据的K-折交叉验证的方法(K-fold CrossValidation)对核参数(C、G)进行优化求解,确定合成核支持向量机分类器;
步骤(5)分类器的训练:利用步骤(3)中的训练样本,开展对步骤(4)中实现的DOCKSVM分类器的学习训练,获得训练后的DOCKSVM分类器;
步骤(6)分类器性能验证:利用步骤(3)中的验证样本,开展对步骤(5)中训练后的DOCKSVM分类器,并通过对验证样本分类检验其性能,判断其性能是否满足用户要求,如不满足,则返回步骤4接续。如满足,则获得验证满意的DOCKSVM分类器;
步骤(7)待分样本的分类:利用步骤(6)得到的分类器,对所有待分类样本进行分类;
步骤(8)分类结果输出:输出保存分类结果。
上述步骤(4-3)计算每个分类器的合成核权系数包括以下步骤:
步骤(4-3-1):依次选择要确定合成核权系数的分类器,并根据其对应的两类类别组合,提取两类样本数据:对于多类分类问题,假设N为类别数目,采用OAO分类策略,即对分类问题涉及的所有样本类别N两两组合,对应N(N-1)/2个分类器,分别计算每个分类器的合成核权系数,假设此处选择第q个分类器,q取值是遍历范围[1,N(N-1)/2]的整数,同时从所有N类训练样本中,提取第q个分类器对应的两类训练样本数据;
步骤(4-3-2):计算每个分类特征熵值H(Fj):根据权利要求1中步骤2,假设选取了n个分类特征,并分成S个特征组,H(Fj)为第j个特征的熵 值。利用步骤1提取第q个分类器对应的两类训练样本数据计算每个分类特征熵值H(Fj);
步骤(4-3-3):计算每个分类特征的归一化权系数:步骤2得到所有n个特征的熵值后,计算第j个特征归一化权值ωj如下:
其中
步骤(4-3-4):计算第q个分类器的合成核权系数:上述特征参数数目n实际是s个特征域中所有参与分类特征的总和,每个合成核权系数是分别对应一个特征域的,设第i个特征域有ni个特征参数,第i个特征域所对应的核加权系数λi如下计算:
其中,i=1,2,......s;ωi为从求得的ω中抽取的第i特征域的ni元素的子集;
步骤(4-3-5):重复上述步骤,直到q取值遍历范围[1,N(N-1)/2]内的整数,完成N(N-1)/2个分类器合成核权系数的计算。
本发明方法的实现原理如下:
(1)核函数的理论基础
对于非线形可分类问题(实际工程应用中大部分属于此类问题),支持向量机的本质是求解非线形分类决策超平面。为了实现问题的求解,利用映射函数将样本数据映射到更高维空间中,从而实现样本类别数据的在高维空间的线形可分。实际上,SVM(support vector machine,支持向量机)依赖的核函数是为了隐性地模拟该映射的复杂计算,使问题得到简化解决。
对于线形可分情况下,应用到的只是样本间的点积(xi·xj)运算,通过引入核k(xi,xj)=<φ(xi)·φ(xj)>,实际上,是通过合适的映射函数φ:Rn→H将x∈Rn映射到更高维的空间希尔伯特H,在无须知道显式φ的构成的情况下,核函数实现了样本特征空间的隐式映射。
如前所述,任何一个满足Mercer定理条件的函数均可以被考虑用作核函数,Mercer定理描述如下:
假设有限输入空间X={x1,x2,......xn},并假定k(x,z)是X上的对称函数,那么其是核函数的充分必要条件是矩阵 是半正定的(即特征值非负),即由X的任何有限子集所构成的核矩阵K是半正定的。
对于样本数据分类,构造合适的核函数主要是利用其在优化求解过程中进行距离或相似性度量矩阵的计算。根据空间中相临样本数据对最终核值计算的影响程度,可将核函数分为2类,局部核与全局核。前者如径向基核、KMOD核等,后者如线性核、多项式核和Sigmoid函数等。
合成核的理论基础:
支持向量机本身一种基于核的方法,核的定义如下:
核是一个函数K,对于所有的x,z∈X,满足
k(x,z)=<φ(x)·φ(z)>;
其中φ是从X到特征空间F的映射。核函数本质上是对称函数,数学意义上看,两个向量之间的点积可以看作是它们之间相似性的一种度量,因此核函数本身也可被认为是特征空间中两个样本之间的一种相似性度量。当一个函数k(x,z)是核函数时必须满足Mercer定理。
支持从核函数中构造核函数的命题:
令k1、k2和K3是在X×X上的核, a∈R+,0≤λ≤1,f(·)是X上的一个实值函数:φ:X→Rn,ki是Rm×Rm上的核,并且B是一个对称半正定的n×n矩阵。那么下面的函数是核函数:
k(x,z)=k1(x,z)+k2(x,z)(1)
k(x,z)=ak1(x,z)(2)
k(x,z)=k1(x,z)k2(x,z)(3)
k(x,z)=f(x)f(z)(4)
k(x,z)=k3(φ(x),φ(z))(5)
k(x,z)=x Bz (6)
在式(1)的基础上,如下的核函数也是有效的核函数:
k(x,z)=λk1(x,z)+(1-λ)k2(x,z)。(7)
信息熵的理论基础:
“熵”的概念来自于信息论,它是信息不确定性的一种度量,设集合X中的各个事件出现的概率用n维概率矢量p=(p1,p2,......pn)来表示,且满足,
则熵函数定义为:
熵函数H(p)具有如下重要性质:
(1)对称性:概率矢量p=(p1,p2,......pn)的各个分量的次序改变时,熵函数值H(p)不变,即熵值只与集合X总体上的统计特征有关。
(2)非负性:熵函数是一个非负量,即H(p)≥0
(3)确定性:集合X中只要有1个必然事件,其熵值为0。
(4)集合X中各时间以等概率事件出现时,其熵值最大,即有:
H(p1,p,......,pn)≤H(1/n,1/n,......1/n)=log2n。
本发明对核函数的改进:
从数学意义上讲,局部核是利用距离或相似性度量函数来计算核K的值,而全局核核值的计算是通过样本间的的点积来实现。例如:
Linear全局核:k(xi,x)=(xi·x)(3-1)
RBF局部核:
从局部核函数可以看出,核的隐性映射主要靠样本间距离(相似性)度量函数:
d(xi,x)=‖xi-x‖2(3-3)
式(3-2)中RBF核采用的欧氏2次距离函数
对于特定领域的分类问题,可利用的分类特征通常有多个如图像处理领域有光谱、纹理以及形状等特征。根据具体的分类目的的不同,进行分类时可以利用的分类特征也是不同的。由于提取的不同的特征信息具有不同的生化特性及物理含义,已有研究表明,对于不同的特征而言,不同的相似性度量算法,对于分类的结果是有影响的。在分析、总结现有各类可利用的相似性(距离)度量算法基础上,本发明提出修改和代替经典RBF核中的欧氏2次距离函数d(xi,x)=‖xi-x‖2的核函数改进方法,进而选择适合其相应特征的相似度量函数重新构造适合分类的核函数。
根据不同的算法原理和操作方法,可以将相似性度量算法划分为几何测度、编码测度、统计测度、特征测度、变换测度5大类,对于距离度量函数主要有以下8种:一阶距离、二阶距离、马氏距离(Mahalanobis)、Dominance距离、Canberra距离、Bray Curtis距离、Squared Chord距离、Square ChiSquared距离。其中,阶距离、二阶距离和马氏距离是应用比较广泛的相似性度量。实际应用中,可根据具体特征选择合适的相似性(距离)度量函数来修改BF核采用的欧氏2次距离函数,进而提高分类的精度。
合成核的构造:
Camps-valls等2006年提出了4种构造合成核的方法(Camps-valls&Gomez-Chova,et al.,2006),本发明在其提出的加权累加合成核的构造方法上加以拓展改进。根据符合Mercer定理的核函数性质,(见上述核函数的命题中公式1和2),以及Joachims证明的有效合成核函数(见上述公式7),改进后广义的加权累加合成核函数如下:
对于特定样本X,设其可用于分类的特征域为s个,针对每个特征域采用合适的核函数,即共有s个核函数kp(xi p,xj p),p=1,2,......s。则基于特征的合成核可表达为:
其中,λ1+λ2+,......+λs=1
对于特定领域的分类问题,其分类特征域可包括多个,如图像处理领域的光谱特征、纹理特征、几何形状特征等。目前仅考虑如下特征及其组合用于分类,各特征域定义如下:
xi为 空间的特征组分,其中Xi为第i个特征域。其中,Nij分别为第i个特征域特征数据的维数。
令ki、分别为第i个特征域对应的核函数,于是对应实际分类根据采用特征组合的合成核可分别表达为:
其中,λ1+λ2+,......+λs=1
本发明采用OAO支持向量机分类策略。对于N类样本X待训练以及分类,设其可用于分类的特征域为s个,则基于所有特征的合成核由s个核函数kp(xi p,xj p),p=1,2,......s,加权组成。
根据OAO分类策略,需要构造N(N-1)/2个分类器,因此,共有N(N-1)/2个合成核函数,第q(q=1,2,......,N(N-1)/2)个分类器的合成核表达式如下:
其中,λq1+λq2+,......,+λqs=1,q=1,2,......N(N-1)/2。
合成核权系数的确定:
如上所述公式(8)中,本发明中涉及最关键的一个参数λq1...λqs的确定是最关键的环节之一。本发明提出基于信息熵的合成核权系数确定算法如下:
根据熵函数的性质,可以用于机器分类问题的特征提取,显然,某一特征的熵值越小,其包含的确定性信息越多,在分类识别中该特征对分类结果的影响越大,即贡献(权重)越大。因此,可用于解决上述不同分类器的λ值的确定问题。
对于公式(8)中的一个分类器而言,只是2个类别的分类器,因此,只考虑2类分类识别问题。设选取的s个特征域共包括n个特征参数,对于每个特征Fj(j=1,2,......n),将其对应的分布区间(指所有类别的该特征参数最大可能的分布区间)分为相等的M段,记为rk(j),k=1,2,......M。满足Fj∈rk(j)的样本属于第i类的概率为pki(j):
其中,Mk(j)为Fj∈rk(j)的样本数,Mki(j)为Mk(j)中属于第i类的样本数,
设pk(j)为一个样本满足Fj∈rk(j)的概率,则有:
其中为总的样本数,即:
特征Fj的熵可定义为:
根据熵函数的性质可知,熵值H(Fj)越小,各类在特征Fj上的类间可分离性越大,则Fj对分类的贡献越大,即权值越大。
得到所有n个特征的H(Fj)后,定义归一化权值如下:
令
则
实际应用中,由于此处的特征参数数目n实际是s个特征域中所有参与分类特征的总和,而由于目前提出的合成核算法中是针对特征域的,设第i个特征域有ni个特征参数,第i个特征域所对应的核加权系数λi可以如下计算:
式中,i=1,2,......s;ωi为从求得的ω中抽取的第i特征域的ni元素的子集,并有:
将实际分类问题中的所有样本种类两两组合,分别计算合成核权值,在实际应用中采用OAO分类策略训练和分类,对应相应的N(N-1)/2(N为类别数目)个分类器,自此实现了合成核权系数λ的合理确定问题。