基于Web的文本分类挖掘的研究.docx
- 文档编号:24804282
- 上传时间:2023-06-01
- 格式:DOCX
- 页数:31
- 大小:252.84KB
基于Web的文本分类挖掘的研究.docx
《基于Web的文本分类挖掘的研究.docx》由会员分享,可在线阅读,更多相关《基于Web的文本分类挖掘的研究.docx(31页珍藏版)》请在冰豆网上搜索。
基于Web的文本分类挖掘的研究
论文编码:
TP181
首都师范大学学士学位论文
基于Web的文本分类挖掘的研究
院系信息工程学院
专业计算机科学与技术系
年级2001
学号1011000047
指导老师刘丽珍
论文作者王雪
完成日期2005年6月6日
中文提要
文本分类最初是应文本信息检索的要求出现的,但是随着文本数据的激增,传统的研究方法己经不适合大规模文本分类,文本数据挖掘应运而生。
作为文本数据挖掘的一个重要功能,文本分类技术日益成为研究热点。
文本分类目的是对文本集有序组织,便于文本信息高效管理,为人的决策提供支持。
但是传统的人工分类的做法存在许多弊端,不仅是耗费大量人力、物和精力,而且受人为因素影响较大,分类结果一致性不高。
与之相比,文本自动分类具有快速、高效的特点,且分类准确率较高。
对文本分类技术进行研究,介绍文本分类的基本过程,论述文本特征提取方法,讨论朴素贝叶斯、K近邻、支持向量机、投票等常用的文本分类原理与方法,探讨中文文本分类技术。
采用支持向量机技术,设计并实现了一个开放的中文文档自动分类系统。
实验表明,它不仅具有较高的训练效率,同时能得到很高的分类准确率和查全率。
关键词:
文本挖掘文本分类支持向量机向量空间模型
外文提要
Textcategorizationappearsinitiallyfortextinformationretrievalsystem;howevertextdataincreasessofastthattraditionalresearchmethodshavebeenimproperforlarge-scaletextcategorization.Sotextdataminingemerges,andtextcategorizationbecomesmoreandmoreimportantasamajorresearchfieldofit.
Thepurposeoftextcategorizationistoorganizetextbyorder,soastomanagetextinformationefficientlyandsupportdecisionsofhumanbeing.Howevercategorizationbyhandnotonlyconsumesplentyofmanpower,materialresourcesandenergy,butalsomakescategorizationaccuracyinconsistent.Comparedwithcategorizationbyhand,automatictextcategorizationclassifiestextsfasteranditscategorizationaccuracyrateshigher.
Introducesthetechniquesoftextcategorization,includingitsbasicprocess,thealgorithmsoftextfeatureextraction,thetheoriesandtechnologiessuchasNaïvebayes,KNN,SVM,Votedandsoon.Chinesetextclassificationisdiscussed.
AnopenChinesedocumentclassificationsystemusingsupportisdesignedandimplemented.
Theexperimentshowsthatitnotonlyimprovestrainingefficiency,butalsohasgoodprecisionandrecall.
Keyword
textminingTextcategorizationSupportVectorMachine(SVM)
vectorspacemodel
目录
中文提要1
外文提要2
目录3
第一章绪论4
1.1 文本自动分类研究的背景和意义4
1.2 问题的描述6
1.3 国内外文本自动分类研究动态6
第二章中文文本分类技术研究8
2.1 文本预处理8
2.1.1 文本半结构化8
2.1.2 自动分词8
2.1.3 特征选择[12]8
2.2 分类模型9
2.2.1 贝叶斯(NaiveBayes)方法[14]9
2.2.2 K-近邻(KNN)方法9
2.2.3 决策树(DecisionTree)分类10
2.2.4 基于投票的方法10
2.2.5 支持向量机(SVM)方法[17]11
2.3 分类性能评价11
第三章基于支持向量机的中文文本分类12
3.1统计学习理论12
3.2 支持向量机原理14
3.3 支持向量机的特点16
第四章 基于支持向量机的中文文本分类器的实现17
4.1系统体系结构17
4.1.1文本训练模块设计18
4.1.2文本分类模块设计18
第五章系统的性能测试19
5.1 开发环境和数据集19
5.2 测试结果及分析19
第六章总结与展望21
6.1 全文总结21
6.2 进一步工作及展望21
附录(附图)22
参考文献25
致谢27
第一章绪论
1.1 文本自动分类研究的背景和意义
分类最初是应信息检索(InformationRetrieval,简称IR)系统的要求而出现的,也是数据挖掘应用领域的重要技术之一[1].随着全球计算机与通讯技术的飞速发展、互联网的普及与应用,信息爆炸的现实使人们越来越注重对自动分类的研究,文本自动分类及其相关技术的研究也日益成为一项研究热点。
信息检索系统必须操纵大量的文本数据,其文本信息库可能相当庞大。
如何在海量文本信息中获取潜在的、有价值的知识,模型或规则,这就需要引入文本数据挖掘概念。
数据挖掘是从大量的文本数据中提取出事先未知的、可理解的、可应用的信息和知识的过程。
数据挖掘融合了数据库、人工智能、机器学习、统计学等多个领域的理论和技术,能够对将来的趋势和行为进行预测,从而很好地支持人们的决策。
文本数据挖掘(TextualDataMining),亦称文本挖掘(TextualMining),或者从文本数据库中发现知识,以文本数据为特定挖掘对象的数据挖掘,是数据挖掘的扩展。
文本挖掘抽取有效、新颖、有用、可理解的、散布在文本文件中的有价值知识,并且利用这些知识更好地组织信息的过程。
1998年底,国家重点研究发展规划首批实施项目中明确指出,文本挖掘是“图像、语言、自然语言理解与知识挖掘”中的重要内容。
文本挖掘利用智能算法,如神经网络、基于案例的推理、可能性推理等,并结合文字处理技术,分析大量的非结构化文本源(如文档、电子表格、客户电子邮件、问题查询、网页等),抽取或标记关键字概念、文字间的关系,并按照内容对文档进行分类,获取有用的知识和信息。
从目前文本挖掘技术的研究和应用状况来看,从语义的角度来实现文本挖掘的很多,目前研究和应用最多的几种文本挖掘技术有:
文档聚类、文档分类和摘要抽取[2]。
(1)文档聚类
首先,文档聚类可以发现与某文档相似的一批文档,帮助知识工作者发现相关知识;其次,文档聚类可以将一个文档聚类成若干个类,提供一种组织文档集合的方法;再次,文档聚类还可以生成分类器以对文档进行分类。
文本挖掘中的聚类可用于:
提供大规模文档集内容的总括;识别隐藏的文档间的相似度;减轻浏览相关、相似信息的过程。
聚类方法通常有:
层次聚类法、平面划分法、简单贝叶斯聚类法、K-最近邻参照聚类法、分级聚类法、基于概念的文本聚类等。
(2)文档分类
分类和聚类的区别在于:
分类是基于已有的分类体系表的,而聚类则没有分类表,只是基于文档之间的相似度。
由于分类体系表一般比较准确、科学地反映了某一个领域的划分情况,所以在信息系统中使用分类的方法,能够让用户手工遍历一个等级分类体系来找到自己需要的信息,达到发现知识的目的,这对于用户刚开始接触一个领域想了解其中的情况,或者用户不能够准确地表达自己的信息需求时特别有用。
传统搜索引擎中目录式搜索引擎属于分类的范畴,但是许多目录式搜索引擎都采用人工分类的方法,不仅工作量巨大,而且准确度不高,大大限制了起作用的发挥。
另外,用户在检索时往往能得到成千上万篇文档,这让他们在决定哪些是与自己需求相关时会遇到麻烦,如果系统能够将检索结果分门别类地呈现给用户,则显然会减少用户分析检索结果的工作量,这是自动分类的另一个重要应用。
文档自动分类一般采用统计方法[3][4][5][6][7][8]或神经网络[9][10][11]以及机器学习来实现。
常用的方法有:
简单贝叶斯分类法,K-最近邻参照分类算法以及支持向量机分类方法等。
(3)自动文摘
互联网上的文本信息、机构内部的文档及数据库的内容都在成指数级的速度增长,用户在检索信息的时候,可以得到成千上万篇的返回结果,其中许多是与其信息需求无关或关系不大的,如果要剔除这些文档,则必须阅读完全文,这要求用户付出很多劳动,而且效果不好。
自动文摘能够生成简短的关于文档内容的指示性信息,将文档的主要内容呈现给用户,以决定是否要阅读文档的原文,这样能够节省大量的浏览时间。
简单地说自动文摘就是利用计算机自动地从原始文档中提取全面准确地反映该文档中心内容的简单连贯的短文。
自动文摘具有以下特点:
1)自动文摘应能将原文的主题思想或中心内容自动提取出来。
2)文摘应具有概况性、客观性、可理解性和可读性。
3)可适用于任意领域。
按照生成文摘的句子来源,自动文摘方法可以分成两类,一类是完全使用原文中的句子来生成文摘,另一类是可以自动生成句子来表达文档的内容。
后者的功能更强大,但在实现的时候,自动生成句子是一个比较复杂的问题,经常出现产生的新句子不能被理解的情况,因此目前大多用的是抽取生成法。
利用文本挖掘技术处理大量的文本数据,无疑将给企业带来巨大的商业价值。
因此,目前对于文本挖掘的需求非常强烈,文本挖掘技术应用前景广阔。
1.2 问题的描述
文本分类的映射规则是系统根据已经掌握的每类若干样本的数据信息,总结出分类的规律性而建立的判别公式和判别规则。
然后在遇到新文本时,根据总结出的判别规则,确定文本相关的类别。
自动分类的一般做法是,根据文本数据集的特点构造一个分类器,利用分类器对未知类别的文本赋予类别。
构造分类器的过程一般分为训练和测试两个步骤。
在训练阶段,分析训练数据集的特点,为每一个类别产生一个相应数据集的准确描述或者模型。
在测试阶段,利用类别的描述或者模型对测试集合进行分类,测试其分类的准确度。
一般来说,测试阶段的代价远远低于训练阶段。
文本数据的来源多种多样,可以是报告、单据、新闻、邮件等。
文本的类别和数量可以是预订好的,这需要相关专家知识;也可以是不确定的,要经过文本的自组织、聚类后才能得到。
需要预先定义类别体系的文本分类为有指导的学习(supervisedlearning)的分类,也称文本自动分类:
类别体系不确定的文本分类为无指导的(unsupervisedlearning)的分类,也称文本自动聚类(Clustering)。
自动聚类系统不需要训练文本,划分出的文本类别也是不确定的。
1.3 国内外文本自动分类研究动态
国外对于文本自动分类的研究开始较早,50年代末,H.P.huhn在这一领域进行了开创性的研究,提出了词频统计思想用于自动分类。
1960年,Maron发表了关于自动分类的第一篇论文。
随后众多学者在这一领域进行了卓有成效的研究工作,到目前为止,国外的自动分类研究己经从最初的可行性基础研究经历的实验性研究进入到了实用阶段,并在邮件分类、电子会议、信息过滤方面取得了比较广泛的应用,其中比较成功的例子有麻省理工学院为白宫开发的邮件分类系统、卡内基集团为路透社开发的Construe系统等。
国内对于文本自动分类的研究起步比较晚,1981年,侯汉清教授对于计算机在文本分类工作中的应用作了探讨,并介绍了国外计算机管理分类表、计算机分类检索、计算机自动分类、计算机编制分类表等方面的概况。
此后,我国陆续研究出一批计算机辅助分类系统和自动分类系统。
例如,广东省中山图书馆的莫少强开发的计算机辅助图书分类系统(C-ABC)、清华大学吴军研制的自动分类系统、山西大学刘开瑛等人开发的金融自动分类系统、东北大学图书馆的图书馆分类专家系统,上海交通大学王永成等研制的基于神经网络优化算法的中文文本自动分类系统。
近期研究中比较突出的是中科院的中文文本智多星分类器,它采用多种分类方法。
虽然中英文之间存在较大差异,无法直接参照国外的研究成果,但是,随着中文信息处理技术特别是中文自动分词技术的日渐成熟,以此为基础的中文文本分类技术的研究得到了飞速发展,在短短20多年中完成了从可行性探索到实用化阶段的转变。
根据分类知识的获取方法不同,可将文本分类系统划分为两种类型:
一个是基知识工程的分类系统,一个基于机器学习分类系统。
基于知识工程的方法主要依赖语言学知识,一般由知识库和推理机两大基础部分组成。
知识库储存了从专家那里获得的关于某领域的专门知识,推理机具有推理的能力,即根据知识推导出结论,而不仅仅是简单搜索现成的答案。
由于需要由知识工程师手工编制大量的推理规则作为分类知识,实现相当复杂,因此开发费用相当昂贵。
一个典型例子是卡内基集团为路透社开发的Construe系统。
该系统的开发工作量达到了10个人年。
由此可见,知识工程的方法不适用较为复杂的系统。
基于机器学习方法,研究从观测样本出发,寻找规律(即利用一些做好标识的训练数据自动地构造分类器),利用这些对未来样本进行预测。
现有机器学习的重要理论基础之一是统计学。
传统统计学研究的是样本数目趋于无穷大时的渐近理论,现有学习方法也多是基于大数定律的结论。
一般情况下,用户对分类要求的准确程度在95%以上,但是因为分类词表和分词算法的不足、分类法的不足、分类算法的不足以及知识库的规模不够大等原因,目前的自动分类系统的准确率主要在80%左右,只有限制在一定的范围内,这些系统才能取得相对好一些的效果,通用的、能够满足大规模商品化应用要求的系统还需要进一步的研究。
第二章中文文本分类技术研究
2.1 文本预处理
2.1.1 文本半结构化
文本数据与常见的结构化关系数据不同,它是非结构化的,没有属性一值对的结构,称为无结构或者半结构化数据。
对于非结构化的文本数据进行挖掘,目前有两种处理途径:
一是采用全新的算法,直接对非结构化文本数据进行挖掘;二是将非结构化文本数据进行转化,将其转化为结构化文本数据,再进行挖掘。
由于直接构造新算法难度较大,而且开发造价高,实现难度较大,所以目前通常采用人工处理的方法,把非结构化的文本数据转化为结构化的文本数据。
2.1.2 自动分词
自动分词是针对与中文的一种自然语言处理技术。
西方语言体系中,句子中各个词汇之间有固定的空格作为分隔,计算机处理时可以非常容易地从文本中识别出一个一个的单词。
而在汉语体系中,书写以句子为单位,句间用标点隔开,句内字词则是连续排列的,之间没有任何分隔。
因此,如果要对中文文本进行分类、检索等基于词的处理,需要首先对中文文本进行词条切分处理(简称分词),才能正确识别每个词。
中文文本的分词处理就是指在中文文本中连续的能够代表语义单元的词或者n一元词条间加入分隔符,将中文文本的连续字节流形式转化为离散单词流形式的过程。
自动分词技术是各种中文信息处理技术的基础,也是中西文研究文本自动分类的主要差别所在,中文文本分类要在自动分词的基础上进行,对中文文本进行分词的过程也是文本特征集的确定过程。
2.1.3 特征选择[12]
它是指去除不能表示信息的词,以提高分类效率和减少计算复杂度。
特征选择有以下几种方法:
1根据词的文档频度(DF)来判断:
当词的DF小于或者大于某个阈值时都要去掉;2根据信息增益(IG)来判断:
信息增益是指词为整个分类所能提供的信息量,当信息增益小于某个预定的值时,就要去掉这个词;3根据χ2统计来判断:
χ2越大,词和类之间的独立性越小,相关性越大,所以去掉χ2小的词;4根据互信息(MI)来判断:
互信息越大,两个词之间的共现性就越大;5根据词的强度(TS)来判断。
通过试验证明,前三种更加有效。
特征选择可以在两个方面提高系统性能:
一是分类速度,通过特征选择,可以大大减少特征集合中的特征数,降低文本向量的特征数,提高系统运行速度。
二是准确度,通过适当的特征选择,不但不会降低系统准确性,反而会使统精确度提高[13]
2.2 分类模型
2.2.1 贝叶斯(NaiveBayes)方法[14]
朴素贝叶斯分类器利用下列贝叶斯公式通过类别的先验概率和词的分布来计算未知文本属于某一类别的概率:
P(Cj∣D)=
其中,P(Cj∣D)为样本D属于类Cj的概率,P(D∣Cj)为类Cj中含有样本D的概率。
在所有P(Cj∣D)(j=1,2,…,m)中,若P(CK∣D)值最大,则文本D归为CK类。
由于P(D)是常数,因此将要求解P(Cj∣D)的问题转换为只要求解P(Cj)P(D∣Cj)。
假设文本中词的分布是条件独立的,则P(Cj∣D)=P(Cj)P(D∣Cj).
其中,P(Cj)=
;P(di∣Cj)=
尽管词的分布是条件独立的这个假设在实际文本中是不成立的,但在实际应用中NP分类器一般都能取得相对较好的结果。
从理论上讲,贝叶斯分类的出错率最小,就试验结果来看,朴素贝叶斯在大型的数据集上表现出来难得的速度和准确度。
[15]
2.2.2 K-近邻(KNN)方法
KNN方法是一种基于实例的文本分类方法。
首先,对于一个待分类文本,计算它与训练样本集中每个文本的文本相似度,根据文本相似度找出K个最相似的训练文本。
这最相似的K个文本按其和待分类文本的相似度高低对类别予以加权平均,从而预测待分类文本的类别。
其中最重要的是参数K的选择,K过小,不能充分体现待分类文本的特点;而K过大,会造成噪声增加而导致分类效果降低。
文本向量D属于类别Ci的权值W(Ci∣D)由下式计算,权值越高,认为文本向量D属于类别Ci的概率越高:
W(Ci∣D)=
其中,S(D,Dj)是向量之间的余弦相似度;D1~Dk是训练集中与D余弦相似度最大的K个文本向量;而P(Ci∣Dj)当Dj属于类别Ci时为1,否则为0。
通过上面的分析可知,KNN的实质就是以特征属性权值作为特征空间的坐标系测度,先计算测试集与训练集之间在该坐标系中的余弦距离,然后根据测试集与训练集的距离远近来确定类别。
显然,它没有考虑特征属性关联及共现等因素对文本相似度的影响,如果加以恰当地考虑,KNN的效果会更好。
KNN[16]是一种懒散的方法,即它没有学习过程,只是存放所有的训练例,直到接到未知文本的时候刁建立分类。
KNN的训练过程较快,而且可以随时添加或更新训练例来调整。
但因为需要很大的空间来保存训练例,因此其分类的开销会很大。
2.2.3 决策树(DecisionTree)分类
决策树是一种常用数据分类技术,同样适用于文本分类。
决策树的核心算法是一种贪心算法,它以自顶向下的方式在训练集的基础上构造决策树,之后取未知文本的属性在决策树上测试,路径由根结点到叶结点,从而得到该文本的所属类别。
决策树的建立算法有多种,其中包括:
基于信息增益的启发式算法ID3;基于信息增益率的解决连续属性分类的算法C4.5;基于Gini数的算法CART;针对大样本集的可伸缩算法SLIQ;可并行化算法SPRINT;将建树和剪枝集成到一起的算法PBULIC。
他们的区别在于构造决策树与树枝剪除的算法细节不同。
决策树可以很好的抵抗噪声。
最大的缺点在于不适应大规模的数据集,此种情况下决策树的构造会变得效率低下。
2.2.4 基于投票的方法
在研究多分类器组合时提出了投票算法,其核心思想是:
n个专家判断的有效组合应该优于某个专家个人的判断。
投票算法主要有两种:
Bagging算法和Boosting算法。
1)Bagging算法。
训练R个分类器=f.i,i=1,2,…,R分类器之间只是参数不同。
其中fi是通过从训练集(N篇文档)中随机取(取后放回)N次文档构成的训练集合训练得到的。
对于新文档D,用这R个分类器去分类,得到的最多的那个类别作为D的最终类别。
2)Boosting算法。
类似Bagging算法,但分类器的组合方式是级联的,前一级分类器为后一级分类器提供分类信息,指导下一级分类器的训练和分类过程。
下面介绍一种Boosting算法AdaBoosting。
R次循环,每次循环训练K个分类器。
设第r次循环中类标签为Ck的样本Di权重为P.ikr,所有权重的
初始值都是相等的。
每一次循环,AdaBoost算法估计K个分类器fr(D,k),k=1,2,…,K,并对分类错误的样本加大权重。
fr(D,k)反映训练样本Di的类标签是否是Ck,而它的大小被认为是衡量预测的信度。
用以下公式来更新权重:
pik(r+1)=pikrexp(-yikfr(Di,k))
如果Ck是样本Di的可能类标签中的一个,那么yik=1,否则yik=-1,。
将权重重整,使得
pik(r+1)=1。
这个过程循环R次之后,得到R*K个fr(D,K)。
然后用这所有的分类器对样本集D进行分类,D的最终分类器f˙(D,K)为:
f˙(D,k)=
2.2.5 支持向量机(SVM)方法[17]
支持向量机(SVM)是一种建立在统计学习理论基础上的机器学习方法。
通过学习,SVM可以自动寻找那些对分类有较好区分能力的支持向量,由此
构造出的分类器可以最大化类之间的间隔,因而有较好的推广性能和较高
的分类精确率。
SVM已被用于文本分类、孤立的手写体识别、语音识
别、人脸识别、三维物体识别、遥感图像分析等。
2.3 分类性能评价
文本分类效果可以从准确率、查全率、遗漏率、正确率、错误率五个方面评估。
假设:
a表示判为C类且确实属于C类的文本数目;
b表示判为C类且但实际不属于C类的文本数目;
c表示判为非C类且确实不属于C类的文本数目;
d表示判为非C类且但实际上却属于C类的文本数目;
a+d表示实际属于C类的文本数目:
b+c表示实际不属于C类的文本数目;
可以定义:
准确率=a/(a+b)
查全率=a/(a+d)
遗漏率=b/(b+c)
正确率=(a+c)/n,n=a+b+c+d
错误率=(b+d)/n,n=a+b+c+d
因为文本分类从根本上说是一个映射过程,所以评估文本分类系统的标志是映射的准确程度和映射的速度。
所以,文本分类系统的最重要的两个指标是:
准确率(precise)和查全率(recall)。
准确率和查全率反映了分类质量的两个不同方面,两者必须综合考虑,不可偏废,因此,存在一种新的评估指标,F1测试值,其数学公式如下:
F1测试值=
另外有微平均和宏平均两种计算准确率、查全率和F1测试值的方法。
微平均:
计算每一类的准确率、查全率和F1测试值。
宏平均:
计算全部类的准确率、查全率和F1测试值
第三章基于支持向量机的中文文本分类
3.1统计学习理论
机器学习的目的是根据给定的训练样本求对
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Web 文本 分类 挖掘 研究