1.Web挖掘概述
随着以数据库、数据仓库等数据仓储技术为基础的信息系统在各行各业的应用,使海量数据不断产生。随之而来的问题是如此多的数据让人难以消化,无法从表面上看出他们所蕴涵的有用信息,更不用说有效地指导进一步的工作。如何从大量的数据中找到真正有用的信息成为人们关注的焦点,数据挖掘技术也正是伴随着这种需求从研究走向应用。
近年来,随着Internet/Web技术的快速普及和迅猛发展,使各种信息可以以非常低的成本在网络上获得,由于Internet/WWW在全球互连互通,可以从中取得的数据量难以计算,而且Internet/WWW的发展趋势继续看好,特别是电子商务的蓬勃发展为网络应用提供了强大支持,如何在WWW这个全球最大的数据集合中发现有用信息无疑将成为数据挖掘研究的热点。
Web挖掘指使用数据挖掘技术在WWW数据中发现潜在的、有用的模式或信息。Web挖掘研究覆盖了多个研究领域,包括数据库技术、信息获取技术、统计学、人工智能中的机器学习和神经网络等。
2.Web挖掘流程
与传统数据和数据仓库相比,Web上的信息是非结构化或半结构化的、动态的、并且是容易造成混淆的,所以很难直接以Web网页上的数据进行数据挖掘,而必须经过必要的数据处理。典型Web挖掘的处理流程如下[3]:
1.查找资源:任务是从目标Web文档中得到数据,值得注意的是有时信息资源不仅限于在线Web文档,还包括电子邮件、电子文档、新闻组,或者网站的日志数据甚至是通过Web形成的交易数据库中的数据。
2.信息选择和预处理:任务是从取得的Web资源中剔除无用信息和将信息进行必要的整理。例如从Web文档中自动去除广告连接、去除多余格式标记、自动识别段落或者字段并将数据组织成规整的逻辑形式甚至是关系表。
3.模式发现:自动进行模式发现。可以在同一个站点内部或在多个站点之间进行。
4.模式分析:验证、解释上一步骤产生的模式。可以是机器自动完成,也可以是与分析人员进行交互来完成。
Web挖掘作为一个完整的技术体系,在进行挖掘之前的信息获得IR(Information Retrieval)和信息抽取IE(Information Extraction)相当重要。信息获得(IR)的目的在于找到相关Web文档,它只是把文档中的数据看成未经排序的词组的集合,而信息抽取(IE)的目的在于从文档中找到需要的数据项目,它对文档的结构合表达的含义感兴趣,它得一个重要任务就是对数据进行组织整理并适当建立索引。
信息获得(IR)和信息抽取(IE)技术的研究已近有很长时间,随着Web技术的发展,基于Web技术的IR、IE得到了更多的重视。由于Web 数据量非常大,而且可能动态变化,用原来手工方式进行信息收集早已经力不从心,目前的研究方向是用自动化、半自动化的方法在Web上进行IR和IE。在Web环境下既要处理非结构化文档,又要处理半结构化的数据,最近几年在这两方面都有相应的研究成果和具体应用,特别是在大型搜索引擎中得到了很好的应用。
3.Web挖掘分类及各自的研究现状及发展
根据对Web数据的感兴趣程度不同,Web挖掘一般可以分为三类:Web内容挖掘(Web Content mining)、 Web结构挖掘( Web structure mining)、 Web 用法挖掘(Web usage Mining)
3.1、Web内容挖掘:
指从Web内容/数据/文档中发现有用信息,Web上的信息五花八门,传统的Internet由各种类型的服务和数据源组成,包括WWW、FTP、Telnet等,现在有更多的数据和端口可以使用,比如政府信息服务、数字图书馆、电子商务数据,以及其他各种通过Web可以访问的数据库。Web内容挖掘的对象包括文本、图象、音频、视频、多媒体和其他各种类型的数据。其中针对无结构化文本进行的Web挖掘被归类到基于文本的知识发现(KDT)领域,也称文本数据挖掘或文本挖掘,是Web挖掘中比较重要的技术领域,也引起了许多研究者的关注。最近在Web多媒体数据挖掘方面的研究成为另一个热点。
Web内容挖掘一般从两个不同的观点来进行研究。从资源查找(IR)的观点来看,Web内容挖掘的任务是从用户的角度出发,怎样提高信息质量和帮助用户过滤信息。而从DB的角度讲Web内容挖掘的任务主要是试图对Web上的数据进行集成、建模,以支持对Web数据的复杂查询。
3.1.1从资源查找(Information Retrival)的观点挖掘非结构化文档:
非结构化文档主要指Web上的自由文本,包括小说、新闻等。在这方面的研究相对比较多一些,大部分研究都是建立在词汇袋(bag of words)或称向量表示法(vector representation)的基础上,这种方法将单个的词汇看成文档集合中的属性,只从统计的角度将词汇孤立地看待而忽略该词汇出现的位置和上下文环境。属性可以是布尔型,根据词汇是否在文档中出现而定,也可以有频度,即该词汇在文档中的出现频率。这种方法可以扩展为选择终结符、标点符号、不常用词汇的属性作为考察集合。词汇袋方法的一个弊端是自由文本中的数据丰富,词汇量非常大,处理起来很困难,为解决这个问题人们做了相应的研究,采取了不同技术,如信息增益,交叉熵、差异比等,其目的都是为了减少属性。另外,一个比较有意义的方法是潜在语义索引(Latent Semantic Indexing),它通过分析不同文档中相同主题的共享词汇,找到他们共同的根,用这个公共的根代替所有词汇,以此来减少维空间。例如:“informing”、“information”、“informer”、“informed”可以用他们的根“inform”来表示,这样可以减少属性集合的规模。
其他的属性表示法还有词汇在文档中的出现位置、层次关系、使用短语、使用术语、命名实体等,目前还没有研究表明一种表示法明显优于另一种。
用资源查找(Information Retrival)的观点挖掘半结构化文档:
与非结构化数据相比,Web上的半结构化文档挖掘指在加入了HTML、超连接等附加结构的信息上进行挖掘,其应用包括超连接文本的分类、聚类、发现文档之间的关系、提出半结构化文档中的模式和规则等。
3.1.2从数据库(Database)的观点挖掘非结构化文档:
数据库技术应用于Web挖掘主要是为了解决Web信息的管理和查询问题。这些问题可以分为三类:Web信息的建模和查询;信息抽取与集成;Web站点建构和重构。
从数据库的观点进行Web内容挖掘主要是试图建立Web站点的数据模型并加以集成,以支持复杂查询,而不止是简单的基于关键词的搜索。这要通过找到Web文档的模式、建立Web数据仓库或Web知识库或虚拟数据库来实现。相关研究主要是基于半结构化数据进行的。
数据库观点主要利用OEM(Object Exchange Model)模型将半结构化数据表示成标识图。OEM中的每个对象都有对象标识(OID)和值,值可以是原子类型,如整型、字符串型、gif、html等,也可以是一个复合类型,以对象引用集合的形式表示。由于Web数据量非常庞大,从应用的角度考虑,很多研究只处理办结构化数据的一个常用自集。一些有意义的应用是建立多层数据库(MLDB),每一层是它下面层次的概化,这样就可以进行一些特殊的查询和信息处理。对于在半结构化数据上的查询语言研究也得到了人们的重视并做了专题研究。
由于在数据库观点下数据的表示方法比较特殊,其中包含了关系层次和图形化的数据,所以大部分建立在扁平数据集合之上的数据挖掘方法不能直接使用,目前已经有人针对多层数据库挖掘算法进行研究。
3.2、Web结构挖掘:
Web结构挖掘的对象是Web本身的超连接,即对Web文档的结构进行挖掘。对于给定的Web文档集合,应该能够通过算法发现他们之间连接情况的有用信息,文档之间的超连接反映了文档之间的包含、引用或者从属关系,引用文档对被引用文档的说明往往更客观、更概括、更准确。
Web结构挖掘在一定程度上得益于社会网络和引用分析的研究。把网页之间的关系分为incoming连接和outgoing连接,运用引用分析方法找到同一网站内部以及不同网站之间的连接关系。在Web结构挖掘领域最著名的算法是HITS算法和PageRank算法。他们的共同点是使用一定方法计算Web页面之间超连接的质量,从而得到页面的权重。著名的Clever和Google搜索引擎就采用了该类算法。
此外,Web结构挖掘另一个尝试是在Web数据仓库环境下的挖掘,包括通过检查同一台服务器上的本地连接衡量Web结构挖掘Web站点的完全性,在不同的Web数据仓库中检查副本以帮助定位镜像站点,通过发现针对某一特定领域超连接的层次属性去探索信息流动如何影响Web站点的设计。
3.3、Web用法挖掘(Web usage Mining):
即Web使用记录挖掘,在新兴的电子商务领域有重要意义,它通过挖掘相关的Web日志记录,来发现用户访问Web页面的模式,通过分析日志记录中的规律,可以识别用户的忠实度、喜好、满意度,可以发现潜在用户,增强站点的服务竞争力。Web使用记录数据除了服务器的日志记录外还包括代理服务器日志、浏览器端日志、注册信息、用户会话信息、交易信息、Cookie中的信息、用户查询、鼠标点击流等一切用户与站点之间可能的交互记录。可见Web使用记录的数据量是非常巨大的,而且数据类型也相当丰富。根据对数据源的不同处理方法,Web 用法挖掘可以分为两类,一类是将Web使用记录的数据转换并传递进传统的关系表里,再使用数据挖掘算法对关系表中的数据进行常规挖掘;另一类是将Web 使用记录的数据直接预处理再进行挖掘。Web 用法挖掘中的一个有趣的问题是在多个用户使用同一个代理服务器的环境下如何标识某个用户,如何识别属于该用户的会话和使用记录,这个问题看起来不大,但却在很大程度上影响着挖掘质量,所以有人专门在这方面进行了研究。通常来讲,经典的数据挖掘算法都可以直接用到Web 用法挖掘上来,但为了提高挖掘质量,研究人员在扩展算法上进行了努力,包括复合关联规则算法、改进的序列发现算法等。
在[4]中,根据数据来源、数据类型、数据集合中的用户数量、数据集合中的服务器数量等将Web 用法挖掘分为五类:
●个性挖掘:针对单个用户的使用记录对该用户进行建模,结合该用户基本信息分析他的使用习惯、个人喜好,目的是在电子商务环境下为该用户提供与众不同的个性化服务。
●系统改进:Web服务(数据库、网络等)的性能和其他服务质量是衡量用户满意度的关键指标,Web 用法挖掘可以通过用户的拥塞记录发现站点的性能瓶颈,以提示站点管理者改进Web缓存策略、网络传输策略、流量负载平衡机制和数据的分布策略。此外,可以通过分析网络的非法入侵数据找到系统弱点,提高站点安全性,这在电子商务环境下尤为重要。
●站点修改:站点的结构和内容是吸引用户的关键。Web 用法挖掘通过挖掘用户的行为记录和反馈情况为站点设计者提供改进的依,比如页面连接情况应如何组织、那些页面应能够直接访问等。
●智能商务:用户怎样使用Web站点的信息无疑是电子商务销售商关心的重点,用户一次访问的周期可分为被吸引、驻留、购买和离开四个步骤,Web用法挖掘可以通过分析用户点击流等Web日志信息挖掘用户行为的动机,以帮助销售商合理安排销售策略。
●Web特征描述:这类研究跟关注这样通过用户对站点的访问情况统计各个用户在页面上的交互情况,对用户访问情况进行特征描述。
4.结束语
尽管Web挖掘的形式和研究方向层出不穷,但我认为随着电子商务的兴起和迅猛发展,未来Web挖掘的一个重要应用方向将是电子商务系统。而与电子商务关系最为密切的是用法挖掘(Usage Mining),也就是说在这个领域将会持续得到更多的重视。另外,在搜索引擎的研究方面,结构挖掘的研究已经相对成熟,基于文本的内容挖掘也已经有许多研究,下一步将会有更多的研究者把多媒体挖掘最为研究方向。
参考文献:
[1] Jiawei Han , Micheline Kamber. DataMining: Concept and Techniques. Morgan Kaufmann Publishers,Inc.2001.
[2]
http://www.billinmon.com
[3] R. Kosla and H. Blockeel, “Web mining research a survey,” SIG KDD Explorations, vol. 2, pp. 1–15, July 2000.
[4] J. Srivastava, R. Cooley, M. Deshpande and P. Tan, Web usage mining:discovery and applications of usage patterns from web data. SIGKDDExplorations, 1(2):12–23, 2000.
[5].S.K.Madria,S.S.Bhowmick,W.K.Ng,and E.P.Lim.Research issues in web data mining.In Proceedings of Data Warehousing and Knowledge Discovery,First International Conference,DaWaK’99,pages 303-312,1999.
[6] Pal S.K., Talwar V., and Mitra P., Web Mining in SoftComputing Framework: Relevance, State of he Art andFuture Directions, IEEE Transactions on NeuralNetworks, Volume: 13, Issue: 5, pp.1163 –1177, 2002.
[7] 陈莉,焦李成.Internet/Web数据挖掘研究现状及最新进展.西安电子科技大学学报(自然科学版).2001年2月第28卷第1期