文件检索系统的设计与实现

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

学号_ _ 密级_____________ __
武汉大学本科毕业论文
组织专家检索系统的
设计与实现
院(系)名 称:信 息 管 理 学 院
专 业 名 称 :信息管理与信息系统
学 生 姓 名 :韩 曙 光
指 导 老 师 :陆 伟 副 教 授
二○○八年五月
BACHELOR'S DEGREE THESIS
OF WUHAN UNIVERSITY
Design and Implementation of Organization Expert Search System
College :School of Information Management
Subject :Information Management and Information System
Name: Shuguang Han
Directed by:Wei Lu,Associate Professor
May ,2008
摘要
Internet的快速发展和互联网相关技术的不断成熟,使得企业(组织)的相关资源纷纷上网,TREC(文本检索国际会议)也因此提出了企业检索任务,主要目标是帮助用户实现在对企业相关数据进行检索的基础上完成特定任务。

企业检索的内容既可以是组织外部的数字资源也可以是组织内部的数字资源,这些数字资源通常以异构的形式存在,如邮件、数据库记录、文档、共享文件等。

组织(企业)专家检索是企业检索的很重要的分支,也是当前垂直信息检索研究的热门领域。

本文总结了目前国内外组织专家检索的研究现状,分析了构建组织专家检索系统的需求和挑战,并以此为基础,利用组织内外部的网页和期刊论文数据库等信息,设计了从数据资源采集、规整、索引、检索到可视化等整个过程的组织专家检索系统模型及以武汉大学为例的专家检索系统平台——WHU-ES。

该系统通过动态定义组织内外表征专家信息的资源列表,设定资源动态更新周期,可实现资源的动态采集、专家专长的智能识别、专家共现聚类关系图的动态生成和分析、专家个人档案信息自动抽取(包括专家肖像提取、专家简介自动识别等)等功能。

此外,本文也分析了构建专家检索系统存在的网页正文抽取、专家姓名重叠、社会网络关系分析等难点,提出了可能的解决方案,最后对WHU-ES专家检索系统做了初步评价。

关键词:专家检索;专长识别;组织检索;专家聚类
ABSTRACT
The rapid progress of Internet and related technology make it much easier for us to access the enterprise ( or organization) documents and web pages. As a result, TREC (Text REtrieval Conference) proposed the enterprise retrieval task which purpose is to study enterprise search: satisfying a user who is searching the data of an organization to complete some task. The corpus combines the digital resources with diverse types such as published reports, email, database records, files and shared documents.
As an important part of the Enterprise Retrieval, Organization Expert Search ( Expertise Retrieval ) is the current hot area of Vertical Information Retrieval research. Based on the analysis of the requirement and challenges, this paper summarizes the current development of the expert search, and proposes a general architecture of the organization expert search system, which contains data collections, sorting, indexing, retrieving, visualizing and so on, by using the relevant web pages and academic database as the data collections. Then we construct an expert search system taking Wuhan University as an example, which we called WHU-ES for short. This system achieves some specific functions such as the dynamic collection of diverse resources, the intelligent recognition of expertise and the automatic extraction of expert profile (the portrait picture extraction etc.) and so on. We also analyze the difficulties such as Personal Name Resolution, Social Networks Analysis, and Content Extraction, and then provide the possible solutions. At last, we give the preliminary evaluation of the expert search result.
Keywords: Expert Search; Expertise Recognition; Organization Search; Expert Clustering
目 录
中文摘要 (Ⅲ)
ABSTRACT....................................................................................................... . (Ⅳ)
1 绪论 (1)
1.1 引言 (1)
1.2 本文研究的内容 (1)
1.3 研究的创新点 (2)
1.4 本文篇章结构 (2)
2 国内外研究现状 (4)
2.1 TREC企业专家检索子任务 (4)
2.2 现有专家检索系统介绍 (5)
2.2.1 MITRE Expert Finder (6)
2.2.2 People Finder (6)
2.2.3 IBM Small Blue (7)
2.3 专家检索其他相关研究 (7)
3 组织专家检索系统的分析与设计 (9)
3.1系统总体思路 (9)
3.2 系统体系结构 (11)
3.2.1 Spider模块 (11)
3.2.2 Indexer模块 (13)
3.2.3 Searcher模块 (14)
3.2.4 Assistant模块 (16)
3.3 专家检索系统的难点及对策 (16)
3.3.1 网页数据噪音剔除 (16)
3.3.2 专家姓名重叠问题 (17)
3.3.3 专家社会网络分析 (17)
4 WHU-ES的实现与评价 (20)
4.1 相关软件介绍 (20)
4.1.1 Lucene全文检索系统 (20)
4.1.2 NetDraw社会网络软件 (20)
4.1.3 HttpClient开源项目 (20)
4.1.4 CMU的FaceDetect工具 (21)
4.2 WHU-ES的实现 (21)
4.2.1 初始辅助文档库的定义 (21)
4.2.2 专家数据集的动态采集和更新 (21)
4.2.3 数据集的规整及索引 (22)
4.2.4 专家档案自动生成的实现 (22)
4.2.5 Web检索接口的实现和使用 (23)
4.3 WHU-ES的初步评价 (25)
5 结语和展望 (28)
参考文献 (29)
本科期间的相关科研成果 (34)
附录 (36)
1 绪论
1.1 引言
组织的竞争优势源于其自身知识的集合及学习能力[1]。

根据Delphi Group的调查,组织中最大部分(42%)的知识是存在于员工头脑中的隐性知识[2]。

这使得越来越多的组织意识到对自身知识,尤其是员工头脑中的隐性知识进行有效管理的必要性。

然而识别这些知识并加以直接利用却非易事。

随着Internet的发展,企业、科研教学机构等纷纷构建起自己的网站,使得员工的专长信息及员工头脑中的隐性知识可以通过组织的相关网页(如组织官方网页、相关项目网页、员工主页等)、内部交流和共享的邮件记录等一系列相关文档逐渐间接显化。

因此如何从这些文档中识别出员工的专长进而辅助发现特定专长的专家,促进组织内外部人员的协作、为项目或团队挑选合适的人选、选择项目评审专家、快速发现和寻找合作者等就成为一个现实需要解决的研究课题。

在国际上,该研究属于组织专家检索研究的范畴。

与人工智能领域的专家系统不同,本文所谓组织专家的检索(Expert Search 或 Expertise Retrieval),是指利用组织内外能够表征专家专长的各种文档和资源,识别专家在某给定查询主题(领域)的专长(相关性)程度,并按程度高低排序显示专家结果列表等的过程。

早期组织内专家检索的方法主要是通过建立描述组织内人员专长信息的数据库[3],然而该方法不仅耗费人力财力,而且由于专家的技能和知识存在着分布性、难以量化、难以分级、不断变化的特点[4],使得专家的描述信息具有很强的动态性和模糊性,从而导致数据库方法明显缺乏灵活性。

1.2 本文研究的内容
为了满足日益增加的专家检索需求、了解拥有特定专长专家之间的关联、解决专家专长信息的动态变化问题,本文借鉴TREC(文本检索国际会议)组织专家检索的基本方法,构建了一个通用的组织专家检索系统框架模型。

该框架模型可以定义组织内外表征专家信息的资源列表,设定资源动态更新周期,实现信息的动态采集,并结合组织内部专家列表,智能识别组织专家专长。

在专家检索的过程中,实现了特定查询主题下专家列表的排序、专家共现聚类关系图的动态生成和分析、专家档案信息(主要包括专家性别、专家所在学院、专家职称、专家个
人简介、专家肖像图片等,下同)的自动抽取等功能。

基于此框架模型结构,本文以武汉大学为例构建了武汉大学专家检索系统(WHU-ES),重点研究了不同专家数据的采集、专家得分模型的构建、专家档案信息抽取、专家社会网络关系的生成和分析等,并研究了构建专家检索系统存在的网页正文抽取、专家姓名重叠、社会网络关系分析等难点,提出了可能的解决方案,最后对WHU-ES专家检索系统做了初步评价。

1.3 研究的创新点
组织专家检索系统的构建过程涉及到数据集的采集、规整、索引、专家专长的检索以及结果的可视化等整个过程,现有的国内外研究(见章节2)尚未考虑到数据集的构建策略和不同数据集对专家检索结果的影响,TREC实验检索系统预定义了使用的数据集,其余实际应用系统的数据集也只是整合了组织内部数据集,尚未考虑到组织外部数据集和不同数据集之间的整合和比较,本文将对其做初步研究。

此外,为了便于用户准确把握专家相关信息和专家之间的的关联,组织专家检索系统需要快速生成专家的档案信息(包括专家职称、性别、学院、个人简介、专家照片等)和专家之间聚类的社会网络关联图并加以分析。

针对专家档案生成过程,本文提出了基于共现的专家院系职称等信息抽取方法、基于规则的专家个人简介等信息的抽取方法及基于PicExtractor(见3.2.3.3)的专家肖像提取方法;针对专家共现社会网络,本文实现了专家聚类关系图的动态生成,专家社会网络分析(包括社会网络密度分析,点度中心性、中间中心性、接近中心性分析,最短路径分析等),并支持用户交互调整关系图呈现效果,寻找关系图中任意专家之间的最短路径,便于用户直观的了解专家的专长和专家之间的关联程度。

目前国内外尚未对此做深入研究的论文和系统,本文也将做初步的探索。

1.4 本文篇章结构
本文篇章结构如下:
在下文章节二中,将介绍国内外组织专家检索的研究现状,包括TREC专家检索子任务的现状介绍、现有的专家检索系统分析以及专家检索其他相关研究等。

章节三中,将详细介绍通用组织专家检索系统框架模型的设计,包括系统设计的整体思路、功能模块的划分和各模块的详细介绍。

在章节四中,将以武汉大学为例构建一个实际的组织专家检索平台——WHU-ES,同时也分析了系统构建中存在困难和可能的解决方案,并给出了关于专家识别效果和专家档案信息抽取的初步评价。

章节五中分析了本文研究的不足之处,并对下一步的工作做了简单的介绍和展望。

文章的最后是参考文献和附录。

2 国内外研究现状
为了动态挖掘组织内外部的相关资源和专家专长信息,国内外展开了一系列相关研究。

TREC企业检索任务中的专家检索(Expert Search)子任务在一定程度上代表了当前组织专家检索研究的进展,包括IBM 研究院、微软研究院(Microsoft Research)、澳大利亚联邦科学与工业研究组织(CSIRO)、伦敦城市大学、伊利诺伊大学、清华大学等机构也纷纷加入了专家专长检索的研究队列中。

考虑到专家专长检索的重要意义,SIGIR(Special Interest Group on Information Retrieval)2008 将于7月份在新加坡举行以“Future Challenges in Expertise Retrieval”为主题的Workshop,总结专家检索已经完成的工作,并讨论未来的研究方向[5]。

当然目前也有如People Finder,MITRE’s Expert Finder,IBM Small Blue等在实际中使用的专家专长检索系统,下文将分别予以介绍。

2.1 TREC企业专家检索子任务
作为Web Track的后继项目,TREC[6]于2005年起增加了企业检索(Enterprise Search)任务,并设立专家检索(Enterprise Expert Search)子任务[7]。

该任务利用企业内部的网站网页信息、共享文档、电子邮件、数据库文件以及访问日志等作为企业数据集,对于给定的查询主题,参与者构建各自的专家检索模型,并将得到排序后的相关专家列表等结果返回到TREC组办者进行测评。

迄今为止,企业专家检索已经举办了三届,在专家实体识别、专家专长表征信息提取、专家排序检索模型构建等方面取得了一系列的研究成果。

TREC专家检索的核心过程主要包括专家实体识别和专家检索排序两个部分。

专家实体识别作为实体识别的一种特殊情况,本文尚未考虑,笔者在具体实现时采用手工方式构建组织内的候选专家列表;关于专家检索排序,目前主要有两种典型方法[8],即:基于专家档案的方法和基于相关文档集归并排序的方法。

前者利用组织内的各种信息资源,如网页、报告、邮件信息等,根据专家特征信息(主要是利用专家的姓名和电子邮件)在其中出现的情况,自动构建针对每个专家的个人描述(Profile),然后将这些专家的描述作为文档,利用常用的检索技术对这些个人描述进行索引,进而实现对专家的检索,如图2.1所示[9],Wei Lu等[10]利用该方法采用窗口技术参加了TREC企业专家检索2006年的年度活动,取得了较好的结果;后者首先利用传统信息检索方法检索出与主题相关的文档集合,然后进
一步利用专家在文档中的特征信息对文档集合与得分进行归并,最终得到专家相
对于查询主题的得分并排序,如图2.2示[9] ,Wei Lu等[11]采用该方法利用文档过滤模型参加了TREC企业专家检索2007年的年度活动,取得了良好的效果。

关于这两种方法的具体实现思路,可参见企业专家检索实现的比较研究一文[9] 。

总体说来,这两种方法各有特点,各有优劣,目前到底该采用何种方法尚无权威的结论,在
具体实现中可以根据需要而定。

图2.1 基于专家档案的专家检索流程
2.2 现有专家检索系统介绍
除了TREC会议参与者所采用的实验系统外,目前也出现了一些实际中获得应用的专家检索系统,典型的如MITRE公司构建的MITRE’s Expert Finder系统、CSIRO (澳大利亚联邦科学与工业研究组织)构建的People Finder系统等。

图2.2 基于文档归并的专家检索流程
2.2.1 MITRE Expert Finder
MITRE’s Expert Finder[4]系统的建立主要是为方便用户快速查找所需要的专家。

该系统预收集了组织中表征员工基本信息的所有数据,包括员工之间的交流文档、员工的简历、网站网页及其它组织内部相关文档,并与组织员工简历相关信息的数据库加以整合,构建组织专家检索数据集。

对于给定的查询主题,通过与该员工紧密相关的关键词和短语在数据集出现的频次等特征,计算员工与该查询主题的相关度并加以排序,同时提供相关的支撑文档。

经验性的评价表明该系统平均可达到40%的查准率和30%的查全率。

2.2.2 People Finder
People Finder[12]是CSIRO在P@NOPTIC Expert[13]基础上构建的基于Web的组织内专家检索系统,它主要利用发布在组织内部网上的所有文档及部分组织自身的其它数据,自动识别某个领域的专家。

该系统的基本形式类似于搜索引擎,所不同之处在于,针对特定查询主题,其返回的不再是相关文档,而是一系列与该主题相关的经过排序后的专家列表,并辅助提供专家的详细联系方式和相关的支撑文档。

该系统的效果受包含项目描述信息、企业员工简历及内部交流文档等信息的组织数据集的影响。

2.2.3 IBM Small Blue
在寻找组织(或企业)中员工在特定领域的专长知识、解决员工之间的高效信息交流等问题的过程中,员工头脑的隐性知识和员工之间隐性的社会网络关联往往至关重要。

IBM公司在充分认识到这些内容的基础上,开发了一款商务智能软件IBM Small Blue[14],实现了人物社会网络关系发现 、专家专长发现、动态档案信息发现、人物社会关联分析等功能,它能够高效的定位拥有特定专长的专家以及寻找专家的最优路径。

除上面介绍的几个系统外,国外还出现了另外一些专家检索系统,如 TACIT Active-Net™、AskMe、Recommind等。

国内目前尚无采用类似机制实现的专家检索系统,值得一提的是,重庆维普资讯有限公司利用自身数据库资源(主要是期刊论文、学位论文以及学科分类体系)的优势,构建了中国科学家门户[15],为使用者提供了按照作者姓名、作者学科以及作者单位等检索专家的功能,而鉴于学科分类体系尚不完善,该系统缺乏对具体领域或专业查询主题的灵活支持;对自然语言查询的处理方面亦存在明显的不足;再者,检索专家所采用数据集资源的单一性,往往使系统不能全面反映专家在各个层面的专长。

此外,Yahoo搜索引擎也推出了人物搜索[16]的功能,它基于网页文本的计算为基础,将人和人之间的关系抽取出来,为专家系统的在网络上的应用提供了新的思路。

2.3 专家检索其他相关研究
除了TREC企业检索中专家检索子任务和构建实际专家检索系统之外,相关学者和研究人员也在专家检索的需求分析、专家检索系统的使用现状、专家检索的社会网络分析、专家检索结果的可视化等领域展开了大量的研究。

文献[17]对目前
正在使用专家检索系统(主要是IBM公司开发的Small Blue系统)的75名员工检索行为进行了跟踪,系统的研究了人们使用专家检索系统的实际需求,以及外部因素(如员工职位等)对检索专家的影响,另一方面也发现企业分类目录和个人的社会关系网络往往是专家检索系统的替代工具。

文献[14,18]认识到员工获取信息的行为在很大程度上依赖于自己熟悉的人,而现有的专家专长检索系统并未考虑到个人社会网络的重要作用,在介绍IBM Small Blue系统(见2.2.3)的功能和使用的基础上,讨论并分析了社会网络在专家检索系统中的应用,以及专家检索系统的下一步发展的趋势。

文献[19]认识到专家专长信息在企业中的巨大价值,试图通过可视化技术呈现专家专长信息,实现并讨论了两种目前常用的降维可视化技术——MDS:多维尺度分析(Multi-Dimensional Scaling)和SOM:自组织地图(Self-Organizing Map)在专家专长管理中的重要意义和潜在的应用。

总之,专家专长检索对企业员工高效获取相关信息,对管理者准确把握员工的专长等都有着十分重要的作用,在组织或企业内部的价值不言而喻,但是其相关理论知识和实践方法尚不成熟,还需要相关学者更多的关注和研究。

3 组织专家检索系统的分析与设计
综观TREC专家检索实验系统及上文所述之应用系统,尽管都提供了根据特定查询主题生成经过排序的专家列表的功能,但在专家之间关联特性的挖掘上却都有欠缺。

笔者认为,如能根据专家之间的共现规律,利用社会网络分析等方法可视化呈现专家之间的关联和聚类关系,并加以分析,对用户准确把握员工(专家)的专长有着重要意义。

同时,专家专长信息动态变化的特性,也要求专家数据集能够动态更新,而以上各个系统对此都未予以重视,不利于组织动态把握员工的专长。

再者,专家检索数据集的单一性往往无法反应专家各个层面的专长,而上述系统也未考虑采用不同类型的数据集。

此外,专家职称、学院、肖像照片、个人简介等相关“档案”信息的抽取也会为用户快速寻找相关专家的过程提供方便。

基于此,笔者认为组织专家检索系统主要应提供以下几个方面的功能:定义表征专家专长数据集类型;动态构建及更新专家数据集;动态识别专家的专长(领域);检索针对特定查询主题的相关专家;可视化呈现专家的共现和聚类关系、专家档案信息的自动抽取、专家社会网络分析等。

围绕着这些功能目标,笔者提出并构建了一个通用的组织专家检索系统框架模型,下文将就构建思路、系统体系结构和系统存在的问难点及对策做详细的介绍。

3.1系统总体思路
借鉴TREC专家检索的两种基本方法,笔者认为组织内专家检索系统构建的主要思路是:首先,通过Spider(信息采集蜘蛛程序)采集已定义的表征专家信息的组织内外部数据资源,获取专家数据集,并生成专家数据集索引文件;然后,提取组织内所有专家的姓名列表,利用专家数据集索引文件,根据专家表征信息(如专家姓名、电子邮件等,本文主要采用专家姓名)在数据集文档中的出现情况,生成专家-文档映射文件(Expert-Docs,该文档记录了数据集中每个专家对应出现的文档列表);针对特定查询主题,用户检索专家时将首先返回该主题相关文档,然后对于每位专家根据其在相关文档和Expert-Docs中的共现情况,过滤产生每个专家针对该主题的相关文档,然后归并各文档得分作为专家得分(目前的归并方法是简单的线性相加),最后根据专家得分的高低排序显示,该检索过程的基本思路可用下面算法(JAVA风格)实现,如图3.1所示。

对于每篇文档相关性得分的计算采用的是向量空间模型(VSM),如公式(3.1)
所示,其采用的是开源软件Lucene的评分机制,详见[20]。

对于专家检索系统中专家得分模型如公式(3.2)所示,其通过归并专家和文档以及专家和查询主题之间的关联强度,计算专家和特定查询主题的相关性程度。

其中 w(e , q) 表示专家 e 对于特定查询主题 q 的得分情况, d i 表示在文档集
合 D 中的一篇文档, a (d i ,q) 表示第 i 篇文档 di 和查询主题 q 之间的关联
强度, a (d i , e) 表示第 i 篇文档 d i 和专家 e 之间的关联强度。

如果认为专家
和文档与特定查询主题的关联是等价的,将 a (d i , e) 赋为 1,那么公式(3.2)
就退化为公式(3.3),也即本文采用的是简单的线性相加的过程[11], W e 是每位专家的得分,W i 是依据传统信息检索模型得到的第i篇文档的得分,即公式(3.1)的
计算结果,D 是特定检索主题下返回的包含有专家姓名的文档集。

图 3.1专家检索算法的伪码表示
t in q (3.1)
()()()()i w tf t in d idf t boost t.filed in d lengthNormal t.filed in d =
∗∗∗∑ (3.3) i e i d D
w w ∈=∑ (3.2)(,)(,)(,) i
i i d D w e q a d q a d e ∈=∑
专家检索过程中的专家社会网络关系可视化呈现和分析、专家档案信息自动抽取过程,本文将调用相关软件的接口,并通过构建相关模型来实现,具体过程见下文。

3.2 系统体系结构
根据上文所述,本文所构建之专家检索系统主要包括下面四个模块,即Spider 模块、Indexer模块、Assistant模块以及Searcher模块,各模块间关系请参见系统整体框架图(图3.2)。

具体如下:
用户
图3.2 系统整体框架图
3.2.1 Spider模块
Spider模块即信息采集模块,主要功能是根据系统管理者定义的表征组织专家专长的不同信息资源构建相应的采集策略,并设定资源采集周期,定期采集和更新专家数据集。

笔者认为可以参考使用的专家数据集主要有组织内部表征专家
专长的网页和文档库(下称专家网页数据集)、利用专家名称和单位构建查询主题从搜索引擎获取的表征专家的信息库(专家搜索引擎数据集)、相关学术数据库中表征专家专长信息数字资源(专家学术数据集)等。

不同信息资源需要的采集方法和采集过程也不尽相同,需要为不同数据集构建不同的采集策略。

3.2.1.1 专家网页数据集的构建
专家网页数据集的构建是通过网络蜘蛛程序按照特定的策略对互联网进行遍历和采集得到的。

一般来说,网络蜘蛛有两种遍历策略,即广度优先遍历和深度优先遍历。

广度优先遍历指网络蜘蛛先抓取初始链接集合中的所有网页,然后选择其中的一个链接,继续抓取在此网页链接集合的所有网页,通过不断重复这个过程实现网页的遍历。

深度优先遍历是指网络蜘蛛从初始链接集合中的一个链接开始,不断跟踪链接,处理完这条链接线路之后转入下一个初始链接,继续跟踪链接。

关于两种策略的区别,可参考文献[21,22]中广度优先搜索和深度优先搜索的介绍。

由于网络蜘蛛在访问网页的同时,又需要查找下一步要访问的链接,导致链接数量增长很快。

而这些链接信息必须加以存储,并判断是否已经访问,这涉及到管理、维护和存储链接队列的问题。

对于较小的站点,通过限定链接的域名范围,可以在计算机内存(RAM)中存储队列,而对于大型的Web站点或者全网搜索,必须使用其它更有效的方法来存储链接队列,如使用支持SQL操作的DBMS数据库管理系统等。

本实验采用基于内存的队列存储模式。

网络蜘蛛在抓取网页信息时,经常会遇到加密数据和网页权限的问题,如有些网页需要会员权限才能访问,有些网页需要分析其HTML代码,通过其中的META 标识,确定网页是否需要被抓取,是否需要被继续跟踪等,详细信息可参见文献[23]。

对于网页访问权限、权衡特定网站的访问频率和访问策略,本实验并未加以考虑。

3.2.1.2 专家搜索引擎数据集的构建
搜索引擎拥有强大的蜘蛛程序,能够对不同数据格式网络信息资源加以采集、整合、索引和检索,检索的结果往往能够全面的放映专家各个层面的专长信息。

下面介绍以Google为例的专家搜索引擎数据集构建过程。

Google服务器对发送请求源和请求频率均加以限定,直接在程序中通过URLConnection(Java)访问Google检索结果页面,返回的结果为空。

因此实验中的程序需要模拟浏览器的方式发送HTTP请求,浏览器发送HTTP请求时,包含一些。

相关文档
最新文档