基于朴素贝叶斯分类模型的文本特征选择研究

2014-02-25 11:09潘光强周军何洋
电脑知识与技术 2014年1期
关键词:词条特征选择贝叶斯

潘光强 周军 何洋

摘要:该文主要对文本自动分类的特征选择方法进行了讨论,分析了几种常见方法存在的缺陷,指出影响出文本特征选择的两个重要因素——特征项在类别内的文档频率和在类别间的分布差异,并以这两个因素为影响因子分别对TF-IDF和IG方法进行了改进。另外还介绍了朴素贝叶斯分类模型,并基于此模型对改进的特征选择方法的分类效果进行评估。实验结果表明,改进后的方法能够强化特征项在特定类别中的影响力,提高文本分类效果。

关键词:文本分类;特征选择

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)01-0133-05

1 概述

文本特征选择(Text Feature Selection)是文本自动分类过程(图1)中的重要环节。文本自动分类(Automatic Text Categorization)是指运用计算机技术,在预先定义的分类体系下,根据待分类文档内容,将其归属为一个或多个类别的处理过程。文本自动分类技术的研究始于20世纪50年代[2],至今出现了基于不同理论的多种分类模型[3],在这些模型中,用向量空间模型(VSM)来表示文档[5],比如,用T表示文檔包含的词汇集合,用每个词及其在文本中的权重作为特征项,则可将一篇文档表示为向量d=(t1,t2,…tm)(ti∈T,1≤i≤m),然后根据文档向量和类别向量计算出相似度,从而确定文档所属类别。文本特征选择是从高维文本特征集合中筛选出一部分特征组成一个低维的向量空间的过程。那么为什么要进行特征选择,是不是维数越高分类效果就越好呢?事实并非如此。一篇文档往往包含数百乃至成千上万个词条 ,对于语料训练集来说,词条数目更是达到百万级甚至更多。高维的特征,不仅增加了机器学习的负担,提高分类的计算复杂度,而且,过高的特征维数反而有可能降低分类的准确性[6],形成“高维灾难”。这是因为在整个特征集合中,有很多词在各个类别的文档中出现的频率差别不明显甚至几乎一样,类别区分能力很弱。还有一些词只在极少数的文档中出现,也不能作为类别划分的参考。文本特征选择目标就是去除这些对区分类别没有作用的特征项。对文本进行降维处理,不仅可以提高分类的效果,而且能够有效降低分类过程的计算复杂度,大大节省了时间成本。从图1可以看出,特征选择是产生文本特征向量的前提,直接影响模型训练的质量和分类的效果。该文将分析目前特征选择方法存在的问题,讨论影响特征选择的因素,提出改进方法,并用朴素贝叶斯模型对其分类效果进行评估。

2 相关研究

2.1 特征选择方法

对于不同的分类算法,应采用不同的特征选择方法以达到较为理想的分类效果。用于文本分类的特征统计量有:特征频率(Term Frequency,简称TF)、文档频率(Document Frequency,DF)、信息增益、χ2统计量、互信息等等。下面介绍几种常用的特征选择方法,并讨论这些方法存在的缺陷。

2.1.1 TF、DF和TF-IDF

TF是特征t在文档集中出现的频率,计算方法是tf=t出现的次数÷文档集中总词数(含重复)。DF是包含特征t的文档的频率,计算方法是df=包含t的文档数÷总文档数。因为在不同类别的文档中相同特征项出现的频率是有差异的,如果t在某类别中出现的频率较高,那么其在这个类别中的DF一般也高,因此t可以作为文本的类别特征。但是,单纯使用TF或DF还不足以区分不同特征对文本类别的贡献,因为有可能相同特征在所有类别中出现的频率都很高,或者不同特征在某个类别中出现的频率相同却在另一个类别中出现的频率相差甚远,这两种情况都不能正确反应特征对文档类别的影响,因此有一种方法将TF与逆文档频率(Inverse Document Frequency,IDF)结合起来,称为TF-IDF方法,计算公式为

式中idf的计算方法为idf=log [Nn],N代表训练集文档总数,n代表出现特征t的文档数。idf反应的是特征项在训练集文档中的分布情况,它能够弱化在各类别中共同高频特征项的作用,同时强化只在少数类别中出现的相对低频的特征项的重要度。

2.1.2 信息增益(Information Gain,IG)

文本特征的信息增益是指一个特征所携带的分类信息量,常见公式为

其中,n是类别数,p(ci)是第i类出现的概率,若每类平均出现,则p(ci)=[1n]。

p(t)=包含词语t的文档数÷总文档数,p(t)=1-p([t])。

[p(ci|t)]即[t]出现时,[ci]出现的概率,等于类[ci]中包含t的文档数除以训练集中出现[t]的文档总数。

[p(ci|t)]即[t]不出现但属于[ci]的概率,等于类[ci]中不包含t的文档数除以训练集中未出现[t]的文档总数。

2.1.3 χ2统计量(CHI-square statistic)

在文本分类中,χ2统计量表达的是特征项与类别之间的相关性,计算特征t与类别c的χ2统计量公式为

(3)

[N]表示训练集中文本总数;A表示包含词条[t]且属于类别c的文本数目;B为包含词条[t]且不属于类别c的文本数目;[C]等于属于类别c但是不包含词条[t]的文本数目;[D]等于不属于类别c且不包含词条[t]的文档数目。由此可以看出,[N]固定不变,[A+C]为属于该类别的文本数目,[B+D]为不属于该类别的文本数目,所以式(3)可以简化为:

[χ2 (t,c)=(AD-BC)2(A+B)(C+D)] (4)

特征[t]与类别[c]相互独立时,[χ2 (t,c)=0]。[χ2 (t,c)]的值越大,特征[t]与类别[c]越相关。

以上三种常用的特征选择方法在文本分类中都取得了不错的效果,但仍然在不同方面均存在缺陷,需要加以改进。TF-IDF方法只考虑了词频和文档频数对特征重要性的影响,而忽略了特征项在类别间的分布差异的影响。比如,某特征项指定类别中频繁出现,而在其它类别中几乎不出现,那么它应当作为特征项。但这种情况下它的TF和DF会很高,导致在整个文本集中的IDF相对低,从而降低此特征的权重;IG方法在整个分类体系中进行特征选择,无法体现特征对某个类别的影响,而类别间的文档分布往往是不均匀的,用IG方法对文档空间小的类别不够“公平”;统计量方法提高了在指定类别词频较小而在其它类别词频较大的词的权重,例如式(4)中A很小B很大时,计算的结果较大,很可能被选择为文本特征,但事实上对分类贡献非常小,应该过滤掉。另外[χ2]统计量方法还降低了某些低词频但IDF较高的特征权重,由于这类特征词频较低,其权重也不会太大,一般忽略其对分类的影响。

2.2 朴素贝叶斯分类算法

贝叶斯分类算法是一种利用概率统计知识进行分类的算法。比如,假设类别集合[Ci=(C1,C2,...,Cn)],训练集D共有m个属性,即每个文档都可以表示为[d=(t1,t2,...,tm)],可将文本分类问题描述为计算给定文本所属类别的后验概率问题。根据贝叶斯公式,给定文本[dx]属于类别[Ci](1≤i≤n)的概率可以由式(5)计算 。

其中,[P(Ci)]为类别先验概率。用T表示训练样本特征词的集合,若将文档表示为向量,即[dx=(tx1,tx2,...,txm)],则[P(dx|Ci)=P(tx1,tx2,...,txm|Ci)],txj∈T,1≤j≤n。朴素贝叶斯文本文类算法基于文本特征之间条件无关的假设,即假设文档中的词条之间相互独立不存在依赖关系,那么,

由于待分类文档对于每个类别的先验概率[P(dx)]相同,故可省去,从而可得朴素贝叶斯分类模型

根据类别的先验概率[P(Ci)]和条件概率[P(txj|Ci)]表示方法不同,朴素贝叶斯方法有两种常用模型,一种是伯努利模型(BNB),[P(Ci )=类别文档数÷训练集文檔总数,P(txj |Ci)=类别中txj 的文档数÷类别包含文档总数];另一种是多项式模型(MNB),[P(Ci )=类别中词条数目(含重复)÷训练集总词条数(含重复) , P(txj |Ci)=类别中txj 出现的次数÷类别词条总数]。

3 方法改进

2.1节指出了常用特征选择方法存在的缺陷,为克服这些缺陷,人们尝试对各种方法添加权重因子,以增加特征项的类别影响力。例如文献[10]在TF-IDF基础上,加上特征项在各个类别间的平均偏差平方[Dk]和类别内平均偏差平方[Dik],构建了如下选择模型:

[W(tik)=tf(tik)*idf(tk)*Dk*(1-Dik)] (7)

[W(tik)]表示类[Ci]中第k个特征的权重。这个模型对每个类别分别进行特征选择,同时考虑了特征在类别间和类别内的分布情况,基本上克服了上面所说的缺陷。但[Dk]只能从整体上反应特征项的分布情况,反应的是特征项对于整个类别空间的重要性,不能体现特征项在指定类别与其它类别中分布的差异,无法反应特征项对于指定类别的贡献,因此,我们将[idf(tk)]改为第k个特征在各类别中的文档频率与[df(tik)]的差的平方和,即[Eik=j=1n(df(tjk)-df(tik))2 ] ,可以弥补上述缺陷。这里我们将[Eik]称为特征[tik]的类别因子。同时为了降低复杂度,可以用特征在类内的文档频率[df(tik)]代替[(1-Dik)],如式(8)所示。

[W(tik)=tf(tik)*df(tik)*Dk×j=1n(df(tjk)-df(tik))2 ] (8)

由于统计量方法只考虑了特征项在类别内的重要性,忽略了它在类别间的分布情况。因此, 我们也可以在式(4)加入特征项的类别因子行修正,并且将A、B、C、D表示为特征项的文档频率,即:

[χ2 (t,c)=(df(t,c)*df(t,c)-df(t,c)*df(t,c) )2(df(t,c)+df(t,c) )(df(t,c)+df(t,c) ) ×j=1n(df(tc)-df(tj))2 ] (9)

4 实验

4.1实验环境和数据

我们利用开源的数据挖掘工具weka[8]并对其进行二次开发,用于文本的预算理、模型训练和分类实现,从网上下载搜狗实验室文本分类语料并对其进行调整(见表1),作为实验数据集,其中80%用于分类模型训练,20%作为测试集。

4.2实验及分析

首先,我们从表1中按30%的比例取出部分训练和测试数据对朴素贝叶斯分类方法的两种模型分类效果进行比较,表2是在不同维数下三种特征选择方法分类效果的比较。

(a)TF-IDF方法改进前后分类效果对比

(b)CHI方法改进前后分类效果对比

由图2可以看出,[χ2]统计量方法分类效果略好于TF-IDF方法,改进后的特征选择方法与原方法相比,分类效果有了明显提高,且在维数较低时提高幅度更大。观察图3我们发现两种方法经加入修正因子改进之后,在每个类别上的分类效果均有不同程度的提高,特别是IT、健康、教育、文化等训练集文档较少的类别提高幅度更加明显。因此,从本实验我们得出如下结论。

1) 分类别进行特征选择,同时突出特征项在类别内的分布的影响,并加入类别因子,能够有效解决由于类别间文本长短差异以及文本数量分布不平衡导致分类不准确的问题。

2) 由于一些特征项大量集中在某些特定类别,IDF值可能会降低这些特征项对这些类别的重要性,用特征项的类别因子能够较好地增加其在特定类别中的权重。

3) 在[χ2]统计量方法中用類别因子对特征权值进行修正,过滤掉类别中[χ2]统计量较大而极少出现的特征项,能够使分类效果得到明显提升。

5 结束语

本文讨论了常用特征选择方法的缺陷,提出了改进方法,并通过实验证明,特征项在指定类别中的分布情况和在类别间的差异是影响文本特征选择的重要因素,突出特征项的分布及其类别因子对其权值的影响,能够明显改善特征选择的质量,从而提高文本分类效果。但在实验中我们发现,改进后的方法由于增加了影响因子,提高了计算的复杂度,降低了分类性能,下步我们将对每个步骤具体的实现算法进行优化,并运用分布式计算系统提升分类性能。

参考文献:

[1] Yang Yiming,Pedersen J O.A Comparative Study on Feature Selection in Text Categorization[C].Nashville:Morgan Kaufmann,1997.

[2] 李丹.基于相互贝叶斯方法的中文文本分类研究[D].保定:河北大学,2011.

[3] 薛永大.网页分类技术研究综述[J].电脑知识与技术,2012,8(25):5958-5961.

[4] 陈涛,谢阳群.文本分类中的特征降维方法综述[J].情报学报.2005.12,24(6):690-695.

[5] 张运良,张全.基于句类向量空间模型的自动文本分类研究[J].计算机工程,2007,33(22):45-47.

[6] 苏金树,张博锋.基于机器学习的文本分类技术研究进展[J].软件学报,2006(17):1848-1859.

[7] McCALLUM A,NIGAM K.A comparison of event models for Naive Bayes text classification[M].Proceedings of AAAI-98 Workshop on learning for Text Categorization,1998.

[8] http://www.cs.waikato.ac.nz/ml/index.html[OL].2013-11-30.

[9] Hwee Tou Ng,Wei Boon Goh,and Kok Leong Low.Feature selection,perceptron learning,and a usability case study for text categorization[C].In:Proceedings of the 20th ACM International Conference on Research and Development in Information Retrieval(SIGIR-97),1997.67-73.

[10] 彭时名.中文文本分类中特征提取算法研究[D].重庆:重庆大学,2006.

猜你喜欢
词条特征选择贝叶斯
贝叶斯公式及其应用
Kmeans 应用与特征选择
2016年4月中国直销网络热门词条榜
2016年3月中国直销网络热门词条榜
基于贝叶斯估计的轨道占用识别方法
2016年9月中国直销网络热门词条榜
联合互信息水下目标特征选择算法
一种基于贝叶斯压缩感知的说话人识别方法
大数据相关词条
IIRCT下负二项分布参数多变点的贝叶斯估计