一种基于k均值样本预选的支持向量机主动学习方法与流程

文档序号:11231299阅读:282来源:国知局
一种基于k均值样本预选的支持向量机主动学习方法与流程
本发明属于机器学习中的主动学习
技术领域
,尤其涉及一种基于k均值样本预选的支持向量机主动学习方法。
背景技术
:在很多复杂的监督学习任务中,标记实例的获得是困难的、耗时的;比如在语音识别中,获得对语音表达的正确标注需要花费经验丰富的语言学家大量的时间和精力;对于词级的标注所耗费的时间通常是音频时长的10倍,而音素标注的时间耗费是音频时长的400倍;在信息提取中,好的信息提取系统必须依赖具有标签的文本和详细的相关说明,这也需要耗费大量的时间,并要求领域专家参与以保证信息的准确;此外,诸如邮件的分类和过滤、计算机辅助医学影像分析等领域,标记实例都是昂贵的、不易获取的。因此,如何通过对大量未标记数据进行利用来提升学习性能这一理论上重要、现实中能够发挥效用的问题,受到了机器学习界的高度重视;主动学习和半监督学习是利用未标记实例提升学习性能的两个重要方法,其中,主动学习也被称作“查询学习”(querylearning),作为机器学习的一个分支领域,其重要思想是:如果本发明允许学习算法去选择它所学习的数据,变得更为“富有好奇心”,那么算法将会需要更少的训练并且表现得更好;主动学习的几个常用方法有:整合成员信息查询(membershipquerysynthesis)、基于流的选择抽样(stream-basedselectivesampling)、基于池的抽样(pool-basedsampling)等;半监督学习作为机器学习的另一分支,它让学习器自动地对大量未标记数据进行利用,辅助少量标记数据进行学习。在概念上两者也存在许多共性的地方值得思考。举例半监督学习中的自训练方法(self-training),它首先利用少量的标记实例进行学习,然后将最有把握的未标记实例及其预测标记加入学习器进行迭代;而主动学习中的不确定性抽样方法(uncertaintysampling),提出选择学习器最没把握的未标记实例进行标记查询。由此可见,主动学习和半监督学习分别着重问题的两个方面,前者探索未标记实例的未知信息,而后者着重已知的方面。正因为如此,许多学者自然地提出了将主动学习与半监督学习相结合的方法。现有利用未标记实例提高分类器学习性能的方法主要有两种,其具体缺点如下:(1)主动学习实例选取的缺点主动学习的思想为:如何选择需要的数据,主动学习并没有给出完善的解决方案。多数时候,只能应用主动学习的思想而并没有解决特定问题的具体办法,需要做到“具体问题,具体分析”。这一方面使得相关技术人员在考虑采用主动学习的思想时,因为得不到规范具体的执行步骤、佐证而畏首畏尾,导致项目设计周期长、效率低。另一方面,主动学习基于经验的决策方式使得相关决策缺乏完善的理论支持,可信度较低,而为了提升决策可信度,雇佣足够多的领域专家又会导致决策成本的大幅提高。(2)半监督svm方法的缺点,半监督svm(s3vm)是支持向量机在半监督学习上的推广,在不考虑未标记样本时,支持向量机试图找到最大间隔划分超平面,而在考虑未标记样本后,s3vm试图找到能将两类样本分开的,且穿过数据低密度区域的划分超平面。s3vm方法的问题是计算复杂,具有较多的待定参数,使得该方法的复杂度很高且难以使用,在如今日益增长的数据规模下,算法复杂度高的算法无法应对庞大的数据量及特殊应用所要求的响应速度,具体表现在:半监督svm算法难以迁移到大数据量的应用问题上;对于实时处理、要求响应时间的应用上也难以应用这类复杂度高的算法等。因此,需要更为高效的优化求解策略;同时,传统的s3vm具有未标记实例降低分类准确率的风险。综上所述,现有技术存在的问题是:现有利用未标记实例提高分类器学习性能的方法存在只能应用主动学习的思想而并没有解决特定问题的具体办法,需要做到“具体问题,具体分析”;算法计算复杂度高,导致算法难以应用在时效性需求较高的应用上。技术实现要素:针对现有技术存在的问题,本发明提供了一种基于k均值样本预选的支持向量机主动学习方法。本发明是这样实现的,一种基于k均值样本预选的支持向量机主动学习方法,所述基于k均值样本预选的支持向量机主动学习方法包括以下步骤:步骤一,利用k均值聚类算法进行样本预选,基于距离选择出少部分靠近聚类中心、较为密集、“重要”的样本来代替整个样本集进行常规支持向量机的训练;步骤二,依据数据预选的结果,在未标记实例集中对重要样本集l*中的每个实例进行查询,将查询得到的类标返回;得到未标记实例集中的部分“重要”实例并获取标记,来代替全部未标记实例;步骤三,利用样本预选结果,重要样本集l*作为支持向量机主动学习的训练集,结合传统的svm方法进行模型训练,得到最终的学习模型。进一步,所述k均值聚类算法包括:给定样本集d={x1,x2,;;;,xm},“k均值”算法针对聚类所得簇划分c={c1,c2,;;;,ck}最小化平方误差:其中,x是簇ci的均值向量;生成的聚类个数k=2。进一步,所述学习模型验证的方法包括:算法1;activesvm;输入:样本集u、groundtrue输出:最佳分类超平面(ω,b)得到当前p下的l*利用l*训练支持向量机模型m*本发明的另一目的在于提供一种所述基于k均值样本预选的支持向量机主动学习方法的基于k均值样本预选的支持向量机主动学习系统,所述基于k均值样本预选的支持向量机主动学习系统包括:样本预选模块,用于利用k均值聚类算法进行样本预选,基于距离选择出少部分靠近聚类中心、较为密集、“重要”的样本来代替整个样本集进行常规支持向量机的训练;标记查询模块,用于依据数据预选的结果,在未标记实例集中对重要样本集l*中的每个实例进行查询,将查询得到的类标返回;svm模型生成模块,用于利用样本预选结果,重要样本集l*作为支持向量机主动学习的训练集,结合传统的svm方法进行模型训练,得到最终的学习模型。本发明的另一目的在于提供一种利用所述基于k均值样本预选的支持向量机主动学习方法的基于距离聚类的样本预选方法,所述基于距离聚类的样本预选方法利用基于距离的聚类算法获得整合成员变量的主动学习方法所需的假设空间,得到重要样本集进行类标查询、svm模型生成。本发明的另一目的在于提供一种利用所述基于k均值样本预选的支持向量机主动学习方法的基于密度聚类的样本预选方法,所述基于密度聚类的样本预选方法邻近区域的密度、对象或数据点的数目超过某个阈值,继续聚类;对给定类中的每个数据点,在一个给定范围的区域内必须至少包含某个数目的点。本发明的另一目的在于提供一种利用所述基于k均值样本预选的支持向量机主动学习方法的基于网格聚类的样本预选方法,所述基于网格聚类的样本预选方法把对象空间量化为有限数目的单元,形成一个网格结构;所有的聚类操作都在这个网格结构上进行。本发明的另一目的在于提供一种利用所述基于k均值样本预选的支持向量机主动学习方法的基于约束聚类的样本预选方法,所述基于约束聚类的样本预选方法对个体对象的约束或对聚类参数的约束,均来自相关领域的经验知识;结合特定实例及特定领域,定制出适合特定问题的聚类方法进行样本预选。本发明的优点及积极效果为:解决传统分类问题,保证算法精确度及效率的基础上,降低分类器对于标记实例的需求,从而降低成本。属于机器学习中的主动学习领域,利用k均值聚类算法进行样本预选,选择出少部分较为“重要”的样本来代替整个样本集进行常规支持向量机(supportvectormachine)的训练。在很多复杂的监督学习任务中,标记实例的获得是困难的、耗时的。与传统的svm方法相比,本发明在保证分类正确率的前提下,降低了分类器对于标记实例的需求,降低了解决分类问题的成本;与半监督svm方法相比,本发明具有较强的抗噪能力,并且拥有更好的分类稳定性与精确度;与传统的主动学习方法相比,本发明提出了一种适用范围广的实例选取范式。传统的主动学习方法对如何选择需要的数据,并没有给出完善的解决方案。而本发明公布的基于聚类的样本预选技术,利用整合成员变量的方法,为主动学习方法提供了一套基于聚类假设的解决方案范式;使得主动学习中的样本类标查询有据可依,且适用范围广。本发明公布的基于样本预选的svm模型生成技术,在保证了svm模型分类精确度的基础上,大大降低了分类器对类标的需求。实验证明了本发明的可行性,其分类准确性高于同类svm方法,高精确性、稳定性,也是现有svm模型生成方法所不具备的。附图说明图1是本发明实施例提供的基于k均值样本预选的支持向量机主动学习方法的流程示意图。图2是本发明实施例提供的人造数据集算法特点说明示意图。图3是本发明实施例提供的实验对比情况(2)示意图。具体实施方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。下面结合附图对本发明的应用原理作详细的描述。如图1所示,本发明实施例提供的基于k均值样本预选的支持向量机主动学习方法包括以下步骤:s101:未标记实例集;s102:采用k均值聚类和整合成员变量进行样本预选;s103:标记查询;s104:svm模型生成;s105:得到最终结果。本发明采用整合成员信息查询的主动学习方法,提出了基于k均值样本预选的支持向量机主动学习算法:即同一聚类中的样本点可能具有同样的类别标记,要求决策边界所穿过的应当是数据点较为稀疏的区域。而在基于距离的聚类算法中,越是靠近聚类的中心,样本越是相对密集,越是可能反映了该聚类的标记分布信息。由三个模块组成,包括数据预选模块、标记查询模块及svm模型生成模块,技术流程如图1所示。每一个模块的具体描述如下:样本预选模块,利用k均值聚类算法进行样本预选,基于距离选择出少部分靠近聚类中心、较为密集、“重要”的样本来代替整个样本集进行常规支持向量机的训练,这种方法剔除了部分噪声点,在保证分类准确率的基础上,能够大量降低分类器对于标记实例的需求。k均值聚类算法给定样本集d={x1,x2,;;;,xm},“k均值”(k-means)算法针对聚类所得簇划分c={c1,c2,;;;,ck}最小化平方误差:其中,x是簇ci的均值向量。可以看出,e越小时,簇内相似度越高。但求e的最小化是np难问题,不易解决。因此,k均值算法采用了贪心策略,通过不断对均值向量x进行迭代更新,不断优化近似的求解e的最小化。整合成员变量方法成员信息查询是主动学习的使用场景之一。主动学习基于一个未知的集合l*进行查询,l*不是基于某种自然分布,而是来自于一系列有限可计算的假设空间l1,l2,…,他们是样本集u的子集;基于学习系统的外部环境,对未标记样本x依据其是否在集合l*内部,决定是否进行查询,如果x在集合l*内部,则查询之,反之不查询;而本发明中组成l*的假设空间,即是聚类假设中的“重要”样本所组成的样本空间;样本预选基于一种聚类假设:即同一聚类中的样本点可能具有同样的类别标记;而在k均值聚类中,越是靠近聚类的中心,样本越是相对密集,越是可能反映了该聚类的标记分布信息,本发明将这一部分样本称为“重要”样本。这时,支持向量机的决策边界所穿过的应当是数据点较为稀疏的区域。也正是这种聚类假设,整合成员变量查询的主动学习方法提供了假设空间l(聚类所形成的簇),利用假设空间l,结合l中“重要”占比p进行整合,即可在样本集u中预选出l*,称为“重要”样本集;由于解决的是二分类问题,算法中令k均值的参数,生成的聚类个数k=2;l中“重要”占比p并没有固定的取值范围,其取值原则是在svm模型生成时,在保证模型准确率的前提下,“重要”占比p越低,模型的效果越好。(2)标记查询模块依据数据预选的结果,在未标记实例集中对重要样本集l*中的每个实例进行查询,将查询得到的类标返回。这一部分旨在得到未标记实例集中的部分“重要”实例并获取标记,来代替全部未标记实例。从而在保证分类器精度的基础上,降低分类器对标记实例的需求。(3)svm模型生成模块利用样本预选结果,重要样本集l*作为支持向量机主动学习的训练集,结合传统的svm方法进行模型训练,得到最终的学习模型,该方法结束。为证实该方法的有效性,将生成模型采用如下算法进行验证:算法1;activesvm;输入:样本集u、groundtrue输出:最佳分类超平面(ω,b)图2直观的体现了本发明提出的算法具有以下特点:对于平衡样本的二分类问题(如图2a),基于k均值样本预选的支持向量机主动学习方法能够同软间隔支持向量机算法一样,忽略部分离群点,从而保证分类准确性。此时,用少量的“重要”数据即可代替整个样本集;对于非平衡样本的二分类问题,决策边界可能穿过预选数据(如图2b),算法依旧可以基于“重要”数据进行有效学习。此时,需要用较多的“重要”数据方可代替整个样本集;对于平衡样本集下的多分类问题(如图2c),该方法并不稳定;此时,需要用较多的“重要”数据方可代替整个样本集;非平衡样本集下的多分类问题(如图2d),由于生成的聚类不确定,因此算法的学习结果是不可预知的;在uci提供的多个基准数据集上,本发明的基于k均值样本预选的支持向量机主动学习方法(ka-svm),与c-svc、s4vm进行了对比分析,并采用交叉验证的方法验证算法性能;表1和表2分别提供了实验使用的数据集的特征及算法的初始参数;表1instanceiristaeglasscount150151163dimension4514classification333instanceseedshearttrackscount210270164dimension7137classification332表2algorithmparameterka-svmk=2;p∈(0,1]c-svcnulls4vmkernel=′rbf′;cl=100;c2=0.1;表3实验对比情况(1)显示在绝大多数二分类及多分类数据集中,ka-svm比c-svc算法具有更好的分类准确率;在ka-svm算法中,减小p值会显著的增加分类准确率的方差,使得算法变得不稳定。表3algorithmiristaeglasska-svm(p=0.6)0.855±0.0290.7800±0.0250.5172±0.045ka-svm(p=0.5)0.86±0.0210.8133±0.0220.5342±0.033ka-svm(p=0.4)0.8665±0.0380.7967±0.0190.5086±0.031ka-svm(p=0.3)0.8525±0.0170.8083±0.0310.4758±0.019c-svc0.8375±0.0290.8083±0.0130.5172±0.008algorithmseedshearttrackska-svm(p=0.6)0.8535±0.0170.6231±0.0230.6186±0.011ka-svm(p=0.5)0.8488±0.0220.5851±0.0260.6376±0.031ka-svm(p=0.4)0.8000±0.0190.6120±0.0330.6263±0.028ka-svm(p=0.3)0.6750±0.0160.6064±0.0250.5782±0.032c-svc0.8367±0.0210.6120±0.0110.6372±0.033图3展示了ka-svm与s4vm分别在heart_scale和tracks两个二分类数据集上随着标记数据占比变大时的分类准确率走势,c-svc算法将全局样本集u作为标记数据。实验对比情况(2)显示在解决二分类问题、标记数据占比在50%以上时,ka-svm算法的分类准确率高于s4vm,而当标记数据占比小于50%时,ka-svm的表现逊色于s4vm,这很可能是因为当标记数据占比少时,聚类保留的信息大量减少而难以得到最优的分类超平面。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1