数据挖掘与知识发现(讲稿12 - 文本挖掘)

更新时间:2023-09-15 07:56:01 阅读量: 资格考试认证 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

第12章 文本数据挖掘与Web挖掘技术

第1节 文本挖掘概述

1.1 文本挖掘的出现

在现实世界中,我们面对的数据大都是文本数据,这些数据是由各种数据源(如新闻文章、研究论文、书籍、数字图书馆、电子邮件和Web页面等)的大量文档组成。所以,随着文档信息量的飞速增长,文本数据的数据量也急剧地增长。

文本数据是所谓的半结构化数据(Semi-Structure Data),它既不是完全无结构的也不是完全结构化的。如,文档可能包含结构字段,比如:标题、作者、出版日期、长度、分类等,也可能包含大量的非结构化的文本,如摘要和内容。

文本挖掘(Text Mining),国外有人称之为文本数据挖掘(Text Data Mining)和文本分析(Text Analysis)。文本挖掘一词大约出现于1998年4月在欧洲举行的第十届机器学习会议上,组织者 Kodratoff明确地定义了文本挖掘的概念,并分清它与“信息检索”的不同点和共同点。Kodratoff认为,文本挖掘的目的是从文档集合中搜寻知识,并不试图改进自然语言理解,并不要求对自然语言的理解达到多高水平,而只是想利用该领域的成果,试图在一定的理解水平上尽可能多地提取知识。因此,文本挖掘需要数据挖掘、语言学、数据库以及文本标引和理解方面的专家参与。

我国于1998年在国家重点基础研究发展规划(“973计划”)首批实施项目中,包括了文本挖掘的内容。 1.2 文本挖掘的基本概念 1、概念

文本挖掘是一个从大量文本数据中提取以前未知的、可理解的、可操作的知识的过程。文本数据包括:技术报告、文档集、新闻、电子邮件、网页、用户手册等。

文本挖掘对单个文档或文档集(如,Web搜索中返回的结果集)进行分析,从中提取概念,并按照指定的方案组织、概括文档,发现文档集中重要的主题。它除了从文本中提取关键词外,还要提取事实、作者的意图、期望和主张等。这

1

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

些知识对许多,如市场营销、趋势分析、需求处理等,都是很有用的。 2、任务

主要任务有: (1)

文本标引和短语提取,即在读取大量的非结构化文本时,应用自然语言处理技术提取文本,集中所有相关的短语。提取时要处理同义词和词义模糊现象。可以形象地把文本挖掘看作是一支荧光笔,它通读文本时高亮度显示有关的短语,这些短语放在一起就可以得到对文本的一个较好的理解。

(2)

概念提取(聚类),即对这些短语之间的关系,建立一个“词汇网”;将相关短语分组,并增强这些组中最重要的特征;最后得到的模式反映了该文本集中的主要概念。然后,通过提取出的概念集发现未知的知识。

(3)

可视化显示和导航。对挖掘得来的信息(词频、相关概率、时事性话题、地域依赖信息、时间序列等),可以从多个视角出发进行分析。

3、文本挖掘与数据挖掘

相似点在于:两者都处理大量的数据,都有归属到知识管理的知识发现领域中。

差别在于:许多经典的数据挖掘算法,如数值预测、决策树等都不太适用于文本挖掘,因为它们依赖于结构化的数据。而像概念关系分析等工作则是文本挖掘所独有的,如表所示。

研究对象 对象结构 目标 方法 成熟度 文本挖掘与数据挖掘的区别 数据挖掘 文本挖掘 用数字表示的、结构化的数据 无结构或者半结构化的文本 关系数据库 自由开放的文本 抽取知识,预测以后的状态 检索相关信息,提取意义,分类 归纳学习、决策树、神经网络、标引、概念抽取、粗糙集、遗传算法等 语言学、本体 从1994年开始得到了广泛应用 从2000年开始得到了应用 1.3 文本挖掘与信息检索

信息检索是文本挖掘相关的一个概念,但它与文本挖掘又是不同的两个概念。 信息检索是指从大量的文档集合C中,找到与给定的查询请求q相关的、恰当

2

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

数目的文档子集S的过程。区别主要表现在如下几个方面:

(1)方法论不同

信息检索是目标驱动的,用户需要明确提出查询要求;而文本挖掘结果独立于用户的信息需求,是用户所无法预知的。

(2)着眼点不同

信息检索着重于文档中字与词和链接;而文本挖掘在于理解文本的内容和结构。 (3)目的不同

信息检索的目的在于帮助用户发现资源,即从大量的文本中找到满足其查询请求的文本子集;而文本挖掘是为了揭示文本中隐含的知识。

(4)评价方法不同

信息检索用查准率(Precision, 检索到的文档中的相关文档占全部检索到的文档的百分比)和查全率(Recall, 即被检索出的文档中的相关文档占全部相关文档的百分比)来评价其性能,要求尽可能多的检索出相关文档,同时不相关的文档尽可能少。而文本挖掘采用收益(Gain)、置信度(Certainty)、简洁性(Simplicity)等来衡量所发现知识的有效性、可用性和可理解性。

(5)使用场合不同

有时信息检索系统返回太多的结果以致用户无法一一浏览,有时用户没有明确的信息需求,有时用户希望发现文档集合中所具有的结构、趋势、含义,在这些场合下,就需要使用挖掘技术。

尽管文本挖掘是比信息检索层次更高的技术,但它并不是用来取代信息检索技术的,二者是相辅相成的。一方面,这两种技术各有所长,有各自适用的场合;另一方面,可以利用文本挖掘的研究成果来提高信息检索的精度和效率,改善检索结果的组织,使信息检索系统发展到一个新的水平。

第2节 文本特征表示与提取

2.1 文本特征的表示

与数据库中的结构化数据相比,文档具有有限的结构,或者根本就没有结构。即使具有一些结构,也是着重于格式,而非文档内容。不同类型的文档结构也不一致。

3

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

此外,文档的内容是人类所使用的自然语言,计算机很难处理其语义。文本信息源的这些特殊性使得现有的数据挖掘技术无法直接应用于其上。这就需要对文本进行预处理,抽取其特征的元数据。这些特征可以用结构化的形式保存,作为文档的中间表示形式。

文本的特征指的是关于文本的元数据,分为:

(1) 描述性特征,如文本的名称、日期、大小、类型等; (2) 语义性特征,如文本的作者、机构、标题、内容等;

一般,描述性特征易于获得,而语义性特征则较难得到。W3C(中国万维网联盟)近年来制定的XML(Extensible Markup Language, 可扩展标记语言)、RDF(Resource Description Framework, 一种用于描述Web资源的标记语言)等规范提供了对文档资源进行描述的语言和框架。在此基础上,可以从半结构化的文档中抽取作者、机构等特征。对于内容这个难以表示的特征,首先要找到一种能够被计算机所处理的表示方法。

矢量空间模型(VSM)是近年来应用较多且效果较好的表示文本特征的方法。在该模型中,文档空间被看作是由一组正交词条矢量所张成的矢量空间,每个文档d表示为其中的一个范化特征矢量:

V(d)?(t1,w1(d);?;ti,wi(d);?;tn,wn(d))

其中,ti为词条项,wi(d)为ti在d中的权值。ti可以是d中出现的所有单词,也可以是d中出现的所有短条,从而提高内容特征表示的准确性。wi(d)一般被定义为ti在d中出现的频率ft(d)的函数,即wi(d)??(ft(d))。常用的?有:

ii (1)布尔函数

??1?????0fti(d)?0fti(d)?0

(2)平方根函数

??(3)对数函数

ft(d)?1) ??log(ifti(d)

(4)TFIDF函数

??ft(d)?log()

iNni

4

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

其中,N为所有文档的数目,ni为含有词条ti的文档数目。 2.2 文本的特征提取

特征提取主要是识别文本中代表其特征的词项。提取过程是自动的,提取的特征大部分是文本集中表示的概念。

文本特征分为一般特征和数字特征,其中一般特征主要包括动词和名词短语,如人名、组织名等;数字特征主要包括日期、时间、货币以及单纯数字信息。这些特征包含重要的信息,因此特征提取是一种强有力的文本挖掘技术。通过文本的特征抽取,记录文本的特征,可以更好地组织文本,如文本的存储、检索、过滤、分类和摘要等。

中文姓名识别属于中文信息处理中未登录词处理的范畴,中文姓名在文章中的出现频率虽然不高,但绝非可以忽略,因为中文姓名本身包含着重要的信息,它可能是整个句子甚至整个段落的语义中心,如果不予处理,将影响文本挖掘的性能。数字特征反映一定的信息,但不能表达文本的中心思想,通常只作为文本挖掘中的参考信息。姓名特征提取算法所提取的姓名特征,作为文本内容的特征表示。

构成文本的词汇,通常数量很大,因此表示文本的向量空间的维数也相当大,可以达到几万维,需要压缩维数。

为了提高分类精度,对于每一类,应去除那些表现力不强的词汇,筛选出针对该类的特征项集合。目前,存在多种筛选特征项的算法,如根据词和类别的互信息量判断、根据词熵判断、根据KL距离判断等。

比如,根据词和类别的互信息量进行特征项抽取的判断标准,其算法过程如下: (1) 初始情况下,该特征项集合包含所有该类中出现的词; (2) 对于每个词,计算词和类别的互信息量

P(W|Cj)) log(P(W)|D|1??N(W,di?1|V||D|i)其中,P(W|Cj)?;P(W|Cj)为W在Cj类中出现的

s|V|???N(W,di)s?1i?1N(W,di)为词W在文本di中的词频;比重;|D|为该类的训练样本数;|V||V||D|为总词汇;??N(Ws,di)为该类所有词的词频和;P(W)为词W在所有

s?1i?1训练样本中的比重。

5

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

的用户是无用的。虽然这看起来不是很明显,但一个人只是关心Web上很小很小一部分信息确是事实,Web所包含的其余信息对用户来说是不感兴趣的,而且会淹没所希望得到的搜索结果。

6、异构的数据环境

Web页面的复杂性远比任何传统的文本文档复杂得多。Web上的每一个站点就是一个数据源,每个数据源都是异构的,各自的信息和组织不一样,构成了一个巨大的异构数据环境。如果想要利用这些数据进行数据挖掘,必须要解决站点之间异构数据的集成问题。

4.2自适应网站技术

为了更好地满足人性化访问地要求,必须做进一步基于网站自身的挖掘。因而提出了基于Web日志的数据挖掘的自适应网站技术。

所谓自适应网站是指:对于特定的网站和特定的用户,通过学习访问者或用户的访问模式自动改善其组织和信息描述方式的网站。

由于挖掘是基于用户的浏览行为而不是用户输入的数据,从而消除了描述的差异,适用于个性化服务。其优点是适用范围广,不需要用户参与,不涉及隐私,数据真实。其缺点是数据的杂质特性,在区分使用者、会话、识别会话的终结点方面存在着许多困难。

自适应网站建立的主要目的是消除网站设计者假设的用户兴趣和网站使用者兴趣的差别。网站设计者在设计时总是基于某些用户为什么及怎样访问网站的假设,并据此规划网站,然而使用者的需要往往与设计者假设的用户需要并不相同。此时设计者与使用者之间就存在着一条“兴趣沟”,而自适应Web数据挖掘可以很好的消除这条“沟”。自适应的周期要经历4个阶段,数据准备、数据挖掘、数据分析、网站改进。整个过程是不断循环不断完善的。

在以上的自适应Web数据挖掘中有一个重要的基础就是数据的准确性;必须有准确的数据才能每次都正确地反映使用者的意图,从而可以使分析沿着正确的方向进行。由于日志记录和HTTP协议的自身原因,日志数据是杂乱的,还原的信息可能包含错误信息,因此对日志信息进行准确的预处理是非常关键的。

4.3 Web数据挖掘的研究热点

当前,数据挖掘研究正方兴未艾,尤其是对基于Web的数据挖掘的研究,研究热点可能会集中到以下几个方面:

11

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

(1)研究专门的数据挖掘语言,使其像SQL语言一样走向形式化和标准化。 (2)寻求数据挖掘过程中的可视化方法,使知识发现的过程能够被用户理解 ,也便于在知识发现过程中能够方便地进行人-机交互。

(3)研究在网络环境下的数据挖掘技术,特别是在Internet上与数据库服务器配合,实现数据挖掘。

(4)加强对各种非结构化数据的挖掘,如文本数据、图形图像数据、多媒体数据。 但是,无论怎样,需求牵引和市场驱动是永恒的,数据挖掘技术(尤其是基于Web的数据挖掘技术)将首先满足信息时代用户的急需,大量基于数据挖掘的决策支持软件工具产品不久将会问世。

4.4 Web挖掘分类

一般将Web挖掘定义为:从WWW的资源和行为中抽取感兴趣的、有用的模式和隐含的信息。

一般地,Web挖掘可分为3类:Web内容挖掘(Web Content Mining)、Web结构挖掘(Web Structure Mining)和Web使用记录挖掘(Web Usage Mining)。

下图是Web挖掘的分类图:

1、Web内容挖掘

Web内容挖掘是从文档内容或文档描述中抽取知识的过程。Web文档内容的挖掘,基于概念索引的资源发现,以及基于代理的技术都属于这一类。 Web内容挖掘有两种策略:

(1) 直接挖掘文档的内容;

(2) 在工具搜索的基础上进行改进。

采用第1种策略的有:针对Web的查询语言Weblog、WebOQL等,利用启发式规则来寻找个人主页信息的Ahoy等等。

采用第2种策略的方法,主要是对搜索引擎的查询结果进行进一步的处理,得到

12

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

更为精确和有用的信息。属于该类的有WebSQL,及对搜索引擎的返回结果进行聚类的技术等。 2、Web结构挖掘

Web结构挖掘是从WWW的组织结构和链接关系中挖掘知识。由于文档之间的互连,WWW能够提供除文档内容之外的有用信息。利用这些信息,可以对页面进行排序,发现重要的页面。这方面工作的代表有PageRank和CLEVER。此外,在多层次Web数据仓库中,也利用了页面的链接结构。 3、Web使用记录挖掘

Web使用记录挖掘的主要目标则是从Web的访问记录中抽取感兴趣的模式。WWW中的每个服务器都保留了访问日志(Web access log),记录了关于用户访问和交互的信息。分析这些数据可以帮助理解用户的行为,从而改进站点的结构,或为用户提供个性化的服务。

这方面的研究主要有两个方向:一般访问模式的追踪和个性化使用记录的追踪。

一般访问模式的追踪通过分析使用记录来了解用户的访问模式和倾向,以改进站点的组织结构;而个性化使用记录的追踪则倾向于分析单个用户的偏好,其目的是根据不同用户的访问模式,为每个用户提供定制的站点。

4.6 Web数据挖掘的用途

到一个站点的所有访问者都会留下浏览的踪迹,这些信息自动存储在Web服务器的日志文件中。Web分析工具通过分析和处理Web服务器的日志文件来生成有意义的信息。例如有多少人访问了该页面,他们从哪来,哪些页面最受欢迎等。当前经济模式的变化,从传统实体的商店到Internet上的电子交易,同时也改变了销售商和顾客的关系。现在网上顾客的流动性很大,他们关注的主要因素是商品的价值,而不像以前注意品牌和地理因素。因此,电子销售商一个主要挑战是,如何确定顾客的爱好、兴趣和价值取向,以保证在电子时代的竞争力。数据挖掘是用来发现不明显的、有潜在价值的数据。Web上数据挖掘的潜力在于应用存在的和最新的数据挖掘算法,分析Internet服务器上的日志以及顾客、销售和产品的外部数据。

就电子商务而言,Web数据挖掘有以下三个方面的益处: (1)理解顾客行为:

1 通过理解访问者的动态行为来优化电子商务网站的经营模式;

13

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

2 电子销售商可以获知访问者的个人爱好; 3 决定网站上由访问者到购买者的转化率;

4 决定顾客的回头率(顾客第二次购买同一品牌的概率); 5 发现顾客的购买模式和访问者的浏览模式; 6 发现什么样的顾客群在网站上购买什么商品; 7 发现电子商务网站上顾客之间的联系。 (2)判断Web站点的效率:

1 发现站点上的高购买率部分和低购买率部分;

2 Web设计者不再依靠专家的定性指导来设计网站,而是根据访问者的

信息来修改和设计网站的结构和外观;

3 电子销售商可以根据不同的客户提供个性化服务。 (3)评估电子商务模式的成功与否:

1 容易将用户按模式分类; 2 容易评测广告的投资回报率; 3 容易得到可靠的市场回馈信息。

4.7 XML与Web数据挖掘技术

以XML为基础的新一代WWW环境是直接面对Web数据的,不仅可以很好地兼容原有的Web应用,而且可以更好地实现Web中的信息共享与交换。XML可看作一种半结构化的数据模型,可以很容易地将XML的文档描述与关系数据库中的属性一一对应起来,实施精确地查询与模型抽取。

1. XML的产生与发展

XML(eXtensible Markup Language)是由万维网协会(W3C)设计,特别为Web应用服务的SGML(Standard General Markup Language)的一个重要分支。总的来说,XML是一种中间标记语言(Meta-markup Language),可提供描述结构化资料的格式,是一种类似于HTML,被设计用来描述数据的语言。XML提供了一种独立的运行程序的方法来共享数据,它是用来自动描述信息的一种新的标准语言。

XML由若干规则组成,这些规则可用于创建标记语言,并能用一种被称为分析程序的简明程序处理所有新创建的标记语言,正如HTML为第一个计算机用户阅读Internet文档提供一种显示方式一样,XML也创建了一种任何人都能读出和写入的世界语。XML解决了HTML不能解决的两个Web问题,即Internet发展速度快而接入速度慢的问题,以及可利用的信息多,但难以找到自己需要的那部分信息的问题。XML能

14

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊

增加结构和语义信息,可使计算机和服务器即时处理多种形式的信息。因此,运用XML的扩展功能不仅能从Web服务器下载大量的信息,还能大大减少网络业务量。

XML中的标志(TAG)是没有预先定义的,使用者必须要自定义需要的标志,XML是能够进行自解释(Self Describing)的语言。XML使用DTD(Document Type Definition文档类型定义)来显示这些数据,XSL(eXtensible Style Sheet Language)是一种来描述这些文档如何显示的机制,它是XML的样式表描述语言。XSL的历史比HTML用的CSS(层叠式样式表Cascading Style Sheets)还要悠久,XSL包括两部分:一个用来转换XML文档的方法;一个用来格式化XML文档的方法。XLL(eXtensible Link Language)是XML连接语言,它提供XML中的连接,与HTML中的类似,但功能更强大。使用XLL,可以多方向连接,且连接可以存在于对象层级,而不仅仅是页面层级。由于XML能够标记更多的信息,所以它就能使用户很轻松地找到他们需要的信息。利用XML,Web设计人员不仅能创建文字和图形,而且还能构建文档类型定义的多层次、相互依存的系统、数据树、元数据、超链接结构和样式表。

2. XML的特点

正是XML的特点决定了其卓越的性能表现。XML作为一种标记语言,有许多特点:

(1)简单。XML经过精心设计,整个规范简单明了,它由若干规则组成,这些规则可用于创建标记语言,并能用一种常常称为分析程序的简明程序处理所有新创建的标记语言。XML能创建一种任何人都能读出和写入的世界语,这种创建世界语的功能叫做统一性功能。如XML创建的标记总是成对出现,以及依靠称为统一代码的新的编码标准。

(2)开放。XML是SGML在市场上有许多成熟的软件可用来帮助编写、管理等,开放式标准XML的基础是经过验证的标准技术,并针对网络做最佳化。众多业界顶尖公司,与W3C的工作群组并肩合作,协助确保交互作业性,支持各式系统和浏览器上的开发人员、作者和使用者,以及改进XML标准。XML解释器可以使用编程的方法来载入一个XML的文档,当这个文档被载入以后,用户就可以通过XML文件对象模型来获取和操纵整个文档的信息,加快了网络运行速度。

(3)高效且可扩充。支持复用文档片断,使用者可以发明和使用自己的标签,也可与他人共享,可延伸性大,在XML中,可以定义无限量的一组标注。XML提供了一个标示结构化资料的架构。一个XML组件可以宣告与其相关的资料为零售价、营业税、书名、数量或其它任何数据元素。随着世界范围内的许多机构逐渐采用XML标准,

15

本文来源:https://www.bwwdw.com/article/v1vh.html

Top