文本分类概述教学教材.docx
- 文档编号:15444792
- 上传时间:2023-07-04
- 格式:DOCX
- 页数:34
- 大小:187.75KB
文本分类概述教学教材.docx
《文本分类概述教学教材.docx》由会员分享,可在线阅读,更多相关《文本分类概述教学教材.docx(34页珍藏版)》请在冰点文库上搜索。
文本分类概述教学教材
文本分类概述
第一章绪论
1.1研究背景
当今的时代,是一个信息技术飞速发展的时代。
随着信息技术的飞速发展,科学知识也在短时间内发生了急剧的、爆炸性的增长。
据1998年的资料显示[1],70年代以来,全世界每年出版图书50万种,每一分钟就有一种新书出版。
80年代每年全世界发表的科学论文大约500万篇,平均每天发表包含新知识的论文为1.3万-1.4万篇;登记的发明创造专利每年超过30万件,平均每天有800-900件专利问世。
近二十年来,每年形成的文献资料的页数,美国约1,750亿页。
另据联合国教科文组织所隶属的“世界科学技术情报系统”曾做的统计显示,科学知识每年的增长率,60年代以来已从9.5%增长到10.6%,到80年代每年增长率达12.5%。
据说,一位化学家每周阅读40小时,光是浏览世界上一年内发表的有关化学方面的论文和著作就要读48年。
而2005年的资料显示[2],进入20世纪后全世界图书品种平均20年增加一倍,册数增加两倍。
期刊出版物,平均10年增加一倍。
科技文献年均增长率估计为13%,其中某些学科的文献量每10年左右翻一番,尖端科技文献的增长则更快,约2-3年翻一番。
同时,伴随着Internet的迅猛发展,网站和网页数也在迅速增长,大约每年翻一番。
据估计,目前全世界网页数已高达2000亿,而Google宣称其已索引250亿网页。
在我国,中国互联网络信息中心从2001年起每年都对中文网页总数作统计调查,统计结果显示,中文网页总数已由2001年4月30日的159,460,056个发展到2005年12月31日的24亿个,增长之快可见一斑[3,4]。
从这些统计数字可以看出,我们被淹没在一个多么浩大的信息海洋里!
然而信息的极大丰富并没有提高人们对知识的吸收能力,面对如此浩瀚的信息,人们越来越感觉无法快速找到需要的知识。
这就是所谓的“信息是丰富的,知识是贫乏的”。
如何在这样一个巨大的信息海洋中更加有效的发现和使用信息以及如何利用这个信息宝库为人们提供更高质量和智能化的信息服务,一直是当前信息科学和技术领域面临的一大挑战。
尽管用户对图像、音频和视频等信息资源的需求也在急剧增加,但文本仍然是最主要的非结构化和半结构化的信息资源。
针对目前的出版物和网络信息大部分都以文本形式存在的状况,自动文本分类技术作为处理和组织大量文本数据的关键技术,受到了广泛的关注。
1.2文本分类的定义
1.2.1文本分类的定义
文本分类是指依据文本语义内容将未知类别的文本归类到已知类别体系中的过程。
文本分类有多个英文名称,如TextCategorization[5]、TextClassification[6]、DocumentCategorization[7]、DocumentClassification[8]以及TopicSpotting[9]等,现在比较常用的为TextCategorization(TC)。
文本分类的形式化定义如下,假设有一个文本集合D={d1,…,d|D|}和一个预先定义的类别集合C={c1,…,c|C|},二者之间的真实关系可由以下函数表示[5]:
(1-1)
于是,自动文本分类问题可以转化为找到函数
的近似表示
:
(1-2)
使得
尽量逼近未知的真实函数
。
此处的函数
称为文本分类器,力求真实反映文档和类别的关系,以便尽可能对未知类别的文本进行正确分类。
文本分类根据分类算法的不同,可以分为两类分类算法和多类分类算法。
所谓两类分类算法是指算法本质上只能进行两类分类,即只能判别文档属于两类中的某一类,如支持向量机算法;而多类分类算法是指算法可以同时对多个类别进行操作,即同时判别文档属于多类中的某一类或某几类,如KNN算法。
两类分类算法应用于多类分类问题时,通常需要将一个多类分类问题转化为若干个两类分类问题来解决。
具体转化方法将在本文第二章详细论述。
另外,文本分类根据文档所属类别是否单一还可以分为单标号分类(Single-labelTextCategorization)问题和多标号分类(MultilabelTextCategorization)问题。
所谓单标号分类指文档的类别体系没有重合,一篇文档属于且只属于一个类别,而多标号分类是指文档的类别体系有重合,一篇文档可以属于多个不同的类别。
1.2.2自动文本分类过程
现代自动文本分类技术涉及到人工智能、机器学习、模式识别和统计理论等多个学科,自动文本分类的过程实际上也是机器学习和模式识别的过程。
图1-1为基本的分类过程。
图1-1自动文本分类模型
如其他机器学习问题一样,文本分类也包括训练和测试两个模块。
训练模块由预处理、文本表示、特征选择(FeatureSelection)、分类器(Classifier)和性能评价五个部分组成:
1.预处理
负责对训练集中的文本进行去除停用词、词干化(Stemming)、分词、统计等操作,并对文本进行去噪处理。
此处对中英文分别采取不同的处理,英文使用空格进行分词[1,10],而中文则需要根据语义进行分词[11-15]或采用N-gram法进行分词[16,17]。
2.文本表示
把文本表示成分类算法可以识别的形式。
最常用的统计模型是由Salton等人提出的向量空间模型[18],在此模型中,文档dj被表示成向量的形式,
,
表示训练集中出现过的特征集合。
3.特征降维
在文本表示阶段使用的特征集合的数目通常非常巨大,并常含有大量对分类没有贡献甚至具有相反作用的噪声特征。
使用如此巨大的特征量会大大影响分类速度,因而需要通过特征降维减少特征数目,以提高训练和分类的速度与精度。
特征选择后需要根据新的特征子集对文本重新进行表示。
4.分类器
使用各种机器学习和模式识别算法对训练集进行学习,确定算法的各参数值,生成分类器。
5.性能评价
评价分类器对训练集的分类结果,如果性能达不到要求,返回特征选择阶段重新选择特征。
分类模块由预处理、文本表示和分类器三个部分组成:
1.预处理
功能作用和训练模块中的预处理相同。
2.文本表示
与训练模块的第一个文本表示有所不同,此处的文本表示使用的特征空间为经过特征选择后的特征空间。
3.分类器
使用训练完成的分类器对文本分类,输出最终分类结果。
至此,完成了整个文本分类过程。
除了预处理部分与语种密切相关外,其余部分均独立于语种。
文本分类是一个应用性很强的技术,分类器的实现需要建立在一个高质量的训练集基础上,不同的应用领域有截然不同的训练集。
为了评测文本分类技术的优劣,人们建立了一些标准语料库,常用的英文语料库有Reuters[19]、20_newsgroups[20]、OHSUMED[21]等。
目前还没有标准的中文语料库,较多使用的有复旦大学语料库[22]、北京大学天网语料库[23]等。
为了避免产生过分适合的现象,语料库通常包含两个互不相交的训练集和测试集。
所谓过分适合指的是用训练集来测试分类器,产生较好的分类性能,但是用别的文本进行分类时发生分类性能急剧下降的情况。
1.3文本分类的发展历史
文本分类最早可以追溯到20世纪60年代[5,24,25],在这之前主要是采用手工分类的方法。
进入60年代后,Maron发表了具有里程碑作用的论文“Automaticindexing:
Anexperimentalinquiry”,采用贝叶斯公式进行文本分类,大大推进了文本分类工作。
在该文中,Maron还假设特征间是相互独立的,这就是后来被广泛采用的“贝叶斯假设”。
在随后的二十多年,主要是采用知识工程(KnowledgeEngineering,KE)的方法进行文本分类[26],它通过在专家知识基础上手工建立一系列分类规则来构建分类器。
知识工程方法需要大量领域的专家和工程师参与,势必耗费很多人力物力,当电子文档急剧增长时将无法满足需求。
这种方法最典型的应用实例为由CarnegieGroup开发的CONSTRUE系统[27],该系统用来对路透社的新闻稿件自动分类。
直到进入20世纪90年代,随着Internet的迅猛发展,为了能够更好地处理大量的电子文档,并且伴随着人工智能、机器学习、模式识别、统计理论等学科的发展,基于知识工程的文本分类方法渐渐退出了历史舞台,文本分类技术进入了更深入的自动分类时代。
由于基于机器学习的自动文本分类系统几乎可以达到与人类专家相当的正确度,但是却不需要任何知识工程师或领域专家的干预,节约了大量的人力,并且分类效率远远高于人类专家,因此机器学习方法在文本分类领域得到了深入的研究和广泛的应用,例如贝叶斯、最近邻、神经网络、支持向量机等。
1.4文本分类的应用领域
自动文本分类是对文本信息基于内容管理的基础,文本分类技术产生的初衷就是为信息管理服务,伴随着信息技术和内容的多元化发展,文本分类也得到了越来越广泛的应用,甚至涉及到通过语音识别和文本分类合成的方式对语音进行分类[46]以及通过分析文本标签对多媒体文本分类[47]等。
下面简要介绍文本分类的几种应用,这些应用之间的划分没有非常明确的界限,有时某个应用可能是另一个应用的特例。
1.4.1文本组织与管理
以科学论文为例,本文1.1节曾经提到,80年代仅科学论文一项每天就产生1.3万-1.4万篇,科学文献平均年增长率为13%,有些学科每10年翻一番,某些尖端学科2-3年翻一番。
从这些统计数据可以得出,到目前为止,科技论文每天约产生4万-5万篇,如果进行人工分类,那么如此庞大的数据量必将使得各领域的科学家付出巨大的劳动。
另外,科技论文对实时性的要求也很高,研究人员需要了解到本学科最新的研究现状,这就要求论文库能够及时动态更新。
所有这些情况都使得人工组织文本越来越成为不可能,此时就需要使用自动文本分类技术。
文本分类使得有序地按类别存储海量文件并及时作出更新成为可能。
另外,Internet已经成为人们生活中必不可少的一部分,人们已经习惯了坐在电脑前了解自己感兴趣的知识。
各大门户网站如新浪、雅虎、搜狐等都建有各自的层次化分类体系,对网页根据其内容进行分类,读者只需按类别层层找下去就可以浏览到各种信息。
目前各网站的分类都需要人工干预,如果采用自动文本分类技术,无疑将大大改善分类效率。
文本分类在数字化图书馆[48]、专利分类[49]、新闻文章自动归档和会议文章自动分组等方面都有成功应用。
1.4.2信息检索
毫无疑问,信息检索(InformationRetrieval)工具可以根据查询词返回相关信息,有效帮助了人们查找相关知识,如Goole、Baidu、Yahoo、Excite等搜索引擎。
但是,所有的搜索引擎都存在着相同的一个问题,返回结果并没有如用户期望的那样排列,并且包含了大量用户不感兴趣的网页,用户必须通过阅读这些网页滤除无用信息,这就降低了查询效率。
在信息检索领域引入文本分类技术,由用户选择查询类别,或者由搜索引擎给出分类存放的搜索结果,都可以提高查询效率,方便用户使用。
另外,针对信息资源库中各个不同类别,还可以建立各类别的专用搜索引擎,直接供仅对某个专题感兴趣的人使用。
1.4.3冗余文档过滤
信息检索不仅包含了大部分用户不感兴趣的类别,还包含了大量相同或相似的网页,在搜索结果较少时更是如此。
这些相同或相似的网页称为冗余文档,相同网页是指除了链接地址不同,内容完全相同的网页;相似文档是指内容只有少许不同的网页。
虽然各大搜索引擎都号称对相同和相似网页进行了过滤,但在搜索结果中包含大量相同或相似网页的情况还是经常出现。
利用文本分类技术对网页计算相似度,超过指定阈值的网页即可认为是冗余文档,在数据库中只保存一份。
NarayananShivakumar等对24,000,000个网页进行统计分析,发现有18%的网页有一个重复网页,5%的网页有10到100个重复网页,经过冗余检测后,可以把存储空间压缩22%[50]。
为了提高检测效率,计算网页相似度之前,可以先对抓取到的网页进行预分类,然后再根据网页类别仅仅在该类别进行检测,这样不仅可以大大减少检测时间和计算复杂度。
1.4.4信息过滤
信息过滤(InformationFiltering)是指根据用户对信息的需求,对产生或到来的信息流进行动态地分类,保留对用户有用的信息,屏蔽无用信息。
信息过滤与信息检索如同一面硬币的两面[51]:
信息检索关心的是如何从信息源中找到符合用户需求的信息,可以形容为“人找信息”,用户为主动方,称之为“拉”(pull);信息过滤关心的是过滤系统如何把信息发送给感兴趣的用户,可以形容为“信息找人”,信息发布方为主动方,称之为“推”(push)。
信息过滤的一个典型应用如新闻推送服务,信息发布方为某个新闻社,用户为某种报纸[5,52]。
在这个例子中,过滤系统应该屏蔽掉所有用户不感兴趣的文档,例如对于体育报纸,应该屏蔽所有与运动无关的文档。
因此信息过滤可以看作是一个单标号分类问题,把所有到来的文本分为两个互不相交的类别:
相关文档和无关文档。
另外,过滤系统还可以进一步对相关文本按照各个主题进行分类,方便用户阅读。
在上一个例子中,与运动有关的文本还可以进一步按照运动类别分类。
同样,垃圾邮件过滤系统也可以丢弃垃圾邮件[53],并对非垃圾邮件根据用户兴趣进行分类。
过滤系统既可以安装在信息的发送端,此时系统基于信息内容仅发送给对该信息感兴趣的用户;也可以安装在信息的接收端,此时系统负责阻断用户不感兴趣的信息。
对于前一种情况,系统需要为每个用户建立一个档案[54],而在后一种情况下,系统只需建立一个用户档案。
文档过滤(DocumentFiltering)可以追溯到上世纪60年代有选择的信息分发技术(selectivedisseminationofinformation),当今数字信息的爆炸更加促进了这类技术的发展,如基于内容的垃圾邮件过滤、新闻组订阅等[5]。
1.4.5词义辨析
词义辨析(WordSenseDisambiguation)是指根据多义词所处上下文环境判断该词此时含义的活动[5]。
例如,英文英文单词“bank”至少有两个不同含义,在“theBankofEngland”中为“银行”,在“thebankofriverThames”中为“河岸”,在“Iborrowedsomemoneyfromthebank”中“bank”的含义就需要借助词义辨析来确定。
把单词所处上下文看作文本,把单词的各种不同含义看作不同类别,那么词义辨析问题就可以转化为一个文本分类问题。
显然,词义辨析属于单标号分类任务。
词义辨析只是解决自然语言歧义性时常见难题中的一个例子,也是计算语言学中最重要的一个难题。
还有很多机器翻译中的其他问题,比如基于上下文的拼写校对(Context-sensitivespellingcorrection)[57]、介词短语连接(PrepositionalPhraseAttachment)[58]、词性标注(Part-of-speechTagging)[59,60]等,也都可以通过借助文本文类技术来解决。
第二章文本分类的性能评估
2.1引言
由于自动文本分类技术在文本处理领域具有关键性作用和广泛的应用前景,因此得到了众多学者的高度重视。
随着人工智能、机器学习、模式识别和统计理论等领域技术的快速发展,涌现出了越来越多的文本分类方法。
但是,这些分类方法的性能如何,以及如何客观评估和比较这些分类方法,就成为了选择分类方法时无法忽视的问题。
分类器的评估是一个非常复杂的问题,目前还没有一个可以从理论上对单个分类器进行评估或对不同分类器进行比较的方法。
由于难以从理论上对分类器进行客观公正的评估,文本分类领域沿用了信息检索领域的评估办法,从仿真的实验结果来评估分类器的性能。
已有很多学者使用实验的方法对分类器进行了比较,并且研究者在说明某种分类算法的性能时也是用数据来表示。
分类器的性能评估有两个重要的作用,客观比较不同分类器仅仅是其中的一个方面,另一个重要作用是在训练过程中指导分类器的生成。
如图1.1中所示那样,分类器评估是训练过程中必不可少的一个模块,分类器的构建需要根据评估结果调整各参数,以使分类器性能达到最优。
如同任何一个其他领域的科学实验,文本分类的实验结果也受很多客观因素的影响,比如:
实验数据集的选定、文本的表示模型、特征选择的方法、分类算法的确定、各参数的选定、评估指标的确定以及实验数据的分析与处理等。
显然,不同分类器只有在诸多客观因素均一致的情形下才具有可比性。
许多学者基于Reuters、20_Newgroups、OHSUMED等标准数据集对一些分类算法进行了比较,结果就具有较高的可信度[29,81]。
另外,由于分类器对数据集的严重依赖性,依靠仿真实验得出的任何一种评估结果都只能作为一定的参考,在不同数据集上同一种分类方法可能会表现出截然不同的性能。
由此可见,文本分类的性能评估是文本分类领域的一个重要课题,针对不同的目的,评估侧重点也应有所不同。
2.2文本分类器的性能评估指标
从实验方面来看,文本分类器的性能主要表现在两个方面:
效率和效果。
所谓效率指的是分类器训练和分类的时间;所谓效果指的是分类器做出正确决定的能力。
具体到评估指标上,效率的评估指标是时间,即分类器训练的时间及单篇文本分类的时间;而效果的评估指标并不唯一,有多种类型,下面将重点进行讨论。
在目前的文本分类应用中,主要关心的是分类效果的度量,所以本文也将主要讨论分类效果的评估,本文其余部分若未特别指出,文本分类性能评估均指分类效果的评估。
文本分类有多个性能评估指标,常用的有查全率(Recall,r)、查准率(Precision,p)、正确率(Accuracy,acc)、错误率(Error,err)以及查全率与查准率的综合评价值
、11-点平均(Eleven-pointaverage,11-Ave)和平衡点(Breakevenpoint,BEP)等。
下面针对单标号分类器给出这些指标的定义及计算方法。
假设一个单标号文本分类器
、测试文本集合
和预先定义的类别集合
,D中每篇文档只属于一个类别,C中各类别两两之间互不相交。
分别由专家和分类器
来对全部测试文本判断类别,那么可建立如下的邻接表:
表2-1多类分类器列联表
专家判别
…
…
分类器判别
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
在表2-1中,
的含义如下:
(2-1)
其中,
表示原本属于类别
并被分类器正确判断为
的文档数目,
表示原本属于类别
但被分类器错误判断为
的文档数目。
根据表2-1,各指标定义及计算方法如下:
1.查全率(Recall,r)与查准率(Precision,p)
查全率定义为正确判别为该类的测试样本占该类总测试样本的比例,查准率定义为正确判别为该类的测试样本占判别为该类的测试样本的比例,那么类别
的查全率
和查准率
的计算公式如下[5]:
(2-2)
(2-3)
查全率与查准率来源于信息检索领域,是最为传统、也是使用最多的两个指标。
查全率和查准率从不同方面反映了分类系统的性能,查全率反映了分类的完备程度,即应该正确分类的文本中有多少被正确分类;查准率反映了分类的准确程度,即分类结果中有多少是正确的。
二者通常被一起使用,作为一对指标从不同侧面共同描述分类器性能。
2.
把查全率和查准率分开考虑没有任何意义,例如,100篇文档中有10篇属于类别
,假设训练了一个类别
的“接受分类器”,即所有文本均判为
,那么对于
来讲,查全率达到100%,但查准率只有10%。
于是,Rijsbergen提出了把二者综合考虑的指标
,类别
的
定义如下[108]:
(2-4)
其中,
,
是可调节参数,反映了
和
的相对重要程度。
当
时,
为查准率
;当
时,
为查全率
。
越小,越强调
的作用;
越大,越强调
的作用。
最为常用的是
值,此时
,认为
与
具有同等重要程度,计算公式如下:
(2-5)
3.11-点平均(11-pointaverage,11-Ave)
11-点平均也是一个常用的分类器综合评价指标[31,61],来源于信息检索领域。
11-点平均定义为调整分类器参数,使得查全率分别为0%,10%,…,90%,100%时相应的查准率的算术平均值。
4.平衡点(Breakevenpoint,BEP)
Break-even点是另外一个综合评价指标[39,62],指的是分类器查全率与查准率相等时的值,这是分类器的一种特殊情况,此时
。
有时通过实验可能得不到
和
相等的值,这时就取
和
最接近的值的平均值作为
,称为插值
。
5.宏平均(Macro-average)与微平均(Micro-average)
前面所述几个指标都是针对单个类别的局部性能进行评估的,对于一个多类分类器来讲,关心的是整体性能。
宏平均和微平均是计算全局性能的两种方法。
宏平均是指先计算各类别的性能指标,然后再求算术平均值,宏平均查全率(
)、宏平均查准率(
)及宏平均
(
)的定义如下:
(2-6)
(2-7)
(2-8)
微平均是指计算各个样本的分类性能,然后求算术平均值。
微平均查全率(
)、微平均查准率(
)及微平均
(
)的定义如下:
(2-9)
(2-10)
(2-11)
从微平均各指标的定义可以看出,如果在分类器中未引入拒识策略,则有
,此时
。
宏平均和微平均两种方式的结果可能相差很大,尤其是对于不均衡的测试集更是如此。
宏平均是按类别求平均,微平均是按样本求平均,故宏平均的结果受小类别影响较大,微平均的结果受大类别影响较大。
6.正确率(Accuracy,acc)与错误率(Error,err)
正确率与错误率也是两个衡量分类器整体性能的指标。
正确率定义为分类器正确分类的样本占所有测试样本的比例,错误率定义为分类器错误分类的样本占所有测试样本的比例,计算公式如下:
(2-12)
(2-13)
正确率与错误率来源于机器学习领域,由公式(2-9)可以看出,正确率与微平均查全率的值完全相等,只是物理意义不同罢了。
第三章文本表示
3.1引言
文本是一个由众多字符构成的字符串,人类在阅读文章后,可以根据自身的理解能力产生对文章的模糊认识,并对其进行分类。
但计算机并不能理解文章的内容,从根本上说,它只认识0和1,所以必须把文本转换为计算机或者说分类算法可以识别的形式。
文本表示方法的选择取决于文本中的语义单元以及把这些单元结合在一起的自然语言处理规则。
对文本中语义单元的研究属于词汇语义学的范畴,对各单元组合规则的研究属于组合语义学的范畴。
文本表示首先根据词汇语义学及组合语义学的相关知识对文本dj进行分割,把文本转化为由若干个语义单元组成的空间形式
,这就是在文本分类及信息检索领域广泛应用的向量空间模型(VectorSpaceModel,VSM),这些语义单元tk称为特征(term或feature)。
确定文本所用特征后,再计算各特征在文本中的权重(weight),文本dj被表示为特征向量的形式
,其中权重值wkj表示特征tk在文本dj中的重要程度,T表示特征空间的特征集。
向量空间模型是由Salton提出的[18],最早成功应用于信息检索领域,后来在文本分类领域也得到了成功应用。
Salt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 文本 分类 概述 教学 教材
![提示](https://static.bingdoc.com/images/bang_tan.gif)