网络环境中“信息找人”服务机制的实现,本文主要内容关键词为:找人论文,机制论文,环境论文,网络论文,信息论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。
[中图分类号]G250.72 [文献标志码]A [文章编号]1005-8214(2007)01-0081-04
在网络环境中,众多ISP、ICP及“虚拟图书馆”问世,为广大用户直接从网上获取信息带来前所未有的便捷。但实践证明,网上信息泛滥,查询不仅费时费力且准确率并不理想,对此尤其感受至深的是广大学术研究群体用户。有关统计表明,目前数据库及互联网信息的应用只达到其实际功能的5%左右。许多搞科研的用户常常感叹不能真正驾驭信息,在网络应用中沦为了信息的仆役。本文研究的目的,旨在从杂乱无章的网络资源中筛选出有用资源,把虚拟资源转化为本地资源,实现网上“信息找人”的主动信息服务,使用户将更多的精力集中于从事科学研究。与此同时,减少网上无效信息流量,节省宝贵带宽。
1 从传统SDI的“人找信息”到网上“信息找人”的主动信息服务理论体系
在非网络条件下,传统图书情报机构的定题服务(又称SDI)属于被动服务方式,即“人找信息”模式。网络条件下这种模式发生了显著的变化,即“信息找人”模式。该模式在满足用户特定、个性化信息需求方面实现了:服务对象的针对性;动态连续跟踪用户需求;实时超前提供科学前沿研究成果与水平动向;定制推送专题研究所需信息等。该模式的实现系统即主动信息服务系统。
1.1 主动信息服务系统的结构体系
1.1.1 基于规则的ILOG系统[1,2]
ILOG的服务是基于规则的。系统的核心是规则引擎,它用于解释规则,并为站点的访问者产生符合其兴趣的动态内容,系统管理员只需定义业务规则。ILOG是作为一个中间件形式提供的,提供Rules(C++)和JRules(java)两种组件用于第2次开发。此外,ILOG还提供了一种业务规则定义语言。
规则可以由用户定制,也可以利用基于关联规则的挖掘技术来发现,利用规则来推荐信息依赖于规则的质量和数量。基于规则的技术其缺点是随着规则的数量增多,系统将变得越来越难以管理。一个规则本质上是一个If—Then语句,规则可以利用用户静态属性来建立,也可以利用用户动态信息来建立。为了利用规则来推荐资源,用户描述文件和资源描述文件需用相同的关键词集合来进行描述。信息推荐时的工作过程是这样的:首先根据当前用户阅读过的感兴趣的内容、通过规则推算出用户还没有阅读过的感兴趣的内容,然后根据规则的支持度(或重要程度),对这些内容排序并展现给用户。
基于规则的系统一般分为3部分:关键词层、描述层和用户接口层。关键词层提供上层描述所需的关键词,并定义关键词间的依赖关系,在该层可以定义静态属性的个性化规则。描述层定义用户描述和资源描述。由于描述层是针对具体的用户和资源,所以描述层的个性化规则是动态变化的。用户接口层提供个性化服务,根据下面两层定义的个性化规则将满足规则的资源推荐给用户。
1.1.2 基于内容过滤的系统Personal Web Watcher [3]
基于内容过滤的技术是通过比较资源与用户描述文件来推荐资源。它的关键问题是相似度计算,对于矢量空间模型来说,通常采用的方法是余弦度量。基于内容过滤的系统其优点是简单、有效,缺点是难以区分资源内容的品质和风格,而且不能为用户发现新的感兴趣的资源,只能发现和用户已有兴趣相似的资源。
Personal WebWatcher的服务是在服务器端提供的。它主要由两个部分组成:代理服务器(proxy server)和学习器(learner),代理服务器是用户Web浏览器与Web之间的桥梁,保存了所有访问过的URL地址,学习器主要是为系统提供用户模型,整个系统用Perl语言和C++语言编写。
代理服务器主要由3部分组成:代理(proxy)、建议器(adviser)和分类器(classifer)。代理接到一个请求时,下载请求的文档,如果该文档是HTML格式,会加上一些建议并将结果发给用户。加建议的过程是这样的:代理将下载的文档发给建议器,建议器先从文档抽取超链,接着将结果发给分类器,分类器利用学习器产生的用户模型推荐满足某一阈值的超链返回给用户。
学习器有两种版本:从头开始创建一个新模型的学习器和更新一个已存在模型的学习器。用户的兴趣模型是根据指向文档的超链来预测的,在系统空闲的时候,也可以根据文档的内容来预测文档的兴趣度,这样会更准确一些。此外,也可以利用超链来预测文档内容,然后利用这些文档内容来预测真正文档的兴趣度。
Personal WebWatcher系统主要应用于处理Web页与链接。
1.1.3 基于协作过滤的系统GroupLens[4]
协作过滤是根据用户的相似性来推荐资源。它与基于内容的过滤技术不同,它比较的是用户描述文件,而不是资源与用户描述文件。其关键问题是用户聚类。由于它是根据相似用户来推荐资源的,所以有可能为用户推荐出新的感兴趣的内容。
基于协作过滤系统的优点是能为用户发现新的感兴趣的信息,缺点是存在两个很难解决的问题,一个是稀疏性,即在系统使用初期,由于系统资源还未获得足够多的评价,系统很难利用这些评价来发现相似的用户;另一个是可扩展性,亦即随着系统用户和资源的增多,系统的性能会越来越低。
GroupLens是一个应用于Usenet新闻组的协作过滤系统,它的目标是让用户一起协作,从大量的Usenet新闻中发现他们感兴趣的内容。系统分为两部分:客户端和服务器端。客户端是一个新闻阅读器NewsReader,服务器端提供协作过滤。NewsReader一般连接到本地NNTP服务器,同时也连接到GroupLens服务器共享过滤信息,只要用户下载一篇文档,NewsReader都会向GroupLens服务器发送消息请求对该文档内容的预报,也就是其他用户对该文档的评价。
GroupLens服务器端分为请求代理和过滤引擎。请求代理将用户的请求分派到合适的进程来处理。过滤引擎分为4部分:预报模块、评价模块、相关性计算模块及数据管理模块。预报进程为客户提供精确的文档内容预报,文档的预报处理需要两类信息:用户间的相似性和用户对文档的评价;评价进程接收用户的评价并将其安全存储;用户相关性计算程序计算用户间的相似性;数据管理子系统管理用户的评价和用户相似性等数据。
1.2 网上主动信息服务系统的模型
1.2.1 基于因特网的SDI系统模型
图1 基于因特网的SDI系统模型
基于因特网的SDI系统模型由4个子系统构成(见图1):用户中心系统(包括交换机、语法分析器、词典);信息中心系统(包括本地信息库、网上信息挖掘机、分类标引器、人工辅助系统);信息映射系统;信息安全系统等。[5]该系统模型实现难点:网上多媒体信息挖掘、目标样本建立;智能识别中的词典完善,中文信息处理中词的切分、自动接引与分类;自动检索等问题。
1.2.2 基于Agent的主动信息服务系统模型
为实现网上个性化的主动信息服务,每个用户都设有多个Agent(智能代理)。每个Agent既相对独立,又相互联系,协同合作共同完成各项任务。其构成要素包括:交互Agent,观察Agent、搜索Agent、推理Agent、挖掘Agent、导航Agent等。[6]
基于Agent的网上主动信息服务系统需要解决三个问题:①利用智能Agent的自主学习功能对用户的信息需求进行分析,主动搜集用户平时感兴趣的信息,分析其个性化特点,建立用户需求模式。②根据Agent具有自治性的功能,自动跟踪网上信息变化,主动搜集、更新用户感兴趣的信息。③建立网上信息和用户个性化需求模式的匹配关系。[7]
下面介绍一个基于三层Agent的网上主动信息服务系统的结构模型(见图2)。
图2 基于三层Agent的主动信息服务系统模型
其中:①第一层是用户Agent,位于用户的PC机上。主要负责依据用户提供的目标样本和反馈信息生成和维护用户的个性化需求模式。②第二层是用户代理Agent,位于系统的服务器上,其主要功能是作为用户的代理,对网上用户需求信息进行实时监控。③第三层是信息检索Agent,与用户代理Agent位于同一服务器上。主要负责处理与WWW上的各种商业化信息检索系统的交互,即根据信息资源分布的特点,选择商业化的搜索引擎,并将来自不同搜索引擎的信息进行集成归并,然后推送给用户代理Agent。[8,9]
1.2.3 基于CDF的主动信息服务系统模型
频道定义格式CDF(Channel Definition Format)是一个由微软开发的让Web发布商推送内容给用户的规范。CDF是XML的扩展,它定义要推送或Web广播内容的内容和格式。一旦用户订阅了CDF频道,任何支持CDF格式的软件将自动接收新的发布在频道的Web服务器上的内容。CDF规范有3个主要组成部分:频道本身、项目和调度。CDF文件说明什么内容在频道中,什么已改变,以及客户需在什么时间检查更新信息。[10]
设计一个基于频道的网上主动信息服务系统,实际上就是建立一个专业信息服务频道网站。频道在网上主动信息服务中的应用模式(见图3)。[11]
图3 频道在网上主动信息服务中的应用模式
该模型的关键是有效地将用户所需信息采集出来,提出了:利用XML语言描述、定义文件的逻辑结构及其中的各元素之间相互关联;在显示内容中采用XSL表达用户个性化需求;提出了XML(数据描述)+XSL(数据显示格式)+CDF(数据播放周期)的技术思路;以广播技术与点播技术相结合的方法实现网上主动服务。
频道技术是一种广播技术,其突出优点是服务的主动性。但它的缺点是缺少个性,也就是服务针对性差。而点播技术正好可以在一定程度上解决缺少个性化的问题,不过服务的主动性也差,每次都要用户自己选择所需的内容。要克服二者的不足,只有在两者结合的基础上融入人工智能、知识发现等技术实现智能化的信息推拉。智能信息推拉技术的引入,可以提高网络及数据库的智能水平,从根本上解决“推送”和“拉取”技术应用过程中所遇到的上述难题。[12]
图4 基于UML的主动信息服务系统
1.2.4 基于UML的网上主动信息服务系统模型
基于UML(统一建模语言)的系统采用静态建模和动态建模两种机制,在结构上用5类图来定义。第1类:用例图,包括用例和角色,表示从用户角度描述系统功能,并指出各功能的操作者。在主动信息服务系统模型中,确定的基本角色是定制方(Subscriber)、搜索引擎(SE)、信息提供方(Provider)。在此基础上,确定的基本模块为:定制、查询、接收、建库、发送(见图4)。第2类:静态图,包括类图、对象图和包图,最基本的是类图,用于描述系统的静态逻辑结构,即系统重要的抽象元素及元素之间的关系。第3类:行为图,包括状态图、活动图,用来描述系统的动态模型和组成对象间的交互关系。第4类:交互图,包括顺序图、合作图,用来描述对象间的交互关系。第5类:实现图,包括构件图、配置图,用来展示系统的源代码的结构和运行时刻的实现结构。[13]由此系统可以根据单个用户的定制信息,定期检查,及时更新并将更新后的信息传递给用户。
UML在主动信息服务系统模型设计中的主要应用体现在:采用基于用例图的思想来提炼主动推送系统中的相关角色;采用基于类图和对象图的角色关系图来分析主动推送系统的静态组织结构;采用顺序图和状态图来描述角色间的交互关系和时序关系;利用构件图和部署图来展示系统中各个角色之间的实现结构。[14,15]
根据实践表明,UML是一种优秀的建模语言,适用于开发过程的各个阶段。在主动信息服务系统开发中,使用UML,有助于开发人员对整个系统有清晰的认识,从而建立各种系统模型,为后期编码做准备。
2 实现网上“信息找人”主动服务的网络技术
在网上信息服务中,由于常用的关键词匹配方法不具备学习功能,匹配精确度不高,以及搜索引擎不能帮助用户确定所需信息所在的领域等客观原因,致使浏览一查询方式费时费力,效率低下。实践证明,仅靠某一种技术难以解决上述问题。因此,作者在对各类技术进行了深入研究的基础上,提出了许多优化措施,以实现网上“信息找人”的主动信息服务。这些措施包括:①建立数据绑定体系结构,解决信息组织过程的动态数据访问及客户端数据缓冲问题;②利用ASP技术,解决服务器端与数据库的相互作用问题;③开发Push技术。建立服务器推送为主导的数据模型、信号模型;④利用智能Agent技术,设计“自主型”软件实体,力图达到人—机合作、机—机合作效果。
2.1 信息发现技术
2.1.1 因特网上的通用搜索引擎技术
搜索引擎技术是实现网上主动信息服务的必用技术。由于网上大量信息资源是实时变更的,所以必须实时搜索。实时搜索采用的方法是:先从索引库中找到与用户需求相符的一组文档,并对这一组文档中最相关的文档做出标记,从这些相关文档中未搜索过的文档出发,直接到因特网上进行搜索。在索取一个新文档之后,对其建立索引,并放到数据库中,然后重新执行用户的查询。查询的结果将按相关性进行排序,接近排序表顶部的新文档将作为进一步搜索的对象。这一过程将重复执行,直到找到足够多的相近文档,使用户满意。
2.1.2 信息过滤技术
信息过滤技术就是用来描述寻找符合用户兴趣的信息处理过程。它根据用户的信息需求对动态信息流进行过滤,仅把满足用户需求的文档传送给用户,排除不需要的信息。目前,网上信息过滤方法包括:
(1)基于内容过滤的技术。基于内容过滤的技术是通过比较资源与用户描述文件来推荐资源。它的关键问题是相似度计算技术。常见的计算方法有两种:布尔模型与向量空间模型。
(2)基于协作过滤的技术。协作过滤技术的关键问题是用户聚类,并根据相似用户来推荐资源。它的核心问题是为当前用户寻找k个最相似的邻居来预测当前用户的兴趣,并解决系统使用初期的稀疏性问题和可扩展性问题。对于稀疏性问题,主要利用用户浏览过的资源内容来预期用户对其他资源的评价,并利用这些评价再进行协作过滤。
2.1.3 Metadata技术
Metadata是“关于数据的数据”或“描述数据的数据”。其用途包括:描述因特网数据内容;使因特网数据便于搜索;允许用户决定他们所需的某些数据;防止一些用户存取某些不良数据:指导用户“读懂”数据的格式、编码、解密等;帮助决定利用数据实例;给出影响数据的法律条件、使用范围、使用的时限等;给出数据的历史过程;给出数据的联系信息;给出与其它资源的关系;对数据管理的控制等。
2.2 动态网络数据库技术
动态网络数据库技术首先是一种基于Web的数据库访问技术。考虑到客户端与数据库的信息交互频繁,对数据库的稳定性和并发响应用户数要求较高,作者在系统开发时采用了开放数据库互联技术、数据绑定技术及远程数据服务技术。
2.3 有关信息组织及服务标准
网上主动信息服务系统主要运用Metadata、XML、Z39.50等网络信息组织规范作为信息组织标准。
2.4 ASP技术
ASP是由Microsoft开发的一项技术。它是一个基于Web服务器端的开发工具,利用它对数据库进行动态访问以达到系统的动态、交互、高性能。
2.5 推送技术
即Push技术。Push技术是为了解决因特网的网路拥挤问题,其程序将根据用户事先规定的设置文件,而不是根据即时要求,送给用户信息(包括更新了的信息)。推送技术主要应用在两个方面:数据库服务器与Web服务器间的Push及Web服务器与用户Client间的Push。在C/S结构中,把客户分为:A型客户——产生数据变化的客户,对数据库进行写操作(插入、删除、更新);B型客户——接收数据变化的客户,对数据库进行读操作(查询)。
2.6 智能代理技术
智能代理又称Agent或Intelligent Agent,是当前计算机科学中的研究热点。本文采用的是一个基于三层架构的具有自动获得领域知识的模型。
3 开发了一个基于局域网的图书情报SDI主动服务系统
最后,笔者还开发了一个面向科研人员特定科研课题的主动服务系统,具有定制推送和反馈信息功能,以及系统管理等。
在本系统的实现过程中借用了一些目前已商品化的技术产品,将它们集成到网上主动信息服务系统中,以实现部分系统功能。具体的开发环境和开发工具如下:①操作系统:Windows NT Server 4.0;②数据库系统,易宝北信信息技术有限公司的TRS数据库系统(包括Database Server、RDBMS及TRSADO);③Web服务器:Windows NT IIs;④网页搜索的工具:TRS*Transcend(包括TRS Robot、 TRS Indexer、Project Manager);⑤编程语言:HTML+ASP。
制作的基于局域网的网上主动服务系统软件,经试验、反复修正并不断完善,证明是可行的。它所提供的为学术研究群体用户定时、定制推送信息的系统,对图书情报机构开展网上个性化定制信息服务有推广、应用价值。
[收稿日期]2006-04-02