信息召回方法及装置、计算机存储介质、电子设备与流程

文档序号:16693463发布日期:2019-01-22 19:11阅读:109来源:国知局
信息召回方法及装置、计算机存储介质、电子设备与流程

本发明涉及计算机技术领域,具体而言,涉及一种信息召回方法及装置、计算机可读介质及电子设备。



背景技术:

推荐系统作为一种海量信息筛选系统,被广泛应用在电商商品推荐、音乐推荐、新闻推荐等场景。通常,推荐系统检索召回是根据用户画像和历史行为,在倒排索引中检索相关待推荐对象,然后经过打分排序等计算获取最相关的推荐对象,并将推荐对象呈现给用户。

随着推荐系统快速发展,检索召回阶段产生越来越多的检索需求,各种层出不穷的召回策略、过滤控制,给业务开发带来很大的压力。现有的召回模块由召回、分值计算、过滤和截断过程组成,依赖于业务需求,进行逐个过程实现。由于检索、分值计算、过滤和截断过程的接口均对业务人员开放,业务人员需实现整个流程的各个环节,因此对开发人员有较高的业务要求,并且召回层没有统一的约束框架,工程代码随意,不易管理,且逻辑模块无法复用,增加了人工成本;进一步的,在诊断召回问题时,诊断代码的介入影响原有模块,给开发人员带来很多麻烦。

因此,本领域亟需寻求一种新的信息召回方法及装置。

需要说明的是,在上述背景技术部分公开的信息仅用于加强对本发明的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。



技术实现要素:

本发明的目的在于提供一种信息召回方法及装置、计算机可读介质及电子设备,进而解决召回层无组织无管理的现状,通过将召回层架构化,实现将策略与实现解耦,减少了业务开发的成本,降低出错概率,提高代码质量;并且依据业务需求,方便扩展各个模块,在开发、调试、诊断等各个阶段提供方便的开发接口,节约人工成本,提高工作效率。

本发明的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本发明的实践而习得。

根据本发明的第一方面,提供一种信息召回方法,其特征在于,包括:

获取召回配置文件中的召回策略、索引类型和检索关键词,所述召回策略包括召回模式配置项和截断策略配置项;

基于所述召回模式配置项对应的召回模式,根据所述检索关键词和所述索引类型在倒排索引链中进行检索,并根据所述截断策略配置项对应的截断策略将检索结果进行截断,以获得召回信息集。

根据本公开的第二方面,提供一种信息召回装置,其特征在于,包括:

获取模块,用于获取召回配置文件中的召回策略、索引类型、和检索关键词,所述召回策略包括召回模式配置项和截断策略配置项;

召回信息集形成模块,用于基于所述召回模式配置项对应的召回模式,根据所述检索关键词和所述索引类型在倒排索引链中进行检索,并根据所述截断策略配置项对应的截断策略将检索结果进行截断,以获得召回信息集。

在本发明的一些实施例中,基于前述方案,所述获取模块包括:

召回策略确定单元,用于根据所述召回模式配置项对应的召回模式组件和所述截断策略配置项对应的截断策略组件确定所述召回策略。

在本发明的一些实施例中,基于前述方案,所述召回策略还包括过滤配置项和算分配置项,相应的,所述召回配置文件中配置项对应的组件还包括过滤组件和算分组件。

在本发明的一些实施例中,基于前述方案,所述召回模式包括朴素召回、算分召回和阈值召回。

在本发明的一些实施例中,基于前述方案,所述召回信息集形成模块包括:

第一检索单元,用于当所述召回模式为朴素召回时,根据所述索引类型和所述检索关键词在所述倒排索引链中进行检索;

第一截断单元,用于根据所述截断策略配置项在截断策略组件中调用相应的截断策略,并根据所述截断策略对检索结果进行截断,以获得所述召回信息集。

在本发明的一些实施例中,基于前述方案,所述召回信息集形成模块包括:

第二检索单元,用于当所述召回模式为算分召回,且所述召回策略包括算分配置项时,根据所述索引类型和所述检索关键词在所述倒排索引链中进行检索;

相关度计算单元,用于根据所述算分配置项从算分组件中调用相应的算分方法,根据所述算分方法计算用户检索维度与检索结果的相关度;

排序单元,用于将所述检索结果按照所述相关度从高到低排序;

第二截断单元,用于根据所述截断策略配置项在截断策略组件中调用相应的截断策略,并根据所述截断策略对排序后的所述检索结果进行截断,以获得所述召回信息集。

在本发明的一些实施例中,基于前述方案,所述召回信息集形成模块包括:

第三检索单元,用于当所述召回模式为阈值召回,且所述召回策略包括算分配置项时,根据所述索引类型和所述检索关键词在所述倒排索引链中进行检索;

相关度计算单元,用于根据所述算分配置项在算分组件中调用相应的算分方法,通过所述算分方法计算用户检索维度与检索结果的相关度;

判断单元,用于将所述相关度与预设相关度进行比较,以判断所述检索结果对应的相关度是否大于或等于所述预设相关度;

截断单元,用于在所述检索结果对应的相关度大于或等于所述预设相关度时,根据所述截断策略配置项在截断策略组件中调用相应的截断策略,并根据所述截断策略对所述检索结果进行截断,以获得所述召回信息集。

在本发明的一些实施例中,所述召回策略还包括过滤策略,基于前述方案,所述召回信息集形成模块还包括:

过滤单元,用于在对所述检索结果进行截断之前,根据所述过滤配置项在过滤组件中调用相应的过滤条件,并根据所述过滤条件对所述检索结果进行过滤。

在本发明的一些实施例中,基于前述方案,所述信息召回装置还包括:

格式转化模块,用于在获取所述召回配置文件后,将所述召回配置文件的格式进行转化以形成机器可读的召回配置文件。

在本发明的一些实施例中,基于前述方案,所述信息召回装置还包括:

倒排索引链拉取模块,用于在获取所述召回配置文件后,从索引层中拉取所述倒排索引链。

在本发明的一些实施例中,基于前述方案,所述信息召回装置还包括:

第一输出模块,用于将所述召回信息集通过接收所述召回配置文件的接口输出。

在本发明的一些实施例中,基于前述方案,所述信息召回装置还包括:

诊断信息生成模块,用于获取在形成所述召回信息集的过程中生成的所有数据,以形成诊断信息;

第二输出模块,用于将所述诊断信息通过接收所述召回配置文件的接口输出。

根据本发明的第三方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中所述的信息召回方法。

根据本发明的第四方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中所述的信息召回方法。

根据本示例实施例中的信息召回方法,将召回层分为两层,第一层为业务层,用于业务开发人员填写配置形成召回配置文件,该召回配置文件包括召回策略、索引类型和检索关键词,且召回策略包括召回模式配置项和截断策略配置项;第二层为召回核心层,用于接收召回配置文件,基于召回模式配置项对应的召回模式,根据检索关键词和索引类型在倒排索引链中进行检索,并根据截断策略配置项对应的截断策略将检索结果进行截断,以获得召回信息集。本发明中的信息召回方法一方面将召回层的策略与实现解耦,减少了业务开发成本,降低了出错概率,提高了代码质量;另一方面业务层只需要聚焦召回策略,无需重复实现召回、分值计算、过滤和截断,节省了人工成本,提高了工作效率。

本发明应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出相关技术中召回模块的结构示意图;

图2示出可以应用本发明实施例的信息召回方法或信息召回装置的示例性系统架构的示意图;

图3示出了适于用来实现本发明实施例的电子设备的计算机系统的结构示意图;

图4示出本发明一实施例中的信息召回方法的流程图;

图5示出本发明一实施例中的召回模块的结构示意图;

图6示出本发明一实施例中的配置页面的结构示意图;

图7示出本发明一实施例中通过朴素召回推荐新闻的流程示意图;

图8示出本发明一实施例中信息召回装置的结构示意图;

图9示出本发明一实施例中信息召回装置的结构示意图;

图10示出本发明一实施例中信息召回装置的结构示意图;

图11示出本发明一实施例中信息召回装置的结构示意图;

图12示出本发明一实施例中信息召回装置的结构示意图。

具体实施方式

现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。

此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本发明的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本发明的各方面。

附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。

附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。

推荐系统是根据用户兴趣和历史行为,在海量数据中寻找最相关的物品,并推荐给用户的系统。一次完整的线上推荐过程包括准备过程和推荐过程,其中准备过程分为两步:(1)倒排索引建立:依据类型和关键字等信息,为待推荐对象创建索引,便于检索召回;(2)用户画像刻画:为每个用户产生年龄、性别、地域兴趣等信息。推荐过程分为四步:(1)检索召回:推荐系统的第一层过滤机制,在倒排索引中检索出相关的待推荐对象,形成待选集合;(2)模型预估:使用推荐模型进行计算,预估用户与检索召回的待选集合中的待推荐对象的相关性,通常以得分作为模型结果;(3)排序:为模型预估打分后的待选集合进行分值由高到低的排序;(4)精排:推荐系统的最后一步,一般依据产品方案,为每个展示槽分配待推荐对象,还包含多样性控制等内容。

随着推荐系统的快速发展,检索召回阶段产生了越来越多的检索需求,各种层出不穷的召回策略、过滤控制等,给业务开发带来很大的压力。相关技术中,在开发检索召回模块时,通常采用较为野蛮的开发架构,缺少对召回模块的分层概念,代码管理相对混乱。图1示出了现有技术中召回模块的架构,如图1所示,现有的召回模块由召回、分值计算,过滤和截断过程组成,依赖于业务需求,进行逐个过程的实现。在执行过程中,第一步需要完成倒排索引的检索,获取指定索引下的待推荐对象集合;第二步进行必要的分值计算,以评价待推荐对象的召回效果,在此过程中,依据召回策略选取合适的算分组件,如dssm算分、热点算分等,对待推荐对象集合打分;第三步,进行过滤,通过历史过滤、安全过滤等方式筛选符合条件的待推荐对象子集;第四步,依据截断策略,截取掉多余的待推荐对象,形成最后的召回结果。

在相关技术的技术方案中,检索、分值计算、过滤和截断接口均对业务开发人员开放,业务开发人员需要实现整个流程的各个环节,因此对相关开发人员具有较高的业务要求。并且由于涉及环节多,需要业务开发人员承担较多的开发任务。同时随着项目发展,业务逐渐复杂多元,开发任务繁重,在召回层没有统一的约束框架的情况下,工程代码随意,不易管理,且逻辑模块无法复用,增加了人工成本。另外在诊断召回问题时,诊断代码的介入影响原有模块,给开发人员带来很多麻烦。

鉴于相关技术中存在的问题,本发明提供了一种信息召回方法及信息召回装置。

图2示出了可以应用本发明实施例的信息召回方法或信息召回装置的示例性系统架构200的示意图。

如图2所示,系统架构200可以包括终端设备201,网络202和服务器203。网络202用以在终端设备201和服务器203之间提供通信链路的介质。网络202可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

应该理解,图2中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器203可以是多个服务器组成的服务器集群等。

用户可以使用终端设备201通过网络202与服务器203交互,以接收或发送数据等。终端设备201可以是具有硬盘的各种电子设备,包括但不限于平板电脑、便携式计算机和台式计算机等等。

服务器203可以是提供各种服务的服务器。服务器203可以接收用户(业务开发人员)通过终端设备201提交的召回配置文件,用户根据实际需要填写所需的配置,以形成召回配置文件,典型的召回配置文件中包含召回策略、索引类型和检索关键词,该召回策略包含召回模式和截断策略;服务器203接收该召回配置文件后,根据召回配置文件中的配置项调用相应地组件,如召回模式组件和截断策略组件等,根据召回策略的不同,调用的组件也不同,通过各种组件对倒排索引链进行检索、截断及其它操作,以形成召回信息集。获得召回信息集后,将召回信息集通过接收召回配置文件的接口输出,并呈现给用户。另外,为了便于用户对召回各步骤的处理信息的了解,可以将各步骤的数据形成诊断信息,并将诊断信息通过接收召回配置文件的接口输出至用户。

图3示出了适于用来实现本发明中的实施例的电子设备的计算机系统的结构示意图。

需要说明的是,图3示出的电子设备的计算机系统300仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图3所示,计算机系统300包括中央处理单元(cpu)301,其可以根据存储在只读存储器(rom)302中的程序或者从存储部分308加载到随机访问存储器(ram)303中的程序而执行各种适当的动作和处理。在ram303中,还存储有系统操作所需的各种程序和数据。cpu301、rom302以及ram303通过总线304彼此相连。输入/输出(i/o)接口305也连接至总线304。

以下部件连接至i/o接口305:包括键盘、鼠标等的输入部分306;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分307;包括硬盘等的存储部分308;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分309。通信部分309经由诸如因特网的网络执行通信处理。驱动器310也根据需要连接至i/o接口305。可拆卸介质311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器310上,以便于从其上读出的计算机程序根据需要被安装入存储部分308。

特别地,根据本发明的实施例,下文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分309从网络上被下载和安装,和/或从可拆卸介质311被安装。在该计算机程序被中央处理单元(cpu)301执行时,执行本申请的系统中限定的各种功能。

需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。

附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。

作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如下述实施例中所述的方法。例如,所述的电子设备可以实现如图4-图7所示的各个步骤。

在本发明一实施例中,首先提供了一种信息召回方法,以对存在的问题进行优化处理,具体参考图4所示,信息召回方法适用于前述实施例中的所述电子设备,并至少包括以下步骤,具体为:

步骤s410:获取召回配置文件中的召回策略、索引类型和检索关键词,所述召回策略包括召回模式配置项和截断策略配置项;

步骤s420:基于所述召回模式配置项对应的召回模式,根据所述检索关键词和所述索引类型在倒排索引链中进行检索,并根据所述截断策略配置项对应的截断策略将检索结果进行截断,以获得召回信息集。

根据本示例实施例中的信息召回方法,服务器203获取用户(业务开发人员)填写的召回配置文件后,基于召回配置文件包含的召回模式,根据召回配置文件中包含的检索关键词和索引类型在倒排索引链中进行检索,然后根据截断策略配置项对应的截断策略对检索结果进行截断,以获得召回信息集。本发明一方面通过将召回层分为两部分,第一部分为用户填写配置形成召回配置文件的业务层,第二部分是根据召回配置文件形成召回信息集的核心层,实现了将召回层的策略与实现解耦,减少了业务开发成本,降低了出错概率,提高了代码质量;另一方面召回层只需要聚焦召回策略,无需重复实现检索召回的各步骤,节省了人工成本,提高了工作效率。

下面,对本示例实施例中的信息召回方法进行进一步的说明。

在步骤s410中,获取召回配置文件中的召回策略、索引类型和检索关键词,所述召回策略包括召回模式配置项和截断策略配置项。

在本示例实施例中,图5示出了召回模块的结构示意图,如图5所示,召回模块500包括两部分:召回用户层和召回核心层,其中召回用户层主要是业务层,业务开发人员通过在终端设备201上的配置页面进行设置,选定或填写召回时所需的配置项,图6示出了配置页面的结构示意图,如图6所示,在配置页面600上设置有召回模式配置项选择框和截断策略配置项选择框,进一步的,还可以设置过滤配置项选择框、算分配置项选择框,各个选择框的右侧设置有下拉箭头,用户可以通过点击下拉箭头获取相应的组件类型,比如可以通过与终端设备201的外部输入配备,如鼠标、键盘,或通过触屏笔、手指触屏等方式选择具体的配置项,举例而言,召回模式包括朴素召回、算分召回和阈值召回,用户可以根据实际需要点击选择朴素召回,以将召回模式选定为朴素召回。同理,用户可以根据选定的召回模式选择相应的过滤配置项、截断策略配置项和/或算分配置项。当然,用户还可以通过外部输入设备输入相应的配置项,本发明在此不再赘述。

在本示例实施例中,用户除了在配置页面选择召回策略包含的配置项外,还可以在配置页面填写索引类型和检索关键词,以形成召回配置文件,即召回配置文件包括召回策略、索引类型和检索关键词,作为一个具体实施例,召回策略可以包括召回模式配置项和截断策略配置项。用户设置好召回配置文件后,通过终端设备201将召回配置文件发送至服务器203。

在步骤s420中,基于所述召回模式配置项对应的召回模式,根据所述检索关键词和所述索引类型在倒排索引链中进行检索,并根据所述截断策略配置项对应的截断策略将检索结果进行截断,以获得召回信息集。

在本示例实施例中,服务器203接收召回配置文件后,根据召回配置文件中配置项对应的组件确定召回策略。例如用户在配置界面设置具体地召回模式配置项和截断策略配置项,服务器203接收召回配置文件后,根据用户选定的召回模式配置项对应的召回模式组件和与截断策略配置项对应的截断策略组件可以确定召回策略,例如采用何种召回模式、通过何种截断策略进行检索召回。在确定召回策略后,首先可以从索引层拉取倒排索引链,然后基于具体的召回模式,根据检索关键词和索引类型在倒排索引链中进行检索,最后通过具体的截断策略对检索结果进行截断,以获得召回信息集,并将该召回信息集返回给用户。在本发明中,索引类型可以是主题(topic)、频道(channel)或者标签(tag),也可以是其它本领域常用的索引类型,检索关键词是用户根据实际需要设定的关键词,并且关键词的数量可以是一个,也可以是多个,例如想获取德国足球队参加世界杯的新闻,那么关键词就可以设定为“德国+世界杯”。在确定好索引类型和检索关键词后,根据索引类型和检索关键词在倒排索引链中进行检索,寻找匹配的新闻。

接下来,以一具体实例对本发明的信息召回方法进行说明。若用户想要获得与某明星有关的新闻,那么业务开发人员在形成召回配置文件时,可以设置索引类型为标签或主题,检索关键词为该明星的名字或该明星的名字与具体事件(如“范冰冰+戛纳”),召回模式配置项可以设置为朴素召回,过滤配置项可以设置为历史过滤,截断策略配置项可以设置为最大召回量。在召回时,首先根据索引类型和检索关键词在倒排索引链中进行检索;然后依据历史过滤条件对检索结果进行过滤,只保留阅读者未看过的新闻;最后根据最大召回量的截断策略对过滤结果进行截断,获得数量适当的新闻,并推送给阅读者。

在本示例实施例中,用户可以根据不同的召回模式选择相应的过滤配置项、算分配置项和/或截断策略配置项,并从各配置项对应的组件中选择相应的过滤条件、算分方法和/或截断策略,例如当召回模式为朴素召回时,可以从过滤组件和截断策略组件中选择具体的过滤条件和截断策略,也可以只从截断策略组件中选择具体的截断策略;当召回模式为算分召回时,则可以从算分组件和截断策略组件选择具体的算分方法和截断策略,也可以从算分组件、过滤组件和截断策略组件中选择具体的算分方法、过滤条件和截断策略,等等。另外,为了便于根据用户的召回配置文件调用具体的召回模式、算分方法、过滤条件和/或截断策略进行召回,并使代码容易管理,提高工作效率,可以将各种召回模式、截断策略、过滤条件进行封装,抽象为组件,为业务层提供简单明了的配置接口,如图5所示,可以将朴素召回、算分召回、阈值召回等召回模式进行封装,抽象为召回模式组件;将历史过滤、安全过滤、限娱过滤等过滤条件进行封装,抽象为过滤组件;将dssm算分、热点算分等算分方法进行封装,抽象为算分组件;将链内截断、总量截断等截断策略进行封装,抽象为截断策略组件。这样一来,在获取召回配置文件后,根据具体的配置项就可以从各个组件中选择对应的召回模式、算分方法、过滤条件和/或截断策略,然后进行信息召回。

本发明中的信息召回方法通过对召回层进行分层,使得召回层具有统一的约束框架,并且使召回层的策略与实现解耦,减少了业务开发成本、降低了出错概率、提高了代码质量。另外将检索召回部分进行重构,将召回模式、截断策略、过滤等进行封装,抽象为组件,为业务层提供了简单明了的配置接口,这样一来,业务层仅需聚焦召回策略,无需重复实现。

在本示例实施例中,对于不同的召回模式,召回方式也相应的有所不同。

当召回策略包括召回模式配置项和截断策略配置项,且召回模式为朴素召回模式时,首先根据召回配置文件中的索引类型和检索关键词在倒排索引链中进行检索,然后根据召回配置文件中设置的截断策略配置项在截断策略组件中调用相应的截断策略,以对检索结果进行截断,当召回信息的量达到截断策略设定的数量时,便停止检索。落入召回池中的信息组成召回信息集,并被返回并呈现给用户。

进一步的,当召回策略还包括过滤配置项时,可以在对检索结果进行截断前,根据过滤配置项在过滤组件中调用相应的过滤条件,以对检索结果进行过滤,然后再根据截断策略进行截断,获得召回信息集。

图7示出了通过朴素召回推荐新闻的流程示意图,如图7所示,左侧的配置项列表列出了所有的配置项及用户选择的配置项(被选择的配置项通过在配置项名称右上角标记*表示),具体地,业务开发人员选定的召回模式为朴素召回,过滤条件为历史过滤,截断配置为最大召回量,并且设定相应的索引类型和检索关键词,也就是说,由朴素召回、历史过滤条件、最大召回量截断策略、索引类型和检索关键词组成了召回配置文件。右侧的流程图示出了根据召回配置文件进行召回的流程图,在步骤s701中,开始执行召回时,根据索引类型和检索关键词在倒排索引链中进行检索;在步骤s702中,依次遍历倒排索引中的每一篇新闻,并根据历史过滤条件,将用户阅读过的新闻过滤掉;在步骤s703中,对用户未阅读的新闻进行判断,确定是否保留该新闻;在步骤s704中,如果保留该新闻,则将该新闻加入召回池中;若不保留该新闻,则将该新闻扔掉,继续对下一篇新闻进行判断;在步骤s705中,将新闻加入召回池中后,根据截断策略判断召回池中新闻的数量是否达到最大召回量;在步骤s706中,如果达到最大召回量,则截断,召回流程结束;如果未达到最大召回量,则继续对下一篇新闻进行过滤、判断是否保留,直至达到最大召回量,获得召回信息集。

进一步的,召回模式还可以是算分召回或阈值召回,也还可以是其它的召回模式。

当召回策略包括召回模式配置项、算分配置项和截断策略配置项,且召回模式为算分召回模式时,首先根据召回配置文件中的索引类型和检索关键词在倒排索引链中进行检索,然后根据算分配置项在算分组件中调用相应的算分方法,以计算用户检索维度与检索结果的相关度,通常该相关度以数值形式体现;接着将检索结果按照相关度从高到低进行排序;最后根据召回配置文件中设置的截断配置项在截断策略组件中调用相应的截断策略,以对排序后的检索结果进行截断,当召回信息量达到截断策略设定的标准时,便停止检索。落入召回池中的信息组成召回信息集,并被返回并呈现给用户。

当召回策略包括召回模式配置项、算分策略配置项和截断策略配置项,且召回模式为阈值召回模式时,首先根据召回配置文件中的索引类型和检索关键词在倒排索引链中进行检索,然后根据算分配置项在算分组件中调用相应的算分方法,以计算用户检索维度与检索结果的相关度;接着将该相关度与预设相关度进行比较,判断该相关度是否大于或等于预设相关度;若该相关度大于或等于预设相关度,则根据召回配置文件中设置的截断策略配置项在截断策略组件中调用相应的截断策略,以对检索结果进行截断,当召回信息量达到截断策略设定的标准时,便停止检索。落入召回池中的信息组成召回信息集,并被返回并呈现给用户。

在上述的算分召回过程和阈值召回过程中,召回策略还可以包括过滤配置项,在根据截断策略对检索结果截断前,根据过滤配置项在过滤组件中调用相应的过滤条件,以对检索结果进行过滤。

在本示例实施例中,如图5所示,在召回核心层还可以设置召回主逻辑模块和召回配置解释器,其中召回主逻辑模块是召回层的入口模块,召回主逻辑模块接收用户填写的召回配置文件后,将召回配置文件发送给召回配置解释器进行格式转化,将召回配置文件转化为机器可读的召回配置文件;接着召回配置解释器将机器可读的召回配置文件发送至召回主逻辑模块,召回主逻辑模块从索引层中拉取倒排索引链,同时根据召回配置文件选取相应组件,并从各组件中调用对应的召回模式、算分方法、过滤条件和/或截断策略,以在倒排索引链中进行检索完成召回。值得注意的是,为了提高工作效率,召回模式组件、过滤组件、算分组件和截断策略组件均通过接口与召回主逻辑模块连接,供召回主逻辑模块选取相应的召回模式、过滤条件、算分方法和截断策略。

在本示例实施例中,在获取召回信息集后,可以将召回信息集通过接收召回配置文件的接口输出至召回用户层,呈现给用户。进一步的,还可以设置召回诊断模块,该召回诊断模块在召回过程中,将形成召回信息集的过程中生成的所有数据整理形成诊断信息,并可以将诊断信息通过接收召回配置文件的接口返回给用户,以供用户进行分析。

以下介绍本发明的装置实施例,可以用于执行本发明上述的信息召回方法。对于本发明装置实施例中未披露的细节,请参照本发明上述的信息召回方法的实施例。

图8示出了一种信息召回装置的结构示意图,参照图8所示,信息召回装置800可以包括:获取模块801和召集信息集形成模块802。

具体地,获取模块801,用于获取召回配置文件中的召回策略、索引类型、和检索关键词,所述召回策略包括召回模式配置项和截断策略配置项;召回信息集形成模块802,用于基于所述召回模式配置项对应的召回模式,根据所述检索关键词和所述索引类型在倒排索引链中进行检索,并根据所述截断策略配置项对应的截断策略将检索结果进行截断,以获得召回信息集。

在本示例实施例中,获取模块801包括召回策略确定单元,用于根据所述召回模式配置项对应的召回模式组件和所述截断策略配置项对应的截断策略组件确定所述召回策略。

在本示例实施例中,所述召回策略还包括过滤配置项和算分配置项,相应的,所述召回配置文件中配置项对应的组件还包括过滤组件和算分组件。

在本示例实施例中,所述召回模式包括朴素召回、算分召回和阈值召回。

在本示例实施例中,所述召回信息集形成模块802包括第一检索单元和第一截断单元。

具体地,第一检索单元,用于当所述召回模式为朴素召回时,根据所述索引类型和所述检索关键词在所述倒排索引链中进行检索;第一截断单元,用于根据所述截断策略配置项在截断策略组件中调用相应的截断策略,并根据所述截断策略对检索结果进行截断,以获得所述召回信息集。

在本示例实施例中,所述召回信息集形成模块802包括第二检索单元、相关度计算单元、排序单元和第二截断单元。

具体地,第二检索单元,用于当所述召回模式为算分召回,且所述召回策略包括算分配置项时,根据所述索引类型和所述检索关键词在所述倒排索引链中进行检索;相关度计算单元,用于根据所述算分配置项从算分组件中调用相应的算分方法,根据所述算分方法计算用户与检索结果的相关度;排序单元,用于将所述检索结果按照所述相关度从高到低排序;第二截断单元,用于根据所述截断策略配置项在截断策略组件中调用相应的截断策略,并根据所述截断策略对排序后的所述检索结果进行截断,以获得所述召回信息集。

在本示例实施例中,所述召回信息集形成模块802包括第三检索单元、相关度计算单元、判断单元和第三截断单元。

具体地,第三检索单元,用于当所述召回模式为阈值召回,且所述召回策略包括算分配置项时,根据所述索引类型和所述检索关键词在所述倒排索引链中进行检索;相关度计算单元,用于根据所述算分配置项在算分组件中调用相应的算分方法,通过所述算分方法计算用户与检索结果的相关度;判断单元,用于将所述相关度与预设相关度进行比较,以判断所述检索结果对应的相关度是否大于或等于所述预设相关度;第三截断单元,用于在所述检索结果对应的相关度大于或等于所述预设相关度时,根据所述截断策略配置项在截断策略组件中调用相应的截断策略,并根据所述截断策略对所述检索结果进行截断,以获得所述召回信息集。

在本示例实施例中,所述召回策略还包括过滤配置项,基于前述方案,所述召回信息集形成模块802还包括过滤单元,用于在对所述检索结果进行截断之前,根据所述过滤配置项在过滤组件中调用相应的过滤条件,并根据所述过滤条件对所述检索结果进行过滤。

图9示出了一种信息召回装置的结构示意图,参照图9所示,所述信息召回装置800还包括格式转化模块803,用于在获取所述召回配置文件后,将所述召回配置文件的格式进行转化以形成机器可读的召回配置文件。

图10示出了一种信息召回装置的结构示意图,参照图10所示,所述信息召回装置800还包括倒排索引链拉取模块804,用于在获取所述召回配置文件后,从索引层中拉取所述倒排索引链。

图11示出了一种信息召回装置的结构示意图,参照图11所示,所述信息召回装置还包括第一输出模块805,用于将所述召回信息集通过接收所述召回配置文件的接口输出。

图12示出了一种信息召回装置的结构示意图,参照图12所示,所述信息召回装置还包括诊断信息生成模块806和第二输出模块807。

具体地,诊断信息生成模块806用于获取在形成所述召回信息集的过程中生成的所有数据,以形成诊断信息;第二输出模块807,用于将所述诊断信息通过接收所述召回配置文件的接口输出。

由于本发明的示例实施例的信息召回装置的各个功能模块与上述信息召回方法的示例实施例的步骤对应,因此在此不再赘述。

应当注意,尽管在上文详细描述中提及了信息召回装置的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由所附的权利要求指出。

应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1