基于特征二维信息增益加权的朴素贝叶斯文本分类方法
技术领域
本发明属于机器学习及自然语言处理领域,尤其是涉及基于特征二维信息增益加权的朴素贝叶斯文本分类方法。
背景技术
随着互联网不断发展,文本信息及其多样化的不断增加,对于文本分类任务(TextClassification)也提出了更高的要求。朴素贝叶斯算法就是在贝叶斯理论的基础上增加一个特征独立性假设,即所有特征之间相互独立,对于文本分类效果互不影响。在已知文本所含特征之后,根据特征的条件概率和类别的先验概率得到特征所属类别的后验概率,通过比较后验概率的大小从而达到分类的效果。由于传统朴素贝叶斯的特征独立性假设,导致各特征的权重其实是相同的,为了削弱传统朴素贝叶斯算法特征独立性假设,许多文献开始采用加权朴素贝叶斯文本分类算法。由于不同的特征对于分类效果的影响也是不同的,通过对不同的特征采用加权算法赋予不同的权值,从而达到削弱特征独立性假设的效果。文献[Salton G,Buckley C.Term-weighting approaches in automatic textretrieval[M].Pergamon Press,Inc.1988.]中首次提出了TFIDF算法,并论证了TFIDF算法在文本分类中的有效性。文献[张玉芳,陈小莉,熊忠阳.基于信息增益的特征词权重调整算法研究[J].计算机工程与应用,2007,43(35):159-161.]通过把TFIDF算法与特征信息增益IGC相结合得到了TFIDF*IGC算法,削弱了特征与类别之间的无关性,一定程度上提高了文本分类精度。文献[李学明,李海瑞,薛亮,等.基于信息增益与信息熵的TFIDF算法[J].计算机工程,2012,38(8):37-40.]将特征的信息增益和信息熵共同融合在TFIDF算法中,进一步削弱了特征与类别之间的无关性,说明了特征加权算法在文本分类中的有效性。文献[武建军,李昌兵.基于互信息的加权朴素贝叶斯文本分类算法[J].计算机系统应用,2017,26(7):178-182.]使用互信息对不同类别中的特征项进行分别赋值,一定程度上削弱了假设对分类效果的影响。然而这些改进只是针对一个方面,忽略了特征的属性是二维的。
发明内容
本发明所要解决的技术问题是克服现有技术的缺陷和不足,提供基于特征二维信息增益加权的朴素贝叶斯文本分类方法。本发明方法是在传统朴素贝叶斯算法的基础上增加特征提取优化算法,使传统朴素贝叶斯算法的特征独立性假设得到抑制,进而提升文本分类性能。该方法旨在为传统朴素贝叶斯算法提供一种削弱独立性假设的方法,为文本分类任务提供准确和快速的分类方法。
为解决上述技术问题,本发明所采用的技术方案是:
基于特征二维信息增益加权的朴素贝叶斯文本分类方法,所述方法包括如下步骤:
步骤A,根据贝叶斯定理计算得到后验概率P(Cj|Di):
式中,P(Cj)表示类别Cj出现的概率,Cj表示第j个类别;
Di={t1,t2...tm}表示文档Di所包含的特征词,m表示特征词数量,i为自然数;
P(Di)=P(t1,t2...tm)表示各特征词的联合分布概率,是一个常数;
P(Di|Cj)为文档Di属于类别Cj的概率;
所述朴素贝叶斯文本分类就是求解P(Cj|Di)最大值,根据特征独立性假设,求解转化为:
式中,tk∈{t1,t2...tm}表示文档Di包含的特征词,1≤k≤m;
C={C1,C2,...,Cj,...,CV},j表示自然数,V表示总的类别数;
表示最终的分类结果,其值等于P(C
j|D
i)的最大值;
P(tk|Cj)表示特征词tk属于类别Cj的概率;
步骤B,计算特征类别概率:
tf(tk,Cj)表示特征词tk在Cj类中的出现的频数;
L=0.01为平滑因子;
步骤C,计算特征文档概率:
因为特征词tk会在多篇文档中出现,所以式中,
L=0.01为平滑因子,V表示总的类别数;
其中,lb(·)表示以2为底的对数;
E(Cj)为类别Cj的信息熵;
E(Cj|tk)表示特征词tk的类别条件信息熵;
P(t
k,C
j),
分别为上文求出的特征类别概率和特征文档概率;
步骤F,进行线性归一化处理,得到特征二维信息增益:
其中max(·)表示求表达式的最大值;
min(·)表示求表达式的最小值;
IGD,IGC分别为上文所求出的特征类别信息增益和特征文档信息增益;
步骤G,对朴素贝叶斯模型进行加权,得到加权朴素贝叶斯模型:
其中,Wk表示对应特征词tk的加权值,作为条件概率的幂次方;由于大多数的概率都很小,为了避免出现下溢,对决策规则取对数:
其中ln表示自然对数;
步骤H,将特征二维信息增益与加权朴素贝叶斯模型结合,得到基于特征二维信息增益加权的朴素贝叶斯文本分类方法的模型:
本发明的有益效果是:本发明提供基于特征二维信息增益加权的朴素贝叶斯文本分类方法。所述方法获取文档的特征词,根据不同的特征词出现的类别数和文档数得到相应的特征类别概率和特征文档概率,进而得到特征的二维信息增益;由于信息增益具有反应特征对分类效果提升大小的作用,信息增益越大说明该特征越能表达该类的信息,把特征的二维信息相结合,本发明继承了信息增益的这一优点,提高了朴素贝叶斯文本分类器的性能;并且与TFIDF加权朴素贝叶斯文本分类算法,TFIDF*IGC文本分类算法相比,基于特征二维信息增益加权的朴素贝叶斯文本分类方法具有更好的鲁棒性,使其对所有类别的分类效果都能保持很好;在同等条件下,本发明的分类性能要优于传统改进的朴素贝叶斯文本分类方法。
具体实施方式
下面结合仿真结果,对本发明提出的基于特征二维信息增益加权的朴素贝叶斯文本分类方法进行详细说明:
基于特征二维信息增益加权的朴素贝叶斯文本分类方法,其实施过程如下:
根据贝叶斯定理计算得到后验概率:
式中,P(Cj)表示类别Cj出现的概率;
Di={t1,t2...tm}表示文档Di所包含的特征词,m表示特征数量,i为自然数;
P(Di)=P(t1,t2...tm)表示各特征词的联合分布概率,是一个常数;
P(Di|Cj)为文档Di属于Cj类的概率;
P(Cj|Di)为所求的后验概率,其中,Cj表示第j个类别;
所述朴素贝叶斯文本分类就是求解P(Cj|Di)最大值,根据特征独立性假设,求解转化为:
式中,tk∈{t1,t2...tm}表示文档Di包含的特征词,1≤k≤m;
C={C1,C2,...,Cj,...,CV},j表示自然数,V表示总的类别数;
表示最终的分类结果,其值等于P(C
j|D
i)的最大值;
P(tk|Cj)表示特征词tk属于类别Cj的概率;
计算特征类别概率:
其中,tk表示文档中出现过的特征词;
tf(tk,Cj)表示特征词tk在Cj类中的出现的频数;
L=0.01为平滑因子,V表示总的类别数。
计算特征文档概率:
L=0.01为平滑因子,V表示总的类别数;
其中,lb(·)表示以2为底的对数;
P(Cj)表示类别Cj出现的概率;E(Cj)为类别Cj的信息熵;
E(Cj|tk)表示特征词tk的类别条件信息熵;
P(t
k,C
j),
分别为上文求出的特征类别概率和特征文档概率;进行线性归一化处理得到特征二维信息增益:
其中max(·)表示求表达式的最大值;
min(·)表示求表达式的最小值;
IGD,IGC分别为上文所求出的特征类别信息增益和特征文档信息增益;对朴素贝叶斯模型进行加权,得到加权朴素贝叶斯模型:
其中Wk表示对应特征词tk的加权值,作为条件概率的幂次方;
由于大多数的概率都很小,为了避免出现下溢,对决策规则取对数:
其中ln表示自然对数。
将特征二维信息增益与加权朴素贝叶斯模型结合得到基于特征二维信息增益加权的朴素贝叶斯文本分类方法的模型:
其中,P(Cj),P(tk|Cj),WIGDC分别为上文求出的类别Cj出现的概率,特征词tk属于类别Cj的概率,特征二维信息增益。
结合仿真结果:
表1为各特征词分布情况。
表2为本发明基于特征二维信息增益加权算法与TFIDF算法以及TFIDF*IGC算法的加权结果比较,TFIDF为传统的词频反文档频率加权算法,TFIDF*IGC为基于类别信息增益的词频反文档频率加权算法,IGDC(Information of Documents and Categories)为基于特征二维信息增益加权算法。
表1特征词分布
表2特征加权算法结果比较
根据表1中给出的特征词的分布情况计算得到表2中的数据。从表2的计算结果看出,由于TFIDF算法因为针对的是整个训练集中的特征,所以词频越大的特征被分配的权重越大,导致结果与实际情况截然相反。TFIDF*IGC算法考虑了特征词与类别间的关系,所以权重分配合理,但因为仍然与反文档频率相结合导致t1与t3的权重拉不开差距,这种时候会影响到分类效果,相比之下IGDC算法不仅让没有分类能力的特征词t2权重消零,而且让t1与t3的权重拉开了差距,因此让每个特征起到决定分类的作用,说明了本发明基于特征二维信息增益加权的朴素贝叶斯文本分类方法的优越性,同时与朴素贝叶斯分类算法相结合应用于文本分类中,经过仿真得到表3的数据。
表3文本分类算法测试结果比较
表3为基于特征二维信息增益加权的朴素贝叶斯文本分类方法与基于传统的TFIDF特征加的权朴素贝叶斯文本分类方法和基于TFIDF*IGC特征加权的朴素贝叶斯文本分类方法的查准率(P),召回率(R),F1值的三个指标的结果对比。
当特征数量取500时,与TFIDF*IGC特征加权的朴素贝叶斯文本分类方法相比,三个指标都提高2%到3%;与TFIDF特征加权的朴素贝叶斯文本分类方法相比三个指标都提高3%到5%,这充分证明了基于特征二维信息增益加权的朴素贝叶斯文本分类方法的有效性。实验同时验证了当特征数量从500增加到1000时,基于特征二维信息增益加权的朴素贝叶斯分类方法在进行文本分类时的宏F1值都高于其他两个方法。