一种文本分类方法及装置与流程

文档序号:15095961发布日期:2018-08-04 14:34阅读:167来源:国知局

本发明涉及数据处理技术领域,特别涉及一种文本分类方法及装置。



背景技术:

随着“互联网+”模式的不断改革与创新,各行各业对于使用网络信息和数据的意识逐渐加强,通过互联网获得的信息或者数据也越来越多,增长速度也越来越快,这些信息和数据通常无法被用户直接使用。如何根据某种规则将这些巨量的文本内容信息进行分类,从而实现文档内容的有效管理和合理利用变得非常重要。在文本处理的过程中,文本分类是必不可少的,是文本挖掘中的一项重要研究手段。通过对文本中所含信息的判断,识别出文本内容中所引导的大致方向,并划分到合适的类别中,利用文本分类技术可以实现海量文本信息的高效管理和使用,对建立在线文本管理平台和大数据舆情监测方案提供强力的技术支持。

在进行海量文本处理时,通常第一步是实现文本分类,可以更高效地提升文本的利用率和利用质量。给定一个待分析的文档,根据学习得到的模型或者规则,对文档的内容信息进行判断,确定给定的文档属于某个类别,由于各个类别之间的文本属性可能存在相似,因此一篇文档可能同时属于某几个类别。文本分类最早的方法是人为判别,人们利用先验知识和常识判断一个文本的类别,并对其进行标注和整理,方便后续的管理和使用。但是人为判断文本的方式在实际应用中也有许多缺陷,首先,面对海量的文档,需要损耗大量的时间和人力,其次,由于文本分类的过程都是以人工的形式完成,不可避免的存在分类结果的主观性差异问题,导致分类结果的不可信,分类的效果也较差。与此同时,文本信息的数量也在逐渐增加,人工分类方法不再适用于海量文本数据,可实现性和操作性变弱,因此,借助网络信息技术实现高效的文本自动分类和管理显得迫在眉睫,更具有研究价值。

批量式处理是文本自动分类的一个重要特点,能够处理海量的文本,可以有效地上解决信息不规则、无序现象等问题,可以帮助用户快速准确的定位到所需要的信息,避免重复和盲目的搜索。因此,文本分类在作为文本处理的重要技术基础,在舆情监测、商品广告分类、网络新闻管理、文本数据库等诸多领域有着广泛的应用。国内外学者进行大量对于文本分类模型构建的研究,奠定了坚实的理论基础。现有文本分类方法在文本分类中发挥了不错的效果,具有一定的优势。但如何通过统计和机器学习方法构造出分类速度快、分类精度高的文本多类分类器仍是下一步文本分类研究的要迫切解决的问题。



技术实现要素:

本发明的目的在于提供一种文本分类方法及装置,能够提高文本分类的精度和效率。

为实现上述目的,本发明提供一种文本分类方法,所述方法包括:

对训练语料库中的文本进行预处理操作,以得到初始特征全集;

对所述初始特征全集进行特征选择,形成新的特征全集,并基于所述新的特征全集构造特征向量空间模型,所述特征向量空间模型中包括预设数量的特征项;

对所述特征向量空间模型进行聚类,以得到k个类簇的k个中心向量;

计算各个类簇中特征项与对应类簇的中心向量之间的相似度,并针对每个类簇,选取类簇中相似度靠前的f个特征项,并将f×k个特征项作为最终的特征项,以用于文本表示。

进一步地,对训练语料库中的文本进行预处理操作包括:

对训练语料库中的文本进行中文分词操作和去停用词操作;其中,所述中文分词操作包括基于预设分词工具,将所述训练语料库中的文本拆分成若干个单词;

所述去停用词操作包括根据预设停用词表对所述训练语料库中的文本进行筛选,以去除所述文本中出现的在所述停用词表中的单词。

进一步地,对所述初始特征全集进行特征选择包括:

计算所述初始特征全集中的各个特征词的评价值,并对计算的评价值进行排序;

选择评价值高于设定阈值的特征词,以构建新的特征词集合。

进一步地,对所述特征向量空间模型进行聚类包括:

将特征向量空间模型中的特征项作为粒子,对粒子进行初始化;

对初始化后的各个粒子执行自适应粒子群算法,以寻找各个特征向量空间模型中的最优粒子,并将所述最优粒子对应的类簇中的中心粒子作为中心向量;其中,类簇的数量为k;

计算各个类簇中特征项与对应类簇的中心向量之间的相似度,并针对每个类簇,选取类簇中相似度靠前的f个特征项,并将f×k个特征项作为最终的特征项,以用于文本表示。

进一步地,所述方法还包括:

将训练数据划分成训练集和测试集,并将数据进行归一化;

设置参数(Ci,σi)作为支持向量机的初始种群粒子,其中,(xCi,xσi)对应所述初始种群粒子的初始位置,(vCi,vσi)对应所述初始种群粒子的初始速度;

根据设定的适应度函数计算所有粒子的适应值,并比较粒子的适应值的大小;其中,将群体最优位置(pCg,pσg)和最优适应值fgbest作为群体初始位置和全局适应值;

更新粒子的位置、速度以及惯性权重,如果当前粒子优于被比较的所有粒子,则用当前粒子的位置作为新的最优位置,用当前粒子的适应值作为新的最优适应值;

根据当前的最优适应值,确定全局最优粒子对,如果全局最优粒子对的适应值比当前的最优适应值更优,则将全局最优粒子对的位置和适应值更新为当前的最优位置和最优适应值;

根据当前最优位置确定最优参数(C,σ),基于训练集建立支持向量机训练模型并在测试集上验证建立的支持向量机训练模型。

为实现上述目的,本申请还提供一种文本分类装置,所述装置包括:

预处理单元,用于对训练语料库中的文本进行预处理操作,以得到初始特征全集;

空间模型构造单元,用于对所述初始特征全集进行特征选择,形成新的特征全集,并基于所述新的特征全集构造特征向量空间模型,所述特征向量空间模型中包括预设数量的特征项;

聚类单元,用于对所述特征向量空间模型进行聚类,以得到k个类簇的k个中心向量;

特征项确定单元,用于计算各个类簇中特征项与对应类簇的中心向量之间的相似度,并针对每个类簇,选取类簇中相似度靠前的f个特征项,并将f×k个特征项作为最终的特征项,以用于文本表示。

进一步地,所述预处理单元包括:

词汇处理模块,用于对训练语料库中的文本进行中文分词操作和去停用词操作;其中,所述中文分词操作包括基于预设分词工具,将所述训练语料库中的文本拆分成若干个单词;所述去停用词操作包括根据预设停用词表对所述训练语料库中的文本进行筛选,以去除所述文本中出现的在所述停用词表中的单词。

进一步地,所述空间模型构造单元包括:

评价值计算模块,用于计算所述初始特征全集中的各个特征词的评价值,并对计算的评价值进行排序;

特征词选择模块,用于选择评价值高于设定阈值的特征词,以构建新的特征词集合。

进一步地,所述聚类单元包括:

初始化模块,用于将特征向量空间模型中的特征项作为粒子,对粒子进行初始化;

中心向量确定模块,用于对初始化后的各个粒子执行自适应粒子群算法,以寻找各个特征向量空间模型中的最优粒子,并将所述最优粒子对应的类簇中的中心粒子作为中心向量;其中,类簇的数量为k;

相似度处理模块,用于计算各个类簇中特征项与对应类簇的中心向量之间的相似度,并针对每个类簇,选取类簇中相似度靠前的f个特征项,并将f×k个特征项作为最终的特征项,以用于文本表示。

进一步地,所述装置还包括:

集合划分单元,用于将训练数据划分成训练集和测试集,并将数据进行归一化;

初始种群粒子设置单元,用于设置参数(Ci,σi)作为支持向量机的初始种群粒子,其中,(xCi,xσi)对应所述初始种群粒子的初始位置,(vCi,vσi)对应所述初始种群粒子的初始速度;

最优值确定单元,用于根据设定的适应度函数计算所有粒子的适应值,并比较粒子的适应值的大小;其中,将群体最优位置(pCg,pσg)和最优适应值fgbest作为群体初始位置和全局适应值;

更新单元,用于更新粒子的位置、速度以及惯性权重,如果当前粒子优于被比较的所有粒子,则用当前粒子的位置作为新的最优位置,用当前粒子的适应值作为新的最优适应值;

全局最优粒子对确定单元,用于根据当前的最优适应值,确定全局最优粒子对,如果全局最优粒子对的适应值比当前的最优适应值更优,则将全局最优粒子对的位置和适应值更新为当前的最优位置和最优适应值;

模型训练单元,用于根据当前最优位置确定最优参数(C,σ),基于训练集建立支持向量机训练模型并在测试集上验证建立的支持向量机训练模型。

本发明采用以上技术方案与现有技术相比,具有以下技术效果:

本发明通过自适应粒子群算法(APSO算法)对常规的聚类算法中初始聚类中心进行优化,从而避免常规的聚类算法受随机初始聚类中心选择影响较大的问题,使得聚类效果更好、更稳定。此外,在模型训练阶段,利用全局搜索能力强、收敛速度快的APSO算法对支持向量机的参数进行优化,从而提出将改进后的聚类算法和改进后的支持向量机算法相结合的文本分类方法,从而能够在时间效率上和精确性上都有比较满意的效果。

附图说明

图1是文本分类流程图;

图2是K-means算法流程图;

图3是APSO算法流程图;

图4是CLKNN-SVM文本分类流程图。

具体实施方式

为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施方式,都应当属于本申请保护的范围。

本申请提供一种文本分类方法,所述方法包括:

对训练语料库中的文本进行预处理操作,以得到初始特征全集;

对所述初始特征全集进行特征选择,形成新的特征全集,并基于所述新的特征全集构造特征向量空间模型,所述特征向量空间模型中包括预设数量的特征项;

对所述特征向量空间模型进行聚类,以得到k个类簇的k个中心向量;

计算各个类簇中特征项与对应类簇的中心向量之间的相似度,并针对每个类簇,选取类簇中相似度靠前的f个特征项,并将f×k个特征项作为最终的特征项,以用于文本表示。

在本实施方式中,对训练语料库中的文本进行预处理操作包括:

对训练语料库中的文本进行中文分词操作和去停用词操作;其中,所述中文分词操作包括基于预设分词工具,将所述训练语料库中的文本拆分成若干个单词;

所述去停用词操作包括根据预设停用词表对所述训练语料库中的文本进行筛选,以去除所述文本中出现的在所述停用词表中的单词。

在本实施方式中,对所述初始特征全集进行特征选择包括:

计算所述初始特征全集中的各个特征词的评价值,并对计算的评价值进行排序;

选择评价值高于设定阈值的特征词,以构建新的特征词集合。

在本实施方式中,对所述特征向量空间模型进行聚类包括:

将特征向量空间模型中的特征项作为粒子,对粒子进行初始化;

对初始化后的各个粒子执行自适应粒子群算法,以寻找各个特征向量空间模型中的最优粒子,并将所述最优粒子对应的类簇中的中心粒子作为中心向量;其中,类簇的数量为k;

计算各个类簇中特征项与对应类簇的中心向量之间的相似度,并针对每个类簇,选取类簇中相似度靠前的f个特征项,并将f×k个特征项作为最终的特征项,以用于文本表示。

在本实施方式中,所述方法还包括:

将训练数据划分成训练集和测试集,并将数据进行归一化;

设置参数(Ci,σi)作为支持向量机的初始种群粒子,其中,(xCi,xσi)对应所述初始种群粒子的初始位置,(vCi,vσi)对应所述初始种群粒子的初始速度;

根据设定的适应度函数计算所有粒子的适应值,并比较粒子的适应值的大小;其中,将群体最优位置(pCg,pσg)和最优适应值fgbest作为群体初始位置和全局适应值;

更新粒子的位置、速度以及惯性权重,如果当前粒子优于被比较的所有粒子,则用当前粒子的位置作为新的最优位置,用当前粒子的适应值作为新的最优适应值;

根据当前的最优适应值,确定全局最优粒子对,如果全局最优粒子对的适应值比当前的最优适应值更优,则将全局最优粒子对的位置和适应值更新为当前的最优位置和最优适应值;

根据当前最优位置确定最优参数(C,σ),基于训练集建立支持向量机训练模型并在测试集上验证建立的支持向量机训练模型。

具体地,针对现有技术的缺陷,本发明提供一种文本分类的方法。请参阅图1,该方法包括:

训练步骤:

1.首先对训练语料库中的文本进行分词操作得到文本特征全集。

2.对初始特征全集进行特征选择形成新的特征集,根据新的特征集构造特征向量空间。

3.构造文本自动分类器。将特征选择后的特征集进行文本表示作为分类器输入,类别作为输出,利用机器学习训练获取分类器的相关参数。

4.模型评估与测试。根据分类器性能评估指标评估文本分类模型的效果,如果分类指标符合预期精度要求,文本分类模型可以使用,如果指标不符合要求,则需要重新构造分类器。

分类步骤:

将待分类的文档集进行分词、特征表示,利用训练好的分类器对其进行类别判断。

其中,文本预处理技术包括中文分词、去停用词。

中文分词的作用就是将文本分成若干个单词,根据单词信息去完成特征选择和分类过程,分词的精确性与文本分类最后的效果息息相关。因此,选择一个效果好的分词工具显得格外重要。目前主流的分词工具有中科院的“ICTCLAS”分词工具、基于Python的“结巴”分词库和复旦分词包等,每种分词工具都有着较高的精确性,易于实现。本发明采用“结巴”分词工具。

停用词是指一些没有真正意义的词,如助词、副词、介词、语气词、标点符号等,这些词对于最终的分类无法提供类别信息,如果保留这些词,不仅会增加计算的维度,还会引入噪声特征,影响分类的效果。因此,在对特征进行特征选择之前,往往需要去停用词。常用去停用词的的方法则是根据停用词表进行筛选,过滤掉停用词表中的单词。

文档集合中的文本在经过分词和去停用词之后,所有词构成特征项集合,此时特征项集合中的特征项数量非常巨大。对于一个一般规模的文档集合,其特征词的数目就能到好几万个,这就导致维数灾难问题,使得后续利用特征项进行文本向量空间表示的维数也非常多,影响文本的分类效果。因此,特征选择在进行文本分类之前的重要步骤。特征选择的作用主要是去除数据噪声,减少特征空间维数,从而节约计算成本。为了避免计算时的维数灾难问题和提高文本分类的精度,在进行文本分类之前,必须对文本特征进行特征选择。

文本特征选择主要是为了减少计算时间和提升文本分类和聚类的效率。其基本思想是剔除在原始特征集中权值过小的特征词,权值低于设定的阀值时则剔除,否则保留。通过这种方法,一定程度上达到降低特征空间维数的目的。特征选择的步骤大致为:首先对文本集合进行分词和去停用词等预处理之后,所有的词构成初始特征词集,然后选择特征选择算法计算所有初始特征词中的评价值并排序,将评价值高于设定阈值的所有特征词构建新的特征词集合,最后利用新的特征词集合进行文本表示,使用较多的特征选择方法包括:文档频率、互信息、信息增益、卡方统计量等。这几种方法都有着比较广泛的使用,每种方法都有优势和缺陷。为了提高文本特征选择的效果,本文采用特征词聚类的方法实现文本特征选择。

在实际文本分类的过程中,需要将非结构化的文本转换成计算机能够读取和计算的结构化空间向量,此时需要借助向量空间模型将文本抽象成特征向量,再通过文本表示转化成特征矩阵,从而进行训练和分类。由于VSM模型具有简单、容易实现、分类效果好等优点,因此,往往采用该方法进行文本表示。

向量空间模型的基本原理是选择词、词组、短语作为特征项来构建向量空间模型。利用构建好的特征项可以将任何一个文本表示为空间向量,然后计算出每个特征项在每个文本中的权重大小,从而可以将整个文本集以构建好的特征项为维度,权重为大小表示为计算机能够处理的文本矩阵。文本的向量空间模型可用以下公式表示:

v(di)=(ω1(di),ω2(di),…ωn(di))

其中,n代表经过文本特征选择后特征项的个数。ωj(di)代表特征项ωj在文本di中的权重大小。

在进行文本表示时,需要对构建好的特征项进行权重计算,特征项在文本中权重的大小反映了该特征项在该文本中的重要程度,以此来区分不同类别之间的特文本特征信息,特征权重计算本质是将文本空间向量结构化表示的过程,通过这种方法,能够让计算机识别并进行分类器的训练。常用的特征权重计算方法有布尔权重、词频权重(TF)、TF-IDF。

词频-逆向文本频率权重的计算方法是将某个特征项出现在文本d的词频与该特征的逆向文本频率相乘。在向量空间模型中,文本特征项的TF-IDF计算一般采用以下公式:

其中,tfij代表在文本dj中第i个特征项的词频数,|D|为所有训练文本的文本总数,在所有文本中含有第i个特征项的文本数量为Mi,分母为归一化因子。TF-IDF方法的优点在于能够提升词频高的特征项对于权重的影响,也能较少那些在不同类别出现的特征项对于权重的影响。由于该方法不仅考虑到特征项的频率,同时到该特征项在不同整个文本集的分布情况,因此在实际分类系统的特征权重计算法中,最为常用。本文特征权重计算也采用TF-IDF方法。

聚类是文本分析中的主要技术之一。其本质就是让相同簇之间的样本尽量相似,不同簇之间尽量不同,而其中如何把样本聚集到某个簇中则是通过判断被聚样本之间的相关性,相关性越大,则越容易被聚到相同的簇中。通过聚类把样本分割成不同的类,通过观察类于类之间的差异,从而发现样本隐含的规律。利用聚类方法实现文本特征降维步骤如下:

1.对文档集进行分词、去除停用词,形成初始特征词集。

2.对每个特征项Ti使用tf-idf因子进行特征项赋值,构造出特征项的赋权向量。

3.经过步骤2后形成特征数据集D=(T1,T2…Ti),其中,Ti=(wi1,wi2…win),k为特征项的个数,n为文本个数,win表示第i个特征项在第n个文本中的tf-idf权重。

4.以特征为数据集对D进行聚类,得到相应的类簇S1,S2…Sk,计算各类簇的中心向量。

5.计算簇内各特征项与类别中心向量的相似度,取前f个特征项,将f×k个特征项作为最终的特征项,用于文本表示。

通过特征聚类,对分类有相似作用的特征词被聚集到一个类中,再从每类中选择与簇中心最相近的若干特征词,利用新的特征词集合去代表初始特征词集合,通过这种方法使得特征输入的维度明显减少,同时新的特征词集合最大程度地保留了分类信息,利用特征词聚类实现文本特征选择理论上是有效可行的。本文采用K-means算法实现特征聚类。

K-means是一种无监督学习算法,同时也是一种动态聚类算法。请参阅图2,它的主要原理为:第一步,从训练样本集中随机选择个初始值作为聚类中心。第二步,计算每个样本和k初始聚类中心点的距离,同时把样本归类为该样本与初始聚类中心距离最近的那个聚类中心的类别。第三步,计算新的子类中的所有样本的均值,将此均值作为新的类别中心。依次循环迭代,直到聚类中心不再变化,此时聚类已经完成,输出的结果满足收敛函数。

粒子群优化算法(PSO)是一种建立迭代基础上的进化智能计算技术,其思想是通过个体间协助和信息共同分享来寻找最优解,粒子群算法通过分享群体信息实现全局寻优。

粒子群算法的基本原理为:首先在寻优范围内随机生成一粒子群作为初始粒子群,然后根据适应度函数计算初始粒子群中每个个体的适应度值,根据适应值大小确定粒子初始位置、最优适应度值和群体最有位置和全局最优适应度值,依次循环迭代,直到满足收敛条件。粒子群算法就是利用进化的思想在搜索空间中不断寻优,从而找到全局最优解。

在m维搜索空间中,种群X={x1,x2…xn}由n个粒子构成,第i个粒子的位置和速度分别为xi={xi1,xi2…xim},vi={vi1,vi2…vim}粒子的个体最优位置为pbesti={pbesti1,pbesti2…pbestim},粒子搜索到的全局最优位置gbesti={gbesti1,gbesti2…gbestin}。其速度和位置更新方式如公式如下:

其中,ω是惯性权重因子,当ω=1时,为标准粒子群算法。c1和c2是个体学习因子和社会因子,r1和r2是(0,1)之间的随机数,t为迭代次数,是第t次迭代时的速度和位置,分别是个体最优位置和全局最优位置。

粒子群算法(PSO)由于采用实数编码,因此在编码时无需转化为二进制或者十进制,代入适应度函数即可得到相应的适应值,不需要进行转码,适用范围较广;同时,粒子群算法须设置的参数较少,因此计算简单,运算速度快;越往后迭代,个体越会在最优解的范围内搜索,所以,粒子群算法也有较强的局部寻优能力,能够提高算法的精准度。

粒子群算法(PSO)作为一种智能优化算法表现出较好的优化性能,但也存在收敛性过早以及不稳定产生“震荡”现象,ω的选择是影响PSO搜索性能的关键,如果选择不当,算法易陷入局部最优,甚至还可能不收敛导致搜索失败。为了克服PSO算法的不足,本发明给出了一种自适应粒子群算法(APSO),ω可以随着粒子适应度的不同而自动进行调节,公式如下:

其中,ω和ωmin分别表示权重因子及最小值,fk是当前迭代粒子的适应度,fbest和fave表示最优粒子适应度和平均适应度,fave1表示fk>fave的所有粒子适应度的均值,fave2表示fk<fave的所有粒子适应度的均值。APSO算法的思想是:对于fk>fave趋向全局最优的粒子赋予较小的权重,以便进行局部寻优,而对于fk<fave的粒子赋予较大的权重,使粒子跳出局部极小值,寻找较好的搜索空间。这种动态调节粒子权重的方法不仅保障了粒子的多样性,还增强了算法的全局寻优的能力。

在利用APSO算法对K-means初始聚类中心进行优化时,将最优聚类中心作为粒子群中的最优粒子的位置,即将聚类中心作为粒子进行寻优迭代,设粒子的位置Xi是由k个聚类中心Zj(1≤j≤k)组成的空间向量,聚类样本集为若聚类数据为q维向量,则粒子的位置和速度分别为和在设置适应度函数时,将用于评价聚类质量的准则函数作为APSO的适应度函数,设初始数据集D=(D1,D2,D3,…Dn),将D划分为k类,类Cj(1≤j≤k)对应的聚类中心为Zj,则粒子的适应度函数定义为:

f(x)越小表明类内数据结合的越紧密,聚类效果越好。因此APSO算法就是寻找使f(x)最小的粒子位置,此时的粒子位置对应的聚类中心即为优化的初始聚类心。

APSO优化K-means算法步骤如下:

Step1:对粒子进行初始化。如果样本数为n,特征数目为m,则以m×n的行列形成作为聚类样本S,从S中随机选择k个中心点作为粒子位置Xi的初值。与此同时,初始化粒子的速度、个体最优位置pbesti及其对应的个体极值f(pbesti)、种群最优位置及gbest其对应的全局极值f(gbest)。

Step2:对粒子群中的每个粒子执行APSO算法操作,寻找最优粒子gbest,将gbest对应的聚类中心作为step3的初始值。

Step3:执行K-means算法进行聚类,计算每簇内各特征项与类别中心向量的距离,分别取其距离最近的前f个特征值对应的特征,将这f×k个特征项构成新的特征集用于文本表示。

在实际文本分类过程中,文本的高维性是往往导致维数灾难,本文利用支持向量机作为文本分类器能够较好的解决文本高维问题,而支持向量机的性能往往依赖于其参数的选择,本文利用自适应粒子群算法(APSO)来优化SVM的参数,从而获得最优参数,充分发挥SVM的分类性能。为了能够实现多分类,需要构造“一对一”或者“一对多”的多类分类器。“一对一”分类器是要为每两个类别构造分类器,在测试时,每个分类器计算一次,然后进行投票,投票多的就是最终的类别,若有n个类别,需要进行n(n-1)/2次比较,针对SVM在文本多分类过程中,测试代价比较高,费时费力的问题,本文提出将改进的KNN算法和APSO-SVM相结合的文本多分类模型(CLKNN-SVM),以此提高分类模型的效率。

向量空间模型(Vector Space Model,VSM)在许多文本分类算法中得到广泛的使用,其基本思想是利用VSM来对文本进行表示,把表示后的文本看成空间中的某一个点,然后计算点与点之间的距离,通过距离的大小判断文本之间的相似程度,从而得出文本所应归属的类别。现有的研究发现,在诸多利用VSM的文本分类算法中,K-近邻是分类效果最好的分类器之一。然而K-近邻对于向量空间中的孤立点可能会因为其与同类点之间的距离大于不同类点之间的距离而产生错分现象。

支持向量机算法大多数情况下主要适用于两分类问题(简称2-SVM),但在文本分类应用中,类别往往是多个,因此须在两分类算法基础上构造多类别分类器。如何利用二分类器构造出适用于多类问题的多类别分类器,一直以来是研究的热点方向,其中使用最多且效果较好的方法是构建多个二类SVM组合来完成多类分类。

1.一对多方法

1-a-r(one against rest)是最初的一种构造方法,用来解决支持向量机的多类别分类问题。如果所需解决的问题有k个类别,则相应地构造k个分类器。在训练时,将第i类样本分为正样本,其余剩下的样本全部作为负样本,此时第i个支持向量机求解问题如下:

根据对偶的原理,将上述公式转变成其对偶问题来解决。则最后决策函数如下:

这种方法的优点在于具体分类时所需要的时间短,因为在训练时针对于k个类别训练k个两类SVM,如果一个SVM分类所需时间为O(tn),则最终分类的时间复杂度为k·O(tn),所以从分类的速度的上而言,1-a-r的构造方法具有一定的优势。但该方法的缺点就是在训练时比较耗时,由于支持向量机的训练快慢跟样本数量直接相关,数量越少,训练速度越快,而1-a-r方法在每次训练时都是将其某个类别为正样本,其余剩下的作为负样本,即每次训练都需要放入所有样本集,训练k次,从而不可避免的造成训练耗时的问题。

2.一对一方法

1-a-1(one against one)是由Knerr提出的,该算法在构造分类器时,在有k个类别的训练样本中寻找所有两两类别组合的两类分类器,即对于一个k类别问题,构造两类SVM分类器的数量为k(k-1)/2个。针对于样本集中i类和j类的样本训练,我们可以求解如下的两类分类问题:

根据对偶的原理,将上述公式转变成其对偶问题来解决。此时最终的决策函数有k(k-1)/2个。i类别和j类别之间的决策函数如下:

对于1-a-1方法而言,在进行具体分类时利用投票表决机制。即依次遍历完k(k-1)/2个分类器,对待分类的样本x进行分类,然后对样本x别所判定的类别进行计数,累加计数最多的类别即为最终样本x用所应归属的类别。

1-a-1方法的优点是相对于一对多方法它的训练速度快。因为1-a-1方法在训练时每次只要选择两类别样本进行训练,而1对多方法每次需要训练所有的训练样本。但其不足之处在于可能容易产生过拟合问题,因为不能保证每次训练得到两类SVM都是规则的,如果某些两类分类器都存在过拟合现象,则影响最终组合分类器的泛化性能。同时,当分类类别数k增加时,整个分类器的数目将迅速增加,增加测试样本的分类时间,使得决策速度很慢。

综上所述可以得知,SVM在具体实际应用中具有一定的优势但也显出一些不足:第一,SVM的分类性能受其参数影响较大,如惩罚因子以及核函数参数的选择,如何选择合适的参使得SVM的分类性能达到较优的状态是研究SVM的重要方向之一,第二,SVM主要针对二分类应用问题,当面临多分类问题时,往往使用多个练个分类器构造“一对一类”或者“一对多类”的多类分类器,本研究采用训练时间有优势的“一对一”多分类器,但“一对一”SVM多分类器在测试时间较长,本发明将研究SVM的参数选择和如何构造出高效的SVM多分类器。

APSO(自适应粒子群算法)有着较强的全局搜索能力,能够有效地避免在搜索寻优的过程中陷入局部最优的状况,本文拟用APSO算法优化SVM的参数,使得SVM发挥更好的分类效果。请参阅图3和图4,APSO优化SVM具体过程如下:

1.将训练数据划分成训练集和测试集,并将数据进行归一化。

2.设置参数(Ci,σi)作为SVM初始的参数,即初始种群粒子。(xCi,xσi)对应粒子的初始位置,(vCi,vσi)对应粒子的初始速度。

3.设置种群规模、迭代次数、学习因子c1,c2和权重因子ωmax,ωmin的值。根据设定的适应度函数计算所有粒子的适应度值,比较粒子适应值的大小,此时,个体初始位置和适应值为适应值最优的粒子的位置(pCi,pσi)和适应度值fbesti,将群体最优位置(pCg,pσg)和最优适应值fgbest作为群体初始位置和全局适应值。

4.更新粒子的位置、速度以及惯性权重,如果当前粒子fbesti要由于被比较的所有粒子,若当前粒子更优,则用当前粒子的(pCi,pσi)作为新的最优位置,用当前粒子的fbesti作为新的适应值。

5.根据最优适应值,确定全局最优粒子对,如果其适应值比fgbest更优,则更新(pCg,pσg)和fgbest为当前最优位置和适应值。

6.判断条件终止,如果达到判断准则,则确定最优位置(pCi,pσi)和全局最优最优适应值fgbest,否则转到步骤4。

7.根据最优位置(pCi,pσi)确定最优参数(C,σ),利用训练集训练建立SVM模型并在测试集上验证。

一般情况下,一个文本所归属的类应只与有某几个类别有关,如果在APSO-SVM对文本分类之前,能够为文本可能归属的类别提供一个类别候选集,既能提高系统的运行速度,又可以减少类别噪声,提高模型的分类精度。将CLKNN与APSO-SVM相结合(CLKNN-SVM),形成一种高效的文本多分类方法,首先利用CLKNN进行文本分类,然后利用CLA(classifier’s local accuracy)对KNN的可行度进行评价(CLA评价思想:在训练集中找到测试文本的N个近邻文本,利用这N个近邻文本的分类准确率来评估该分类器在测试文本的分类准确率),如果可行度高,则将KNN的输出结果作为最终结果,反之,将CLKNN的结果作为APSO-SVM的类别候选集,再进行分类。

本发明采用以上技术方案与现有技术相比,具有以下技术效果:本发明通过APSO算法对K-means的初始聚类中心进行优化,从而避免针K-means算法受随机初始聚类中心选择影响较大的问题,使得聚类效果更好、更稳定。利用APSO-K-means算法实现特征聚类,实现文本特征选择。针对KNN算法存在错分的问题,利用聚类算法改进KNN算法(CLKNN),获取训练集所有类别下的簇中心代替原先样本集,在模型训练阶段,利用全局搜索能力强、收敛速度快的APSO算法对SVM的参数进行优化,最后,提出将CLKNN和APSO-SVM相结合的文本分类方法(CLKNN-SVM)。该方法,本发明的方法在时间效率上和精确性上都有比较满意的效果,是切实可行的。

本申请还提供一种文本分类装置,所述装置包括:

预处理单元,用于对训练语料库中的文本进行预处理操作,以得到初始特征全集;

空间模型构造单元,用于对所述初始特征全集进行特征选择,形成新的特征全集,并基于所述新的特征全集构造特征向量空间模型,所述特征向量空间模型中包括预设数量的特征项;

聚类单元,用于对所述特征向量空间模型进行聚类,以得到k个类簇的k个中心向量;

特征项确定单元,用于计算各个类簇中特征项与对应类簇的中心向量之间的相似度,并针对每个类簇,选取类簇中相似度靠前的f个特征项,并将f×k个特征项作为最终的特征项,以用于文本表示。

在本实施方式中,所述预处理单元包括:

词汇处理模块,用于对训练语料库中的文本进行中文分词操作和去停用词操作;其中,所述中文分词操作包括基于预设分词工具,将所述训练语料库中的文本拆分成若干个单词;所述去停用词操作包括根据预设停用词表对所述训练语料库中的文本进行筛选,以去除所述文本中出现的在所述停用词表中的单词。

在本实施方式中,所述空间模型构造单元包括:

评价值计算模块,用于计算所述初始特征全集中的各个特征词的评价值,并对计算的评价值进行排序;

特征词选择模块,用于选择评价值高于设定阈值的特征词,以构建新的特征词集合。

在本实施方式中,所述聚类单元包括:

初始化模块,用于将特征向量空间模型中的特征项作为粒子,对粒子进行初始化;

中心向量确定模块,用于对初始化后的各个粒子执行自适应粒子群算法,以寻找各个特征向量空间模型中的最优粒子,并将所述最优粒子对应的类簇中的中心粒子作为中心向量;其中,类簇的数量为k;

相似度处理模块,用于计算各个类簇中特征项与对应类簇的中心向量之间的相似度,并针对每个类簇,选取类簇中相似度靠前的f个特征项,并将f×k个特征项作为最终的特征项,以用于文本表示。

在本实施方式中,所述装置还包括:

集合划分单元,用于将训练数据划分成训练集和测试集,并将数据进行归一化;

初始种群粒子设置单元,用于设置参数(Ci,σi)作为支持向量机的初始种群粒子,其中,(xCi,xσi)对应所述初始种群粒子的初始位置,(vCi,vσi)对应所述初始种群粒子的初始速度;

最优值确定单元,用于根据设定的适应度函数计算所有粒子的适应值,并比较粒子的适应值的大小;其中,将群体最优位置(pCg,pσg)和最优适应值fgbest作为群体初始位置和全局适应值;

更新单元,用于更新粒子的位置、速度以及惯性权重,如果当前粒子优于被比较的所有粒子,则用当前粒子的位置作为新的最优位置,用当前粒子的适应值作为新的最优适应值;

全局最优粒子对确定单元,用于根据当前的最优适应值,确定全局最优粒子对,如果全局最优粒子对的适应值比当前的最优适应值更优,则将全局最优粒子对的位置和适应值更新为当前的最优位置和最优适应值;

模型训练单元,用于根据当前最优位置确定最优参数(C,σ),基于训练集建立支持向量机训练模型并在测试集上验证建立的支持向量机训练模型。

上面对本申请的各种实施方式的描述以描述的目的提供给本领域技术人员。其不旨在是穷举的、或者不旨在将本发明限制于单个公开的实施方式。如上所述,本申请的各种替代和变化对于上述技术所属领域技术人员而言将是显而易见的。因此,虽然已经具体讨论了一些另选的实施方式,但是其它实施方式将是显而易见的,或者本领域技术人员相对容易得出。本申请旨在包括在此已经讨论过的本发明的所有替代、修改、和变化,以及落在上述申请的精神和范围内的其它实施方式。

本说明书中的各个实施方式均采用递进的方式描述,各个实施方式之间相同相似的部分互相参见即可,每个实施方式重点说明的都是与其他实施方式的不同之处。

虽然通过实施方式描绘了本申请,本领域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的精神。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1