专利名称:信息提供器的制作方法
技术领域:
本发明涉及一种向用户提供信息的系统,尤其是提供与用户的状态环境(context)相关的信息的系统。
背景技术:
在当前信息丰富的环境下,人们非常关心开发改进的信息检索方法。具体地说,代理技术领域正在大力开发用于搜索、概括、过滤以及显示信息的代理(agent),例如,Davies,Weeks & Revett,1997(“InformationAgents for the WWW”in Software agents and soft computing,Eds H.Nwana,N.Azarmi,Berlin Springer-Verlag)。这些工作大部分(即使不是全部)依赖于该代理具有用户的某些知识。不仅对于代理技术,而且总体上对于因特网而言,用户信息的包含正在迅速变成至关重要的领域,正如最近建议的Open Profiling Standard Dunn,Gwerzmann,Layman& Partovi 1997(“Privacy and profiling on the web”Technical note,WWW consortium 2 June 1997)所描述的那样。无疑,随着数字图书馆、电子商务以及个性化应用的进一步普及,用户信息所起的作用与日俱增。
过滤代理(例如电子邮件优先化代理)是典型的关于信息量管理的第一代代理。Maes 1994描述了这种用于减少信息过载的代理的多种动机、方法以及应用(Maes(1994)“Agents that reduce workload andinformation overload”Communications of the ACM,July)。实际上,这可能就是代理在互联网环境下获得成功的唯一的最重要的原因对于任何一个人来说都有太多的资源以至于难以详尽地查阅,并且事实上,如果某人很幸运的已经浏览了所有这些网页,那么他将发现其中只有一小部分是他所感兴趣或相关的。作为减少工作量的手段,搜索代理(例如Amalthaea)正变得很突出,它们大部分都包括某种允许用户告诉代理他们各自的兴趣以及偏爱的方法。代理技术的进一步发展已经开始考虑预先与用户进行交互,同时了解他们的兴趣。
现在的很多代理都包括某种形式的用户简况编辑(user profiling),例如·Yenta(Foner & Crabtree,1977(“Multi-agent matchmaking”in Software agents and soft computing,Eds H.Nwana,N.Azarmi,BerlinSpringer-Verlag)),·Syskill&Webert(Pazzani and Billsus,1997“Learning andrevising user profilesthe identification of interesting websites”,Machine learning 27(3)),·Personal WebWatcher(Mladenic,1996“Personal webwatcherdesign and implementation”,Technical report ljs-DP-7472,Schoolof computer science,Carnegie-Mellon University,Pittsburgh USA,October.),·Letizia(Lieberman.1995“LetiziaAn agent that assistsweb browsing”,Proceeding,14thJoint International Conference onartificial intelligence(IJDAI-95),Montreal,Canada)·NewSIEVE(Haneke,1997,“Leaning based filtering of textinformation using simple interest profiles”,In P.Kandzia &M.klusch,Co-operative information agents.BerlinSpringer-Verlag”),以及·INSOP(Kindo etal 1997“Adaptive personal informationfiltering system that organizes personal profiles automatically”,Proceedings 15thInternational Joint Conference on ArtificialIntelligence(IJCAI-97)pp.716-721 Nagoya,Japan)。
Syskill&Webert的代理了解用户的简况并利用简况来指导它的对感兴趣网页的建议。用户评估该建议与用户兴趣的相关性,并且代理采用了一个自然Bayesian分类器来相应地修改用户的简况。Amalthaea(Moukas,1997“User modelling in a multiagent evolving system”Proceedings,workshop on Machine learning for user modelling,6thInternational Conference on User modelling,Chia Laguna,Sardinia)采用了加权的关键字表示来用于用户的简况,然后查阅该用户简况以便查询因特网搜索引擎,从而检索用户所感兴趣的网页。Amalthaea的用户简况包括多个信息过滤代理(IFA),每个代理都专用于一个特定主题。这些IFA可以由多种方法构造(例如通过分析用户的喜好网页的热门列表;通过观察用户与它们的浏览器之间的交互(使用网页存取历史记录)等等)。进一步,IFA可以不断改进,因此随着用户与Amalthaea之间的不断交互,它们可以更适用于用户。
很多网站都会搜集关于用户的信息以便于a)了解人口统计学信息,b)从网站提供个性化服务和信息。为了使得网站能够维护忠诚用户基础,这一技术变得更加重要。事实上,Firefly,Autonomy以及OpenSesame!最近都已经发布了能够具有这种适应性的产品。
因此非常清楚的是,为了向一个用户提供他所感兴趣的服务和信息,掌握这个用户的简况是至关重要的。虽然上述的系统使用了各种技术和信息源,可是并不是很多系统都试图根据用户的状态环境在简况中布置关键字或者标识符。用户在一个时刻的状态环境基本上决定了用户此时感兴趣信息的类型和内容(例如如果一个用户正在工作,则用户就会想知道与工作相关的兴趣),并且在该领域内的一些进展会有助于减少提供给用户的信息量。
本申请人的专利EP807291(IPD case ref A24976)教导了一种基于软件的系统“JASPER”代理,其中存储了与用户感兴趣文档有关的元信息,例如文档的URL以及表示文档内容的关键字。JASPER还存储了用户简况,其中包括表示用户兴趣尤其是信息类型的关键字,并且JASPER还在用户之间进行了合作过滤以便于识别出可能具有共同兴趣的用户(将用户分组)。JASPER在不同用户组之间比较元信息,并且如果组A中的一个用户识别出一个文档与其相关,则JASPER会将与该被识别出的文档有关的元信息提供给组A中的其它用户(例如通过email)。该用户简况可以根据状态环境(例如工作,休闲的类型)、按照类别存储关键字,并且JASPER还可以根据检测到的用户所查看信息类型的变化对这些类别的内容进行改变(例如在针对一个状态环境存储的关键字之间进行比较并将其与被查看的文档中的关键字进行比较)。因此,JASPER为了发布信息以及在各个用户组之间进行识别,而对表征一个状态环境的一组关键字进行识别。
在以下的说明中,使用了术语“兴趣”、“用户简况”、“信息源”、“状态环境”、“例示兴趣”,以下是它们的定义“兴趣”包括代表一个主题的诸如一组关键字和/或图像和/或音乐的与主题有关的数据。通常,图像和音乐附带有某种形式的描述,例如音乐“Faure安魂弥撒曲,写于1887年,该片断反映Faure对死的想象”。在这种情况下,可以从该描述中提取关键字,而且该关键字可以用于描述兴趣(例如,主题Impressionist,Death)。
“用户简况”包括针对一个用户存储的一个或者多个兴趣。
“信息源”包括一个含有例如文档的信息的实体。
“状态环境”包括用于描述用户的当前状态的表示-例如状态(工作,玩)、位置(在家,在外)以及陪伴(同事)。
“例示兴趣”,在识别了用户状态后,例示用户的状态环境-例如识别出用户在家工作,所以将状态环境例示为工作、在家。然后,根据例示的状态环境来过滤兴趣,并将这些兴趣称为例示兴趣。
发明内容
根据本发明的第一方面,提供了一种根据用户的兴趣主题来选择信息源的方法,该兴趣主题可以由多组与主题有关的数据来识别,每组数据中都具有至少一个状态环境的指示,在该状态环境中该组数据是用户感兴趣的,该方法包括步骤(i)跟踪用户的状态;(ii)从被跟踪的状态中识别出一个或多个用户状态环境;(iii)根据在至少一些被识别出的状态环境与所述的状态环境指示之间的预定关系,选择出至少一些与主题有关的数据组;
(iv)根据被选中的与主题有关的数据组生成一个信息源列表,以及(v)将所述列表发送到一个与所述用户相关联的终端,以便允许所述用户选择感兴趣的信息源并由此访问来自所述信息源的信息。
在至少一些被识别出的状态环境与所述的状态环境指示之间的预定关系包括二者之间的一致性,在一个实施例中,这种关系表示被识别出的用户状态环境与指定给与主题有关的数据组的状态环境的指示是相同的。
已知的系统利用了多个静态的“用户简况”,系统可以根据用户的位置从中进行选择。这就与本发明的实施例有本质上的不同,其中根据用户被识别出的状态环境“动态”的生成一个包括与主题有关的数据组的简况。本发明实施例的优点就是减少重复的数量很有可能的就是一个兴趣可能与多个状态环境相关(例如游泳可能包括“在家”、“玩”、“周末”甚至是“工作”)。如果有“n”个简况,则系统就必须将各个兴趣都复制到与其相关的每个状态环境中。在本发明的实施例中只有一个“简况”,并且计算简况中的各个兴趣与当前状态环境或与兴趣状态环境之间的相关性。兴趣与状态环境之间的相关性被用来a)确定该兴趣是否该被用于为该状态环境收集信息或b)对返回的信息进行加权。
信息的加权使得能够作为所计算的相关性的函数来对信息进行评定。这样,在用户的家的状态环境中,游泳就可以被视为与用户高度相关,并且将与游泳兴趣有关的信息置于列表的顶部。相反,在工作状态环境中,游泳可能被视为一点儿也不相关,因此游泳信息被置于列表的底部。
跟踪步骤(ii)包括以下步骤通过接收用户的跟踪信息来跟踪用户的位置,以及根据预定规则把跟踪信息与预定的位置信息进行比较,该预定的位置信息至少定义了一个“在家”状态环境和一个“工作”状态环境,并且预定的规则包括跟踪信息和预定位置信息之间的条件。
最好的就是跟踪步骤(ii)还进一步包括从临时时间表接收用于用户的时间表信息,并且用在比较步骤中的预定规则还进一步包括与时间表信息有关的条件。另外,跟踪步骤(ii)可以包括从位置传感器、加速传感器、压力检测装置、温度传感器、亮度级检测装置之中至少一个接收输入。
根据本发明的第二方面,提供了一种根据用户状态检索针对用户感兴趣主题的信息,并通过终端将该检索到的信息提供给用户,其中信息的提供包括创建一个含有至少一些所检索到的信息的可视页面,该方法包括步骤(i)根据上述方法选择信息源;(ii)根据预定的规则来组织所检索到的信息,其中至少一个规则包括用户的状态,以及(iii)存储所组织的信息,因此,当创建一个可视页面时,根据终端的显示能力来检索对所述存储信息的选择。
根据以下参考附图对本发明优选实施例所做的说明,本发明的其它方面、特征以及优点将变得更加明显,附图包括图1是示出根据本发明的通信系统的物理层或传输层的原理图;图2是示出根据本发明的信息提供器的各部分的原理框图;图3是示出产生由构成图2所示信息提供器的设备的一部分的简况编辑器执行的动作的装置的示意框图;图4是示出输入到构成图2所示信息提供器的设备的一部分的状态环境确定装置的各外部输入的原理框图;图5是示出根据本发明确定用户状态环境过程中的各步骤的原理流程图;图5b是示出输入到图4所示状态环境确定装置的其它各外部输入的原理框图;图6是示出由构成图2所示信息提供器的设备的一部分的第二检索装置执行的各步骤的原理流程图;图7是示出与监控装置部分配合的、图2所示信息提供器的第二检索装置的原理框图;以及图8是示出构成监控装置部分的一部分的贝叶斯(Bayes)网的原理图。
具体实施例方式
综述参考图1,在物理层,用户U1的通信环境包括用户携带的蜂窝式电话T1和个人数字助理T2;以及包括调制解调器的计算机工作站T3。工作站T3最有可能位于远离用户U1某个距离的位置。
在这种情况下,工作站T3包括连接到距用户不同距离的其它终端(仅示出一个T4)的局域网(LAN)服务器。与各种终端进行通信的是构成不同概念网络(尽管其中一些或者全部可能被共同拥有)的部分的一些不同通信信道。工作站T3还连接到数据库服务器DB1、DB2,数据库服务器DB1、DB2如图所示位于与终端T3相同的LAN N3上;显然,数据库服务器DB1、DB2可以位于通过一个或者多个交换机和/或者路由器(未示出)与LAN N3相连的LAN上。
公用交换电话网(PSTN)N1通过网关G1(例如市话交换中心或国际交换中心)与综合业务数字网(ISDN)N2互连,而且通过ISDN线L1连接到终端T3,并因此连接到局域网N3。公用陆地移动通信网(PLMN)(例如GSM-兼容数字蜂窝网)N4通过网关G2连接到PSTN N1和ISDN N2。PLMN的基站B1在用户U1所在的建筑环境中提供Pico小区,而基站B2在同一个一般区域内提供一个小区。因此,网络N1-N4能够以不同速率将数据发送到各种终端T1-T3通过PLMN N4发送低速数据,通过PSTNN1发送高速数据,通过ISDN N2或LAN N3发送更高速数据。
例如保持在服务器IS1-IS4上的信息源分布在网络N1-N4上。尽管仅示出4个服务器,但是还可以设想其它分布情况。用户U1希望从系统内的任何一个或者所有信息源接收有关信息。
实施例的综述用户U1在某个时刻的状态环境基本上确定了用户U1此时正感兴趣的信息类型和信息内容,例如,如果用户U1在工作,则用户U1很可能想知道与工作有关的兴趣。如果根据用户的状态环境对信息进行分类和显示,则它可以做到3件事首先,减少对用户U1显示的信息量,其次,用户不必手动过滤与其当前状态环境无关的信息,再次,用户不会被与其当前状态环境无关的信息所烦扰。因此,便于根据用户的状态环境来过滤信息,从而减少与用户无关的信息量。
参考图2,作为本发明实施例,信息提供器200位于终端T3。信息提供器200主要包括简况编辑器201,用于产生包括用户兴趣的简况;接口装置203,用于连接用户;索引生成器205,用于对存储在服务器IS1-IS4上的信息源编索引;以及检索引擎207,用于根据用户的状态环境来检索信息。
以下将更详细说明信息提供器200的各部分,但是概括地说,简况编辑器201通过接口装置203从用户接收兴趣信息,产生用户的个人简况,将个人简况存储到简况数据库DB1内。包括简况的兴趣附带有通常用于描述用户状态环境的属性,例如在家/在外、工作/玩。如上所述,索引生成器205用于对存储在服务器IS1-IS4上的信息源编索引。
检索引擎207包括状态环境确定装置209、第一检索装置211以及第二检索装置213。状态环境确定装置209从外部信息源接收与用户U1有关的信息,例如,用户位置、一天中的时刻,和来自日记的一个或者多个输入,利用这些信息确定用户U1的状态环境。设置第一检索装置211用于从简况编辑器201产生的个人简况中检索信息,这样,一旦状态环境确定装置209确定了用户的状态环境,第一检索装置211就可以检索与该状态环境有关的兴趣。第二检索装置213利用第一检索装置211检索的与状态环境有关的兴趣来查询索引生成器205并检索对应于这些查询的信息源。
一般的,信息提供器200从一个或多个传感器和/或数据输入装置接收输入,并利用这些输入来确定以及例示用户的状态环境。一旦已经对状态环境进行了例示,就会识别出与被例示状态环境有关的兴趣,并且针对这些兴趣检索信息。实施例可以动态地更新和例示用户的状态环境,因此可以确保用户能够自动接收适于他的当前状态环境的信息。
本发明实施例的优点包括在终端上把状态环境从用户的行为分离,以便于确定状态环境。本发明的实施例能够确定用户的状态环境是否记录在终端上,使用输入例如位置跟踪装置,日记条目,天气预报等来确定状态环境。事实上,持续的对状态环境进行监测而不需要任何与用户之间的显式交互。
进一步的优点还包括根据确定的状态环境对检索到的信息进行评定。例如,当针对所有用户兴趣检索信息时,标记到用户兴趣上的属性信息与用户最新例示的状态环境一块被用来对检索到的信息进行组织,并将其提供给用户。在一个实施例中,针对所有检索到的信息创建一个信息源概要的候选列表(shortlist),并且将下述检索到的信息置于候选列表的顶部,其中这些检索到的信息对应于具有同最近例示的状态环境相匹配属性的兴趣。
另一个优点就是实施例能够用将来的状态环境来对状态环境进行例示,因此,例如,用户可以看到与他的周末计划相关的兴趣。
下面的工作实例说明了实施例的功能性与优点假定用户具有包括下列几组兴趣的用户简况移动因特网(工作)WAP(工作、玩)风险投资家(工作)汽车运输(工作,在家)电视节目单(在家,玩)野鸟习性观察(玩)出去吃饭(昂贵食物)(玩)足球-Startreck United(玩)Tattingstone White Horse(玩,在家)在08:00点,在上班途中时,用户U1接收通知其在Martlesham附近发生局部交通延误的SMS告警。用户不顾该报告,继续前进并因交通堵塞而受阻。用户U1感到烦闷,决定通过其WAP电话从信息提供器200观看新闻。用户滚动第二检索装置213发送的候选列表,并标记他随后希望阅读的感兴趣新闻。缺省情况下,对用户U1显示与工作有关的兴趣,因为状态环境确定装置209已经确定了用户要工作的状态环境。然而,存在到与休闲有关的兴趣的链接。
用户U1有一个在09:00点会见风险投资家的会议安排。用户U1已经将与风险投资家兴趣有关的信息设置为高优选值,因此候选列表在其顶部包括与风险投资家有关的信息。幸运的是,与风险投资家有关的新闻文章的描述出现在候选列表中,因此用户U1可以在09:00点开会之前阅读该文章。
在这一天的晚些时候,在用户U1坐在办公桌前感到有些烦时,开始考虑晚上的活动。用户U1将状态环境变更为玩/在家的状态环境,因此,对用户U1显示包括该晚的电视节目、有关其足球队的新闻以及下一次野鸟习性观察活动的通知在内的各项目的候选列表。
在周末,用户U1参观Norwich。根据用户的银行业务细节,简况编辑器201包括了关于NatWest自动提款机位置的兴趣,而且根据用户的汽车运输兴趣,简况编辑器201包括了关于加油站位置的兴趣。对所有状态环境(在该实施例中对工作、在家、玩、在外)添加这两个隐含兴趣。状态环境确定装置209确定用户的状态环境为在外和玩,而且根据跟踪装置确定的用户位置,第二检索装置213检索详细说明位于Norwich附近的昂贵餐馆、NatWest自动提款机以及加油站的位置的信息。
简况编辑器201信息提供器200具有预定、有限数量的兴趣,可以从这些兴趣中选择与用户U1相关的兴趣。这些兴趣包括在下面的非穷举的兴趣种类列表中·一般兴趣例如,时事、金融、家庭、商务、休闲、爱好、俱乐部等;·地址例如,家乡、休假地、商务旅行、家里等。
存在一般兴趣的“原版拷贝”,这些兴趣通过连接符互连为一个非循环图。将原版拷贝存储到简况数据库DB1的数据库表中。每个兴趣(一般类型或位置类型)具有一个或者多个与兴趣相关联的预定关键字,而且还将这些关键字存储到简况数据库DB1内并链接到其相应的兴趣。(关键字用于检索与用户相关的信息,以下将对此做更详细说明)。每个兴趣具有唯一标识符(ID),而且非循环图中的连接符将各兴趣链接到一起(以便使兴趣所包括的关键字至少部分地取决于其它哪个兴趣链接到该兴趣,以致例如兴趣I1从其父兴趣或子兴趣那里承袭预定数量的关键字)。
设置简况编辑器201以从用户接收兴趣信息,并产生包括用户兴趣和与其兴趣有关的关键字的简况。简况编辑器201还可以根据预定规则隐式识别各兴趣。
简况的显式修改用户可以显式输入表示用户的兴趣的单词和/或短语,由此,简况编辑器201尝试在原版拷贝中查找与该输入匹配的兴趣。这样就需要通过非循环图搜索该输入与兴趣之间的匹配,有可能的话可以使用WORDNET(词法参考系统)或者类似系统来扩大搜索。如果简况编辑器201不能定位与输入匹配的兴趣,则用户U1可以浏览这些兴趣并手动选择兴趣。
简况编辑器201还可以与语法分析器(未示出)配合将输入的关键字和/或短语翻译为一个或者多个预定兴趣;许多已知系统可以对输入进行语法分析并将语法分析的输入翻译为简况编辑器201可以理解的格式。
此外,用户还可以随时访问其简况。因此,用户可以看到其简况,看到其例示状态环境,直接修改其简况,甚至修改用于根据简况中的兴趣检索信息的信息源。
简况的隐式修改简况编辑器201可以包括一个或者多个与兴趣互相相关的规则,因此,如果兴趣A与兴趣B链接在一起而且用户U1具有兴趣A,则简况编辑器201将自动将兴趣B包括在用户的简况中。规则还可以基于简况编辑器201从其它用户和/或外部信息源检索的信息。
后者尤其可以用于对用户提供与服务有关的信息-例如,如果信息源IS1-IS4之一包括与银行有关的信息,则信息提供器200就可以将与银行有关的信息传送到用户。然而,为了传送与用户相关的与银行有关的信息,信息提供器200需要知道用户U1在哪个银行开户了。显然,用户U1可以显式输入该信息,但是如果不直接需要用户操作就可以取出该信息,则这可能对用户U1非常方便。为此,可以进一步设置简况编辑器201与万维网浏览器(未示出)配合,万维网浏览器位于用户U1使用的每个终端T1、T2和T4上。具体地说,简况编辑器201可以将用于网站跟踪的软件下载到终端T1、T2、T4的硬盘驱动器上。假定用户U1“在线”进行银行交易,则下载的软件可以访问用户银行的URL,而且简况编辑器201可以根据此检索银行名称,将其添加到位于简况数据库DB1中的用户简况中。作为一种选择,如果简况编辑器201访问了用户使用的第三方服务和/或系统的计费信息,则可以设置简况编辑器201从与第三方有关的计费系统请求银行详情。第三方系统可以位于网络N1-N4之一上。
用户U1可以废弃隐式推断的任何兴趣。
设置简况编辑器201以对每个兴趣标记一个状态环境类型。在一个实施例中,描述了两类状态环境,即状态(state)和位置(situation)。在其最简单形式中,这些状态环境类别有两种状态“状态环境”有工作和玩,而位置状态环境有在家和在外。其它实施例可以包括不同类型的状态环境,例如朋友/家庭;独自/群体;室内/室外;雨天/晴天;有风/无风;白天/夜晚;静止/移动;工作日/周末,等等。本领域技术人员应该理解,其它的状态环境也是可能的。
对于每类状态环境,某些兴趣可以被标记两种状态环境-例如,用户U1可能对利用计算机进行工作和玩感兴趣。可以显式或隐式输入状态环境类型,而且可以利用缺省状态环境类型标记每个兴趣。
一种表示状态环境与兴趣之间相关性程度的方式就是对状态环境进行加权,例如采用-1与+1之间的数值。该加权数值表示一个状态环境对一个兴趣来说有多重要。在当前实施例中,所有的状态环境都成对表示-例如工作/玩,并且权重-1表示对工作类型的加权而+1表示对玩类型的加权
表1
各个兴趣都可以同一个“兴趣状态环境对象”相关联,该对象主要包括表1中所示状态环境的值。当识别出用户的状态环境(这将在下面详细描述)时,可以生成一个“用户状态环境对象”,该对象对当前识别出来的用户状态环境进行说明(例如,如果用户被识别为在家,并且在工作,则他的状态环境对象就包括工作/玩=-0.1;在家/在外=-1.0)。然后把该用户状态环境对象与兴趣状态环境对象进行匹配并且用来识别一个或多个兴趣,这些兴趣的权重与用户状态环境对象的权重相匹配。
存储简况在为用户U1选择一个兴趣时,简况编辑器201将对应于该兴趣的ID的标识符与该兴趣在树形分层结构中的位置一起输入到用户U1的数据库表中。在将数据存储到数据库、在数据库中查询数据以及从数据库接收数据的过程中所需的处理过程对于数据库管理技术领域内的普通技术人员是公知的。关于地名兴趣,例如UK的地名,存在地名的“原版拷贝”,它们分别附带郡信息,而且利用从原版拷贝检索的国家/郡/地点动态创建对于地名的兴趣。
可以将兴趣与诸如股票价值和位置的属性一起存储。设置股票价值属性表示用户U1对特定兴趣的股票价值感兴趣(例如,兴趣可以是一家公司)。设置位置属性表示用户U1对与兴趣有关的位置信息感兴趣(例如,兴趣可以是银行,使得规定诸如Bognor Regis的位置属性精确确定了对位于Bognor Regis的银行的兴趣。)其它属性包括技能、隐私、相关性权重、优先级权重、时间、日、信息量、发送信道、布局、信息源质量以及书签。存在每个属性的缺省设置,但是用户U1可以通过接口装置203(以下说明)改变其中任何一项设置。
简况编辑器201还可以将问题“推”到用户U1-例如根据预定规则对用户建议兴趣。预定规则包括隐式简况编辑信息、兴趣非循环图的变化、系统管理员发出的信息以及用户U1提供的反馈。简况编辑器201监测用户对问题的响应,并根据该响应修改规则。
参考图3,简况编辑器201因此还包括简况修改器301,它用于从大量输入302(例如,协作过滤的输出、系统兴趣等的变更,或者用户U1的反馈)中接收信息并根据这些输入302创建动作305。这些输入可以附带有诸如将信息推到用户U1的时间、与兴趣类型有关的优先级状态等条件。简况修改器301访问预定的函数列表,并根据输入302的性质和相应条件,选择函数之一以创建动作305。存储在该列表内的各函数包括“用户交互函数”,包括用于激活建议和问题以提示用户的功能(利用问题类型限定);以及兴趣的“系统函数”,包括用于添加新兴趣、删除参考兴趣、修改参考兴趣等的功能。“用户交互函数”包括通过接口装置203将信息推到用户,并且可以利用包括“在试验中”和“回复原始设置”等的问题类型来标记“用户交互函数”,而且可以根据请求的优先级将“用户交互函数”发送到用户。“系统函数”包括对存储的用户简况实施变更。在以下例子中说明简况编辑器201的该进一步功能通过对各用户之间的兴趣进行协作过滤,将兴趣I1送到简况修改器301。简况修改器301创建建议动作305,该建议是应该把新兴趣I1添加到用户简况,而且,因为该兴趣是新兴趣,所以简况修改器301对该建议指定低优先级条件。然后,将建议动作305推到用户U1。通常,还利用“在试验中”来标记新兴趣,以致推到用户U1的消息的内容为“我们认为你可能有意将新兴趣I1添加到你的简况内。
这样做的效果是使象Story1、Story2、Story3的故事返回你愿意将兴趣I1添加到你的简况中吗?请回答是、否、我试验一个星期”。
简况修改器301还可以从用户U1接收响应。如果用户选择选项“我试验一个星期”,则将一个消息发送到简况修改器301,简况修改器301识别反馈的类型,存储该消息并根据创建用于用于提示某个用户反馈的动作的定时器条件。一旦定时器过期,简况修改器301就产生反馈动作305用于进行反馈,关闭定时器以及从简况修改器301中删除该消息。推到用户的消息的内容为“上个星期RF建议将兴趣I1添加到你的简况中。
你保持此变更吗?请回答是或否(如果你的回答是否,则你将回复到你的原始设置)”简况修改器301接收用户U1的反馈,识别反馈的类型。如果反馈包括改变用户简况,则根据系统函数产生系统动作305,并修改简况,如上所述。
其它输入302包括系统管理员输入-例如,应该针对用户U1驾驶的汽车的制造商询问用户U1。
简况修改器301还包括用于存储用户U1的反馈(未示出),特别是用于保持列出了用户U1不感兴趣的各兴趣(列在删除兴趣列表上)的兴趣列表的装置。因此,每当接收关于一个新兴趣的输入302时,简况修改器301将新兴趣与一系列删除兴趣进行比较(而且不对删除兴趣创建动作)。除了对输入的输入302与删除兴趣进行严格比较外,对于删除列表内的兴趣,简况修改器301还可以访问词法WORDNET或者类似系统,将新请求与WORDNET识别为与删除兴趣等效的项目进行比较。
接口装置203接口装置203控制用户U1与信息提供器200之间的信息通信。如图1所示,通过3个终端T1、T2和T3之任一个,用户U1可以例如与位于终端T3的信息提供器200通信。可以设置两个终端T1和T2以利用WML发送和接收数据(终端T1和T2分别具有蓝牙发送与接收装置,因此终端T2可以接收通过终端T1接收的信息),而且可以设置第三终端T4以利用HTML发送和接收数据。终端T1、T2和T4均可以运行万维网浏览器。在已知的方式中,用户通过浏览器上的表单输入数据,以执行下列动作,包括(非穷举列表)·修改构成用户简况的兴趣;·修改用户的状态环境;·观看推到用户的项目;以及·选择推到用户的项目。
该表单基本上可以捕获用户输入的任何参数,并将捕获的参数发送到存储在状态T3上的信息提供器200的其它部分。关于进一步信息,请参考“Client/Server Programming with Java and Corba”,2ndEdition,R.Orfali and D,Harkey,pp.239-242。
在用户U1对用户简况显式添加或者删除兴趣时,该表单将该兴趣与关于该兴趣将执行的动作(例如,添加、删除)一起提供到简况编辑器201,简况编辑器201如上所述对该信息进行处理。该表单可以包括下落式菜单等,以便用户在预定列表中进行选择,预定列表特别适用于定义电影、食品等方面的兴趣,因为用户U1可以选择他感兴趣的电影,或者可以选择他感兴趣的食品种类。
作为一种选择或者附加地,可以对接口装置203配置用于显示候选列表和/或用于通过语音媒体与用户U1交互的至少一部分的装置(未示出)。
索引生成器205索引生成器205为存储在信息源服务器IS1-IS4上的每个信息源创建索引,并该信息存储到索引数据库DB2上的索引表中。每个索引表至少包括一些如下信息1.信息源的名称(例如,文档名称)。
2.从信息源提取的关键项目。
3.信息源的网络地址(URL)。
4.信息源的地区记录。
5.创建信息源的日期和时间。
6.信息源的状态环境属性-例如,是否与工作、玩、在家或者在外等等相关(可选)。
地区记录是以纬度、经度和高度确定的位置,以及一个定义该记录有效的地区的三维形状,所定义的位置在三维形状的中心。可以分别配置与各信息源相关联的地区。因此,用户可以在较大范围内容易地访问某些信息(例如气象信息),而对于除了狭窄定义的地区以外的所有区域,可以滤除更具位置特殊性的其它信息(例如,本地服务信息)。
索引生成器205索引的信息类型包括新闻数据、股市价单、Lycos、气象数据、分类广告、赛事指南、诸如电影院节目单的娱乐信息、逗留地点、用餐地点、体育、金融信息、例如商场导购的购物信息以及关于例如自动提款机位置、加油站位置的服务方面的信息。对非结构化信息源建立索引的方法有多种,而且所采用的特定方法对于该实施例并不重要。因此,可以采用能够根据上述定义的索引表检索并存储数据的任何装置(请参考lan H.Written,Alistair Moffat Timothy C.Bell MorganKaufmann编写的“Managing Gigabytes”;ISBN1558605703,来对当前在搜索和检索技术中采用的多种方法有一个总览)。索引生成器205以规则间隔访问信息服务器IS1-IS4,以便该索引表是最新的(根据信息源的性质以及它变化的速率可以是每日、每小时、每周)。
检索引擎207检索引擎207的功能是实时确定并例示用户的状态环境,以从简况编辑器201检索与例示的状态环境相关联的兴趣并根据这些兴趣利用索引生成器205从信息源IS1-IS4检索信息。
在第一阶段,检索引擎207确定并例示用户的状态环境,第一阶段由状态环境确定装置209执行,并对于两个状态环境,即状态和位置,参考图4说明第一阶段。状态环境确定装置209包括用于定义每个状态环境类型的可配置列表400-例如可以利用一个位置将HOME(在家)定义为纬度值和经度值,可以将AWAY(在外)定义为离家大于n1 Km的任何位置。同样,可以利用一天中的时间和位置来定义WORK(工作),可以利用一天中的时间和离开工作大于n2 Km的任何位置来定义PLAY(玩)。设置状态环境确定装置209以从例如日记401、时钟403以及个人跟踪装置405之类的信息源接收输入,并将这些输入与预定列表内的信息组合在一起以获得用户U1的状态环境。图4所示的例子仅是示意性示出可以与状态环境确定装置209合作的源的类型(以下给出更多例子)。
时钟403可以是位于终端T3上的系统时钟。日记401可以是Micorsoft OutlookTM日历,或者客户建立的日记,状态环境确定装置209可以在预定时间向其提交查询,对于用户的计划动作请求带时间标记的数据。关于与OutlookTM连接的信息请参考“Programming MicrosoftOutlook and Microsoft Exchange”by Thomas Rizzo,Microsoft Press;ISBN0735605092。日记401中的各条目通常包括短语,需要将该短语进行语法分析以成为被状态环境确定装置209识别的格式;可以配置日记401以与语法分析器交互并相应地翻译各条目。
用户U1携带个人跟踪装置405,并使其位置位于要跟踪的通信环境内。例如,在此实施例中,跟踪装置405包括承载了用于识别用户的数据的芯片承载卡或“智能卡”,并对承载读卡器的一些或者所有终端T1-T5进行配置以读取该卡。作为一种选择,它可以包括“智能标志”转发器,在建筑内跟踪其位置。具体地说,工作站T1-T4和蜂窝式电话T1携带这种智能卡读取器。将其它智能卡读取器安装在建筑内的入口门处,并将它们连接到LAN N3以在其上发送信号。此外,除了蜂窝式电话通信部件外,蜂窝式电话T1优选包括全球定位系统(GPS)接收机,并对蜂窝式电话T1进行配置以周期性地获得其位置并发送其位置信号,正如EP0467651(Motorola)所公开的那样。作为一种选择,蜂窝式电话T1可以附加地利用诸如采用差分GPS定位方法的陆基定位信号,或者单纯利用诸如差分GSM三角测量信号的陆基定位信号进行定位。作为另一个选择,用户可以手动输入他的位置。
一旦状态环境确定装置209从日记401、时钟403和跟踪装置405以及其它这种装置(未示出)采集了信息,就将该信息组合以例示用户的状态环境。作为例子,对于状态环境工作/玩;在家/在外,参考图5定义该处理过程·S5.1取当前时间(t)并与对工作预定义的时间段(time slots)进行比较(开始时间T1、结束时间T2、额定工作日)i.如果(T1<t<T2)而且日记信息与工作有关,则状态环境WORKii.如果(T1<t<T2)而且日记信息与玩有关,则状态环境PLAY(例如,休假日)iii.如果(t<T1或t>T2)而且日记信息与工作有关,则状态环境WORK(例如,在晚上工作)iv.如果(t<T1或t>T2)而且日记信息与玩有关,则状态环境PLAY(例如,晚上空闲)·S5.2将位置数据转换为纬度和经度(Ii,Ij)并与家宅位置(Ioc1,Ioc2)进行比较(i)如果(Ioc1<Ii<Ioc1+n1)“与”(Ioc2<Ij<Ioc2+n1),则状态环境HOME(ii)如果(Ii>Ioc1+n1)“或”(Ij>Ioc2+n1),则状态环境AWAY使得S5.1(i或iii)与S5.2(i)使WORK,HOME(W,H)为状态环境S5.1(i或iii)与S5.2(ii)使WORK,AWAY(W,A)为状态环境S5.1(ii或iv)与S5.2(i)使PLAY,HOME(P,H)为状态环境S5.1(ii或iv)与S5.2(ii)使PLAY,AWAY(P,A)为状态环境在另一个实施例中,个人跟踪装置405包括一个网络电话,该网络电话包括一个数字增强无绳电话(DECT)以及一个移动手机,其中该DECT电话同PSTN相连并且移动手机与GSM/GPRS/UMTS网络相连。当DECT电话检测到有一个手机在其范围内,则它就会从移动手机得到小区ID并通过固定网络将其传给网络中的服务器,该服务器包括状态环境确定装置209。消息格式可以是SMS、DTMF或者是其它方便的标准格式。该手机也可以含有一个蓝牙和或802.11无线局域网模块,一个数字off-air电视接收机以及可能的一个数字移动或固定照相机。如果DECT电话位于用户HOME的位置,则只接到来自手机的信号就表示用户就是HOME的附近。这样就可以对状态环境确定装置209进行设置,使得如果它接收到了任何来自DECT电话的信号,则用户的状态环境就会被设置为在家(HOME)。或者,它将被设置为接收一个表示移动手机的小区ID的信号,并且将其转换为经度和纬度,并如参照图5a所述那样使用它。
如上所述,除了关于状态和位置例示用户的状态环境外,可以确定附加状态环境信息,例如“外部”、“刮风”、“下雨”、“有压力的”、“忙着”等。下面的点1-7所列装置的输入可以用于识别该附加的状态环境信息,其中一些装置示于图5b。
1.来自用户的信息用户U1可以使用预定键,或者键序列通过终端T1表示他正在分神或者在移动中;2.气象信息;3.光能级检测器,例如可以从Remote Measurement Systems 2633Eastlake Ave E,Suite 20,Seattle wA 98102获得的光电检测装置(例如PVC-1装置)4.热电偶传感器,例如可以从TC Ltd(TC Ltd,P.O.Box 130,UXBRIDEG UB8 2YS,England)获得的温度指示器-有助于确定用户U1是在外部还是在内部;5.代表压力水平的输入-例如监测体温或者用户与其终端T1、T2、T4的交互。本申请人的第WO00/25565号专利申请公开对监测用户/终端交互的方法进行了披露(IPD案号A25709);6.代表噪声电平的输入-可以通过分析利用终端T1上的音频输入接收的音频信号来确定;7.来自附加物理传感器的输入,这些传感器通过串行接口(未示出)连接到终端T1,包括来自如下的输入°低加速度检测器501(例如,ADXL202,用于测量两个方向上的小作用力产生的加速度);°高加速度检测器503(ACH04-08-05,可以从MeasurementSpecialties Incorporated(可以通过因特网上的统一资源定位地址(URL)http//www.msiusa.com查询)),它用于测量3个方向上的大作用力产生的加速度;
°方向检测器505(例如,指南针、HMC2003,可以从Honeywell获得(可以通过URL http//www.ssechoneywell.com查询),用于给出终端T1方向的绝对测量值);以及°方向与速度检测器507(采用可以从Murata ManufacturingCompany Ltd.(URL http//www.murata.com)获得的ENC压电振动陀螺仪(以GYROSTAR注册商标销售的部件号S42E-2))。加速度检测器、方向检测器以及速度检测器可以通过复用器509(MUX)连接到状态环境确定装置213。
物理数据的复杂性使得利用简单规则从所有这些输入中确定用户的状态环境是不可靠的。在根据输入1-7的组合例示状态环境时,可以利用隐藏马尔可夫模型(HMM),或卡尔曼滤波器更准确地确定用户的状态环境。du Plessis,R.M.1967“Poor man’s explanation of KalmanFilter or How I stopped worrying and Learned to Love Matrixinversion”对卡尔曼滤波器的结构和应用进行了很好的说明。
该被例示的状态环境可以很方便的被表达为用户状态环境对象,使得状态环境确定装置209应该以“面向对象”的方式进行操作;也就是说,状态环境数据应该被“封装”以便于只有相关联的控制程序能够改变它,响应“消息”进行动作(但是,这些消息却不需要被物理传输而可以仅仅是通过单个计算机的堆栈传递的数据)。但是,很容易理解的就是面向对象的格式对于本发明来说是无关紧要的。
就像上面所主要描述的,一个状态环境对象包括用于各个可能的状态环境类型的、表示被确定的状态环境的数值。因此,对于一个在下雨并刮风的周末处于户外的用户来说,该用户状态环境对象可以包括表2
很容易理解的就是用户的状态环境在一天的某些时间可能改变-例如在09:00时,状态环境从玩改为工作。对于用户状态环境对象来说,对于工作/玩,当用户在上午开始工作时加权值就会干脆地发生变化(例如从0.7变为-0.9)。在本发明的一些实施例中,一种平滑函数可以被应用于这种干脆的状态环境转换,实质上就说明了这一事实为了使用户在心理上从玩状态环境转换为工作状态环境,需要一段时间。
合适的平滑函数的一个例子就是速率受限的迭代收敛算法,这是一种反向传播形式,参见“Artificial Intelligence-A Modern Approach”by S.Russell and P.Norvig,Prentice Hall,77-78页l=Σk=n0f(t+k).(n-k)[(n+1)n2]]]>等式1wt+1=wt+(l-wt)r 等式2其中wt为时间t时的权重,r为权重的衰减率,n表示预测时间窗口的大小,k表示一个0与n之间的计数器,t表示开始计算权重改变的时间,以及1为修正因子,表示前一权重与当前权重之间的差别。从等式2中可以看出,速率变量r的作用就是减弱从等式1中计算得出的修正值(l-wt)。变量K最好为在0和n之间递增的整数,使得权重会在时间t和t+n之间变化。该等式可以应用于用户状态环境对象中一个或全部状态环境类型的权重。
很方便的,时间t可以被设置为最后记录用户状态环境的时间,并且n可以被设置为t与当前时间的差。这就使得可以根据与用户前一状态环境有关的信息来计算当前的权重。作为选择,时间t也可以被设置为当前时间,并且n可以被设为距当前时间的规定小时数。状态环境确定装置209可以评价用户的当前状态环境,并相应地提供用户状态环境。然后等式1可以应用于用户状态环境对象中的权重。作为另一个变型,用户可以手动改变他的状态环境-例如手动修改用户状态环境对象中的权重,因此状态环境确定装置将采用具有预定预测时间窗口的等式1。
技术人员可以理解的是,应该根据采用了权重的状态环境的类型来设置数值r及n例如对于工作/玩状态环境类型,应该选择预测时间窗口来反映出上午从玩到工作的转变,以及下午的相反过程。
作为一个选择,模糊逻辑表达可以用来对状态环境变化前后的状态进行描述。
第二阶段一在第二阶段,检索引擎207从简况编辑器201检索与用户状态环境对象相关联的兴趣,由第一检索装置211执行第二阶段,第一检索装置211将关于用户状态环境对象的请求提交到简况编辑器201。简况编辑器201查询简况数据库DB1,用来搜索对应于用户状态环境对象的兴趣状态环境对象。这种搜索可以包括为查询状态环境对象绘制多维空间的各个状态环境类型,并且找出其状态环境对象与查询状态环境对象距离(欧几里德)最小的兴趣。对应于从简表数据库DB1中识别出的这些兴趣状态环境对象的兴趣(此后称为“例示兴趣”)被传送给第二检索装置213。
第三阶段一在第三阶段,检索引擎207检索与例示兴趣相关的信息,由第二检索装置213执行此第三阶段,如图6所示,第二检索装置执行以下步骤·S6.1从第一检索装置211接收兴趣数据;·S6.2选择含有与信息源有关的数据的索引表之一,并且例如利用关键字匹配,检验例示的兴趣与索引关键字之间的对应性;·S6.3对于肯定的关键字匹配,检索网络地址(URL)和信息源的名称;·S6.4对利用索引生成器205编了索引的所有信息源重复S6.2和S6.3;·S6.5将在S6.3检索的网络地址(URL)和信息源的名称编译为候选列表中的项目。
在另选实施例中,第一检索装置211检索所有用户兴趣,并为所有兴趣执行如上所述的步骤S6.1-S6.5。然后,利用对兴趣标记的状态环境对象,第二检索装置213据此(因此直接根据用户的状态环境)对候选列表上的项目进行评定。根据评定等级组织在S6.4创建的候选列表上的各项目,以便将与用户的例示状态环境最相关的项目设置到候选列表的顶部,从而最先显示给用户。
在对例如2千兆字节左右或者更多字节数据的显著数据量编索引时,当前硬件的能力意味着有可能针对例示兴趣来检索数据。在这种情况下,可以设置第二检索装置213以在稍后(预定)时间检索与例示兴趣以外的兴趣有关的信息。
作为另一个选择,第二检索装置213可以执行一个附加步骤S6.1.1(未示出),用来对用户状态环境对象与对应于与信息源相关联的状态环境对象(索引生成器下的数字6)的索引条目进行比较。如果状态环境对象并不匹配,则检索装置213会直接转至下一个信息源而不需要执行步骤S6.2,这样的优点就是使得涉及检索信息的处理负载最小化。该步骤对于用户的优点还在于可以假设一个例子,其中对于它们的状态环境对象中的属性在家/在外,与旅馆有关的信息源的权重为1.0。在该实施例中,如果用户的状态环境对象表示该用户在外,则第二检索装置213就不会访问与旅馆有关的信息。
可以将候选列表存储到数据库DB1,并创建候选列表页视图(例如,创建包括候选列表数据的HTML/WML页视图),用于通过接口装置203传送到用户U1。
可以设置接口装置203以预定间隔从数据库DB1接收候选列表页视图,并传送该数据以显示在用户终端T1、T2、T4上。在一种配置中,从第二检索装置213请求候选列表页视图,并将候选列表页视图从第二检索装置213传送到接口装置203。如上所述,评定为最高的项目被显示在该候选列表的顶部。用户U1可以选择候选列表上的任何一个项目,并将该选择提供到第二检索装置213,第二检索装置213将关于数据的请求发送到项目内的URL。然后,对用户U1显示从URL返回的数据。
在一些例子中,用户U1的例示状态环境可以表示不安排用户U1接收信息。例如,用户U1可能正在旅行、在开会、疲劳、处于不好的照明环境下等,在此情况下很难对该信息作出响应。在这些状况下,第二检索装置203可以暂停发送信息直到确定用户的状态环境更适于接收信息为止。因此,配置第二检索装置213以从状态环境确定装置209接收表示用户的例示状态环境的输入,并将其与预定信息提供规则进行比较,例如IF(状态环境==疲劳)OR(状态环境==在外)OR(状态环境==亮度低)OR(状态环境包括旅行)等。
THEN(设置定时器(X分钟)以检验X分钟之后的状态环境)其中X是预定义的ELSE(将信息发送到用户)显然,还可以采用其它形式的规则。
修改简况上述说明的实施例根据用户的例示状态环境对在用户的候选列表上的项目进行评定,以便首先对用户U1显示与例示兴趣有关的项目。除了状态环境信息外,还将诸如相关性、重要性等的偏好属性(如上所述)作为因子引入到评定过程中。然而,有可能用户U1习惯性地忽略与特殊兴趣有关的信息(尤其对于基于规则隐式导出的兴趣是可能的(请参考如下例子))。
如图7所示,信息提供器200可以进一步包括监视装置701,监视装置701用于观察用户U1访问候选列表上的项目的方式,并相应地修改用户兴趣的属性。监视装置701最好包括贝叶斯网703,而且与第二检索装置213配合。如图8所示,将候选列表上的项目输入到贝叶斯网703,以计算与对应于这些项目的兴趣相关联的优先级。在本技术领域内众所周知,贝叶斯网考虑历史数据的因果关系来调整事件发生的先验概率。“Artificial Intelligence-A Modern Approach”by S.Russell and P.Norvig,Prentice Hall,USA对贝叶斯网进行了讨论。
根据观察用户U1如何处理候选列表上的项目,贝叶斯网703可以修改偏好属性。例如,候选列表上位置高的项目表示出该信息源与用户相关。然而,在实践中,用户可能选择在这天中的稍后时候访问与该兴趣有关的信息。如果情况是这样,监视装置701利用贝叶斯网703修改偏好属性,以致与该兴趣有关的项目在下一次出现在候选列表上时,监视装置701可以预测用户U1将要如何处理它,并相应地将此作为因素引入该兴趣的评定。
除了如上所述隐式修改用户简况外,还可以进一步配置第二检索装置213以从简况修改器301接收信息。如上所述,简况修改器301可以将问题推到用户U1,请求信息源的显式评定-例如,可以向用户U1给出-2至+2的等级,而且要求用户指示特定信息源与它们的相关程度。通常,如果用户返回一个高分,则对于与该信息源有关的兴趣,第二检索装置213降低相关性偏好属性的阈值,相反,如果用户返回一个低分,则第二检索装置213提高相关性阈值。
如果用户继续对已经为一个兴趣识别的信息源指定低分,则可能表示与该兴趣相关联的关键字需要修改。系统管理员或者显式地修改关键字,或者提示用户建议一些关键字。可以通过反馈来监测用户对修改的关键字的响应,提供用于改善针对一个兴趣的关键字质量的手段。
数据存储信息提供器200能够对许多用户提供信息,而且,在用户每次请求信息时(自动或者手动),基于每个用户,对每个用户产生候选列表页视图。这样将大量负载施加到信息提供器200的各种部件上,这可以通过对数据进行高速缓存数据来减少。目标是在高速缓存上仅一次创建要由用户观看的页面(即,仅从其存储地址请求一次数据),从而可以从该高速缓存发送该页面的任何后续请求。这样可以缩短请求-响应链、改善响应时间并降低网络负载。
使用几种高速缓存配置1.高速缓存每个用户的候选列表上的项目。
每个用户U1的候选列表上的项目最好由第二检索装置213进行后处理,以除去重复信息,而且,如上所述,在存储到数据库DB1之前,根据用户的例示状态环境,对各项目进行评定。通常,在候选列表上有大量项目,但是,因为终端显示器的制约,每次只能对用户显示一个选择。因此,需要将候选列表上的各项目高速缓存到内容高速缓存(未示出)中,可以利用数据库DB1上的存储器提供该内容高速缓存,因此不必对显示给用户的每个选择进行上述后处理。
2.高速缓存包括候选列表上的项目的页视图。
如上所述,通常可以利用WML/HTML(但是也可以采用其它格式,如下所述)创建包括候选列表数据的页视图。如果使用上述的类型2高速缓存,WML/HTML页将利用来自内容高速缓存的输入来填充页视图。利用HTTP检索这些页视图,HTTP是一种请求-响应型协议,在其最简单的配置中,是一个客户机应用,在此为检索装置213,将请求发送到服务器,在此为索引生成器205,然后,通过从内容高速缓存中检索数据并将它发送到第二检索装置213,索引生成器205响应该请求。在此配置中(未示出),存在作为中介的高速缓存,因此检索装置213对该高速缓存发出请求(例如,请求一个显示候选列表的页视图),而非对索引生成器205发出请求。然后,该高速缓存代表检索装置213对索引生成器205发出请求。索引生成器205应答该高速缓存,然后,该高速缓存将该应答转发到检索装置213(其将该信息传送到接口装置203)。每个页视图均应该遵循HTTP 1.1高速缓存规则(请参考“Illustrated guide to HTTP”,PaulHethmon,Manning Publications Co.或者RFC 2616 Hypertext TransferProtocol-HTTP/1.1.R.Fielding,J.Gettys,J.Mogul,H.Frystyk,L.Masinter,P.Leach,T.Berners-Lee.June 1999.(FormatTXT=422317,PS=5529857,PDF=550558 bytes)(Obsoletes RFC 2068)(Updted bv RFC 2817)(StatusDRAFT STANDARD));特别是以下内容必须包括在页视图的响应首部内(i)期满首部,具有HTTP日期;(ii)高速缓存控制max-age=sec tag,说明内容的寿命(iii)内容长度响应首部(还允许持续连接)在一个配置中,对网络地址(URL,索引表内的项目3)预附加用户的会话ID,而且,通过会话ID的改变(例如改变用户简况、更新信息源等)来控制高速缓存的操作(当修改用户的简况(例如,添加兴趣)时,则被高速缓存的页视图过期(因为页视图中的内容过期);为了防止将这些旧页面发送到用户U1,变更会话ID)。因此,一旦改变了会话ID,则触发高速缓存以从索引生成器205请求新数据(如果使用类型1高速缓存,索引生成器205从内容高速缓存检索数据)。
3.高速缓存所有用户的查询结果。
如果存在大量用户,则有些兴趣可能重复-即,用户U1的一些兴趣与用户U2的兴趣相同(尽管在各用户之间对兴趣标记的状态环境对象不同),因此,对于同一个查询进行许多次是没有效率的。
现在研究对关于用户U1的兴趣I1…In进行查询(假定之前还未进行过此查询)。
·根据图6,第二检索装置213检索(步骤S6.3)与用户例示状态环境相关的信息源所对应的URL和信息源名称。将其存储到查询高速缓存中,可以利用数据库DB1上的存储器提供该查询高速缓存(未示出)。
·将与兴趣I1…In有关的关键字散列,存储到例如一个文件等中,并链接到查询高速缓存内的相应标识符。
·在关于(例如用户U2的)兴趣J1…Jn的新查询到达时,将对应关键字与散列关键字进行比较以识别是否已经对这些兴趣进行了查询。
·如果进行了查询,则○第二检索装置213不必对兴趣J1…Jn进行查询,而且○将兴趣J1…Jn链接到查询高速缓存内的被识别项目。
可以对查询的请求时间以及用户群中的通用度进行监测,使得可以在预定时间自动对被确定在特定时间间隔内频繁发生的请求进行查询。
其它细节和修改状态环境变更在上述说明中,利用状态环境确定装置209确定用户U1的状态环境,并利用该信息评定候选列表上的数据。然而,用户U1可能希望观看与不同于他目前的状态环境的状态环境有关的信息。例如,如果用户U1在工作,他可能希望阅读与其足球队(Startreck United)有关的新闻。该兴趣足球很可能附带有状态环境玩、在家或玩,在外。假定设置信息提供器200以检索仅与用户的例示状态环境有关的信息,则用户U1必须显式地改变状态环境以观看此信息。因此,显示在(终端T1、T2、T4之任一上的)浏览器上的表单包括,用于通过输入获得状态环境的时间,或者通过显式地输入新状态环境,来输入改变状态环境的请求的手段。如上所述,在接口装置203提供该表单时,将新状态环境信息发送到第一检索装置211,并禁止来自状态环境确定装置209的输入。
对用户类型的分类在用户U1第一次加入该系统时,在其浏览器上对用户U1显示的表单可以包括多个下拉式菜单和包括用户可以选择的兴趣的列表。作为一种选择,或者附加地,该表单可以包括用户类型的描述,而且用户U1可以指出他是哪种用户。例如,可以存在几个鞋子按钮·拖鞋按钮·高跟鞋按钮·时尚软运动鞋按钮·布行鞋按钮·牛仔鞋按钮等。
其中每个按钮分别具有对其附加的预配置的兴趣列表,而且,在选择其中一个按钮后,对用户U1指定所有相应的兴趣。
作为按钮的一种选择或者附加,提示用户U1选择这些按钮中最能代表他们的按钮。可以配置简况编辑器201以保持用户对按钮类型的列表,而且对类似类型用户之间的兴趣数据进行某种协作过滤和隐式过滤。
数据格式可以概括信息,并将信息发送到各种装置,而且可以将信息优化为各种格式。这些格式包括但并不局限于HTML、WML、I-模式(cHTML)、VxML、XML、Postscript、PDF。这些装置包括但并不局限于PC,移动电话、PDA、其它通信装置、游戏控制台、顶置盒、多媒体公用电话、可佩戴计算机、FAX以及印刷的硬拷贝。
可以根据要求将信息发送到用户U1,或者对用户U1告警。告警可以采用许多种机制,包括但并不局限于电子邮件、因特网推业务、SMS、WAP推业务、话音。
索引生成器205编数据索引的过程包括本地源和远程源,本地源和远程源被保持的格式包括但并不局限于XML、HTML、wML、CHTML、纯文本、RTF以及语音。
用于发送数据的网络进一步包括UMTS、GPRS分组交换移动通信网。
隐式修改简况的例子交通信息假定用户U1已经对状态环境工作和在家显式地规定了在摩托车运动、运输以及轿车等方面的兴趣,而简况编辑器201包括一个规定“如果用户的兴趣在机动车方面,则包括交通报道方面的兴趣”的规则。根据上述说明,将修改用户简况以包括兴趣交通。假定进一步自动配置信息提供器200以在每天08:30对用户U1发送信息。状态环境确定装置209确定用户在去上班的路上(来自跟踪装置405的输入指出用户在移动,而且移动在使用户靠近工作地址而且更远离家宅;来自日记401和时钟403的输入确认用户在去上班的路上)。第一检索装置211从用户简况中检索与其例示状态环境有关的信息,将此信息传送到第二检索装置213,第二检索装置213对与用户兴趣相关的信息源的候选列表进行编辑,并将该候选列表发送到检索引擎701和用户终端T1。由于交通兴趣与用户当前状态环境相关,所以很可能与交通兴趣相关联的等级较高,因此,该兴趣出现在该候选列表上的高位。然而,假定用户选择忽略交通兴趣,则贝叶斯网703修改与交通相关联的偏好权重,以致在第二天(假定确定用户在同一个状态环境中)应用此修改的偏好权重,而且该兴趣很可能出现在候选列表的更下面(实际位置取决于对权重的修改程度)。
修改偏好权重的程度可以依赖于忽略兴趣的天数,因此可以利用某种时间相关函数来计算权重。
信息提供器200的各方面,特别是存储在数据库DB1上的简况信息可以在防火墙后工作,因此外部各方不能访问简况信息。作为一种选择,整个系统可以在内部网络内,或者在安全网络环境下运行,使得它与外部系统进行的唯一通信就是为了编索引而接收更新的信息源并与移动用户通信。
本技术领域内的熟练技术人员明白,可以以一个或者多个计算机程序的方式实现上述说明的本发明。可以将这些程序容纳在各种传输和/或存储介质上,例如软盘、CD-ROM或者磁带,使得可以将该程序加载到一个或者多个通用计算机上,或者可以通过计算机网络,利用适当传输介质下载该程序。
除非上下文明确要求,否则在说明书以及权利要求中,可以认为单词“包括(comprise)”、“包括(comprising)”等应理解为包含,而不是排他性的或者穷举的意思,即“包括,但并不局限于”的意思。认为单词“X包括Y”等表示X至少具有Y,但是很可能具有Y之外的其它单元。
权利要求
1.一种根据与用户相关的主题来选择信息源的方法,该主题可以由多组与主题有关的数据来识别,每组数据具有至少一个状态环境的指示,在该状态环境中该组数据与用户相关,该方法包括步骤(i)跟踪用户的状态;(ii)从被跟踪的状态中识别出一个或多个用户状态环境;(iii)根据在至少一些被识别出的用户状态环境与所述的状态环境指示之间的预定关系选择出至少一些与主题有关的数据组;(iv)根据被选中的与主题有关的数据组生成一个信息源列表,以及(v)将所述列表发送给一个与所述用户相关联的终端以便于允许所述用户选择信息源并由此访问来自该信息源的信息。
2.根据以上任一权利要求所述的方法,其中跟踪步骤(ii)包括步骤通过接收用户的跟踪信息来跟踪用户的位置,以及根据预定规则对跟踪信息与预定的位置信息进行比较,该预定的位置信息至少定义了一个“在家”状态环境和一个“工作”状态环境,并且预定的规则包括跟踪信息和预定位置信息之间的条件。
3.根据权利要求2所述的方法,其中跟踪步骤(ii)还进一步包括从时间表接收用户的时间表信息,并且用在比较步骤中的预定规则还进一步包括与时间表信息有关的条件。
4.根据以上任一权利要求所述的方法,其中跟踪步骤(ii)还包括至少从位置传感器、加速度传感器、压力检测装置、温度传感器、亮度级检测装置之一中接收输入。
5.根据以上任一权利要求所述的方法,其中在至少一些被识别的状态环境与所述状态环境指示之间的预定关系包括它们之间的一致性。
6.根据权利要求5所述的方法,其中当一致性为空时,选中的与主体有关的数据组是所有的与主题有关的数据组,并且所述生成步骤(iv)包括步骤根据被选中的与主题有关的数据组检索信息源,用针对对应的与主题有关的数据组指示的状态环境来标记检索到的信息源,至少部分地根据被识别的用户状态环境与所标记的状态环境之间的一致性对所述标记过的信息源进行评定,以及编辑一个包括被标记信息源的列表,与信息源相关联的评定等级决定被标记的信息源在列表上的位置。
7.根据权利要求5所述的方法,其中当在至少一些被识别的状态环境与所述状态环境指示之间存在等同一致性时,所述生成步骤(iv)包括步骤根据被选中的与主题有关的数据来检索信息源,以及编辑一个包括所检索的信息源的列表。
8.根据权利要求6或7所述的方法,进一步包括步骤监视用户对列表上至少一个信息源的选择,以便确定该信息源或每个信息源的相关性权重,以及为列表上的各个信息源,识别与主题有关的数据组,对与主题有关的数据组分配相关性权重,使得还根据分配的相关性权重来对被标记的信息源进行评定。
9.根据权利要求8所述的方法,其中的监视步骤包括,针对该信息源或每个信息源,至少部分地利用贝叶斯网。
10.根据以上任一权利要求所述的方法,其中要被识别的用户的状态为用户的当前状态。
11.根据以上任一权利要求所述的方法,其中所述与主题有关的数据包括关键字。
12.根据以上任一权利要求所述的方法,其中发送步骤(v)包括将被跟踪用户的状态输入到至少一个预定的发送条件中,处理该发送条件或每个发送条件,并且如果认为发送条件是满意的,则发送该列表。
13.根据权利要求12所述的方法,其中至少一个发送条件至少包括一个或多个规则,用来确定用户是否有意于接收信息。
14.根据以上任一权利要求所述的方法,其中通过通信系统将与所述被选中信息源有关的信息提供给用户。
15.一种根据用户的状态、针对用户的兴趣主题来存储信息的方法,其中兴趣主题包括多组关键字,各组关键字具有用户和/或对其分配的环境的至少一个可识别状态,该方法包括步骤(i)根据权利要求1-11之一选择信息源;(ii)依据多个规则组织被选中的信息,其中至少一个规则包括用户或环境的被识别状态,以及(iii)存储被组织好的信息。
16.根据权利要求15的方法,包括通过终端向用户提供检索到的信息,所述信息的提供包括创建一个包括至少一些被检索信息的可视页面,使得当创建一个可视页面时,根据终端的显示能力来检索所述存储信息的选择。
17.一种根据用户的兴趣主题来识别信息源的方法,其中该兴趣主题包括多组关键字,各组关键字具有至少一个状态环境的指示,在该状态环境中,用户对该组关键字感兴趣,该方法包括步骤(i)跟踪用户的状态;(ii)从被跟踪的状态中识别出一个或多个状态环境;(iii)根据在至少一些被识别出的状态环境与所述的状态环境指示之间的预定关系选择出至少一些关键字组;以及(iv)根据被选中的关键字组来识别信息源。
18.根据权利要求17所述的方法,其中将要被识别的用户状态是用户的当前状态。
19.一种计算机程序或一组计算机程序,包括使一个计算机或一组计算机执行根据权利要求1-16之一的方法步骤的指令集。
全文摘要
本发明涉及一种根据用户的兴趣主题来选择信息源的方法,其中该主题可以由多组与主题有关的数据来识别,每组数据具有至少一个状态环境的指示,在该状态环境中该组数据是用户感兴趣的,本发明的方法包括步骤(i)跟踪用户的状态;(ii)从被跟踪的状态中识别出一个或多个状态环境;(iii)根据在至少一些被识别出的状态环境与所述的状态环境指示之间的预定关系选择出至少一些与主题有关的数据组;(iv)根据被选中的与主题有关的数据组生成一个信息源列表,以及(v)将所述列表发送给一个与所述用户相关联的终端,以便于允许所述用户选择感兴趣的信息源并由此访问来自该信息源的信息。
文档编号G06F13/00GK1476567SQ0181922
公开日2004年2月18日 申请日期2001年11月16日 优先权日2000年11月20日
发明者伊恩·巴里·克拉布特里, 伊恩 巴里 克拉布特里, 亚历山大·劳福勒, 大 劳福勒, 约翰 博莱因, 马休·约翰·博莱因, 约瑟夫 奥多诺修, 约翰·约瑟夫·奥多诺修, 迈克尔 伯斯凯尔, 杰里米·迈克尔·伯斯凯尔, 约翰 蒂特马斯, 理查德·约翰·蒂特马斯 申请人:英国电讯有限公司