本发明涉及页面浏览与搜索技术领域,尤其涉及一种获取与页面相关搜索词的方法、装置和系统及与页面相关的搜索词的推荐方法与装置。
背景技术:
随着信息的快速膨胀,搜索引擎成为获取知识的重要手段。相应地,需要挖掘更多与页面具有关联关系的搜索词,以便于快速准确地向用户提供搜索结果。
一方面,当用户使用搜索词进行搜索时,搜索引擎往往还会向用户提供一些与搜索词含义相似的同义搜索词的搜索结果。为此,需要整理同义搜索词库。而一般而言,同义搜索词是通过对各搜索词的语义进行分析来获取的,同义搜索词的获得途径较为狭窄。相应地,通过搜索词结合同义搜索词得到的搜索结果(页面)在新颖性和多样性方面都存在不足。
另一方面,用户在阅读页面(例如网页)内容时,如果对当前页面内容不满意,或者想进一步获取与页面内容相关的知识,往往会打开搜索引擎页面,主动发起搜索。此时,搜索词可能是页面内容中存在的词语,也可能是用户浏览页面内容时想到的页面内容中不存在的词语。此时,若在页面上主动展示与当前页面相关的搜索词,则可以帮助用户快速跳转至搜索结果页,极大的缩短了知识获取的路径,提升用户体验。
而为了显示与页面内容相关的搜索词,传统方法一般是分析用户当前浏览的页面内容。这包含页面抓取、页面解析、关键词提取、匹配文本相似搜索词等步骤,这些步骤的逻辑通常比较复杂,非常消耗服务器时间和资源,推荐效率极为低下。并且,使用这种方法推荐出的搜索词与当前页面在内容上相似,不可能推荐出当前页面内容中不存在但与当前页面内容有语义上的联系的搜索词,而这样的搜索词很有可能是阅读当前页面内容的用户因为对相关内容感兴趣而期望进行搜索的。因此,现有传统搜索词推荐方法的推荐结果的新颖性和多样性都严重不足。
因此,仍然需要一种获取与页面相关的搜索词的方案。
技术实现要素:
本发明的目的是提供一种获取与页面相关的搜索词的方法、装置和系统,以期基于用户行为高效地确定页面相关的搜索词,提高相关搜索词的新颖性和多样性。
根据本发明的一个方面,提供了一种获取与页面相关的搜索词的方法,该方法可以包括:分析用户的浏览日志,以从浏览日志中识别出用户的搜索行为记录和浏览行为记录;从搜索行为记录中提取对应的搜索词,从浏览行为记录中提取对应的页面识别信息;基于用户的浏览日志中搜索行为记录和浏览行为记录之间的关联关系,确定与页面识别信息对应的搜索词子列表,搜索词子列表中包括与对应于页面识别信息的浏览行为记录相关联的搜索行为记录所对应的搜索词。
由此,即可基于用户的行为高效地确定与页面相关的搜索词,拓展搜索词的来源,以提高相关搜索词的新颖性和多样性。
优选地,该方法还可以包括:聚合从多个用户的浏览日志获取的搜索词子列表,以得到与各个页面识别信息分别对应的搜索词合并列表。
由此,通过聚合大量用户的搜索词子列表,可以参考广大用户的搜索+浏览行为或浏览+搜索行为挖掘出更多与页面有关联关系的搜索词。
聚合时,可以将多个搜索词子列表中重复出现的相同的搜索词合并为一个搜索词。并且,还可以根据该搜索词在各搜索词子列表中出现的次数等信息,对搜索词合并列表中的所有搜索词排序。
优选地,该方法还可以包括:对搜索词子列表中的各个搜索词分别设置权重,并且,聚合从多个用户的浏览日志获取的搜索词子列表的步骤包括:对于同一个页面识别信息,基于从多个用户的浏览日志获取的与其对应的搜索词的权重,得到搜索词在搜索词合并列表中的总权重;以及基于总权重对与同一个页面识别信息对应的搜索词合并列表中的搜索词排序。
由此,通过为各个搜索词设置权重,并基于权重进行聚合排序,能够突出与页面有较强关联的关键词,并将其排在前列。
优选地,可以基于所述搜索词的输入方式来设置权重;并且/或者,也可以基于搜索词对应的搜索行为记录与页面识别信息对应的浏览行为记录之间的时间间隔和/或间隔的搜索行为记录和/或浏览行为记录数量来设置权重。
由此,基于搜索词的输入方式或时间间隔和/或行为间隔来设置权重,能够体现搜索词与页面之间的关联程度,有助于实现有效的聚合和排序。
优选地,分析用户的浏览日志以从浏览日志中识别出用户的搜索行为记录和浏览行为记录的步骤可以包括:根据页面的host及url特征、请求参数,并且/或者根据页面的标题,从浏览日志中识别出用户的搜索行为和浏览行为。
优选地,搜索词子列表可以包括前置搜索词子列表和/或后置搜索词子列表,前置搜索词子列表可以包括前置搜索词,前置搜索词可以是在对应于页面识别信息的浏览行为记录之前发生并与该浏览行为记录相关联的搜索行为记录所对应的搜索词,后置搜索词子列表可以包括后置搜索词,后置搜索词可以是在对应于页面识别信息的浏览行为记录之后发生并与该浏览行为记录相关联的搜索行为记录所对应的搜索词,搜索词合并列表可以包括前置搜索词合并列表和/或后置搜索词合并列表。
由此,基于对应于页面识别信息的浏览行为记录将其之前或之后的搜索行为记录对应的搜索词分为前置搜索词和后置搜索词,使得页面识别信息与搜索词具有有向关系,可以基于不同的有向关系(或者关联关系)将前置搜索词和后置搜索词分别用于不同的应用场景。
优选地,基于搜索行为记录和浏览行为记录之间的关联关系,确定与页面识别信息对应的搜索词子列表的步骤包括:
将同一个用户的浏览日志中的行为记录划分成一个或多个会话,使得每个会话满足以下至少一项条件:会话中的第一条行为记录与最后一条行为记录之间的时间差不大于第一阈值;和/或会话中相邻两条行为记录之间的时间间隔不大于第二阈值;和/或会话中的搜索行为记录和/或浏览行为记录的数量不大于第三阈值,其中,行为记录包括搜索行为记录和浏览行为记录;
将同一个会话中,浏览行为记录之前的所有搜索行为记录对应的搜索词确定为浏览行为记录对应的页面识别信息的前置搜索词;
将同一个会话中,浏览行为记录之后的所有搜索行为记录对应的搜索词确定为浏览行为记录对应的页面识别信息的后置搜索词。
由此,通过按照一定的条件划分会话,从会话中确定与浏览行为记录对应的页面识别信息的前置或后置搜索词,使得可以剔除一些与页面明显没有关联关系、或者关联性较弱、或者存在关联关系的可能性较小的搜索词。
根据本发明的另一方面,还提供了一种针对用户当前浏览的页面推荐相关搜索词的方法,包括:根据上述方法获取与页面的页面识别信息对应的后置搜索词合并列表;向用户提供后置搜索词合并列表中的至少一个后置搜索词。
后置搜索词是用户浏览页面后执行的搜索行为所采用的搜索词,很可能是用户在浏览该页面时想到的搜索内容,他人浏览该页面时也有可能会期望进行相同的搜索。基于后置搜索词可以向浏览相同页面的其他用户进行推荐,有可能推荐该其他用户浏览该页面后同样期望搜索的内容,提升推荐满意度。
根据本发明的又一方面,还提供了一种获取与页面相关的搜索词的装置,包括:
分析模块,用于分析用户的浏览日志,以从浏览日志中识别出用户的搜索行为记录和浏览行为记录;
提取模块,用于从搜索行为记录中提取对应的搜索词,从浏览行为记录中提取对应的页面识别信息;
子列表确定模块,用于基于用户的浏览日志中搜索行为记录和浏览行为记录之间的关联关系,确定与页面识别信息对应的搜索词子列表,搜索词子列表中包括与对应于页面识别信息的浏览行为记录相关联的搜索行为记录所对应的搜索词。
优选地,该装置还可以包括:聚合模块,用于聚合从多个用户的浏览日志获取的搜索词子列表,以得到与各个页面识别信息分别对应的搜索词合并列表。
优选地,该装置还可以包括:设置模块,用于对搜索词子列表中的各个搜索词分别设置权重,并且,聚合装置还包括:总权重模块,用于对于同一个页面识别信息,基于从多个用户的浏览日志获取的与其对应的搜索词的权重,得到搜索词在搜索词合并列表中的总权重;以及排序子模块,用于基于总权重对与同一个页面识别信息对应的搜索词合并列表中的搜索词排序。
优选地,设置装置可以基于所述搜索词的输入方式来设置权重;也基于搜索词对应的搜索行为记录与页面识别信息对应的浏览行为记录之间的时间间隔和/或间隔的搜索行为记录和/或浏览行为记录数量来设置权重。
优选地,分析模块根据页面的host及url特征、请求参数,并且/或者根据页面的标题,从浏览日志中识别出用户的搜索行为和浏览行为。
优选地,搜索词子列表包括前置搜索词子列表和/或后置搜索词子列表,前置搜索词子列表包括前置搜索词,前置搜索词是在对应于页面识别信息的浏览行为记录之前发生并与该浏览行为记录相关联的搜索行为记录所对应的搜索词,后置搜索词子列表包括后置搜索词,后置搜索词是在对应于页面识别信息的浏览行为记录之后发生并与该浏览行为记录相关联的搜索行为记录所对应的搜索词,搜索词合并列表包括前置搜索词合并列表和/或后置搜索词合并列表。
优选地,子列表确定模块还可以包括:
会话划分模块,用于将同一个用户的浏览日志中的行为记录划分成一个或多个会话,使得每个会话满足以下至少一项条件:会话中的第一条行为记录与最后一条行为记录之间的时间差不大于第一阈值;和/或会话中相邻两条行为记录之间的时间间隔不大于第二阈值;和/或会话中的搜索行为记录和/或浏览行为记录的数量不大于第三阈值,其中,行为记录包括搜索行为记录和浏览行为记录;
前置搜索词确定模块,用于将同一个会话中,浏览行为记录之前的所有搜索行为记录对应的搜索词确定为浏览行为记录对应的页面识别信息的前置搜索词;
后置搜索词确定模块,用于将同一个会话中,浏览行为记录之后的所有搜索行为记录对应的搜索词确定为浏览行为记录对应的页面识别信息的后置搜索词。
根据本发明的又一方面,还提供了一种针对用户当前浏览的页面推荐相关搜索词的装置,包括:合并列表确定模块,用于根据上述方法获取与页面的页面识别信息对应的后置搜索词合并列表;推荐模块,用于向用户提供后置搜索词合并列表中的至少一个后置搜索词。
根据本发明的又一方面,还提供了一种确定页面相关搜索词的系统,包括:一个或多个客户端,用于采集用户的浏览日志;服务器,用于分析用户的浏览日志,以从所述浏览日志中识别出用户的搜索行为记录和浏览行为记录,并从所述搜索行为记录中提取相应的搜索词,从所述浏览行为记录中提取对应的页面识别信息,基于所述用户的浏览日志中所述搜索行为记录和所述浏览行为记录之间的关联关系,确定与所述页面识别信息对应的搜索词子列表,所述搜索词子列表中包括与对应于所述页面识别信息的浏览行为记录相关联的搜索行为记录所对应的搜索词,存储设备,用于关联地存储所述服务器确定的所述搜索词子列表。根据本发明的又一方面,还提供了一种计算设备,包括:处理器;以及存储器。存储器上可以存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行上述任何一项所述的方法。
根据本发明的又一方面,还提供了一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行上述任何一项所述的方法。
通过本发明的技术方案,能够基于用户行为高效地确定待推荐的页面相关搜索词,提高推荐结果的新颖性和多样性。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1示出了根据本发明一个实施例的获取与页面相关的搜索词的系统的结构图。
图2示出了根据本发明一个实施例的获取与页面相关的搜索词的方法的示意性流程图。
图3示出了根据本发明一个实施例的推荐相关搜索词的方法的示意性流程图。
图4示出了根据本发明一个实施例的获取与页面相关的搜索词的装置的示意性流程图。
图5示出了根据本发明一个实施例的推荐装置的示意性框图。
图6示出了根据本发明技术方案的应用例。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
为了高效地确定与页面相关的搜索词,本发明提出了一种获取页面相关的方法、装置和系统,以期基于用户行为获取页面相关的搜索词,提高搜索词的获取效率,提高搜索词的新颖性和多样性。
图1示出了根据本发明一个实施例的获取与页面相关的搜索词的系统的结构图。
如图1所示,系统包括至少一个服务器20和多个终端设备10。终端设备10可以经由网络40实现与服务器20的信息收发。服务器20可以通过直接或间接访问存储设备30来获取终端设备10所需的内容。终端设备之间(例如,10_1与10_2或10_n之间)也可以经由网络40彼此通信。网络40可以是广义上的用于信息传递的网络,可以包括一个或多个通信网络,诸如无线通信网络、因特网、私域网、局域网、城域网、广域网或是蜂窝数据网络等。
应当注意,如果向图示环境中添加附加模块或从其中去除个别模块,不会改变本发明的示例实施例的底层概念。另外,虽然为了方便说明而在图中示出了从存储设备30到服务器20的双向箭头,但本领域技术人员可以理解的是,上述数据的收发也是可以通过网络40实现的。
终端设备10可以是可用来进行网络访问的任何合适的电子设备,优选为便携式电子设备,包括但不限于智能电话、笔记本计算机、台式计算机或是其他客户端。
服务器20则可以是能够通过网络访问的提供交互服务所需信息的任何服务器。
存储设备30可以是各种存储信息的设备,例如各式存储器、硬盘、光盘等;还可以是数据库,例如传统的关系型数据库,如oracle、mysql、sqlserver等等;或者是适合大数据存储的非关系型数据库(nosql),例如阿里的键值对(key-value,kv)数据库实时读写存储:s3、tair等等。
在随后的描述中会选择其中的一个或部分移动终端加以描述(例如,终端设备10-1),但是本领域技术人员应该理解的是,上述1…n个终端设备旨在表示真实网络中存在的大量终端设备,示出的单个服务器20和存储设备30旨在表示本发明的技术方案涉及服务器及存储设备的操作。对特定编号的终端以及单个服务器和存储设备加以详述只是为了说明方便,而非暗示对终端和服务器的类型或是位置等具有限制。
下面结合图2及实施例详细描述本发明的获取与页面相关的搜索词的方法。
图2示出了根据本发明一个实施例的获取与页面相关的搜索词的方法的示意性流程图。该方法可以是经由图1所示的服务器实现的。
在本公开中,“页面”可以是通过网页浏览器(简称为“浏览器”)浏览的网页,也可以是通过任何其它应用(例如移动终端上安装的app)阅读浏览的相应页面,例如购物应用中的产品介绍/销售页面、书籍阅读类应用中的书本页面等等。
如图2所示,在步骤s210,分析用户的浏览日志,以从浏览日志中识别出用户的搜索行为记录和浏览行为记录。
这里的用户是指浏览器或应用(app)的使用者,其可以通过浏览器或其它应用浏览其中的页面,也可以在浏览器或其它应用中进行搜索或查询等相关操作(该操作可以是在手机、电脑等终端实现的)。这样的用户的浏览日志是本发明为获取与页面内容相关的搜索词而分析的对象。
浏览日志是指页面提供者(例如应用app)或者页面浏览入口(例如浏览器)收集的用户访问页面的行为记录及其他相关信息,可以包括访问时间、用户id、访问页面的url(统一资源定位符)、搜索行为、搜索结果等等。
一般而言,浏览日志中可以结合用户的访问时间记录用户访问页面的行为记录,用户访问的页面大体可以分为用户执行搜索操作后呈现的搜索结果页以及用户浏览的详情内容页。相应地,可以对浏览日志中的行为记录进行分类,类别至少可以包括浏览行为记录和搜索行为记录。
服务器可以分析浏览日志,以根据诸如页面的host及url特征、请求参数,或根据页面的标题等预设特征,从浏览日志中识别出对应的搜索行为记录和浏览行为记录。例如,当页面的host是诸如baidu.com、sogou.com、so.com、sm.cn等搜索引擎的一级host,基于host和url特征、请求参数可以识别出该日志对应的搜索行为记录或是浏览行为记录;或者当页面的标题具有表示搜索的文本模式,例如包含诸如“页面搜索_xxx”、“xxx-百度”、“xxx-搜狗搜索”、“xxx_360搜索”等文本时,可以认为该日志记录为搜索行为记录。
接下来,在步骤s220,从搜索行为记录中提取对应的搜索词,从浏览行为记录中提取对应的页面识别信息。
这里的搜索词是用户进行搜索行为时所使用的搜索词,搜索词的形式不受限制,可以是词汇、短语或者是一句话,也可以是任意语言的搜索词。页面识别信息是能够标识用户在浏览行为中所浏览的页面的信息,例如页面url(统一资源定位符)、域名、标题,或者例如购物应用中的产品代码、书籍阅读应用中的书籍信息及当前页码等。
服务器可以分别从相应的行为记录中提取出相应的搜索词或相应的页面识别信息。
然后,在步骤s230,基于用户的浏览日志中搜索行为记录和浏览行为记录之间的关联关系,确定页面识别信息对应的搜索词子列表,搜索词子列表中包括与对应于页面识别信息的浏览行为记录相关联的搜索行为记录所对应的搜索词。其中,搜索词子列表可以包括上述所对应的全部搜索词或部分搜索词。
这里,术语“关联关系”表示搜索行为记录与浏览行为记录是相关联的。应当明白,这是一种推测的关联关系,即根据浏览日志中针对各行为记录的信息推测行为记录之间存在关联关系。
关联关系可以有多种表现形式。例如,搜索行为记录与浏览行为记录可以具有记录时间、记录时间差/时间间隔、行为间隔数量上的关联关系等等。换言之,可以假定,在两个行为记录的上述相关信息满足一定条件的情况下,这两个行为记录(或者说,相应的两个行为本身)之间很可能存在实际关联关系(即,用户的前一个行为引发了后一个行为)。
例如,浏览行为可以是由搜索行为直接或间接引起的(即浏览行为在搜索行为之后),相应地,浏览行为记录的记录时间在搜索行为记录的记录时间之后。例如,用户在搜索主页主动输入搜索词后,在搜索结果页面选择具体的一项搜索结果进一步进行相应的浏览。
或者,搜索行为可以是由浏览行为直接或间接引起的(即浏览行为在搜索行为之前)的,相应地,搜索行为记录的记录时间在浏览行为记录的记录时间之后。例如,在用户具体浏览某页面或某项内容时,当前所浏览内容不足以满足用户需求,或者用户受到当前所浏览内容的启发希望了解更多方面的内容,用户主动发起新的搜索;或是用户在当前浏览的页面中点击某推荐的搜索词而发起的搜索。
用户执行搜索后浏览一个页面,该页面内容很可能是比较符合用户搜索目的的页面。另一方面,用户浏览一个页面后执行一项搜索很可能是受了该页面内容的启发,该页面内容与该搜索词之间往往存在或深或浅的语义联系。
本发明没有通过文本、词语分析来识别语义联系,而是通过分析用户相关联的搜索+浏览行为及浏览+搜索行为来识别语义联系。
可以设定满足预定关联条件的两个行为之间具有关联关系。
例如,可以设定具有关联关系的搜索行为记录和/或浏览行为记录的记录时间差或时间间隔在预定的时间阈值内。
或者,也可以设定具有关联关系的两个搜索行为记录和/或浏览行为记录之间间隔的搜索行为记录和/或浏览行为记录的数量在预定的数量阈值内等等。
当两个搜索行为记录和/或浏览行为记录不满足所设定的关联条件时,可以认为这两个行为之间不具有关联关系。
搜索行为记录与浏览行为记录之间的关联关系(关联条件)还可以有其它的表现形式,在此不再一一列举。
当确定一项浏览行为记录与一项搜索行为记录相关联(具有上述关联关系)时,可以根据该关联关系确定该浏览行为记录的页面识别信息与该搜索行为记录的搜索词相对应。当一项浏览行为记录与多项搜索行为记录相关联时,可以得到与该浏览行为记录的页面识别信息对应的多个搜索词。与一个页面识别信息对应的一个或多个搜索词可以形成一个搜索词子列表。
这样,可以通过分析用户的浏览日志,以一种新颖的方式获取与页面识别信息对应的搜索词子列表,提高了关联搜索词挖掘结果的新颖性和多样性。
可以进一步地聚合从多个用户的浏览日志获取的搜索词子列表,以得到与各个页面识别信息分别对应的搜索词合并列表。搜索词合并列表中可以包括与对应于页面识别信息的浏览行为记录相关联的搜索行为记录所对应的搜索词。
聚合操作可以在步骤s230之后进行,即对所有需要分析的浏览日志进行分析后再聚合各个搜索词子列表;也可以与步骤s230同时进行,即每当通过分析浏览日志得到一个搜索词子列表,就将其聚合到对应的搜索词合并列表中。
由于通过分析不同用户的浏览日志而获取的对应于同一页面识别信息的不同搜索词子列表中,可能包括相同的搜索词,聚合时可以将对应于同一页面识别信息的多个搜索词子列表中重复出现的相同的搜索词合并为一个搜索词。
另外,还可以根据该搜索词在各搜索词子列表中出现的次数等信息,对搜索词合并列表中的所有搜索词排序。
例如,可以在搜索词合并列表中关联地记录各个搜索词出现的次数,将重复次数多的排列在列表的前面。
这样,可以将偶然出现在较少搜索词子列表中的搜索词排在列表后面,甚至可以不向用户显示,从而排除一些具有实际关联关系的可能性较低的搜索词。
进一步地,一项浏览行为记录与一项搜索行为记录之间的上述关联关系可以有强有弱。相应地,页面识别信息与搜索词之间的关联关系也可以有强有弱。在搜索词子列表中与页面识别信息的关联性较弱的搜索词的重要性一般较低,可能并不能对搜索词合并列表带来有效的意义,因此,可以例如根据浏览行为记录与搜索行为记录之间的上述关联关系的强弱,对基于每个用户的浏览日志获取的搜索词子列表中的各个搜索词分别设置权重,并对设置了权重的搜索词进行聚合以得到相应的搜索词合并列表。优选地,可以基于搜索词对应的搜索行为记录与页面识别信息对应的浏览行为记录之间的时间间隔和/或间隔的搜索行为记录和/或浏览行为记录数量来设置权重。例如,搜索行为记录与浏览行为记录的时间间隔越短,或者间隔的搜索行为记录和/或浏览行为记录的数量越少,则对应搜索词所占的权重越大,反之,则对应搜索词所占的权重越小。
另外,如前所述的浏览日志中也可以关联地记录与搜索行为记录所对应的用户发起搜索的方式,即搜索词的输入方式,比如搜索词是用户主动输入的,还是用户通过点击的页面的推荐搜索词而输入的。例如,在设置搜索词的权重时,由于用户主动输入更能反映其强烈的搜索意图,因此,可以为用户主动输入的搜索词设置相对较重的权重,而为用户点击的页面推荐搜索词设置相对较轻的权重。
搜索词的权重的设置形式不受限制,也可以是提供该搜索词的用户的数量,或者也可以是该搜索词在此搜索词子列表中所占的百分比,或者还可以是以其它形式定义的权重等等。可以同时基于多个原则或规则设置权重,以更好地反映搜索行为记录与浏览行为记录之间的关联关系。这种情况下,可以通过例如相乘和/或相加等方式将基于不同原则或规则设置的权重组合为统一的权重。
相应地,在步骤s230,对于同一个页面识别信息,基于从多个用户的浏览日志获取的与其对应的搜索词的权重,得到搜索词在搜索词合并列表中的总权重,进一步地,基于总权重对于同一个页面识别信息对应的搜索词合并列表中的搜索词排序。
在一个优选实施例中,对于同一个搜索词,可以通过累加,或者累乘,或其它方式,来计算该搜索词的总权重,使得随着浏览日志中该搜索词与该页面识别信息相关联的用户数量增多,该搜索词在该页面识别信息对应的搜索词列表中的总权重加大。由此,通过聚合大量用户的搜索词子列表,为数据库提供更多针对于不同的页面识别信息及对应的搜索词的相关数据,以进一步提高搜索词的多样性和新颖性。
另外,如前所述的搜索词子列表可以包括前置搜索词子列表和/或后置搜索词子列表,相应地,搜索词合并列表可以包括前置搜索词合并列表和/或后置搜索词合并列表。
前置搜索词子列表可以包括前置搜索词,前置搜索词可以是在对应于页面识别信息的浏览行为记录之前发生并与该浏览行为记录相关联的搜索行为记录所对应的搜索词。
后置搜索词子列表可以包括后置搜索词,后置搜索词可以是在对应于页面识别信息的浏览行为记录之后发生并与该浏览行为记录相关联的搜索行为记录所对应的搜索词。
前置搜索词列表和后置搜索词列表可以用于不同的应用场景,下文中将予以简要描述。
无论是在前还是在后,有关联关系的搜索行为记录与浏览行为记录之间往往满足一定的时间差、时间间隔或记录行为数量等阈值条件。基于搜索行为记录和浏览行为记录之间的关联关系,可以快速确定与页面识别信息对应的搜索词子列表。
下面描述一种确定具有关联关系的多个行为的方法。
在一个优选实施例中,可以将同一个用户的浏览日志中的行为记录划分成一个或多个会话,将一个会话中的搜索行为和浏览行为视为具有关联关系,由此,可以从会话中确定与页面识别信息对应的搜索词子列表。
这里的会话是指用户和系统之间在时间上和逻辑关系上具有一定关联关系的若干次对话聚合而成的一次沟通过程。在存在多个会话的情况下,各个会话可以是顺序排列的(例如按照时间先后顺序排列),在前的一个会话也可以与其下一个会话(其排列顺序的下一个)部分重叠。为提高效率,各个会话也可以至少不完全重叠,优选地,相邻的两个会话之间可以不重叠。
为确保一个会话内行为记录之间的关联性,划分会话时,可以使每个会话满足以下至少一项条件:
会话中的第一条行为记录与最后一条行为记录之间的时间差不大于第一阈值;和/或
会话中相邻两条行为记录之间的时间间隔不大于第二阈值;和/或
会话中的搜索行为记录和/或浏览行为记录的数量不大于第三阈值。
其中,行为记录可以包括搜索行为记录和浏览行为记录。应该理解的是,文中对“第一”、“第二”、“第三”的描述,旨在对描述对象加以区分,而非对其顺序和大小有任何明示或是暗示的规定。
一方面,使用时间差作为划分基准是考虑到关联的行为之间的时间差往往较小。
时间差可以是指从会话中的第一条行为记录的记录开始时间点至会话内最后一条行为记录(其中的行为记录可以包括搜索行为记录和浏览行为记录)的记录截止时间点之间的时间差值。例如,当用户访问某一个web站点,在这个站点连续多次访问web资源的时间不大于第一阈值(例如,10分钟、1小时或任意设置的其它时间值)时,将连续访问的过程称为一个会话。
例如,一个用户的行为记录包括q1、q2、q3、q4、q5,按照时间差定义会话,假设第一阈值设为10分钟,若用户从q1开始至q5结束的时间差不超过10分钟,则会话包括q1、q2、q3、q4、q5。而如果从q1至q4的时间差超过10分钟,而从q1至q3的时间差不超过10分钟,则将q1、q2、q3称为一个会话。
另一方面,使用相邻行为记录的时间间隔是考虑到作为相关联的一系列行为中间往往不会中断太长时间。
两条行为记录之间的时间间隔可以是指在前的一条行为记录的记录开始时间点与其相邻在后的一条行为记录的记录开始时间点之间的时间间隔。在该时间间隔不大于第二阈值(可以任意设置)的情况下,可以将在前的一条行为记录与其相邻在后的一条行为记录划分至一个会话中。而在该时间间隔大于第二阈值的情况下,将这两条行为记录划分到两个会话中。
例如,一个用户的行为记录包括q1、q2、q3、q4、q5,按照时间间隔定义会话,假设第二阈值设为10分钟,若q1-q2、q2-q3的时间间隔均不超过10分钟,而q3-q4的时间间隔超过10分钟,q4-q5的时间间隔不超过10分钟,则用户的行为记录可以被划分为两个会话,即会话1的q1、q2、q3和会话2的q4、q5。
上述的行为记录之间的时间差或时间间隔可以是根据行为记录的记录截止(结束)时间点,或其他的记录时间点确定的。
另一方面,使用行为数量作为划分基准,是考虑到关联行为之间的行为间隔数量往往不会太多,相关联的行为数量也不会太长。
会话中搜索行为记录和/或浏览行为记录的数量是指在前的一条相应行为记录与在后的一条相应行为记录及其之间的全部相应行为记录的总的数量,在该数量不大于第三阈值(可以是任意设定的数值)时,将行为记录对应的整个行为过程称之为一个会话。这里,可以仅考虑搜索行为记录的数量,也可以仅考虑浏览行为记录的数量,还可以考虑搜索行为记录和浏览行为记录的总数量。
例如,一个用户的行为记录包括q1、q2、q3、q4、q5,按照行为间隔数量定义会话,假设第三阈值设为3个,则用户的行为记录划被分为两个会话,即会话1的q1、q2、q3和会话2的q4、q5。
会话还可以是根据其他条件定义划分的,在此不再一一举例。
将满足上述阈值条件的行为记录划分到一个会话中,而不满足阈值条件的行为记录,则从该会话中剔除,以剔除与页面明显没有关联关系或者关联性较弱或者存在关联关系的可能性较小的搜索词,确保一个会话中各个行为记录之间的关联性。
会话的定义条件可以仅包括上述多种方式中的一种,例如,仅以时间差、时间间隔或行为记录数量中的任何一项定义会话。即,可以只按时间差,或者只按时间间隔,或者只按行为记录数量来划分会话。
或者,也可以同时存在上述的任意两个或多个定义条件(混合方式)。这些条件之间可以是“与”的关系,即同时满足多个定义条件;也可以是“或”的关系,即只需要满足一项定义条件即可。优选地,可以是“与”的关系。
例如,以上述的定义条件按比例或权重定义会话,或者,还可以设定会话定义条件的优先级别,例如优先考虑首尾两条行为记录之间的时间差,在时间差不满足第一阈值时,再考虑两条行为记录之间的时间间隔,在时间间隔不满足第二阈值时,再考虑行为记录的数量是否满足第三阈值。本文对会话的定义条件即定义条件的存在方式不做具体限制。
将同一个会话中,浏览行为记录之前的所有搜索行为记录对应的搜索词确定为浏览行为记录对应的页面识别信息的前置搜索词,浏览行为记录之后的所有搜索行为记录对应的搜索词确定为浏览行为记录对应的页面识别信息的后置搜索词。即,前置搜索词指向对应的页面识别信息,页面识别信息指向对应的后置搜索词。由前置搜索词和后置搜索词的有向关系,能够进一步确定搜索行为记录与浏览行为记录之间的关联关系。
由此,通过用户行为获取的与页面识别信息相关联的前置搜索词和后置搜索词,快速确定可能需要向用户推荐的后置搜索词,减少时间或资源等的消耗,丰富搜索词的新颖性和多样性。
前置搜索词可以是前述搜索词(例如用户进行搜索操作时所使用的搜索词)的同义搜索词,后置搜索词可以是前述搜索词的横向扩展。例如,当用户浏览一个有关“汤圆”的网页时,其该网页的前置搜索词可以是“元宵”,或者“汤圆的做法”、“汤圆与元宵的区别”等到,后置搜索词可以是用户想要了解的例如“月饼”、“年糕”、“饺子”、“馄饨”等搜索词,也可以是“历史人物”、“菜品”、“特产”等的相关内容。
在获取与页面相关的搜索词后,页面的页面识别信息及其相关搜索词可以被关联地存储在数据库中,服务器可以响应于用户的行为(例如,搜索行为或浏览行为等)实时更新或补充数据库中的数据信息。同一个页面识别信息对应的一个或多个前置搜索词可以视为同义词,可以存储至同义词库。同一个页面识别信息对应的一个或多个后置搜索词可以视为横向扩展词,可以存储至扩展词库。
在搜索引擎对一个搜索词执行搜索时,可以同时获取并在搜索结果页面向用户提供对应于这些同义词的搜索结果,即前置搜索词及其对应的内容。
而在用户浏览某个页面时,可以针对用户当前浏览的页面推荐相关搜索词,图3示出了根据本发明一个实施例的推荐相关搜索词的方法的示意性流程图。
应当明白,在本公开中,描述所获取的关键词的应用时所提到的作为本发明的技术方案的服务对象的“用户”与上文中其浏览日志被作为分析对象的“用户”的含义是不同的,两种用户可以相同也可以不同。
如图3所示,在步骤s310,可以根据图2所示的方法获取与该页面的页面识别信息对应的后置搜索词列表,在步骤s320向用户提供后置搜索词列表中的至少一个后置搜索词。
由此,基于用户浏览的页面向用户提供对应的至少一个后置搜索词,方便用户可以快速跳转至对应的搜索结果页面,极大的缩短了搜索结果的获取路径,提高了搜索效率。
另外,本发明的获取与页面相关的搜索词的方法还可以是由一种获取与页面相关的搜索词的装置实现的。
图4示出了根据本发明一实施例的获取与页面相关的搜索词的装置的结构框图。其中,该获取装置400的功能模块可以由实现本发明原理的硬件、软件或硬件和软件的结合来实现。本领域技术人员可以理解的是,图4所描述的功能模块可以组合起来或者划分成子模块,从而实现上述发明的原理。因此,本文的描述可以支持对本文描述的功能模块的任何可能的组合、或者划分、或者更进一步的限定。
图4所示的获取装置400可以用来实现图2所示的方法,下面仅就获取装置400可以具有的功能模块以及各功能模块可以执行的操作做简要说明,对于其中涉及的细节部分可以参见上文结合图2的描述,这里不再赘述。
如图4所示,本发明的获取装置400可以包括分析模块410、提取模块420和子列表确定模块430。
分析模块410可以用于分析用户的浏览日志,以从浏览日志中识别出用户的搜索行为记录和浏览行为记录。其中,分析模块410可以根据页面的host和/或页面的标题等预设特征,从浏览日志中识别出用户的搜索行为和浏览行为。
提取模块420可以用于从搜索行为记录中提取对应的搜索词,从浏览行为记录中提取对应的页面识别信息。
子列表确定模块430可以基于用户的浏览日志中搜索行为记录和浏览行为记录之间的关联关系,确定与页面识别信息对应的搜索词子列表,搜索词子列表中可以包括与对应于页面识别信息的浏览行为记录相关联的搜索行为记录所对应的搜索词。
优选地,获取装置400还可以包括聚合模块440,用于聚合从多个用户的浏览日志获取的搜索词子列表,以得到与各个页面识别信息分别对应的搜索词合并列表。
聚合时,聚合模块440可以将对应于同一页面识别信息的多个搜索词子列表中重复出现的相同的搜索词合并为一个搜索词,还可以根据该搜索词在各搜索词子列表中出现的次数等信息,对搜索词合并列表中的所有搜索词排序。
优选地,获取装置400还可以包括设置装置450,用于对所述搜索词子列表中的各个搜索词分别设置权重。其中,设置装置450可以基于所述搜索词对应的搜索行为记录与所述页面识别信息对应的浏览行为记录之间的时间间隔和/或间隔的搜索行为记录和/或浏览行为记录数量来设置权重。搜索词的权重的设置形式不受限制。
由此,通过为各个搜索词设置权重,并基于权重进行聚合排序,能够突出与页面有较强关联的关键词,并将其排在前列。
进一步地,聚合装置440还可以包括总权重模块441和排序子模块442。
总权重模块341可以用于对于同一个页面识别信息,基于从所述多个用户的浏览日志获取的与其对应的搜索词的权重,得到所述搜索词在所述搜索词合并列表中的总权重。
排序子模块442可以用于基于所述总权重对与所述同一个页面识别信息对应的所述搜索词合并列表中的搜索词排序。
由此,通过聚合大量用户的搜索词子列表,为数据库提供更多针对于不同的页面识别信息及对应的搜索词的相关数据,以进一步提高搜索词的多样性和新颖性。
子列表确定模块430可以包括会话划分模块431、前置搜索词确定模块432和后置搜索词确定模块432。
会话划分模块431可以将同一个用户的浏览日志中的行为记录划分成一个或多个会话,使得会话满足前述的至少一个条件,在此不再赘述。
前置搜索词确定模块432可以将同一个会话中,浏览行为记录之前的所有搜索行为记录对应的搜索词确定为浏览行为记录对应的网页识别信息的前置搜索词。
后置搜索词确定模块433可以将同一个会话中,浏览行为记录之后的所有搜索行为记录对应的搜索词确定为浏览行为记录对应的网页识别信息的后置搜索词。
通过用户行为获取的与页面识别信息相关联的前置搜索词和后置搜索词,快速确定可能需要向用户推荐的后置搜索词,减少时间或资源等的消耗,丰富搜索词的新颖性和多样性。前置搜索词列表和后置搜索词列表可以用于不同的应用场景。
针对用户当前浏览的页面推荐相关搜索词的方法可以由相应的推荐装置实现,图5示出了根据本发明一个实施例的推荐装置的示意性框图。
如图5所示,推荐装置500可以包括合并列表确定模块510和推荐模块520。
合并列表确定模块510可以根据上述的方法获取与页面的页面识别信息对应的后置搜索词合并列表。推荐模块520可以用于向用户提供后置搜索词列表中的至少一个后置搜索词。具体内容可参见图2-3的相关描述,在此不再赘述。
本发明的技术方案还可以是由一种计算设备实现的,该计算设备可以是图1所示的服务器。计算设备可以包括处理器以及存储器。存储器上可以存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行上述的与页面相关搜索词的获取方法或推荐方法。
另外,本发明的获取与页面相关搜索词的方法或针对用户当前浏览的页面推荐相关搜索词的方法还可以由一种基于用户行为确定页面相关搜索词的系统实现。图1所示的环境可以看作是本发明系统的一个具体配置实现。本发明的系统可以包括一个或多个客户端、服务器和存储设备。
客户端可以是图1所示的终端设备,可以用于采集用户的浏览日志。
服务器可以用于分析用户的浏览日志,以从所述浏览日志中识别出用户的搜索行为记录和浏览行为记录,并从所述搜索行为记录中提取相应的搜索词,从所述浏览行为记录中提取对应的页面识别信息,基于所述用户的浏览日志中所述搜索行为记录和所述浏览行为记录之间的关联关系,确定与所述页面识别信息对应的搜索词子列表,所述搜索词子列表中包括与对应于所述页面识别信息的浏览行为记录相关联的搜索行为记录所对应的搜索词。
存储设备可以用于关联地存储所述服务器确定的所述搜索词子列表。
至此,已经参考附图详细描述了本发明的与页面相关搜索词的获取方法、装置和系统以及搜索词的推荐方法、装置。
【应用例】
图6示出了根据本发明技术方案的一个应用例。定时(例如,周期性)运行如图6所示的步骤:
1.在步骤s610,运行开始。
2.在步骤s620,判断用户的浏览日志是否处理完,即浏览日志中是否包含未经处理的行为记录。在判断结果为是,即浏览日志中不包含未经处理的行为记录的情况下,等待下一个运行周期。在判断结果为否,即浏览日志中包含未经处理的行为记录的情况下,进入该运行周期,即进入步骤s630。
3.在步骤s630,分析用户的浏览日志,以从浏览日志中识别出用户的搜索行为记录和浏览行为记录,分别从搜索行为记录和浏览行为记录中提取对应的搜索词和页面识别信息,之后进入步骤s640。
4.在步骤s640,根据一定的条件(例如时间差、时间间隔或行为记录数量等)将同一个用户的浏览日志中的行为记录划分为一个或多个会话,之后进入步骤s650。
5.在步骤s650,从一个或多个会话中确定搜索词子列表,进入步骤s660。
6.在步骤s660,聚合多个用户的搜索词子列表,得到各个页面识别信息对应的搜索词合并列表。存储该搜索词合并列表。返回步骤s620,判断用户的浏览日志是否处理完全,根据判断结果反馈的不同的情况依次分别执行上述步骤。由此,通过上述方法步骤实现获取与页面相关的搜索词及搜索词的推荐。
应当理解,上述步骤特别是步骤s650和步骤s660的顺序可以是不固定的,具体实现过程中可以按顺序先执行步骤s650再执行步骤s660,也可以同时执行两步骤,详细可参见上文的相关描述,在此不再赘述。
上文中已经参考附图详细描述了根据本发明的获取与页面相关搜索词的方法、装置和系统及与页面相关的搜索词的推荐方法与装置。
此外,根据本发明的方法还可以实现为一种计算机程序,该计算机程序包括用于执行本发明的上述方法中限定的上述各步骤的计算机程序代码指令。
或者,本发明还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当所述可执行代码(或计算机程序或计算机指令代码)被电子设备的处理器执行时,使所述处理器执行根据本发明的上述获取与页面相关的搜索词的方法或针对用户当前浏览的页面推荐相关搜索词的方法。
或者,根据本发明的方法还可以实现为一种计算机程序产品,该计算机程序产品包括计算机可读介质,在该计算机可读介质上存储有用于执行本发明的上述方法中限定的上述功能的计算机程序。本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。
附图中的流程图和框图显示了根据本发明的多个实施例的系统和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。