APP下载

基于朴素贝叶斯的Web文本分类及其应用

2017-03-06包小兵

电脑知识与技术 2016年30期
关键词:文本分类数据挖掘

摘要:Web文本分类在网络信息过滤、信息推荐等方面有广泛的应用。介绍了Web文本分类的基本理论与方法,结合贝叶斯分类算法,对文本分类语料库的数据进行具体的分类实验并进行分析讨论,取得了一定的效果。

关键词:数据挖掘;朴素贝叶斯;文本分类

中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2016)30-0220-02

Web Text Classification and its Application Based on Na?ve Bayesian

BAO Xiao-bing

(Chizhou College Department of Mathematics and Computer Science,Chizhou 247000,China)

Abstract:Web text classification has been widely used in network information filtering, information recommendation and so on.Introduces the basic theory and method of Web text classification,The data of the text classification corpus are classified and analyzed with Bayesian classification algorithm,Achieved a certain effect.

Keywords:Data mining; Na?ve Bayesian;Text classification

隨着计算机以及互联网技术的快速发展,对于拥有海量数据的网络世界,蕴含着巨大潜在价值的知识,人们迫切需要从这些海量的数据中获取有用的知识和信息,希望能对这些海量的数据进行自动分类、组织和管理。而这些知识有很多是以Web文本的形式存在的,如何自动、准确、高效地进行Web文本分类是文本挖掘的重要的研究内容之一。

信息检索被认为是Web文本挖掘的前身,但是位于Internet上的信息,一方面规模巨大,并且缺乏结构化,对于这些非结构化或半结构化的复杂的Web数据,在做文本分类之前,还需要对获取的文本进行特征提取和表示,然后再使用文本分类技术进行快速、自动的分类。

本文主要分析和讨论了基于朴素贝叶斯(Na?ve Bayesian)方法的Web文本分类的相关理论,并使用中文自然语言理解平台[1]上的文本分类语料库,进行具体的实验分析。

1 Web文本分类方法

1.1 Web文本分类概述

文本分类是在预定义的分类体系下,根据文本的特征,将给定文本归类的过程,而文本的特征涉及对文本的理解,因此涉及众多的学科领域。Sebastiani用下面的数学模型描述文本分类。

定义函数[Φ:D×C→{T,F}],其中[D={d1,d1,…,dD}]表示待分类的文本文档,[C={c1,c1,…,cC}]为预定义分类体系下的指标集。设[T]和[F]值表示为二元组[],分别表示文本[dj]属于类[ci]和文本[dj]不属于类[ci]。在文本分类中涉及两个最重要的问题:文本表示与分类器设计。那么对于来自网络的Web文本分类系统可以简单地表示为图1。

1.2 Web文本表示

Web文本和其他文本类似,由文字、词语和标点符号组成,要使用计算机来表示文本,首先需要选择一种好的表示方式,并且要求该表示方法能尽可能准确地反映文本的主题、内容和结构等。

当前比较常见的表示方法是由G.Salton等人于60年代末提出的向量空间模型(VSM)。在VSM中,用由特征二元组组成的特征向量表示文本[dj],记为[dj=(t1,ω1j),(t2,ω2j),…,(ts,ωsj)],其中[(tk,ωkj),1≤k≤s]表示特征[tk]的二元组,[ωkj]表示文本[dj]中特征[tk]的权重,[s]为特征集合的大小。那么对文本的比较、分类等操作就可以转换成特征向量组间的操作,使问题变得简单且易于实现。

1.3 Web文本特征选择及特征权重计算方法

使用VSM模型对Web文本进行文本表示,得到的特征向量维数一般会非常高,为提高性能,需要对特征向量进行特征选择以降维,那么面临的问题是,应该选择哪些特征,以及应该赋予这些特征多大的权重,以希望经约简的特征向量更好地体现文本的内容、主题等?当前比较常见的方法有:信息增益(IG)、卡方、文档频度(DF)、互信息(MI)、特征强度(TS)等。本文主要使用文档频度的方法进行讨论,该方法是最基本且最简单的一种方法,统计在多个文档中出现特征[tk]的次数,次数越多的特征被认为越关键,故被保留。

文本特征权重的计算方法常见的有布尔权值、绝对词频(TF)、倒排文档频度(IDF)、TF.IDF权值、熵权值等,本文使用绝对词频[tfij]衡量文本特征权重。

对于Web文本,在文本表示之前,需要对文本进行分词。分词之后的文本词表中包含很多对文本特征表示无意义的词,还需要对其进行约简,去除虚词、数量词等不能体现文本特征的词。而对于重复出现的词,会有两种情况:一种是通用的名词、动词,不具特征性,应去掉;第二种是恰好能反映文本的特征的词,应该保留,并且统计记录其频数,用VSM模型进行表示。然后再使用文本特征选择及特征权重计算方法对建立的VSM模型进行优化,得到结构化的数据,为下一步分类做好准备。

2 贝叶斯分类算法基本理论

贝叶斯分类算法是基于统计学的方法,可以预测类成员关系的可能性。实践表明贝叶斯分类算法有非常高的准确率并且计算速度较快。贝叶斯分类算法基于概率论中的著名的贝叶斯定理[2]。

定理1设样本空间[S],[n]个互斥事件成为[S]的一个划分:[S=A1,A2,…,An],[AiAj=0,i≠j],[X]是[S]中任意一个事件,则有:

[P(AiX)=P(XAi)P(Ai)P(X)]

设[D]是训练元组集(包含类标号),其中的元组用[n]维向量[X=x1,x2,…,xn]表示,属性集记为[DA=A1,A2,…,An]。设有[J]个类[C1,C2,…,CJ],根据贝叶斯定理,分类算法将预测给定元组[X]属于的类。分别计算后验概率[P(CiX)],找到最大值,其中先验概率[P(Ci)]通过学习训练元组得到,考虑到[P(X|Ci)]的计算是复杂并且开销非常大的,故做了类条件独立的朴素假设,即是

该分类算法被称为朴素贝叶斯分类[3](NBC)。

2.1 Web文本分类数据的预处理

为实验的方便,使用中文自然语言理解平台[1]由复旦大学提供的文本分类语料库,包含有财经、科技、教育、电脑、房产、人才、汽车、体育、卫生、娱乐10个类别共951个文本。对所有的951个文本的每个文本分词,分别生成相应的文本词表,如图2所示。

然后进行去词约简,去除虚词、数量词等不能体现特征的词,去除那些不具有特征性但却重复出现的通用的名词、动词,记录反映文本特征的词及词频,每个文本可以表示成一条VSM模型元组,最终所有的文本处理完成后生成一个矩阵,称为词频矩阵,最后一列加上类属性,本实验词频矩阵是[951×13353],如表1所示。再进行降维处理,最终的词频矩阵部分如表2所示。

3 应用实验

3.1 Web文本分类

为使用贝叶斯算法对文本分类,首先对词频矩阵进行离散化处理,离散化规则如表3所示。

最后,对表2的词频矩阵[D951×252]進行数据离散化处理的结果如表4所示。

实验的硬件平台:Pentium E2160 1.8GHz处理器,1G内存;开发环境:Visual Studio 2005,使用盘古分词[4]的C#开源代码。使用朴素贝叶斯算法进行学习、分类,实验结果如表5所示。

实验表明,对非训练数据的分类准确性不高,这说明该数据集的高稀疏性会使所构建的分类器的泛化能力还不够好,还有待提高。

4 结论

针对来自网络的Web本文,使用基于朴素贝叶斯的分类算法对其进行自动分类,本文做了如下工作:1)概述了Web文本分类的相关方法以及贝叶斯分类理论;2)通过具体的实验,给出了Web文本分类的详细过程,包括分词、约简、降维、训练、分类等,实验结果较好;3)针对高维稀疏数据的非训练数据分类效果还不够理想,还有待进一步研究。

参考文献:

[1] 中文自然语言理解平台[DB/OL].http://www.nlp.org.cn/

[2] 李贤平.概率论基础[M].北京:高等教育出版社,1997.

[3] Jiawei Han,Micheline Kamber.数据挖掘概念与技术[M].范明,孟小峰译.北京:机械工业出版社,2007:201-206.

[4] 盘古分词开源代码[CP/OL].http://pangusegment.codeplex.com。

[5] 郑庆华,刘均,田锋,等.web知识挖掘:理论、方法与应用[M].2010:3-5.

[6] 包小兵,翟素兰,程兰兰.基于信息熵加权的局部离群点检测算法[J].计算机技术与发展,2012(7).

[7] 邵昌昇,楼巍,严利民.高维数据中的相似性度量算法的改进[J].计算机技术与发展,2011,21(2).

猜你喜欢

文本分类数据挖掘
基于并行计算的大数据挖掘在电网中的应用
基于组合分类算法的源代码注释质量评估方法
一种基于Hadoop的大数据挖掘云服务及应用
数据挖掘的分析与探索
基于GPGPU的离散数据挖掘研究