曹 雅,邓赵红,王士同
江南大学 数字媒体学院,江苏 无锡 214122
现实生活中存在着大量的有序分类问题,例如对学生学习成绩的评定可分为优、良、中、差;地震对房屋造成的伤害程度分为轻微、中等、严重;制作衣服的材料和工艺决定了衣服的质量有好有坏,还有诸如对风险用户等级的评定及决定处理不同事情的先后次序等问题。很明显,在这些情况中,类标签存在着有序关系。这些年,随着对分类任务的研究,一般的分类问题已经取得了较好的分类准确率,但是这些任务中很少考虑序的关系,因此可能得到不一致的决策规则,这就需要研究者深入研究类标签之间的顺序关系。
单调分类问题一般是具有单调约束的有序分类问题,即属性值与类标签是有序的并且在它们之前存在单调关系。当一个对象的所有条件属性上的取值都不比另一个对象差时,它的决策也不会比另一个对象的决策差,这就是单调分类任务[1-2]。在单调分类问题中,单调约束先验知识的发现对分类器的改进非常重要,但传统的智能算法未考虑过此类问题。因此,建立合适的数学模型充分利用数据中存在的单调约束知识,对单调分类领域的应用会有很大的帮助。此类问题目前在机器学习、数据挖掘等人工智能的各领域越来越引起人们的重视[3-4]。
众所周知,模糊系统可以被应用于多种智能信息处理任务中,如聚类、回归以及分类[5-7]。与大多数现有的智能模型相比,模糊系统在解释性[8-9]和建模的不确定性方面具有独特优势。模糊系统已经被应用在工业过程控制、医学诊断、图像处理、机器人控制、财务预测、复杂系统控制等一系列的任务中,具有广泛的应用价值[8-13]。TSK模糊系统是最流行的模糊系统模型之一。由于其简单性、有效性和较好的弹性,得到了广泛的研究,目前已提出了多种各具特色的构建算法,例如:大规模数据TSK模糊系统建模[10]、2型TSK模糊系统建模[14-16]和迁移学习建模[17]。与上述TSK模糊系统在回归应用方面已有的较多研究成果相比,TSK模糊系统用于分类方面的研究相对较少。代表性的工作有:Jiang等人在文献[18]中提出了一种新颖的TSK模糊分类器TSK-FC,它的目标函数是通过采用大间隔和最小化结构风险策略构建,把TSK-FC训练等价地转化为一个经典凸QP问题。文献[19]提出了一种极大极小概率TSK模糊系统分类器,通过引入极大极小概率决策技术来训练模糊系统的分类任务。对于该分类器,正确分类的下界可以呈现给用户用来描述所训练的模糊分类器的可靠性。所得的分类器同时具有继承于模糊系统的较高可解释性和基于最小最大概率学习策略的模型的良好可靠性。文献[20]提出了一个深度TSK模糊分类器,它是由基本的TSK模糊系统构建单元组成,并以层叠的方式构建深度推理模型,模型的每一个基本构建单元通过最少学习机器学习,此分类器可以很好地应用在大规模的数据集中。
目前,现有的TSK模糊系统分类技术在单调分类问题上的研究仍然比较缺乏,已有的TSK模糊系统直接用于解决单调分类问题还不够理想。针对单调分类任务的特点,研究相应的既具有传统模糊分类器优点又能适应单调分类任务的TSK模糊分类器是非常必要的。
基于上述分析,本文提出了一种新的单调TSK模糊系统分类器(MC-TSK)。该模型添加了关于单调性的先验知识,将单调约束施加在原始的TSK模型上。MC-TSK的数学模型是一个二次规划问题,其中分类误差与单调性均被考虑在内。不同于其他已存在的单调分类方法,MC-TSK不要求特征与决策属性之前的单调关系是一致的,这就意味着不需要进行相关的数据预处理还可以避免一些信息的丢失。对于提出的新方法,在多组单调分类数据上进行了性能评估,实验分析表明所提出的方法要优于传统的TSK模糊系统分类方法和一些其他经典类型分类方法。
本文组织结构如下:第2章介绍了单调分类方面的一些概念以及TSK模糊系统的相关知识。第3章介绍了二分类单调TSK模糊系统的建模过程,并将其扩展到多分类任务中。第4章通过一些对比实验研究评估所提方法的性能,并对实验结果进行分析。第5章对本文进行总结以及展望。
假设U={x1,x2,…,xn}是对象的集合,A是用来描述对象的特征集,D是样本的决策属性代表分类问题的类标签。样本xi就属性a∈A或者D的值分别被表示为v(xi,a)或者v(xj,a)。样本中依据属性a或者D之间的有序关系被表示为≤或者≥,那么可以说xj不比xi更差当且仅当v(xi,a)≤v(xj,a)或者v(xi,D)≤v(xj,D),可分别表示为xi≤axj和xi≤Dxj。相应地,也可以定义为xi≥axj和xi≥Dxj。给定B⊆A,若有v(xi,B)=v(xj,B),那么对于 ∀a∈B,有v(xi,a)=v(xj,a)。
定义1给定一个特征a,让B=A-{a}。对于∀xi,xj∈U,在限制v(xi,B)=v(xj,B)下,当v(xi,a)≥v(xj,a)时有v(xi,D)≥v(xj,D),或者当v(xi,a)≤v(xj,a)时有v(xi,D)≤v(xj,D),说明决策属性D关于属性a是单调递增的;否则当v(xi,a)≥v(xj,a)时有v(xi,D)≤v(xj,D)或者当v(xi,a)≤v(xj,a)时有v(xi,D)≥v(xj,D),说明决策属性D关于属性a是单调递减的。
也就是说,对于单调递增的情况,如果一个样本点的属性值要高于另一个样本点的属性值,那么它的输出值也会相应大于另一个样本的输出值,即存在一个在输入与输出变量之间的单调关系,增加输入变量的值那么输出变量的值也很有可能会增加。在现实生活中存在着很多单调分类问题,例如,根据学生成绩进行奖学金的评定,成绩越好的学生获得的奖学金就越多;雇主选择雇员时根据应聘者的学历水平和工作经验进行打分,学历水平越高、工作经验越丰富,那么打分就越高。
TSK模糊系统是最广泛应用的模糊系统模型,本文选取了简洁而又高效的0阶TSK作为研究对象,那么基于0阶TSK模糊系统的二分类方法简介如下。
0阶TSK模糊系统包含一个规则库,其第k个模糊规则的表示形式如下[24]:
其中,If部分为规则前件,Then部分为规则后件。xj(j=1,2,…,d)表示第j维的输入向量,yk表示输出变量,每条规则把输入空间的模糊集Ak⊂Rd映射到输出空间的模糊集yk,这里表示输入向量x第d维所对应的第k条规则的模糊子集,K是模糊规则个数,∧为模糊合取操作。如果采用乘法合取算子、加法析取算子和组合算子,以及对输出采用重心法去模糊化等操作,最终TSK模糊系统的实值输出可表示为:
通常采用高斯隶属度函数作为隶属度函数,该隶属度函数可表示为:
其中,ujm表示由FCM得到的第j个输入数据xj=(xj1,xj2,…,xjd)T输入第m类(即第m条规则)的隶属度。这里,h是人工可调的尺度参数。
当TSK模糊模型的前件参数确定后,可令
那么式(2)可以表示为下面的线性规划问题[22]:
基于经典的TSK模糊系统,TSK模糊系统用于二分类时常采用如下的决策函数:
为了对该二分类器进行有效的训练,常需构造有效的优化目标函数对参数进行优化和学习。例如,文献[18]中给出了一种基于间隔最大化的优化准则。这里简单描述如下:以分类为目的,给定训练数据集中的任意样本点{xi,yi},最大化边界问题就是最大化下面的判别函数:
式(15)的准则可被重写为:
其中,ε表示间隔。由于上述约束条件不可能适应所有的数据点xgi(i=1,2,…,N),可以通过引入松弛变量ξi≥0(i=1,2,…,N)得到下面的约束条件:
基于式(16)和式(17),可见上述的分类机制和著名的支持向量机(support vector machine,SVM)有很大的相似之处,即都是基于最大化间隔来优化分类器。进一步引入正则化项,可得到如下最小化结构风险的优化目标函数:
基于2.2节提出的二分类0阶TSK模糊系统分类器,本文针对单调分类场景提出一种单调TSK模糊系统分类器。
(1)优化目标函数的构建
由2.2节知,对于0阶TSK模糊系统模型用于二分类,其输出为为模糊规则数。当解决基于MC-TSK的单调分类问题时,若对于特定特征需要增加单调性,则关于特征的决策属性的偏导数被限制为正。反之,对于要求降低单调性的特征的偏导数被认为是负的。不需要特征和决策属性之间的所有单调关系是一致的,也就是说,一些单调关系可以递增,一些可以递减。
通过限制偏导数的符号,可以在单调问题中获得r对单调约束,其中r是相对于决策属性单调增加或减少的特征的总数,并且有1≤r≤n,n是特征总数[23]。将这些约束添加到TSK模糊系统模型中即可得到单调TSK模糊系统模型。
增加单调约束关系到TSK模糊系统模型中,可以构建如下的单调TSK模糊系统模型:
如果决策属性关于特征xk是单调递增的,那么关于xk的决策属性的偏导数就是正的,此时有
类似的,如果决策属性关于特征xk是单调递减的,那么关于xk的决策属性的偏导数就是负的,此时有
其中,M是模糊规则数,由2.2节知对于所有的k=1,2,…,n都成立。那么式(22)与式(23)可分别简化为:
(2)优化求解
基于优化理论,对于单调关系是递增的情况,式(20)的拉格朗日函数可表示为:
通过拉格朗日函数对pg,ξi,ε取极值,得到:
将式(29)带入式(28)中,可得到原问题的对偶问题:
通过求解对偶问题的最优解λ∗和β∗,根据式(29)即可得原问题的最优解
类似的,对于单调关系是递减的情况,通过求解可得原问题的对偶问题为:
(3)Tikhonov正则化项
对于单调递增的情况,式(31)可表示成如下的矩阵形式:
如果G矩阵是半正定的,优化目标具有全局最优解;如果是正定的,那么最优解是唯一的全局最优解。
为了避免问题求解时出现欠正定情况,可在目标函数中引入Tikhonov正则化项,此时优化目标函数可修正为:
其中I是单位矩阵,如果δ选取合适的话,那么式(34)中的二次规划问题将是一个凸二次规划问题并且具有全局最优解。通过使用不同的数据集对式(32)的单调TSK模糊系统模型进行验证,结果表明,二次规划问题可能是一个不适定问题,此时矩阵G包含一个非常小的负特征值。针对此,本文将惩罚项δ设置成G的最小负特征值的绝对值的两倍。按此方法,式(32)中的二次规划问题将能保证是正定的。
类似的,对于单调关系是递减的情况,在目标函数中引入Tikhonov正则化项,此时优化目标函数同式(34),其中Hessian矩阵中4个子矩阵分别为:
与式(33)不同在于G12与G21的符号与之相反。
为了保持数据集使用过程中的单调性,在对单调多分类数据集进行处理时,采用“一对一”的方法。本文采用的策略是每次从数据集的k个类别中挑选出两个不同类别,对这两类数据进行训练从而构造二类分类器,并将类标签中大的标签映射为+1,类标签小的映射为 -1,这样共可构造出k(k-1)/2个单调分类器。在对未知样本进行测试时,“一对一”方法使用的决策机制是投票选举法。k(k-1)/2个分类器分别对未知样本做出决策,再将测试后的类标签反映射为原数据集中对应类标签,并将最终所判断的类别投票数增加1,得票最多的类别即为未知样本所属的类。
基于上文所提出的单调TSK模糊系统学习算法的原理与模型的构造过程,给出其详细的算法描述。
算法1单调TSK模糊系统算法
阶段1数据处理阶段
步骤1设置模糊系统的规则数M,惩罚项系数M∈{10,20,30,40,50,60,70,80,90,100}以及人工调节的标量参数h;选取用于单调分类场景的数据集。
阶段2构建单调TSK模糊系统模型
步骤2设置单调约束对的个数Ms;构建式(19)所示的二分类0阶TSK模糊系统模型,利用交叉验证法得到当前模型的测试数据集。
步骤3在TSK模糊系统模型上添加单调约束,构建式(20)所示的单调TSK模糊系统模型的目标函数。
步骤4对式(20)所示的目标函数进行优化求解得到原问题的对偶问题。
步骤5在优化后的目标函数中引入Tikhonov正则化项,将目标函数修正为式(34)得到单调二分类TSK模糊系统模型。
阶段3构建单调多分类TSK模糊系统模型
步骤6用“一对一”的投票法将单调二分类TSK模糊系统模型改进为单调多分类TSK模糊系统模型,算法终止。
为了确保实验的公正性,本文所有实验的实验环境为:MATLAB编程环境,电脑配置为Windows系统,3.30 GHz的Intel®CoreTMi5-4590 CPU,16 GB内存。
4.1.1 实验数据集
实验选取了UCI数据库中具有一定单调性的8个真实数据集,数据集的细节如表1所示。
4.1.2 参数设计
本文算法所涉及的参数会影响模型的性能。针对此本文对于惩罚项系数τ与人工调节的标量h等参数,采用了网格搜索和交叉验证结合的方法进行了寻优。过程如下:首先对于每个待优化的参数,给定一个寻优范围(具体范围见表2),然后利用交叉验证的方式来计算特定参数下的所训练模型的性能,最终把取得最优性能的参数作为最终的参数。特别地,为了便于找到较优的参数,表2在一个较大的范围内设置了参数寻优范围。本文实验中采用了5倍的交叉验证法,即把数据集划分为5份,每次选取1份数据作为测试集,其余4份作为训练集。对于本文实验所采用的比较算法和所涉及的相应超参数的搜索网格如表2所示。
Table 1 Description of dataset表1 数据集描述
本文用到的对比算法有传统的TSK模糊系统[24],正则化单调模糊SVM(regularized monotonic fuzzy support vector machine,RMCFSVM)[25]、SVM[26-28]、FSFCSVM(fuzzy system learned through fuzzy clustering and support vector machine)[29]以及FSC-0-L2-TSK-FS(fuzzy subspace clustering based zero-order L2-norm TSK fuzzy system)[30]。各个算法的分类精度如表3所示。
通过观察表3可以看出:
本次实验选取了8个单调数据集,均在本文提出的算法中获得最优的分类性能,在其他单调方法中获得较好的分类性能,并且几个数据集均有较好的稳定性。
对于不同的单调数据集,对TSK模糊系统分类器添加了单调约束后其分类性能要明显优于没有添加单调性约束的分类器。本文应用的对比算法中的另一个单调方法RMC-FSVM一般情况下也要优于其他非单调方法,但是仍次于本文提出的优化方法MC-TSK。对于数据集Qualitative_Bankruptcy,由于其数据属性较少,单调性也较明显,此时单调TSK模糊系统准确率可达到100%,也是这8个分类器中分类性能最好的,同样稳定性也是最优的。
对于同一个数据集,单调多分类TSK模糊系统分类器得到的准确率明显高于普通的TSK模糊系统分类器,一般情况下也优于其他几个分类器。例如对于数据集Car evaluation,在MC-TSK上获得的准确率比在普通的TSK以及FS-FCSVM上获得的准确率高达20%多,比在其他分类器上高达10%,可见改进后的算法分类性能获得了明显提升。
Table 2 Parameter settings in algorithm表2 算法中参数的设置
Table 3 Comparison of classification accuracy of different datasets in 6 classifiers(means+std)表3 6种分类器在不同数据集上的分类精度对比(means+std) %
综上所述,在处理单调分类问题时,在分类器中添加单调约束可以有效提高分类器在单调数据集上的分类性能。
本文提出了一个单调TSK模糊系统模型用于单调分类场景,通过引入单调性的先验知识,将单调约束添加在原始的TSK模糊系统模型,提升模型的泛化性能。将改进后的模型应用到8个单调的数据集中,结果表明在单调分类问题中,本文提出的方法在泛化性能方面要优于传统的TSK模糊系统分类器,并且通常情况下也优于其他经典分类器。
本文提出的改进算法可以确保产生的分类器是单调的,并且由于单调约束的构建是通过约束决策属性相对于特征的偏导数的符号,基本上避免了信息的丢失,不需要对数据集进行预处理。
在实践中,数据采集过程很容易受到不同干扰,因此数据可能不完全遵循先验知识的特点,比如本文的单调性。后面还拟通过添加不同水平的噪声来模拟不同程度的违反单调性的情况,进而研究数据违反单调性是如何影响学习过程的。