信息推荐系统、方法及可读存储介质与流程

文档序号:33507182发布日期:2023-03-18 03:11阅读:58来源:国知局
信息推荐系统、方法及可读存储介质与流程

1.本技术涉及信息处理技术领域,尤其涉及一种信息推荐系统、方法及可读存储介质。


背景技术:

2.随着科学技术的发展,电子商务以及短视频行业逐渐发展起来,在电子商务领域和短视频领域,有些商家或企业在推广产品时,往往需要针对用户的兴趣对产品进行个性化推荐。
3.目前,不同的商家或企业为了更好的地推广自己的产品或业务,往往会在产品上线之前部署自己的产品推广系统或业务推荐系统。但是一些企业由于研发能力较弱,所部署的推荐系统框架杂乱、难维护,在发展业务的过程中可能需要多次推倒已有的推荐系统的框架重构架构,而一些企业已经成熟的推荐系统的框架又过于复杂,维护成本高。现有常用的推荐系统框架,组件太多、架构复杂,不仅维护难度大,而且可扩展性差。


技术实现要素:

4.本技术旨在至少能解决上述的技术缺陷之一,有鉴于此,本技术提供了一种信息推荐系统、方法及可读存储介质,用于解决现有技术中推荐系统架构复杂,难维护、可扩展性差的技术缺陷。
5.一种信息推荐系统,包括:
6.用户管理模块、接口模块以及主逻辑模块;
7.所述用户管理模块接收用户的业务需求后将所述用户的业务需求发送给所述接口模块;
8.所述接口模块接收所述用户管理模块发送的所述用户的业务需求,并分析所述用户的业务需求,得到与所述用户的业务需求对应的接口参数,对与所述用户的业务需求对应的接口参数进行校验,若与所述用户的业务需求对应的接口参数校验通过则将与所述用户的业务需求对应的接口参数发送给所述主逻辑模块;
9.所述主逻辑模块依据与所述用户的业务需求对应的接口参数,调用与所述用户的业务需求对应的接口参数对应的接口,获取与所述用户的业务需求对应的目标数据并将所述目标数据推荐给所述用户管理模块。
10.优选地,该系统还包括:
11.所述主逻辑模块依据与所述用户的业务需求对应的接口参数,接入与所述用户的业务需求对应的接口参数对应的业务模块,并将新接入的业务模块对应的接口参数更新至所述接口模块。
12.优选地,所述主逻辑模块依据与所述用户的业务需求对应的接口参数,接入与所述用户的业务需求对应的接口参数对应的业务模块的过程,包括:
13.所述主逻辑模块依据与所述用户的业务需求对应的接口参数,插入缓存模块;
14.所述主逻辑模块调用所述缓存模块判断所述用户的业务需求中是否包括用户请求缓存信息,若确定所述用户的业务需求中包括用户请求缓存信息,则调用所述缓存模块缓存用户请求缓存的个性化数据;若确定所述用户的业务需求中未包括用户请求缓存信息,则调用所述缓存模块获取定时更新的任务的本地缓存数据与其他缓存数据。
15.优选地,所述主逻辑模块依据与所述用户的业务需求对应的接口参数,接入与所述用户的业务需求对应的接口参数对应的业务模块的过程,包括:
16.所述主逻辑模块依据与所述用户的业务需求对应的接口参数,插入全局服务组件;
17.其中,所述全局服务组件包括项目通用模块和配置模块;
18.所述主逻辑模块依据与所述用户的业务需求对应的接口参数,调用所述配置模块对与所述用户的业务需求对应的项目文件进行配置,得到与所述用户的业务对应的各个项目文件;
19.所述主逻辑模块依据与所述用户的业务需求对应的接口参数,调用所述项目通用模块将与各个所述用户的业务需求对应的项目文件从各个数据连接池拉取到所述各个项目文件对应的项目管理系统中,并将各个项目的操作日志更新到各个项目对应的日志管理系统中。
20.优选地,所述主逻辑模块依据与所述用户的业务需求对应的接口参数,接入与所述用户的业务需求对应的接口参数对应的业务模块的过程,包括:
21.所述主逻辑模块依据与所述用户的业务需求对应的接口参数,插入底层数据逻辑模块、缓存模块、辅助逻辑模块、个性化推荐组件、定时任务管理模块以及文件存储系统;
22.其中,所述个性化推荐组件包括召回模块、精排模块、重排模块以及模型文件模块;
23.所述底层数据逻辑模块获取ab测试开关配置的数据发送给所述辅助逻辑模块;
24.所述辅助逻辑模块将所述ab测试开关配置的数据进行处理得到与所述ab测试开关配置的数据对应的用户的分流结果并发给所述主逻辑模块;
25.所述主逻辑模块根据所述用户的分流结果,调用所述缓存模块判断是否存在与所述用户的分流结果对应的缓存数据;
26.若所述缓存模块存在与所述用户的分流结果对应的缓存数据,则将与所述用户的分流结果对应的第一缓存数据发送给所述主逻辑模块。
27.优选地,该系统还包括:
28.若所述缓存模块不存在与所述用户的分流结果对应的缓存数据,则将与所述用户的分流结果对应的缓存数据发送给所述召回模块;
29.所述主逻辑模块根据所述用户的分流结果,调用所述数据逻辑模块获取与用户的分流结果对应的用户特征数据;
30.所述主逻辑模块根据所述用户的分流结果,调用所述辅助逻辑模块将所述辅助逻辑模块的实时库存过滤数据发送给所述召回模块;
31.所述召回模块将所述辅助逻辑模块的实时库存过滤数据、所述用户特征数据以及与所述用户的分流结果对应的缓存数据进行处理,得到目标召回数据并发给所述主逻辑模块;
32.所述定时任务管理模块定时从所述文件储存系统里获取根据用户行为训练的第一目标模型文件;
33.所述主逻辑模块接收所述第一目标召回数据,并将所述第一目标召回数据与发送给所述精排模块;
34.所述精排模块接收所述第一目标召回数据,并加载与所述第一目标召回数据对应的所述第一目标模型文件,并对所述第一目标召回数据进行预测打分,得到所述第一目标召回数据的排序结果并发给所述主逻辑模块;
35.所述主逻辑模块接收所述第一目标召回数据的排序结果,对所述第一目标召回数据的排序结果进行分析得到所述第一目标召回数据的精排结果,再将所述第一目标召回数据的精排结果传入所述重排模块;
36.所述重排模块接收所述第一目标召回数据的精排结果,并根据预设的重排策略,配合所述辅助逻辑模块对所述第一目标召回数据的精排结果进行处理,最终输出目标用户个性化数据并发给所述主逻辑模块。
37.优选地,所述主逻辑模块依据与所述用户的业务需求对应的接口参数,接入与所述用户的业务需求对应的接口参数对应的业务模块的过程,包括:
38.所述主逻辑模块依据与所述用户的业务需求对应的接口参数,插入缓存模块、定时任务管理模块、个性化推荐组件、文件存储系统以及辅助逻辑模块;
39.其中,所述个性化推荐组件包括精排模块、召回模块以及重排模块;
40.所述主逻辑模块调用所述缓存模块判断所述用户的业务需求中是否包括用户请求缓存信息,若确定所述用户的业务需求中包括用户请求缓存信息,则调用所述缓存模块缓存用户请求缓存的个性化数据;若确定所述用户的业务需求中未包括用户请求缓存信息,则调用所述缓存模块获取定时更新的任务的本地缓存数据与其他缓存数据;
41.所述召回模块将每天所述定时任务管理模块定时新处理的召回品类数据进行处理,得到第二目标召回数据,并发送到所述本地缓存模块进行保存以及发给所述精排模块;
42.当用户的业务需求为进行t+1更新模式时,所述定时任务管理模块依据所述用户的业务需求,每天定时处理一次模型训练任务,并将训练好的第二目标模型文件存储到所述文件存储系统;
43.所述文件存储系统将所述定时任务管理模块发送的所述第二目标模型文件发送给所述精排模块;
44.所述精排模块接收所述第二目标模型文件,并加载与所述第二目标召回数据对应的所述第二目标模型文件,并对所述第二目标召回数据进行预测打分,得到所述第二目标召回数据的排序结果并发给所述主逻辑模块;
45.所述主逻辑模块接收所述第二目标召回数据的排序结果,对所述第二目标召回数据的排序结果进行分析得到所述第二目标召回数据的精排结果,再将所述第二目标召回数据的精排结果传入所述重排模块;
46.所述重排模块接收所述第二目标召回数据的精排结果,并根据预设的重排策略,配合所述辅助逻辑模块对所述第二目标召回数据的精排结果进行处理,最终输出目标用户个性化数据并发给所述主逻辑模块。
47.优选地,该系统还包括:
48.当用户的业务需求为进行小时级别更新模式时,所述定时任务管理模块依据所述用户的业务需求,每天每小时定时处理一次模型训练任务,并将训练好的第三目标模型文件存储到所述文件存储系统;
49.所述文件存储系统将所述定时任务管理模块发送的所述第三目标模型文件发送给所述精排模块;
50.所述精排模块接收所述第三目标模型文件,并加载与所述第二目标召回数据对应的所述第三目标模型文件,并对所述第二目标召回数据进行预测打分,得到所述第二目标召回数据的排序结果并发给所述主逻辑模块;
51.所述主逻辑模块接收所述第二目标召回数据的排序结果,对所述第二目标召回数据的排序结果进行分析得到所述第二目标召回数据的精排结果,再将所述第二目标召回数据的精排结果传入所述重排模块;
52.所述重排模块接收所述第二目标召回数据的精排结果,并根据预设的重排策略,配合所述辅助逻辑模块对所述第二目标召回数据的精排结果进行处理,最终输出目标用户个性化数据并发给所述主逻辑模块。
53.优选地,所述主逻辑模块依据与所述用户的业务需求对应的接口参数,接入与所述用户的业务需求对应的接口参数对应的业务模块的过程,包括:
54.所述主逻辑模块依据与所述用户的业务需求对应的接口参数,插入缓存模块、定时任务管理模块、个性化推荐组件、文件存储系统、辅助逻辑模块以及地层数据逻辑模块;
55.其中,所述个性化推荐组件包括精排模块、召回模块以及重排模块;
56.所述主逻辑模块调用所述缓存模块判断所述用户的业务需求中是否包括用户请求缓存信息,若确定所述用户的业务需求中包括用户请求缓存信息,则调用所述缓存模块缓存用户请求缓存的个性化数据;若确定所述用户的业务需求中未包括用户请求缓存信息,则调用所述缓存模块获取定时更新的任务的本地缓存数据与其他缓存数据;
57.所述召回模块将每天所述定时任务管理模块定时新处理的召回品类数据进行处理,得到第三目标召回数据,并发送到所述本地缓存模块进行保存以及发给所述精排模块;
58.当用户的业务需求为进行实时更新模式时,所述地层数据逻辑模块获取用户的实时行为序列并发送给所述定时任务管理模块;
59.所述定时任务管理模块依据所述用户的实时行为序列,实时处理模型训练任务,并将训练好的第四目标模型文件存储到所述文件存储系统;
60.所述文件存储系统将所述定时任务管理模块发送的所述第三目标模型文件发送给所述精排模块;
61.所述精排模块接收所述第四目标模型文件,并加载与所述第三目标召回数据对应的所述第四目标模型文件,并对所述第三目标召回数据进行预测打分,得到所述第三目标召回数据的排序结果并发给所述主逻辑模块;
62.所述主逻辑模块接收所述第三目标召回数据的排序结果,对所述第三目标召回数据的排序结果进行分析得到所述第三目标召回数据的精排结果,再将所述第三目标召回数据的精排结果传入所述重排模块;
63.所述重排模块接收所述第三目标召回数据的精排结果,并根据预设的重排策略,配合所述辅助逻辑模块对所述第三目标召回数据的精排结果进行处理,最终输出目标用户
个性化数据并发给所述主逻辑模块。
64.一种信息推荐方法,应用于前述介绍的任一项所述的信息推荐系统,该方法包括:
65.接收用户的业务需求并分析所述用户的业务需求,确定与所述用户的业务需求对应的接口参数;
66.对与所述用户的业务需求对应的接口参数进行校验;
67.若确定与所述用户的业务需求对应的接口参数验证通过,则调用与所述用户的业务需求对应的接口参数对应的目标接口;
68.通过所述目标接口获取与所述用户的业务需求对应的目标数据;
69.将所述目标数据推荐给所述用户。
70.优选地,该方法还包括:
71.依据与所述用户的业务需求对应的接口参数,接入与所述用户的业务需求对应的接口参数对应的业务模块。
72.一种可读存储介质,所述可读存储介质中存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器实现如前述介绍中任一项所述信息推荐方法的步骤。
73.从以上介绍的技术方案可以看出,当用户有扩展推荐业务或部署新的业务推荐模块时,本技术实施例提供可以提供一种信息推荐系统,该信息推荐可以包括:用户管理模块、接口模块以及主逻辑模块;其中,所述用户管理模块可以接收用户的业务需求后将所述用户的业务需求发送给所述接口模块;所述接口模块可以在接收所述用户管理模块发送的所述用户的业务需求之后,分析所述用户的业务需求,得到与所述用户的业务需求对应的接口参数,并对与所述用户的业务需求对应的接口参数进行校验,若确定与所述用户的业务需求对应的接口参数校验通过则将与所述用户的业务需求对应的接口参数发送给所述主逻辑模块;所述主逻辑模块在接收所述依据与所述用户的业务需求对应的接口参数,调用与所述用户的业务需求对应的接口参数对应的接口,获取与所述用户的业务需求对应的目标数据并将所述目标数据推荐给所述用户管理模块。
74.本技术实施例提供的信息推荐系统中各个模块之间相互独立,结构简明清晰,可以供有推荐信息需求的企业快速搭建各自的信息推荐系统,本技术实施例提供的信息推荐系统技术栈明确,各个模块之间独立处理,可使得计算资源存储资源消耗少,维护成本低,支持实时对用户推荐数据做灵活调整,可随着企业的业务需求变化而变化,灵活性较强。
附图说明
75.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
76.图1位本技术实施例提供的一种可选的信息推荐系统的系统架构示意图;
77.图2为本技术实施例提供的一种实现信息推荐方法的流程图;
78.图3为本技术实施例提供的一种信息推荐设备的硬件结构框图。
具体实施方式
79.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
80.现有的业务推荐方案中常用flask框架作为基础来进行研发,flask是一个使用python编写的轻量级web应用框架。也有一些推荐方案利用gunicorn工具,gunicorn工具是一个广泛使用的高性能的python http server,和大多数的web框架兼容,并具有实现简单,轻量级,高性能等特点。
81.大多数业务管理系统会用到docker工具,docker是一个开源的应用容器引擎,可以让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的linux或windows操作系统的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。
82.鉴于目前大部分的信息推荐方案难以适应复杂多变的业务需求,为此,本技术人研究了一种信息推荐方案,该信息推荐方案各个模块之间相互独立,结构简明清晰,可以供有推荐信息需求的企业快速搭建各自的信息推荐系统,本技术实施例提供的信息推荐系统技术栈明确,各个模块之间独立处理,可使得计算资源存储资源消耗少,维护成本低,支持实时对用户推荐数据做灵活调整,可随着企业的业务需求变化而变化,灵活性较强。
83.本技术实施例提供的方法可以用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。
84.本技术实施例提供一种信息系统推荐系统和方法,该信息推荐系统可以应用于各种信息管理系统中,亦可以应用在各种计算机终端或是智能终端中,其执行主体可以为计算机终端或是智能终端的处理器或服务器。
85.下面结合图1,介绍本技术实施例给出的可以实现信息推荐的一种可选系统架构,如图1所示,该系统架构可以包括:用户管理模块、接口模块以及主逻辑模块。
86.其中,
87.所述用户管理模块可以接收用户的业务需求后将所述用户的业务需求发送给所述接口模块。
88.具体地,在实际应用过程中,本技术实施例提供的信息推荐系统可以单独利用所述用户管理模块来管理用户的各种业务需求。
89.例如,所述用户管理模块可以用来管理用户的数据,也可以用来管理用户的业务需求数据。
90.所述业务需求可以包括用户请求推荐个性化数据的需求,也可以包括用户请求扩展某个业务模块的需求。
91.例如,当用户需要部署新的业务时,需要把新的业务相关的业务模块部署到原有的系统架构时,可以利用所述用户管理模块对用户需要部署的业务需求数据进行管理。
92.所述接口模块可以接收所述用户管理模块发送的所述用户的业务需求,在接收所述用户管理模块发送的所述用户的业务需求之后,所述接口模块可以进一步分析所述用户
的业务需求,从而可以得到与所述用户的业务需求对应的接口参数。
93.具体地,所述接口模块可以管理所述信息推荐系统的所有接口。
94.其中,与所述用户的业务需求对应的接口参数反映了所述用户的业务所需要用到的接口类型以及对应的接口id。
95.因此,在所述接口模块确定与所述用户的业务需求对应的接口参数之后,为了确保数据安全和系统的稳定性,需要进一步对所述用户的业务需求对应的接口参数进行校验。
96.因此,本技术实施例提供的信息推荐系统中的所述接口模块除了可以确定与所述用户的业务需求对应的接口参数之外,还可以进一步对与所述用户的业务需求对应的接口参数进行校验,以验证所述用户的业务需求对应的接口参数是否为与所述用户的业务需求真实匹配的接口参数。
97.在实际应用过程中,由于参数校验为接口设计时与前后端约定好的参数规则,考虑安全性可加上用户id等关键参数按约定的规则编码生成sign签名,校验过程可设计在接口方法上加个装饰器方法来对每个参数进行规则校验。
98.若所述接口模块通过校验确定与所述用户的业务需求对应的接口参数校验通过,则所述接口模块还可以进一步将与所述用户的业务需求对应的接口参数发送给所述主逻辑模块,以便所述主逻辑模块对所述用户的业务需求做进一步的处理。
99.所述主逻辑模块可以接收所述接口模块发生的与所述用户的业务需求对应的接口参数。
100.具体地,在接收到所述接口模块发生的与所述用户的业务需求对应的接口参数之后,所述主逻辑模块可以依据与所述用户的业务需求对应的接口参数,调用与所述用户的业务需求对应的接口参数对应的接口,同时可以获取与所述用户的业务需求对应的目标数据,并将所述目标数据推荐给所述用户管理模块。
101.从上述介绍的技术方案可以看出,本技术实施例提供的信息推荐系统中各个模块之间相互独立,结构简明清晰,可以供有推荐信息需求的企业快速搭建各自的信息推荐系统,本技术实施例提供的信息推荐系统技术栈明确,各个模块之间独立处理,可使得计算资源存储资源消耗少,维护成本低,支持实时对用户推荐数据做灵活调整,可随着企业的业务需求变化而变化,灵活性较强。
102.进一步可选的,由上述介绍可知,本技术实施例提供的信息管理系统中,所述用户管理模块可以管理与用户的需求相关的数据。
103.在实际应用过程中,当所述接口模块在确定与所述用户的业务与需求对应的接口参数之后,若发现本技术实施例提供的信息推荐系统中的所述接口模块中不存在与所述用户的业务需求对应的接口参数对应的接口数据,本技术实施例提供的信息推荐系统中所述主逻辑模块还可以依据与所述用户的业务需求对应的接口参数,接入与所述用户的业务需求对应的接口参数对应的业务模块。
104.例如,当用户需要将新业务的业务模块时,所述接口模块中不存在与所述用户的新业务对应的业务模块的接口,则本技术实施例提供的信息推荐系统的所述主逻辑模块可以依据与所述用户的业务需求对应的接口参数,接入与所述用户的业务需求对应的接口参数对应的业务模块,并将新接入的业务模块对应的接口参数更新至所述接口模块。
105.从上述介绍的技术方案可以看出,本技术实施例提供的信息推荐系统中各个模块之间相互独立,结构简明清晰,可以供有推荐信息需求的企业快速搭建各自的信息推荐系统,还可以根据用户不同的业务需求,接入与用户的需求相关的业务模块,有助于不同的用户根据各自不同的业务扩展业务模块,完善和部署各自的信息推荐系统框架,本技术实施例提供的信息推荐系统技术栈明确,各个模块之间独立处理,可使得计算资源存储资源消耗少,维护成本低,支持实时对用户推荐数据做灵活调整,可随着企业的业务需求变化而变化,灵活性较强。
106.在实际应用过程中,随着用户的需求不同,所述主逻辑模块依据与所述用户的业务需求对应的接口参数,接入与所述用户的业务需求对应的接口参数对应的业务模块的过程的也会不同,接下来介绍几种可选的实现方式,具体可以包括如下:
107.第一种,
108.在确定与所述用户的业务需求对应的接口参数之后,若确定与所述用户的业务需求对应的接口参数是与缓存模块对应的接口参数。
109.则所述主逻辑模块可以依据与所述用户的业务需求对应的接口参数,插入所述缓存模块。
110.由上述介绍可知,所述用户管理模块可以将所述用户的业务需求发送给所述接口模块。
111.所述接口模块在对所述用户的业务需求进行分析得到与所述用户的业务需求对应的接口参数之后,对所述用户的业务需求对应的接口参数进行校验后发送给所述主逻辑模块。
112.由此可知,所述用户的业务需求对应的接口参数可以反馈所述用户的业务需求的相关信息。
113.在实际应用过程中,所述缓存模块除了可以缓存与所述用户的业务需求对应的个性化数据,还可以获取定时更新的任务的本地缓存数据与其他缓存数据。
114.因此,在插入所述缓存模块之后,所述主逻辑模块可以调用所述缓存模块判断所述用户的业务需求中是否包括用户请求缓存信息,若确定所述用户的业务需求中包括用户请求缓存信息,则可以调用所述缓存模块缓存用户请求缓存的个性化数据。
115.若确定所述用户的业务需求中未包括用户请求缓存信息,则可以调用所述缓存模块获取定时更新的任务的本地缓存数据与其他缓存数据。
116.第二种,
117.在确定与所述用户的业务需求对应的接口参数之后,若确定与所述用户的业务需求对应的接口参数是与全局服务组件对应的接口参数。
118.则所述主逻辑模块可以依据与所述用户的业务需求对应的接口参数,插入所述全局服务组件。
119.其中,所述全局服务组件可以包括项目通用模块和配置模块。
120.由上述介绍可知,所述用户管理模块可以将所述用户的业务需求发送给所述接口模块。
121.所述接口模块在对所述用户的业务需求进行分析得到与所述用户的业务需求对应的接口参数之后,对所述用户的业务需求对应的接口参数进行校验后发送给所述主逻辑
模块。
122.由此可知,所述用户的业务需求对应的接口参数可以反馈所述用户的业务需求的相关信息。
123.在实际应用过程中,用户的业务需要可以包括配置某个项目的相关文件,或者部署某个新的项目。
124.因此,当需要部署与用户的需求对应的项目相关文件时,所述主逻辑模块可以依据与所述用户的业务需求对应的接口参数,调用所述配置模块对与所述用户的业务需求对应的项目文件进行配置,由此可以得到与所述用户的业务对应的各个项目文件。
125.所述主逻辑模块还可以依据与所述用户的业务需求对应的接口参数,调用所述项目通用模块将与各个所述用户的业务需求对应的项目文件从各个数据连接池拉取到所述各个项目文件对应的项目管理系统中,同时还可以将各个项目的操作日志更新到各个项目对应的日志管理系统中。
126.第三种,
127.由上述介绍可知,所述用户的业务需求对应的接口参数可以反馈所述用户的业务需求的相关信息。
128.因此,在确定与所述用户的业务需求对应的接口参数之后,若确定与所述用户的业务需求对应的接口参数是与底层数据逻辑模块、缓存模块、辅助逻辑模块、个性化推荐组件、定时任务管理模块以及文件存储系统对应的接口参数。
129.则所述主逻辑模块依据与所述用户的业务需求对应的接口参数,插入所述底层数据逻辑模块、所述缓存模块、所述辅助逻辑模块、所述个性化推荐组件、所述定时任务管理模块以及所述文件存储系统;
130.其中,所述个性化推荐组件可以包括所述召回模块、所述精排模块、所述重排模块以及所述第一目标模型文件模块;
131.其中,
132.在实际应用过程中,当用户的需求是进行ab精排模型测试时,所述底层数据逻辑模块可以获取ab测试开关配置的数据并发送给所述辅助逻辑模块。
133.所述辅助逻辑模块在接收到所述ab测试开关配置的数据之后,可以将所述ab测试开关配置的数据进行处理,得到与所述ab测试开关配置的数据对应的用户的分流结果并发给所述主逻辑模块。
134.由上述介绍可知,所述缓存模块可以判断是否存在于所述用户的业务需求对应的个性化信息。
135.因此,所述主逻辑模块在接收到所述ab测试开关配置的数据对应的用户的分流结果之后,可以进一步根据所述用户的分流结果,调用所述缓存模块判断是否存在与所述用户的分流结果对应的缓存数据。
136.若所述缓存模块确定存在与所述用户的分流结果对应的缓存数据,则所述缓存模块可以将与所述用户的分流结果对应的第一缓存数据发送给所述主逻辑模块,以便所述主逻辑模块可以对与所述用户的分流结果对应的第一缓存数据进行处理。
137.若所述缓存模块确定不存在与所述用户的分流结果对应的缓存数据,则将与所述用户的分流结果对应的缓存数据发送给所述召回模块,以便所述召回模块对与所述用户的
分流结果对应的缓存数据进行处理。
138.所述主逻辑模块还可以根据所述用户的分流结果,调用所述数据逻辑模块获取与用户的分流结果对应的用户特征数据。
139.所述主逻辑模块还可以根据所述用户的分流结果,调用所述辅助逻辑模块将所述辅助逻辑模块的实时库存过滤数据发送给所述召回模块,以便所述召回模块对所述辅助逻辑模块的实时库存过滤数据进行处理。
140.所述召回模块在接收到所述辅助逻辑模块的实时库存过滤数据、所述用户特征数据以及与所述用户的分流结果对应的缓存数据之后,可以将所述辅助逻辑模块的实时库存过滤数据、所述用户特征数据以及与所述用户的分流结果对应的缓存数据进行处理,得到目标召回数据并发给所述主逻辑模块,以便所述主逻辑模块对所述第一目标召回数据进行处理。
141.所述定时任务管理模块可以定时从所述文件储存系统里获取根据用户行为训练的模型文件。
142.其中,所述文件存储系统存储着至少一个用户行为对应的模型文件。
143.所述第一目标模型文件可以为所述文件储存系统依据各个用户的行为特征作为训练数据,训练得到的模型文件。
144.其中,
145.模型文件为算法工程师根据场景选定的某类预测算法模型,以用户画像、用户历史行为等作为训练样本,离线预训练好的算法模型文件。
146.模型文件其内容主要是算法训练好的一些指标参数。线上只需利用对应算法包加载模型文件,就可对用户的召回数据进行预测,根据预测结果进行排序。
147.各个所述第一目标模型文件与所述第一目标召回数据存在对应关系。
148.所述主逻辑可以接收所述第一目标召回数据,并可以将所述第一目标召回数据与发送给所述精排模块,由所述精排模块对所述第一目标召回数据进行处理。
149.所述精排模块可以接收所述第一目标召回数据,并可以在接收所述第一目标召回数据之后加载与所述第一目标召回数据对应的所述第一目标模型文件。
150.在加载与所述第一目标召回数据对应的所述第一目标模型文件之后,可以对所述第一目标召回数据进行预测打分,得到所述第一目标召回数据的排序结果并发给所述主逻辑模块,以便所述主逻辑模块依据所述第一目标召回数据的排序结果对所述第一目标召回数据进行处理。
151.所述主逻辑模块可以接收所述第一目标召回数据的排序结果,并在接收到所述第一目标召回数据对应的排序结果之后,对所述第一目标召回数据的排序结果进行分析,可以得到所述第一目标召回数据的精排结果。
152.其中,所述第一目标召回数据的精排结果是根据所述第一目标召回数据的打分预测结果进行的精排,因此,所述第一目标召回数据的精排结果可以匹配所述用户的业务需求,因此,在得到与所述第一目标召回数据的精排结果之后,可以再将所述第一目标召回数据的精排结果传入所述重排模块,以便所述重排模块对所述第一目标召回数据的精排结果进行重排处理。
153.所述重排模块可以接收所述第一目标召回数据的精排结果,并在接收所述第一目
标召回数据的精排结果之后,根据预设的重排策略,配合所述辅助逻辑模块对所述第一目标召回数据的精排结果进行处理,最终输出目标用户个性化数据并发给所述主逻辑模块,以便所述主逻辑模块可以对所述目标用户个性化数据进行处理。
154.第四种,
155.在确定与所述用户的业务需求对应的接口参数之后,若确定与所述用户的业务需求对应的接口参数是与缓存模块、定时任务管理模块、个性化推荐组件、文件存储系统以及辅助逻辑模块对应的接口参数。
156.则所述主逻辑模块可以依据与所述用户的业务需求对应的接口参数,插入缓存模块、定时任务管理模块、个性化推荐组件、文件存储系统以及辅助逻辑模块;
157.其中,所述个性化推荐组件可以包括精排模块、召回模块以及重排模块;
158.由上述介绍可知,所述用户管理模块可以将所述用户的业务需求发送给所述接口模块。
159.所述接口模块在对所述用户的业务需求进行分析得到与所述用户的业务需求对应的接口参数之后,对所述用户的业务需求对应的接口参数进行校验后发送给所述主逻辑模块。
160.由此可知,所述用户的业务需求对应的接口参数可以反馈所述用户的业务需求的相关信息。
161.在实际应用过程中,当用户需要搭建定时更新业务的框架时;
162.所述主逻辑模块可以调用所述缓存模块判断所述用户的业务需求中是否包括用户请求缓存信息,若确定所述用户的业务需求中包括用户请求缓存信息,则可以调用所述缓存模块缓存用户请求缓存的个性化数据;若确定所述用户的业务需求中未包括用户请求缓存信息,则可以调用所述缓存模块获取定时更新的任务的本地缓存数据与其他缓存数据;
163.所述召回模块可以将每天所述定时任务管理模块定时新处理的召回品类数据进行处理,得到第二目标召回数据,并发送到所述本地缓存模块进行保存以及发给所述精排模块;
164.当用户的业务需求为进行t+1更新模式时,所述定时任务管理模块可以依据所述用户的业务需求,每天定时处理一次模型训练任务,并将训练好的第二目标模型文件存储到所述文件存储系统;
165.所述文件存储系统可以将所述定时任务管理模块发送的所述第一目标模型文件发送给所述精排模块;
166.所述精排模块可以接收所述第二目标模型文件,并加载与所述第二目标召回数据对应的所述第二目标模型文件,并可以对所述第二目标召回数据进行预测打分,得到所述第二目标召回数据的排序结果并发给所述主逻辑模块;
167.所述主逻辑模块可以接收所述第二目标召回数据的排序结果,对所述第二目标召回数据的排序结果进行分析得到所述第二目标召回数据的精排结果,再将所述第二目标召回数据的精排结果传入所述重排模块;
168.所述重排模块可以接收所述第二目标召回数据的精排结果,并可以根据预设的重排策略,配合所述辅助逻辑模块对所述第二目标召回数据的精排结果进行处理,最终输出
目标用户个性化数据并发给所述主逻辑模块。
169.当用户的业务需求为进行小时级别更新模式时,所述定时任务管理模块可以依据所述用户的业务需求,每天每小时定时处理一次模型训练任务,并可以将训练好的第三目标模型文件存储到所述文件存储系统;
170.所述文件存储系统可以将所述定时任务管理模块发送的所述第二目标模型文件发送给所述精排模块;
171.所述精排模块可以接收所述第三目标模型文件,并可以加载与所述第二目标召回数据对应的所述第三目标模型文件,并可以对所述第二目标召回数据进行预测打分,得到所述第二目标召回数据的排序结果并发给所述主逻辑模块;
172.所述主逻辑模块可以接收所述第二目标召回数据的排序结果,对所述第二目标召回数据的排序结果进行分析得到所述第二目标召回数据的精排结果,再将所述第二目标召回数据的精排结果传入所述重排模块;
173.所述重排模块可以接收所述第二目标召回数据的精排结果,并根据预设的重排策略,配合所述辅助逻辑模块对所述第二目标召回数据的精排结果进行处理,最终输出目标用户个性化数据并发给所述主逻辑模块。
174.第五种,
175.在确定与所述用户的业务需求对应的接口参数之后,若确定与所述用户的业务需求对应的接口参数是与缓存模块、定时任务管理模块、个性化推荐组件、文件存储系统、辅助逻辑模块以及地层数据逻辑模块对应的接口参数。
176.则所述主逻辑模块可以依据与所述用户的业务需求对应的接口参数,插入所述缓存模块、所述定时任务管理模块、所述个性化推荐组件、所述文件存储系统、所述辅助逻辑模块以及所述地层数据逻辑模块。
177.其中,所述个性化推荐组件包括精排模块、召回模块以及重排模块;
178.由上述介绍可知,所述用户管理模块可以将所述用户的业务需求发送给所述接口模块。
179.所述接口模块在对所述用户的业务需求进行分析得到与所述用户的业务需求对应的接口参数之后,对所述用户的业务需求对应的接口参数进行校验后发送给所述主逻辑模块。
180.由此可知,所述用户的业务需求对应的接口参数可以反馈所述用户的业务需求的相关信息。
181.在实际应用过程中,当用户的业务需求为搭建一个小时级别更新的框架时。
182.所述主逻辑模块可以依据与所述用户的业务需求对应的接口参数,插入所述缓存模块、所述定时任务管理模块、所述个性化推荐组件、所述文件存储系统、所述辅助逻辑模块以及所述地层数据逻辑模块;
183.所述主逻辑模块可以调用所述缓存模块判断所述用户的业务需求中是否包括用户请求缓存信息,若确定所述用户的业务需求中包括用户请求缓存信息,则可以调用所述缓存模块缓存用户请求缓存的个性化数据;若确定所述用户的业务需求中未包括用户请求缓存信息,则可以调用所述缓存模块获取定时更新的任务的本地缓存数据与其他缓存数据;
184.所述召回模块可以将每天所述定时任务管理模块定时新处理的召回品类数据进行处理,得到第三目标召回数据,并发送到所述本地缓存模块进行保存以及发给所述精排模块;
185.当用户的业务需求为进行实时更新模式时,所述地层数据逻辑模块可以获取用户的实时行为序列并发送给所述定时任务管理模块;
186.所述定时任务管理模块可以依据所述用户的实时行为序列,实时处理模型训练任务,并可以将训练好的第四目标模型文件存储到所述文件存储系统;
187.所述文件存储系统可以将所述定时任务管理模块发送的所述第四目标模型文件发送给所述精排模块;
188.所述精排模块可以接收所述第四目标模型文件,并可以加载与所述第三目标召回数据对应的所述第四目标模型文件,并可以对所述第三目标召回数据进行预测打分,得到所述第三目标召回数据的排序结果并发给所述主逻辑模块;
189.所述主逻辑模块可以接收所述第三目标召回数据的排序结果,对所述第三目标召回数据的排序结果进行分析得到所述第三目标召回数据的精排结果,再将所述第三目标召回数据的精排结果传入所述重排模块;
190.所述重排模块可以接收所述第三目标召回数据的精排结果,并根据预设的重排策略,配合所述辅助逻辑模块对所述第三目标召回数据的精排结果进行处理,最终输出目标用户个性化数据并发给所述主逻辑模块。
191.从上述介绍的技术方案可以看出,本技术实施例提供的信息推荐系统中各个模块之间相互独立,结构简明清晰,可以供有推荐信息需求的企业快速搭建各自的信息推荐系统,还可以根据用户不同的业务需求,接入与用户的需求相关的业务模块,有助于不同的用户根据各自不同的业务扩展业务模块,完善和部署各自的信息推荐系统框架,本技术实施例提供的信息推荐系统技术栈明确,各个模块之间独立处理,可使得计算资源存储资源消耗少,维护成本低,支持实时对用户推荐数据做灵活调整,可随着企业的业务需求变化而变化,灵活性较强。
192.下面对本技术实施例提供的信息推荐方法进行描述,下文描述的信息推荐方法与上文描述的信息推荐系统可相互对应参照。
193.下面结合图2,介绍本技术实施例给出的信息推荐方法的流程,如图2所示,该流程可以包括以下几个步骤:
194.步骤s101,接收用户的业务需求并分析所述用户的业务需求,确定与所述用户的业务需求对应的接口参数。
195.具体地,由上述介绍可知,本技术实施提供的信息推荐系统包括所述用户管理模块、所述接口模块以及所述主逻辑模块。其中,各个模块之间相互独立,可以配合彼此以完成与用户的业务需求对应的信息推荐流程。
196.因此,本技术实施例提供的方法可以接收用户的业务需求并分析所述用户的业务需求,确定与所述用户的业务需求对应的接口参数。
197.其中,所述用户的业务需求可以包括请求推荐信息和对应的接口参数。
198.例如,所述用户的业务需求可以包括用户的业务可能会需要访问那些类型的接口以及对应的接口id。
199.因此,通过分析所述用户的业务需求可以确定与所述用户的业务需求对应的接口参数。
200.步骤s102,对与所述用户的业务需求对应的接口参数进行校验。
201.具体地,由上述介绍可知,本技术实施例提供的方法可以确定与所述用户的业务需求对应的接口参数。
202.为了确保信息推荐系统的安全性以及数据的准确度,可以在接收到与所述用户的业务需求对应的接口参数之后,对与所述用户的业务需求对应的接口参数进行校验。
203.若确定与所述用户的业务需求对应的接口参数验证通过,则说明此次用户的请求为合格的请求,调用与所述用户的业务需求对应的接口参数对应的目标接口不会危害信息系统的安全性,则可以执行步骤s103。
204.步骤s103,若确定与所述用户的业务需求对应的接口参数验证通过,则调用与所述用户的业务需求对应的接口参数对应的目标接口。
205.具体地,由上述介绍可知,本技术实施例提供的方法可以对与所述用户的业务需求对应的接口参数进行校验。并可以确定与所述用户的业务需求对应的接口参数验证是否验证通过。若确定与所述用户的业务需求对应的接口参数验证通过,则说明此次用户的请求为合格的请求,调用与所述用户的业务需求对应的接口参数对应的目标接口不会危害信息系统的安全性,则可以调用与所述用户的业务需求对应的接口参数对应的目标接口,以便可以通过访问与所述用户的业务需求对应的接口参数对应的目标接口来获取与所述用户的业务需求对应的目标数据。
206.步骤s104,通过所述目标接口获取与所述用户的业务需求对应的目标数据。
207.具体地,由上述介绍可知,本技术实施例提供的方法可以确定与所述用户的业务需求对应的接口参数验证是否验证通过,并可以调用与所述用户的业务需求对应的接口参数对应的目标接口,所述目标接口与所述用户的业务需求相互对应,说明通过访问所述目标接口可以确定与所述用户的业务需求对应的相关数据,因此,在调用所述目标接口之后,可以通过访问所述目标接口来获取与所述用户的业务需求对应的目标数据。
208.步骤s105,将所述目标数据推荐给所述用户。
209.具体地,由上述介绍可知,本技术实施例提供的方法可以确定所述目标数据,所述目标数据与所述用户的业务需求相互对应,因此,所述目标数据为所述用户开展业务所需要的目标数据,在确定所述目标数据之后,可以进一步将所述目标数据推荐给所述用户。
210.从上述介绍的技术方案可以看出,本技术实施例提供的信息推荐方法可以本可以根据用户不同的业务需求,向用户推荐与用户的业务需求对应的目标数据。本技术实施例提供的信息推荐方法逻辑清晰,可以供有推荐信息需求的企业快速搭建各自的信息推荐系统,有助于不同的用户根据各自不同的业务完善和部署各自的信息推荐系统框架,其次,本技术实施例提供的方法逻辑架构简单,可使得计算资源存储资源消耗少,维护成本低,支持实时对用户推荐数据做灵活调整,可随着企业的业务需求变化而变化,灵活性较强。
211.在实际应用过程中,本技术实施例提供的信息推荐方法还可以依据用户的需求扩展新的业务推荐模块,用于推荐与用户的需求对应的新业务,接下来介绍该过程,该过程可以包括如下:
212.由上述介绍可知,本技术实施例提供的方法可以确定与所述用户的业务需求对应
的接口参数,若发现现有的模块中不包括与所述用户的业务需求对应的接口参数对应的接口时,本技术实施例提供的方法还可依据与所述用户的业务需求对应的接口参数,接入与所述用户的业务需求对应的接口参数对应的业务模块。
213.从上述介绍的技术方案可以看出,本技术实施例提供的方法可以在确定与用户的业务需求对应的接口参数之后,还可以依据用户的需求扩展新的业务推荐模块,用于推荐与用户的需求对应的新业务,可以供有推荐信息需求的企业快速搭建各自的信息推荐系统,有助于不同的用户根据各自不同的业务完善和部署各自的信息推荐系统框架,其次,本技术实施例提供的方法逻辑架构简单,可使得计算资源存储资源消耗少,维护成本低,支持实时对用户推荐数据做灵活调整,可随着企业的业务需求变化而变化,灵活性较强。
214.本技术实施例提供的信息案方法可应用于信息推荐设备,如终端:手机、电脑等。可选的,图3示出了信息推荐设备的硬件结构框图,参照图3,信息推荐设备的硬件结构可以包括:至少一个处理器1,至少一个通信接口2,至少一个存储器3和至少一个通信总线4。
215.在本技术实施例中,处理器1、通信接口2、存储器3、通信总线4的数量为至少一个,且处理器1、通信接口2、存储器3通过通信总线4完成相互间的通信。
216.处理器1可能是一个中央处理器cpu,或者是特定集成电路asic(application specific integrated circuit),或者是被配置成实施本技术实施例的一个或多个集成电路等;
217.存储器3可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory)等,例如至少一个磁盘存储器;
218.其中,存储器存储有程序,处理器可调用存储器存储的程序,所述程序用于:实现前述终端信息推荐方案中的各个处理流程。
219.本技术实施例还提供一种可读存储介质,该存储介质可存储有适于处理器执行的程序,所述程序用于:实现前述终端在信息推荐方案中的各个处理流程。
220.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
221.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
222.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。各个实施例之间可以相互组合。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1