[0005] 本发明的目的是针对现有技术的不足,提供一种基于权重的ML-kNN多标签中文文本分类方法,以解决传统ML-kNN算法对多标签中文文本进行分类时没有考虑标签数量和训练示例分布的问题。
[0006] 一种基于权重的ML-kNN多标签中文文本分类方法,包括以下步骤:
[0007] 步骤1、对待分类的文本进行预分类处理;
[0008] 步骤2、计算针对标签数量不平衡问题所对应的权重因子;
[0009] 步骤3、计算针对训练示例在空间中分布所提出的修正权重因子;
[0010] 步骤4、基于权重因子,计算事件Hj成立与不成立的先验概率,分别记为 和Hj代表未见示例x具有类别标记yj这一事件;
[0011] 步骤5、计算Hj成立与不成立时,N(x)中有Cj个样本具有类别标记yj的条件概率,分别记为 和 其中N(x)代表x在训练集中的k个近邻样本构成的集合,Cj统计了N(x)中将yj作为其相关标记的样本个数;
[0012] 步骤6、结合步骤4和5所计算出的结果,基于ML-kNN算法,得到所需的多标记分类器;
[0013] 步骤7、结合步骤1得出的预处理结果和步骤6得出的分类器对未分类文本进行分类。
[0014] 步骤1所述的对待分类的文本进行预分类处理,过程如下:
[0015] 1.1首先确定所有类别名称,使用所有类别名称作为原始类别标记集合;
[0016] 1.2将训练集中所有的文本数据和最新中文维基百科语料库作为模型的语料库,其中中文维基百科语料库需要先做简繁转换处理,然后做分词处理,接着去掉停顿词与低频词,保留名词、名词短语、形容词、动词以及其它可能有实意的词语;
[0017] 1.3扩充类别标记集合:利用词向量表示模型word2vec,将步骤1.2中语料库内所有的词语用向量的形式表示,而词语在向量空间上的距离能够用来表示词语文本语义上的相似度,用word2vec将语料库中与原始类别标记集合中类别相似度大于0.9的词语加入类别标记集合,以达到扩充类别标记集合的目的,使得扩充后的类别标记更加有类别表征能力;
[0018] 1.4由于中文文本的特点,当类别名在文本中出现了,此文本必然和此类别相关;因此检索扩充后的类别标记集合,遍历待分类的所有文本,将文本标记对应的类别标签。
[0019] 步骤2所述的计算针对标签数量不平衡问题所对应的权重因子,过程如下:
[0020] 2.1计算包含l标签的样本个数,即 其中m为训练样本的个数,表示实例i存在l标记时值为1,否则值为0;
[0021] 2.2计算训练样本标签集内各类标签数量的平均数 其中γ={y1,y2,…,yq}代表包含q个类别的标记空间,|γ|表示标记空间中类别的个数即q;
[0022] 2.3针对标签数量不平衡所造成分类误差的问题,定义l标签的权重因子为[0023] 步骤3所述的计算针对训练示例在空间中分布所提出的修正权重因子,过程如下:
[0024] 3.1由于标准差可以反应示例的总体空间分布情况,所以本发明中用局部空间中包含有同种标签的示例之间的距离标准差作为此类标签的局部标签密度,符号定义为ρ;
[0025] 3.2根据未见示例所处位置的k个最近邻示例的空间分布,计算k个示例中标签集包含l标签的实例的局部标签密度ρl;
[0026] 3.3利用未见示例与训练集中k个最近邻示例之间空间分布的互信息,得到未见示例对k个最近邻示例标签集所含各标签的局部标签密度影响强度由低到高的影响强度序列;其中标签l的局部标签密度影响强度具体计算方式为:当未见示例标签集中存在l标签时,l标签新的局部标签密度为ρl′,未见示例的l标签对局部标签密度的影响强度计算方式为
[0027] 3.4计算针对训练示例在空间中分布所提出的局部标签密度影响权重:其中σ为权重的修正系数。
[0028] 本发明的优点及有益效果如下:
[0029] 本发明针对多标签分类问题,由于考虑了各类别标签的数量分布情况和训练示例在空间中的分布情况,消除了ML-kNN算法在多标签中文文本分类时所存在的缺陷,提高了多标签分类的效果。同时,在正式分类之前,通过构建和扩充类别标记集合对分类文本做预分类处理,可以极大的提高多标签中文文本分类的效率。