●张玉霞(宁波大学 图书馆,浙江 宁波 315211)
科技工作者在使用文献平台查询文献的时候,往往会遇到这样的问题:在键入关键词以后,一些与这个关键词不相关或者相关度比较低的结果也都会出现在检索页面上,使得人们不得不在这些结果中人工筛选,耗费大量的时间,甚至有时还找不到需要的结果。产生这种状况的原因是搜索引擎只进行搜索词汇的匹配,并没有考虑用户的搜索目的。信息推送技术(Push)即是在这样的背景下应运而生。信息推送模式具有及时性、应用面广、对用户没有特殊技术要求的优点;但缺点是信息针对性差,难以满足用户的个性化需求。[1]
本文首先给出了一个完整的智能多Agent科技文献模糊协作推送系统模型结构,然后讨论了利用学习Agent形成用户模糊兴趣库的过程及方法,并最终形成了利用智能多Agent主动向用户提供所需信息的一种模糊智能文献推送系统。该系统在按照用户明确的要求提供所需信息的基础上,以隐性方式对用户访问各种资源所留下的痕迹进行分析,建立并形成了用户真实兴趣和关注领域库,进而准确、及时、高效地为用户提供最符合用户兴趣和要求的有价值的科技文献信息。
Agent实际上是一类代表其设计者或使用者实现一系列目标的计算实体或程序,不仅具有在动态环境下感知周围环境的能力,而且能自治地连续运行。[2-4]Agent处于环境中,它的自治能力使得它不依赖于人工的干预就能做出智能和灵活的反应,响应外界环境的变化。Agent最基本的特性包括自治性、社交能力、响应性和主动性。[5]从软件智能化的角度看,具有上述特征的Agent是自控的、能并发执行的软件过程。它们封装了某些状态和知识,并能经由消息发送与其它Agent通信,可视为分布的对象技术的自然延伸。[6]
Agent能够感知环境的变化并能够对这种变化做出自主的反应,因此其具有自适应性和智能性。但单个智能Agent系统解决问题的能力尚待加强,因单个智能Agent的能力受其知识、计算资源及它与其他主体之间相互关系的制约。为解除这种限制,由此形成了利用多个自主或半自主Agent的交互及合作,在整体上实现复杂问题求解的多主体系统(Multi-Agent System,MAS)。多主体系统是近年来人工智能的研究热点,从物理拓扑上看,MAS是由多个Agent松散耦合的大型网络。系统中的各Agent要对熟悉的环境做出各自迅速的响应,因此具有自主性;同时能够协调与其它Agent的冲突,具有社会性;具有不同目标的各个Agent必须相互协作、协同和协商,对未完成问题最终做出决策,因此也具有协作性。[2]
所谓信息推送技术,就是通过搜索引擎自动搜索用户所需的信息,并将这些信息传送给用户的技术。推送系统具有时效性、主动性和关注用户兴趣的特点,实现了信息主动寻找用户的目的。个性化信息推送服务主要有两种形式:(1) 给用户提供专门定制的个性化信息服务,满足用户个人的不同需求;(2)主动式的信息推送服务:即系统主动将信息推送给用户。[7-9]
将Agent技术和个性化信息推送服务结合源于Agent的主动性、智能性、交互性、社会性等特性,因为这些特性比较全面地体现了个性化信息推送服务的特点,从而为其在个性化信息推送的应用提供了可能。然而在实际应用中,最主要和关键的问题是推送技术中如何对信息进行分类和整理。因为当前互联网时代拥有海量的文献信息资源,大量信息难以用人工处理,但用计算机进行自动处理如果处理不好,也会导致最终无法准确地确定推送对象以及推送内容。基于此,有必要研究将Agent技术和个性化信息推送结合的服务模式,才有可能使基于Agent的个性化信息推送服务得以成功应用。研究表明,其中的一种有效模式就是通过分析用户兴趣,挖掘并建立用户模型,利用智能多Agent技术、问题过滤与反馈技术、数据挖掘等技术形成真正的个性化推送系统。
图 基于智能多Agent的科技文献模糊协作推送系统模型结构
前已述及,MAS具有开放分布式松散耦合的网络环境,相对独立自制的智能Agent处于每个网络节点上。为了在工作中形成整体问题的解决方案,在多个彼此在逻辑上相互独立的智能Agent之间,需要通过共享知识、任务和中间结果并一起协同工作。独立不仅意味着控制、运算数据是分布式的,也意味着知识在逻辑上或者地理上也是分布式的,从而问题可以一起被分担,而松散耦合则表明每个智能Agent都用更多的时间在进行知识处理或自主计算,在网络上传递的不是中间结果,而是由移动Agent所携带的最终结果。因此,个性化推送系统采用Agent技术后,即可将一个本身静态的系统转变成一个有效的、由用户需求驱动的动态信息平台。
本文提出的文献推送模型如图,用多个Agent通过协同合作完成系统推送任务。
基于智能Agent的科技文献协作推送系统模型从结构上分为三个区域:用户域、系统域和资源域,其上运行着相同的Agent运行支撑环境以及不同功能的Agent:[2]
(1) 界面及用户Agent(IA/UA)。界面及用户Agent处于系统前端,是用户与系统人机交互的接口。其基本功能是:接收用户的指令并传递收集到的相关信息,根据用户的需求变化领会用户的检索意图,并生成及更新用户兴趣库,负责协调整个系统完成用户要求的任务并显示最终搜索结果。
(2) 数据传输Agent(DTA)。负责在用户和系统服务器之间以及服务器间直接传递各类数据信息。
(3) 系统 Agent(SA)。系统 Agent负责生成新注册用户的用户Agent;负责协调其他Agent之间的交互、协作与交流,因此是检索信息的搜集与决策中心。
(4) 信息分析Agent(IAA)。IAA负责分类整理驻留于资源域的监控Agent送来的数据,并按照设定的方式将处理结果存储或更新至领域库。
(5) 服务器监控Agent(SMA)。SMA负责监视文献更新之情况,有更新时立即将变动信息通知过滤Agent,并将新增文献信息等重要相关信息通过数据传输Agent主动报告给系统服务器上的信息分析Agent。
(6) 数据挖掘Agent(DMA)。DMA根据给定的挖掘算法,对从用户Agent过来的数据传输Agent所传送的用户信息以及文献信息进行深层次挖掘,挖掘出的文献结果信息通过DTA发送给推送Agent。
(7) 学习Agent(LA)。接收用户Agent所记录的用户相关性反馈信息,根据这些显式或隐式的信息学习并发现用户兴趣,学习结果用于更新修改用户兴趣库和领域模型库。
(8) 检索 Agent(SA)。[2]SA 有两方面的作用,一是根据指令利用搜索引擎在推送平台中搜集与领域相关的各类文献;二是对文献信息共享平台中的资源数据库进行定时信息扫描,以保证将扫描到的数据变化结果能够被用户利用。
(9) 过滤Agent(FA)。FA的主要功能是对检索文献进行分析,抽取文档特征,更新用户兴趣库和领域模型库,对新增文献进行提取新的主题概念和关键词等相关分析,并将其加入领域模型库。
(10) 推送Agent(PA)。当每隔设定的时间到或当增加的文献达到一定数量时,启动PA进行推送文档的选择:通过选择比较领域模型与用户兴趣模型,按照规定的推送算法寻找并增加相似度最大的若干文档推送给感兴趣的用户。
(11) 用户模糊兴趣库(UFIL)。UFIL记录反映用户各兴趣点的模型。通过比较过滤Agent所提供的领域相关信息文档的结构化特征,为推送Agent提供用户的兴趣模型,推送Agent根据用户模糊兴趣库比较用户之间的相似性,从而也可实现向相似用户推送相关文档。
(12) 领域模型库(FML)。在FML中,通过选择领域的主题词及关键词等领域信息作为其基本的兴趣点,用户据此可形成用户模型的基础框架。此外,FML还可为检索Agent调用其他搜索引擎提供相关关键词,过滤Agent根据FML可分析文档特征,从而形成文档的结构化表示,然后再对文献与各主题词的隶属度进行计算,进而实现对文献的分类。
智能Agent个性化信息搜索的核心是用户兴趣模式的发现,其由学习Agent负责完成。
现有大部分推送系统存在的一个主要问题是对用户和文献描述过于简单,它们的属性描述和表达都很不充分。比如用户的兴趣程度本身是个模糊的概念,因此建立用户模糊兴趣模型就显得非常必要。本文将文献在电子商务推送系统中使用的方法借鉴到文献推送系统,结合Agent技术形成了用模糊方法来获取用户兴趣模式的设计思路。
科技文献隶属函数的设计是用户模糊兴趣库产生的第一步。为提高文献属性描述的精确度,需要采用模糊数即[0,1]区间值对文献属性进行描述。由于即使是具有同样研究主题的文献,因其拥有不同的属性,其价值本身也会有很大的差别。因此在将文献信息推送给用户时,应根据文献的阅读率、引用率以及评价等价值信息对其进行排队,排序较高的应获得优先的位阶。
设文献U属性集为A={A1,A2,…,Ai,…,An},属性Ai的初值可由m位专家估计给出,记第k位专家给出的估计值为:Sk(Ai)(i=1,2,…n;k=1,2,…m),则属性隶属度可写为:
这里,属性Ai既可代表专家评分或者读者对文献的评分值,也可代表文献的引用率等受关注程度,或者代表文献来源的影响因子及其收录情况等属性信息。
文献推送系统中的兴趣度,顾名思义,是指用户对某一(类)文献的兴趣强弱,它直接反应出了用户对文献的关注程度。用户兴趣度的计算和表示以及模糊兴趣库的建立通常采用显式和隐式两种方式。如果需要用户参与对文献和文献属性进行的兴趣度评分则称为显式方式。虽然这种方式可形成相对准确的用户兴趣度,但因用户的参与从而增加了用户的负担,因此可操作性差。故本文在建立模糊兴趣库时确定利用隐式方式形成用户兴趣度。
如何使用隐式方式?可直接利用的就是用户的检索历史记录集。因为用户的兴趣会反应在其搜索和阅读行为上面,因此用户兴趣库即可基于此集合进行构造。设U={u1,u2,…,um}为用户检索历史记录集,其中ui=(SI1,SI2,…,SIi,…,SIn),SIi是文献ui对属性Ai的隶属度,可从(1)式得到。因此用户兴趣库可用 I={I1,I2,…Ik,…,Im}表示,其中Ik为该用户对第k项属性的兴趣度:
然而仅仅依赖用户兴趣度来描述用户兴趣还是不够完整和清晰,这可通过对文献信息库和用户的检索行为进行分析而知。对文献推荐系统的研究表明,对文献属性的关注程度和文献属性的权重都应该被描述并被包括在用户的兴趣当中,因此(2)式的模型还做不到这一点,需要对其进行进一步的扩展。
(1)获取文献属性的关注度。用IL表示文献属性的关注度。文献属性关注度实际上可以看树形的,获取时按照从高层向底层逐级进行,而实际计算时则按照相反的方向,即从底层到高层的方式。
(2)获取文献属性权重。实际用户的偏好存在差异,这种差异将导致用户对不同的文献属性有不同的关注或重视程度,此即为文献属性的权重。基于建立准确的用户模糊兴趣库的需要,对每个属性给出不同的权重是十分必要的。具体如下:设文献U属性集为A={A1,A2,…,Ai,…,An},首先分别请Q位专家对Ai给出权重估计值,记第j位专家给出估计值为Wj(Ai)(i=1,2,…,n;j=1,2,…,Q),得最后的文献属性权重为:
式(3)产生的权重还难以实现真正的个性化,因为其没有针对每个人的偏好给出不同的权重。但可以先利用此种方式在推送系统前期获得初步权重,待推送系统正式运行,能够获得大量的用户检索和阅读信息之后,再利用智能Agent取得比较准确的属性权重。
至此,用户模糊兴趣库可用{IL,IQ(Ai)}表示,这里,IL、IQ(Ai)分别表示文献属性的关注度和文献属性的权重。因此用户的兴趣包括了多个文献属性,也可能分布在多个层次中。模型中对于每个属性和量的描述都是一个[0,1] 之间的模糊数,从而实现了用户兴趣的模糊化。此外还要注意到,因用户的兴趣一般只能在一定的时间内是稳定的,所以用户兴趣库也具有时效性,但随着系统的运行,兴趣库会随着用户信息的完善而逐渐趋于稳定。
基于智能多Agent的科技文献模糊协作推送系统中各个Agent也具有MAS系统的特点,则其功能也是相对独立的且可并发运行,因为解决并发问题本身就是多Agent系统的优势,从而形成的文献推送系统在运行速度以及性能方面都会有很大提高。其主要工作流程如下:
(1) 一直处于活动状态的用户界面Agent可以实时处理用户的搜索信息,并负责用户与其他Agent模块的交互。当用户登录系统后,用户信息和搜索请求将由用户界面Agent分别传送给学习Agent和系统Agent;过滤推送Agent完成工作后则返回满足要求的候选文献推送结果,并将其发送到用户界面Agent进行显示;而当用户在做出选择后,界面Agent则负责把用户搜索或阅读记录保存或更新到相应用户的模糊兴趣库中。
(2)检索Agent负责在文献数据平台中搜索候选文献。不满足要求时把提示信息反馈到用户界面Agent,并且通过过滤Agent给用户推送相关领域热点文献;若满足要求,文献搜索Agent就会把结果通过过滤和推送Agent推送给用户。
(3) 学习Agent首先从用户界面Agent获得用户信息和搜索信息,并且将其实时写入到用户模糊兴趣库;而当用户搜索完毕时,用户Agent又将搜索记录传递给学习Agent,学习Agent利用(2)、(3) 式提取用户的模糊兴趣,同时将其保存或更新至用户模糊兴趣库中;此外,学习Agent将根据搜索记录提取和计算出各文献主题所对应的关键词及其权重,并写入领域模型库。
(4)过滤Agent负责对候选文献集进行多属性决策评价,是比较重要的部分。候选文献集和相应文献的模糊属性由过滤Agent从搜索Agent、学习Agent获取,然后利用一定的方法进行评价,按评价的高低对候选文献进行排序、选择并推送,并将结果传递给用户界面Agent,方便用户查看。
如上所述,更新修改后的用户兴趣模型在经过系统运行和相关反馈学习之后,将能更加体现用户兴趣,因此利用修改过的用户兴趣模型进行信息挖掘和推送时将具有更好的准确率。经过整个检索过程,系统不仅学习到了用户的信息兴趣,为个性化信息检索和推送服务提供了基础,而且用户也得到了符合自己兴趣的文献信息,达到了供需的双赢。
[1]孙铁利,等.基于Agent的专业文献智能搜索系统的设计[J].东北师大学报自然科学版,2003,35(4) :19-23.
[2]黄继征.基于Multi-Agent的Web个性化信息推送系统 [J].现代情报,2009,29(8):117-12.
[3]高秀萍,赵伟.基于Multi-Agent的智能信息检索系统模型研究[J].鲁东大学学报(自然科学版),2007,23(3):237-240.
[4]曾子明.基于Agent和CBR的推送模型的研究[J].现代情报,2008(3):209-213.
[5]刘大有,等.Agent研究现状与发展趋势[J].软件学报,2000,11(3):315-321.
[6]向郑涛,等.基于Agent的智能文件分发系统框架研究及实现[J].计算机工程与设计,2006,27(4):571-574.
[7]向郑涛,等.面向Agent的软件分析和设计方法[J].计算机科学,2004,31(6):127-131.
[8]高济.基于知识的软件智能化技术[M].浙江:浙江大学出版社,2000.
[9]吴元斌.面向对象技术与面向Agent技术的比较研究[J].计算机工程与应用,2001,37(19) :137-139.