CN116010588B - 实时与离线结合的文档推荐方法、装置、设备及介质 - Google Patents

实时与离线结合的文档推荐方法、装置、设备及介质 Download PDF

Info

Publication number
CN116010588B
CN116010588B CN202310308518.0A CN202310308518A CN116010588B CN 116010588 B CN116010588 B CN 116010588B CN 202310308518 A CN202310308518 A CN 202310308518A CN 116010588 B CN116010588 B CN 116010588B
Authority
CN
China
Prior art keywords
document
recommendation
offline
list
preset
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310308518.0A
Other languages
English (en)
Other versions
CN116010588A (zh
Inventor
朱建伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Changsha Developer Technology Co ltd
Beijing Innovation Lezhi Network Technology Co ltd
Original Assignee
Changsha Developer Technology Co ltd
Beijing Innovation Lezhi Network Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Changsha Developer Technology Co ltd, Beijing Innovation Lezhi Network Technology Co ltd filed Critical Changsha Developer Technology Co ltd
Priority to CN202310308518.0A priority Critical patent/CN116010588B/zh
Publication of CN116010588A publication Critical patent/CN116010588A/zh
Application granted granted Critical
Publication of CN116010588B publication Critical patent/CN116010588B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种实时与离线结合的文档推荐方法、装置、设备及介质,其中方法包括:获取文档推荐请求,其中,所述文档推荐请求携带有目标用户标识和目标点击文档标识;根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表,作为第一列表;根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表,作为第二列表;对所述第一列表和所述第二列表进行组合,得到目标文档推荐列表。通过近线推荐池使新生成的文档有获得推荐的机会;针对根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表作为第二列表,在用户点击新生成的文档时将能够获得第二列表。

Description

实时与离线结合的文档推荐方法、装置、设备及介质
技术领域
本发明涉及文档推荐技术领域,尤其涉及一种实时与离线结合的文档推荐方法、装置、设备及介质。
背景技术
随着文档数量的海量增加,为了增加文档的阅读流量,在展示用户点击的文档时,都会展示一个文档推荐列表。目前的文档推荐列表的生成面对海量的文档,计算时间久,极易内存溢出,为了解决该问题,采用离线文档推荐方法。离线文档推荐方法在访问低峰时启动计算,新生成的文档无法获得推荐,而用户点击新生成的文档时将无法获得文档推荐列表。
发明内容
基于此,有必要针对目前的离线文档推荐方法,新生成的文档无法获得推荐、用户点击新生成的文档时将无法获得文档推荐列表的技术问题,提出了一种实时与离线结合的文档推荐方法、装置、设备及介质。
本申请提供了一种实时与离线结合的文档推荐方法,所述方法包括:
获取文档推荐请求,其中,所述文档推荐请求携带有目标用户标识和目标点击文档标识;
根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表,作为第一列表;
根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表,作为第二列表;
对所述第一列表和所述第二列表进行组合,得到目标文档推荐列表。
进一步地,所述近线推荐池的更新步骤包括:
获取新文档处理请求,所述新文档处理请求携带有新文档标识;
从预设的离线启动时间列表获取未来的且距离所述新文档处理请求对应的请求生成时间最近的离线启动时间,作为待分析时间;
将所述待分析时间减去所述请求生成时间,得到时间差值;
判断所述时间差值是否小于预设时长;
若是,则对所述新文档标识对应的文档进行是否进入所述近线推荐池的判断,得到目标判断结果,若所述目标判断结果为是,则将所述新文档标识对应的文档添加到所述近线推荐池,若所述目标判断结果为否,则将所述新文档标识对应的文档添加到离线推荐池;
若否,则将所述新文档标识对应的文档添加到所述近线推荐池。
进一步地,所述对所述新文档标识对应的文档进行是否进入所述近线推荐池的判断,得到目标判断结果的步骤,包括:
采用预设的文档类别分类模型,对所述新文档标识对应的文档进行文档分类,得到文档分类结果;
获取所述文档分类结果对应的在线用户数量;
判断所述文档分类结果对应的所述在线用户数量是否大于预设的第一用户数量;
若是,则确定所述目标判断结果为是;
若否,则确定所述目标判断结果为否。
进一步地,所述对所述新文档标识对应的文档进行是否进入所述近线推荐池的判断,得到目标判断结果的步骤,还包括:
采用预设的关键词分词词典,对所述新文档标识对应的文档进行分词,得到关键词集;
根据预设的热词集,判断所述关键词集中是否存在为热词的关键词;
若存在,则确定所述目标判断结果为是;
若不存在,则确定所述目标判断结果为否。
进一步地,所述缓存推荐列表包括固定推荐子表和离线推荐子表;
所述将所述新文档标识对应的文档添加到所述近线推荐池的步骤,包括:
将所述新文档标识对应的文档添加到所述近线推荐池,并且在所述近线推荐池中,对所述新文档标识对应的文档打上预设的未处理标签;
所述近线推荐池的更新步骤还包括:
从所述近线推荐池中,找出添加时间超过预设的第一时长且携带有所述未处理标签的文档,作为第一待分析文档,并获取所述第一待分析文档对应的第一历史推荐数据及第一历史跳转数据;
根据预设的预测模型、所述第一历史推荐数据和所述第一历史跳转数据进行推荐数量预测和跳转数量预测,得到第一推荐数量和第一跳转数量;
若所述第一推荐数量大于或等于预设的第一推荐阈值,并且,所述第一跳转数量大于或等于预设的第一点击阈值,则将所述第一待分析文档删除所述未处理标签后添加到预设的旧文档库中,将所述第一待分析文档从所述近线推荐池中删除,将所述第一历史推荐数据对应的每个点击文档作为第一添加文档,将所述第一待分析文档对应的文档标识添加到所述第一添加文档对应的所述固定推荐子表中,将所述第一添加文档对应的文档标识添加到所述第一待分析文档对应的所述固定推荐子表中;
若所述第一推荐数量小于或等于预设的第二推荐阈值,并且,所述第一跳转数量小于或等于预设的第二点击阈值,则将所述第一待分析文档删除所述未处理标签后添加到所述离线推荐池中,将所述第一待分析文档从所述近线推荐池中删除;
若所述第一推荐数量大于所述第二推荐阈值及小于所述第一推荐阈值,并且,所述第一跳转数量大于所述第二点击阈值及小于所述第一点击阈值,则在所述近线推荐池中,对所述第一待分析文档删除所述未处理标签;
从所述近线推荐池中,找出添加时间超过预设的第二时长且不携带有所述未处理标签的文档,作为第二待分析文档,并获取所述第二待分析文档对应的第二历史推荐数据及第二历史跳转数据;
根据所述第二历史推荐数据计算第二推荐数量,根据所述第二历史跳转数据计算第二跳转数量;
若所述第二推荐数量大于或等于预设的第三推荐阈值,并且,所述第二跳转数量大于或等于预设的第三点击阈值,则将所述第二待分析文档添加到所述旧文档库中,将所述第二待分析文档从所述近线推荐池中删除,将所述第二历史推荐数据对应的每个点击文档作为第二添加文档,将所述第二待分析文档对应的文档标识添加到所述第二添加文档对应的所述固定推荐子表中,将所述第二添加文档对应的文档标识添加到所述第二待分析文档对应的所述固定推荐子表中;
若所述第二推荐数量小于所述第三推荐阈值,并且,所述第二跳转数量小于所述第三点击阈值,则将所述第二待分析文档添加到所述离线推荐池中,将所述第二待分析文档从所述近线推荐池中删除。
进一步地,所述离线推荐库的更新步骤包括:
根据所述离线启动时间列表获取离线推荐信号;
响应所述离线推荐信号,从所述离线推荐池中获取一个文档,作为待离线推荐文档;
基于局部敏感哈希方法,对所述待离线推荐文档对应的文档向量和所述旧文档库中的每个旧文档的文档向量进行第一相似度计算,从所有所述第一相似度中提取最相似的多个所述第一相似度,作为初筛相似度集,对所述待离线推荐文档对应的词向量集和所述初筛相似度集对应的每个所述旧文档对应的词向量集进行余弦相似度计算,得到第二相似度,从所有所述第二相似度中提取最相似的多个所述第二相似度,作为目标相似度集;
从所述目标相似度集对应的各个所述旧文档中获取任一个所述旧文档,作为待评估文档;
判断所述待评估文档对应的所述离线推荐子表是否满员;
若满员,则对所述待评估文档对应的所述离线推荐子表中的所述第二相似度最低的文档标识进行删除处理,否则,则执行下一步;
将所述待离线推荐文档对应的文档标识、与所述待离线推荐文档及所述待评估文档对应的所述第二相似度作为关联数据添加到所述待评估文档对应的所述离线推荐子表中,将所述待评估文档对应的所述缓存推荐列表和所述待评估文档对应的文档标识作为关联数据更新所述离线推荐库;
重复执行所述从所述目标相似度集对应的各个所述旧文档中获取任一个所述旧文档,作为待评估文档的步骤,直至完成所述目标相似度集对应的每个所述旧文档的获取;
将所述待离线推荐文档添加到所述旧文档库,并将所述待离线推荐文档从所述离线推荐池中删除;
重复执行所述从所述离线推荐池中获取一个文档,作为待离线推荐文档的步骤,直至所述离线推荐池为空。
进一步地,所述根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表,作为第二列表的步骤,包括:
根据所述目标用户标识对应的最近i天内的阅读文档特征词集及搜索关键词集,从所述近线推荐池查找文档标识,作为第一文档标识列表,其中,i为大于0的整数;
根据所述目标用户标识对应的各个订阅作者标识,从所述近线推荐池查找文档标识,作为第二文档标识列表;
分别根据所述目标用户标识对应的每个收藏文章对应的作者标识,从所述近线推荐池查找文档标识,作为第三文档标识列表;
将所述第一文档标识列表、所述第二文档标识列表和所述第三文档标识列表依次进行合表处理及去重处理,得到所述第二列表。
本申请还提供了一种实时与离线结合的文档推荐装置,所述装置包括:
请求获取模块,用于获取文档推荐请求,其中,所述文档推荐请求携带有目标用户标识和目标点击文档标识;
第一列表确定模块,用于根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表,作为第一列表;
第二列表确定模块,用于根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表,作为第二列表;
目标文档推荐列表确定模块,用于对所述第一列表和所述第二列表进行组合,得到目标文档推荐列表。
本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行以下步骤:
获取文档推荐请求,其中,所述文档推荐请求携带有目标用户标识和目标点击文档标识;
根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表,作为第一列表;
根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表,作为第二列表;
对所述第一列表和所述第二列表进行组合,得到目标文档推荐列表。
本申请还提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:
获取文档推荐请求,其中,所述文档推荐请求携带有目标用户标识和目标点击文档标识;
根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表,作为第一列表;
根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表,作为第二列表;
对所述第一列表和所述第二列表进行组合,得到目标文档推荐列表。
本申请的实时与离线结合的文档推荐方法,通过根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表作为第一列表,根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表作为第二列表,将离线推荐的结果和针对新文档实时推荐的结果作为目标文档推荐列表,通过近线推荐池使新生成的文档有获得推荐的机会;针对根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表作为第二列表,在用户点击新生成的文档时将能够获得第二列表。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
其中:
图1为一个实施例中实时与离线结合的文档推荐方法的流程图;
图2为一个实施例中实时与离线结合的文档推荐装置的结构框图;
图3为一个实施例中计算机设备的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,在一个实施例中,提供了一种实时与离线结合的文档推荐方法。该方法既可以应用于终端,也可以应用于服务器,本实施例以应用于终端举例说明。该实时与离线结合的文档推荐方法具体包括如下步骤:
S1:获取文档推荐请求,其中,所述文档推荐请求携带有目标用户标识和目标点击文档标识;
目标用户标识,是想要进行文档推荐的用户的用户标识。用户标识可以是用户名称、用户ID等唯一标识一个用户的数据。
目标点击文档标识,是目标用户标识对应的用户想要打开的文档的文档标识。文档标识可以是文档名称、文档ID等唯一标识一份文档的数据。
可以理解的是,在本申请中,将用户想要打开的文档称为点击文档。
文档推荐请求,是生成与目标用户标识及目标点击文档标识对应的文档推荐列表的请求。
可选的,用户通过客户端发送目标用户标识对应的文档展开请求,其中,文档展开请求携带有目标用户标识和目标点击文档标识;在收到客户端发送的文档展开请求时,从文档展开请求解析出目标用户标识和目标点击文档标识,根据解析得到的目标用户标识和目标点击文档标识生成文档推荐请求。
文档展开请求,是打开目标用户标识对应的文档的请求。
可选的,获取第三方应用发送的文档推荐请求。
S2:根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表,作为第一列表;
离线推荐库,是基于离线文档推荐方法得到的缓存库。离线推荐库包括多个关联数据,该关联数据包括:文档标识和缓存推荐列表。缓存推荐列表中包含至少0个文档标识。
具体而言,根据所述目标点击文档标识,从预设的离线推荐库中查询文本相同的文档标识,将查询到的文档标识在离线推荐库中对应的缓存推荐列表作为第一列表。
可以理解的是,在根据所述目标点击文档标识,从预设的离线推荐库中查询文本相同的文档标识时,若查询失败,则将空表作为第一列表。
S3:根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表,作为第二列表;
近线推荐池是用于进行实时推荐的文档库。
具体而言,根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表,从而得到符合所述目标用户标识对应的用户的个性化文档阅读特征的实时推荐列表,将确定的实时推荐列表作为第二列表。
可选的,近线推荐策略包括:基于历史的阅读文档特征词集及搜索关键词集的推荐策略、基于订阅作者标识的的推荐策略和基于收藏文章对应的作者标识推荐策略中的一种或多种策略。
阅读文档特征词集,阅读的文档对应的特征词集。特征词集中包括一个或多个特征词。搜索关键词集中包括一个或多个搜索关键词。
S4:对所述第一列表和所述第二列表进行组合,得到目标文档推荐列表。
可选的,对所述第一列表和所述第二列表进行合表,将合表得到的列表作为目标文档推荐列表。
可选的,对所述第一列表和所述第二列表进行合表,采用预设的排序配置,对合表得到的列表进行排序,将排序后的列表作为目标文档推荐列表。
本实施例通过根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表作为第一列表,根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表作为第二列表,将离线推荐的结果和针对新文档实时推荐的结果作为目标文档推荐列表,通过近线推荐池使新生成的文档有获得推荐的机会;针对根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表作为第二列表,在用户点击新生成的文档时将能够获得第二列表。
在一个实施例中,上述近线推荐池的更新步骤包括:
S31:获取新文档处理请求,所述新文档处理请求携带有新文档标识;
具体而言,用户新撰写完文章后,将点击文档提交按钮;文档提交按钮被点击时,将触发新文档处理请求。
新文档处理请求,是进行判断是否进入近线推荐池的请求。
新文档标识,是需要进行判断是否进入近线推荐池的文档的文档标识。
S32:从预设的离线启动时间列表获取未来的且距离所述新文档处理请求对应的请求生成时间最近的离线启动时间,作为待分析时间;
可选的,离线启动时间列表中包括:一个或多个离线启动时间,其中,每个离线启动时间启动一次新文档处理请求,也就是说,此时的离线启动时间包括:日期和时间点。
可选的,离线启动时间列表中包括每日启动时间点,也就是说,此时的启动时间点包括时间点,不包括日期。每日启动时间点,也就是每日主动触发新文档处理请求的时间点。在一日中,与每日启动时间点对应的时间点就是一个离线启动时间。
具体而言,从预设的离线启动时间列表获取未来的且距离所述新文档处理请求对应的请求生成时间最近的离线启动时间,将获取的离线启动时间作为待分析时间。从而获得了下一次启动新文档处理请求的时间点。
S33:将所述待分析时间减去所述请求生成时间,得到时间差值;
具体而言,将所述待分析时间减去所述请求生成时间,将相减得到的数据作为时间差值。
S34:判断所述时间差值是否小于预设时长;
可选的,预设时长设为2小时。
S35:若是,则对所述新文档标识对应的文档进行是否进入所述近线推荐池的判断,得到目标判断结果,若所述目标判断结果为是,则将所述新文档标识对应的文档添加到所述近线推荐池,若所述目标判断结果为否,则将所述新文档标识对应的文档添加到离线推荐池;
具体而言,若是,也就是所述时间差值小于预设时长,此时意味着下一次进行离线推荐的时间比较近了,不需要将所有的新文档都投入所述近线推荐池,需要判断新文档标识对应的文档是否进入所述近线推荐池,因此,对所述新文档标识对应的文档进行是否进入所述近线推荐池的判断,得到目标判断结果;在所述目标判断结果为是时,意味着需要添加到所述近线推荐池以用于实时推荐,因此,将所述新文档标识对应的文档添加到所述近线推荐池;在所述目标判断结果为否时,意味着不需要用于实时推荐,因此,将所述新文档标识对应的文档添加到离线推荐池。
S36:若否,则将所述新文档标识对应的文档添加到所述近线推荐池。
具体而言,若否,也就是所述时间差值大于或等于预设时长,此时意味着下一次进行离线推荐的时间比较远,可以直接将新文档标识对应的文档添加到所述近线推荐池,因此,直接将所述新文档标识对应的文档添加到所述近线推荐池。
本实施例在所述时间差值小于预设时长并且所述目标判断结果为是时,才将所述新文档标识对应的文档添加到所述近线推荐池,在所述时间差值小于预设时长并且所述目标判断结果为否时,将所述新文档标识对应的文档添加到离线推荐池,从而在新生成的文档有获得推荐的机会的情况下,节约了实时推荐的计算资源。
在一个实施例中,上述对所述新文档标识对应的文档进行是否进入所述近线推荐池的判断,得到目标判断结果的步骤,包括:
S3511:采用预设的文档类别分类模型,对所述新文档标识对应的文档进行文档分类,得到文档分类结果;
文档类别分类模型是一个多分类模型。文档类别分类模型的模型结构和训练方法可以从现有技术中选择,在此不做赘述。
具体而言,将所述新文档标识对应的文档输入预设的文档类别分类模型进行文档分类,从分类得到的向量中,查找值为最大的向量元素,将该向量元素对应的文档分类标签作为文档分类结果。
S3512:获取所述文档分类结果对应的在线用户数量;
具体而言,可以对用户打喜好标签,从而生成每个用户对应的喜好标签集;通过统计喜好标签集中包含文档分类结果且在线的用户的数量,将该数量作为所述文档分类结果对应的在线用户数量。
S3513:判断所述文档分类结果对应的所述在线用户数量是否大于预设的第一用户数量;
S3514:若是,则确定所述目标判断结果为是;
具体而言,若是,也就是所述文档分类结果对应的所述在线用户数量大于预设的第一用户数量,此时意味着需要进行实时推荐,因此,确定所述目标判断结果为是。
S3515:若否,则确定所述目标判断结果为否。
具体而言,若否,也就是所述文档分类结果对应的所述在线用户数量小于或等于预设的第一用户数量,此时意味着不需要进行实时推荐,因此,确定所述目标判断结果为否。
本实施例在属于同一个文档分类的在线用户数量大于预设的第一用户数量时才确定所述目标判断结果为是,否则,确定所述目标判断结果为否,从而将被推荐的可能性比较大的、所述时间差值小于预设时长的所述新文档标识对应的文档添加到所述近线推荐池,将被推荐的可能性比较小的、所述时间差值小于预设时长的所述新文档标识对应的文档添加到离线推荐池,从而在新生成的文档有获得推荐的机会的情况下,节约了实时推荐的计算资源。
在一个实施例中,上述对所述新文档标识对应的文档进行是否进入所述近线推荐池的判断,得到目标判断结果的步骤,还包括:
S3521:采用预设的关键词分词词典,对所述新文档标识对应的文档进行分词,得到关键词集;
关键词分词词典包括多个关键词。关键词可以是行业的专业词语,也可以是与实时推荐有关联的词语。
具体而言,采用预设的关键词分词词典,对所述新文档标识对应的文档进行分词,将分词得到的所有关键词作为关键词集。
S3522:根据预设的热词集,判断所述关键词集中是否存在为热词的关键词;
热词集中包括一个或多个热词。热词是搜索频率较高的词语。热词集可以从第三方获取,也可以根据实现本申请的平台的历史数据生成和/或预测得到。
S3523:若存在,则确定所述目标判断结果为是;
具体而言,若存在,也就是所述关键词集中存在关键词为所述关键词集中的热词,此时意味着需要进行实时推荐,因此,确定所述目标判断结果为是。
S3524:若不存在,则确定所述目标判断结果为否。
具体而言,若不存在,也就是所述关键词集中不存在关键词为所述关键词集中的热词,此时意味着不需要进行实时推荐,因此,确定确定所述目标判断结果为否。
本实施例将所述时间差值小于预设时长的、关键词集包含热词的所述新文档标识对应的文档添加到所述近线推荐池,将所述时间差值小于预设时长的、关键词集不包含热词的所述新文档标识对应的文档添加到离线推荐池,从而在新生成的文档有获得推荐的机会的情况下,节约了实时推荐的计算资源。
在一个实施例中,上述缓存推荐列表包括固定推荐子表和离线推荐子表;
离线推荐子表,在每次离线推荐中可能会被更新的子表。固定推荐子表,在离线推荐中不会被更新的子表。固定推荐子表中记录的是推荐时被点击跳转的概率比较大的文档的文档标识。
可选的,固定推荐子表包括至少0个文档标识。
可选的,离线推荐子表包括至少0个文档标识。
可选的,固定推荐子表包括至少0个推荐简介数据。推荐简介数据中包括但不限于:文档标识、文档标题和文档简介。
可选的,离线推荐子表包括至少一个推荐简介数据。
在本申请的另一个实施例中,缓存推荐列表仅包括离线推荐子表,不包括固定推荐子表。
所述将所述新文档标识对应的文档添加到所述近线推荐池的步骤,包括:
S371:将所述新文档标识对应的文档添加到所述近线推荐池,并且在所述近线推荐池中,对所述新文档标识对应的文档打上预设的未处理标签;
具体而言,将所述新文档标识对应的文档添加到所述近线推荐池,为获得推荐的机会提供了基础;并且在所述近线推荐池中,对所述新文档标识对应的文档打上预设的未处理标签,意味着此时还未进行是否添加到固定推荐子表的判断处理。
所述近线推荐池的更新步骤还包括:
S372:从所述近线推荐池中,找出添加时间超过预设的第一时长且携带有所述未处理标签的文档,作为第一待分析文档,并获取所述第一待分析文档对应的第一历史推荐数据及第一历史跳转数据;
具体而言,在所述近线推荐池中,添加时间超过预设的第一时长且携带有所述未处理标签的文档,也就是需要第一次进行是否添加到固定推荐子表的判断处理的文档,因此,将该文档作为第一待分析文档;获取所述第一待分析文档对应的第一历史推荐数据及第一历史跳转数据,也就是获取所述第一待分析文档的添加到所述近线推荐池之后的历史推荐数据作为第一历史推荐数据,获取所述第一待分析文档的添加到所述近线推荐池之后的历史跳转数据作为第一历史跳转数据。
历史推荐数据包括:推荐时间和点击文档标识。历史跳转数据包括:推荐时间、点击文档标识和跳转时间。点击文档标识,是点击文档的文档标识。
S373:根据预设的预测模型、所述第一历史推荐数据和所述第一历史跳转数据进行推荐数量预测和跳转数量预测,得到第一推荐数量和第一跳转数量;
预设的预测模型,用于预测未来趋势的序列预测模型。预设的预测模型的模型结构和训练方法在此不做赘述。
具体而言,根据预设的预测模型、所述第一历史推荐数据和所述第一历史跳转数据进行未来固定时长内的推荐数量预测和跳转数量预测,将预测的推荐数量作为第一推荐数量,将预测的跳转数量作为第一跳转数量;此时的推荐数量,也将就是预测的所述第一待分析文档被推荐的次数;此时的跳转数量,也就是预测的从点击文档跳转到所述第二待分析文档的次数。
S374:若所述第一推荐数量大于或等于预设的第一推荐阈值,并且,所述第一跳转数量大于或等于预设的第一点击阈值,则将所述第一待分析文档删除所述未处理标签后添加到预设的旧文档库中,将所述第一待分析文档从所述近线推荐池中删除,将所述第一历史推荐数据对应的每个点击文档作为第一添加文档,将所述第一待分析文档对应的文档标识添加到所述第一添加文档对应的所述固定推荐子表中,将所述第一添加文档对应的文档标识添加到所述第一待分析文档对应的所述固定推荐子表中;
具体而言,若所述第一推荐数量大于或等于预设的第一推荐阈值,并且,所述第一跳转数量大于或等于预设的第一点击阈值,此时意味着经过预测确定推荐效果非常好,不需要作为新文档主动去做离线推荐,因此,将所述第一待分析文档删除所述未处理标签后添加到预设的旧文档库中,为被动进行离线推荐提供基础;将所述第一待分析文档从所述近线推荐池中删除,此时所述第一待分析文档不再用于近线推荐;将所述第一待分析文档对应的文档标识添加到所述第一添加文档对应的所述固定推荐子表中,将所述第一添加文档对应的文档标识添加到所述第一待分析文档对应的所述固定推荐子表中,从而实现将推荐效果非常好的推荐关系进行互相绑定。
S375:若所述第一推荐数量小于或等于预设的第二推荐阈值,并且,所述第一跳转数量小于或等于预设的第二点击阈值,则将所述第一待分析文档删除所述未处理标签后添加到所述离线推荐池中,将所述第一待分析文档从所述近线推荐池中删除;
具体而言,若所述第一推荐数量小于或等于预设的第二推荐阈值,并且,所述第一跳转数量小于或等于预设的第二点击阈值,此时意味着经过预测确定推荐效果非常差,不需要继续进行实时推荐,也无法绑定到固定推荐子表中,因此,将所述第一待分析文档删除所述未处理标签后添加到所述离线推荐池中,为作为新文档主动去做离线推荐提供了基础;将所述第一待分析文档从所述近线推荐池中删除,此时所述第一待分析文档不再用于近线推荐。
S376:若所述第一推荐数量大于所述第二推荐阈值及小于所述第一推荐阈值,并且,所述第一跳转数量大于所述第二点击阈值及小于所述第一点击阈值,则在所述近线推荐池中,对所述第一待分析文档删除所述未处理标签;
具体而言,若所述第一推荐数量大于所述第二推荐阈值及小于所述第一推荐阈值,并且,所述第一跳转数量大于所述第二点击阈值及小于所述第一点击阈值,此时意味着经过预测确定推荐效果一般,但是未达到绑定到固定推荐子表的推荐效果,还需继续观察一段时间,因此,在所述近线推荐池中,对所述第一待分析文档删除所述未处理标签。
S377:从所述近线推荐池中,找出添加时间超过预设的第二时长且不携带有所述未处理标签的文档,作为第二待分析文档,并获取所述第二待分析文档对应的第二历史推荐数据及第二历史跳转数据;
第二时长大于第一时长。
具体而言,添加时间超过预设的第二时长且不携带有所述未处理标签的文档,也就是做过一次是否添加到固定推荐子表的判断处理,推荐效果一般,但是未达到绑定到固定推荐子表的文档的推荐效果,因此,将该文档作为第二待分析文档,以进行第二次的是否添加到固定推荐子表的判断处理;获取所述第二待分析文档的在添加到所述近线推荐池之后的历史推荐数据作为第二历史推荐数据,获取所述第二待分析文档的在添加到所述近线推荐池之后的历史跳转数据作为第二历史跳转数据。
S378:根据所述第二历史推荐数据计算第二推荐数量,根据所述第二历史跳转数据计算第二跳转数量;
具体而言,根据所述第二历史推荐数据计算推荐数量,将计算得到的推荐数量作为第二推荐数量;根据所述第二历史跳转数据计算跳转数量,将计算得到的跳转数量作为第二跳转数量;此时的推荐数量,也将就是所述第二待分析文档被实际推荐的次数;此时的跳转数量,也就是从点击文档实际跳转到所述第二待分析文档的次数。
S379:若所述第二推荐数量大于或等于预设的第三推荐阈值,并且,所述第二跳转数量大于或等于预设的第三点击阈值,则将所述第二待分析文档添加到所述旧文档库中,将所述第二待分析文档从所述近线推荐池中删除,将所述第二历史推荐数据对应的每个点击文档作为第二添加文档,将所述第二待分析文档对应的文档标识添加到所述第二添加文档对应的所述固定推荐子表中,将所述第二添加文档对应的文档标识添加到所述第二待分析文档对应的所述固定推荐子表中;
具体而言,若所述第二推荐数量大于或等于预设的第三推荐阈值,并且,所述第二跳转数量大于或等于预设的第三点击阈值,此时意味着经过第二时长的观察确定推荐效果非常好,不需要作为新文档主动去做离线推荐,因此,将所述第二待分析文档添加到所述旧文档库中,为被动进行离线推荐提供基础;将所述第二待分析文档从所述近线推荐池中删除,此时所述第二待分析文档不再用于近线推荐;将所述第二待分析文档对应的文档标识添加到所述第二添加文档对应的所述固定推荐子表中,将所述第二添加文档对应的文档标识添加到所述第二待分析文档对应的所述固定推荐子表中,从而实现将推荐效果非常好的推荐关系进行互相绑定。
S3710:若所述第二推荐数量小于所述第三推荐阈值,并且,所述第二跳转数量小于所述第三点击阈值,则将所述第二待分析文档添加到所述离线推荐池中,将所述第二待分析文档从所述近线推荐池中删除。
具体而言,若所述第二推荐数量小于所述第三推荐阈值,并且,所述第二跳转数量小于所述第三点击阈值,此时意味着经过第二时长的观察确定推荐效果非常差,需要作为新文档主动去做离线推荐,因此,将所述第二待分析文档添加到所述离线推荐池中,为作为新文档主动去做离线推荐提供了基础;将所述第二待分析文档从所述近线推荐池中删除,此时所述第一待分析文档不再用于近线推荐。
本实施例将预测的推荐效果非常好的推荐关系进行互相绑定,将预测的推荐效果还可以加长时间观察的推荐效果非常好的推荐关系进行互相绑定,有利于提高推荐的文档被点击的成功率;在推荐效果非常差时,将文档添加到所述离线推荐池中主动去做离线推荐,为提高推荐的概率提供了基础;在推荐效果非常好时,不再主动去做离线推荐,节约了离线推荐的计算资源,缩短了每次离线推荐的处理时长。
在一个实施例中,上述离线推荐库的更新步骤包括:
S21:根据所述离线启动时间列表获取离线推荐信号;
具体而言,根据所述离线启动时间列表设置定时器或者定时任务,定时器或者定时任务被触发时,将生成离线推荐信号。
S22:响应所述离线推荐信号,从所述离线推荐池中获取一个文档,作为待离线推荐文档;
具体而言,在收到离线推荐信号时,所述离线推荐池中获取一个文档,将获取的文档作为待离线推荐文档。
S23:基于局部敏感哈希方法,对所述待离线推荐文档对应的文档向量和所述旧文档库中的每个旧文档的文档向量进行第一相似度计算,从所有所述第一相似度中提取最相似的多个所述第一相似度,作为初筛相似度集,对所述待离线推荐文档对应的词向量集和所述初筛相似度集对应的每个所述旧文档对应的词向量集进行余弦相似度计算,得到第二相似度,从所有所述第二相似度中提取最相似的多个所述第二相似度,作为目标相似度集;
具体而言,基于局部敏感哈希方法,对所述待离线推荐文档对应的文档向量和所述旧文档库中的每个旧文档的文档向量进行相似度计算,将计算得到的每个相似度作为一个第一相似度;从所有所述第一相似度中提取最相似的多个所述第一相似度,将提取出的所有所述第一相似度作为初筛相似度集;对所述待离线推荐文档对应的词向量集和所述初筛相似度集对应的每个所述旧文档对应的词向量集进行余弦相似度计算,将计算得到的每个余弦相似度作为一个第二相似度;从所有所述第二相似度中提取最相似的多个所述第二相似度,将提取出的所有所述第二相似度作为作为目标相似度集。因旧文档库中的旧文档的数量比较大,通过局部敏感哈希方法进行初筛,减少了计算量;因局部敏感哈希方法的召回率比较大,初筛出的部分旧文档与所述待离线推荐文档的相关度并不大,通过余弦相似度从初筛得到的各个文档中进行二次筛选,从而筛选出与所述待离线推荐文档的相关度较大的旧文档,提高了离线推荐库的准确性。
局部敏感哈希方法,也称为局部敏感哈希算法,英文全称为Locality SensitiveHashing,英文简称为LSH。
S24:从所述目标相似度集对应的各个所述旧文档中获取任一个所述旧文档,作为待评估文档;
具体而言,从所述目标相似度集对应的各个所述旧文档中获取任一个所述旧文档,将获取的所述旧文档作为待评估文档。
S25:判断所述待评估文档对应的所述离线推荐子表是否满员;
所述离线推荐子表设有长度。在离线推荐库中,判断所述待评估文档对应的所述离线推荐子表中的文档标识的数量是否等于所述待评估文档对应的所述离线推荐子表的长度。
S26:若满员,则对所述待评估文档对应的所述离线推荐子表中的所述第二相似度最低的文档标识进行删除处理,否则,则执行下一步;
具体而言,若满员,也就是所述待评估文档对应的所述离线推荐子表中的文档标识的数量等于所述待评估文档对应的所述离线推荐子表的长度,此时意味着需要先删除一个文档标识才能添加进去,因此,对所述待评估文档对应的所述离线推荐子表中的各个所述第二相似度中的最不相似的文档标识进行删除处理,然后再执行步骤S27;若不满员,也就是所述待评估文档对应的所述离线推荐子表中的文档标识的数量小于或等于所述待评估文档对应的所述离线推荐子表的长度,此时意味着还有空间存储新的文档标识,因此执行下一步,也就是直接执行步骤S27。
S27:将所述待离线推荐文档对应的文档标识、与所述待离线推荐文档及所述待评估文档对应的所述第二相似度作为关联数据添加到所述待评估文档对应的所述离线推荐子表中,将所述待评估文档对应的所述缓存推荐列表和所述待评估文档对应的文档标识作为关联数据更新所述离线推荐库;
具体而言,首先将所述待离线推荐文档对应的文档标识、与所述待离线推荐文档及所述待评估文档同时对应的所述第二相似度作为关联数据添加到所述待评估文档对应的所述离线推荐子表中,然后将所述待评估文档对应的所述缓存推荐列表和所述待评估文档对应的文档标识作为关联数据更新所述离线推荐库。
S28:重复执行所述从所述目标相似度集对应的各个所述旧文档中获取任一个所述旧文档,作为待评估文档的步骤,直至完成所述目标相似度集对应的每个所述旧文档的获取;
具体而言,重复执行所述从所述目标相似度集对应的各个所述旧文档中获取任一个所述旧文档,作为待评估文档的步骤,也就是重复执行步骤S24至步骤S28,直至完成所述目标相似度集对应的每个所述旧文档的获取;当完成所述目标相似度集对应的每个所述旧文档的获取时,意味着完成了对所述待离线推荐文档的离线推荐,因此,停止重复执行步骤S24至步骤S28,开始执行步骤S29。
S29:将所述待离线推荐文档添加到所述旧文档库,并将所述待离线推荐文档从所述离线推荐池中删除;
具体而言,将所述待离线推荐文档添加到所述旧文档库,并将所述待离线推荐文档从所述离线推荐池中删除,从而结束所述待离线推荐文档的主动离线推荐。
S210:重复执行所述从所述离线推荐池中获取一个文档,作为待离线推荐文档的步骤,直至所述离线推荐池为空。
具体而言,重复执行所述从所述离线推荐池中获取一个文档,作为待离线推荐文档的步骤,也就是重复执行步骤S22至步骤S210,直至所述离线推荐池为空;当所述离线推荐池为空,意味着没有文档需要进行主动离线推荐。
因旧文档库中的旧文档的数量比较大,本实施例通过局部敏感哈希方法进行初筛,减少了计算量;因局部敏感哈希方法的召回率比较大,初筛出的部分旧文档与所述待离线推荐文档的相关度并不大,通过余弦相似度从初筛得到的各个文档中进行二次筛选,从而筛选出与所述待离线推荐文档的相关度较大的旧文档,提高了离线推荐库的准确性。
在一个实施例中,上述根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表,作为第二列表的步骤,包括:
S381:根据所述目标用户标识对应的最近i天内的阅读文档特征词集及搜索关键词集,从所述近线推荐池查找文档标识,作为第一文档标识列表,其中,i为大于0的整数;
具体而言,获取所述目标用户标识对应的最近i天内的阅读文档特征词集及搜索关键词集,从所述近线推荐池中查找包含阅读文档特征词集对应的文档特征词或者包含搜索关键词集中的搜索关键词的文档,将查找到的所有文档对应的文档标识作为第一文档标识列表。
S382:根据所述目标用户标识对应的各个订阅作者标识,从所述近线推荐池查找文档标识,作为第二文档标识列表;
具体而言,从所述近线推荐池查找作者标识位于所述目标用户标识对应的各个订阅作者标识的文档,将查找到的所有文档对应的文档标识作为第二文档标识列表。
作者标识可以是作者名称、作者ID等唯一标识一位作者的数据。
S383:分别根据所述目标用户标识对应的每个收藏文章对应的作者标识,从所述近线推荐池查找文档标识,作为第三文档标识列表;
具体而言,从所述近线推荐池查找作者标识位于所述目标用户标识对应的所有收藏文章对应的所有作者标识的文档,将查找到的所有文档对应的文档标识作为第三文档标识列表。
S384:将所述第一文档标识列表、所述第二文档标识列表和所述第三文档标识列表依次进行合表处理及去重处理,得到所述第二列表。
具体而言,将所述第一文档标识列表、所述第二文档标识列表和所述第三文档标识列表进行合表处理,对合表得到的列表进行文档标识的去重处理,将完成去重处理之后的列表作为第二列表。
本实施例基于历史的阅读文档特征词集及搜索关键词集的推荐策略、基于订阅作者标识的的推荐策略和基于收藏文章对应的作者标识推荐策略进行实时推荐,实现了基于用户的个性化文档阅读特征进行推荐,提高了实时推荐的准确性。
如图2所示,在一个实施例中,本申请还提供了一种实时与离线结合的文档推荐装置,所述装置包括:
请求获取模块801,用于获取文档推荐请求,其中,所述文档推荐请求携带有目标用户标识和目标点击文档标识;
第一列表确定模块802,用于根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表,作为第一列表;
第二列表确定模块803,用于根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表,作为第二列表;
目标文档推荐列表确定模块804,用于对所述第一列表和所述第二列表进行组合,得到目标文档推荐列表。
本实施例通过根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表作为第一列表,根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表作为第二列表,将离线推荐的结果和针对新文档实时推荐的结果作为目标文档推荐列表,通过近线推荐池使新生成的文档有获得推荐的机会;针对根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表作为第二列表,在用户点击新生成的文档时将能够获得第二列表。
图3示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是终端,也可以是服务器。如图3所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现实时与离线结合的文档推荐方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行实时与离线结合的文档推荐方法。本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提出了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行以下步骤:
获取文档推荐请求,其中,所述文档推荐请求携带有目标用户标识和目标点击文档标识;
根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表,作为第一列表;
根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表,作为第二列表;
对所述第一列表和所述第二列表进行组合,得到目标文档推荐列表。
本实施例通过根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表作为第一列表,根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表作为第二列表,将离线推荐的结果和针对新文档实时推荐的结果作为目标文档推荐列表,通过近线推荐池使新生成的文档有获得推荐的机会;针对根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表作为第二列表,在用户点击新生成的文档时将能够获得第二列表。
在一个实施例中,提出了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:
获取文档推荐请求,其中,所述文档推荐请求携带有目标用户标识和目标点击文档标识;
根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表,作为第一列表;
根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表,作为第二列表;
对所述第一列表和所述第二列表进行组合,得到目标文档推荐列表。
本实施例通过根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表作为第一列表,根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表作为第二列表,将离线推荐的结果和针对新文档实时推荐的结果作为目标文档推荐列表,通过近线推荐池使新生成的文档有获得推荐的机会;针对根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表作为第二列表,在用户点击新生成的文档时将能够获得第二列表。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (8)

1.一种实时与离线结合的文档推荐方法,所述方法包括:
获取文档推荐请求,其中,所述文档推荐请求携带有目标用户标识和目标点击文档标识;
根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表,作为第一列表;
根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表,作为第二列表;
对所述第一列表和所述第二列表进行组合,得到目标文档推荐列表;
所述近线推荐池的更新步骤包括:
获取新文档处理请求,所述新文档处理请求携带有新文档标识;
从预设的离线启动时间列表获取未来的且距离所述新文档处理请求对应的请求生成时间最近的离线启动时间,作为待分析时间;
将所述待分析时间减去所述请求生成时间,得到时间差值;
判断所述时间差值是否小于预设时长;
若是,则对所述新文档标识对应的文档进行是否进入所述近线推荐池的判断,得到目标判断结果,若所述目标判断结果为是,则将所述新文档标识对应的文档添加到所述近线推荐池,若所述目标判断结果为否,则将所述新文档标识对应的文档添加到离线推荐池;
若否,则将所述新文档标识对应的文档添加到所述近线推荐池;
所述缓存推荐列表包括固定推荐子表和离线推荐子表;
所述将所述新文档标识对应的文档添加到所述近线推荐池的步骤,包括:
将所述新文档标识对应的文档添加到所述近线推荐池,并且在所述近线推荐池中,对所述新文档标识对应的文档打上预设的未处理标签;
所述近线推荐池的更新步骤还包括:
从所述近线推荐池中,找出添加时间超过预设的第一时长且携带有所述未处理标签的文档,作为第一待分析文档,并获取所述第一待分析文档对应的第一历史推荐数据及第一历史跳转数据;
根据预设的预测模型、所述第一历史推荐数据和所述第一历史跳转数据进行推荐数量预测和跳转数量预测,得到第一推荐数量和第一跳转数量;
若所述第一推荐数量大于或等于预设的第一推荐阈值,并且,所述第一跳转数量大于或等于预设的第一点击阈值,则将所述第一待分析文档删除所述未处理标签后添加到预设的旧文档库中,将所述第一待分析文档从所述近线推荐池中删除,将所述第一历史推荐数据对应的每个点击文档作为第一添加文档,将所述第一待分析文档对应的文档标识添加到所述第一添加文档对应的所述固定推荐子表中,将所述第一添加文档对应的文档标识添加到所述第一待分析文档对应的所述固定推荐子表中;
若所述第一推荐数量小于或等于预设的第二推荐阈值,并且,所述第一跳转数量小于或等于预设的第二点击阈值,则将所述第一待分析文档删除所述未处理标签后添加到所述离线推荐池中,将所述第一待分析文档从所述近线推荐池中删除;
若所述第一推荐数量大于所述第二推荐阈值及小于所述第一推荐阈值,并且,所述第一跳转数量大于所述第二点击阈值及小于所述第一点击阈值,则在所述近线推荐池中,对所述第一待分析文档删除所述未处理标签;
从所述近线推荐池中,找出添加时间超过预设的第二时长且不携带有所述未处理标签的文档,作为第二待分析文档,并获取所述第二待分析文档对应的第二历史推荐数据及第二历史跳转数据;
根据所述第二历史推荐数据计算第二推荐数量,根据所述第二历史跳转数据计算第二跳转数量;
若所述第二推荐数量大于或等于预设的第三推荐阈值,并且,所述第二跳转数量大于或等于预设的第三点击阈值,则将所述第二待分析文档添加到所述旧文档库中,将所述第二待分析文档从所述近线推荐池中删除,将所述第二历史推荐数据对应的每个点击文档作为第二添加文档,将所述第二待分析文档对应的文档标识添加到所述第二添加文档对应的所述固定推荐子表中,将所述第二添加文档对应的文档标识添加到所述第二待分析文档对应的所述固定推荐子表中;
若所述第二推荐数量小于所述第三推荐阈值,并且,所述第二跳转数量小于所述第三点击阈值,则将所述第二待分析文档添加到所述离线推荐池中,将所述第二待分析文档从所述近线推荐池中删除。
2.根据权利要求1所述的实时与离线结合的文档推荐方法,其特征在于,所述对所述新文档标识对应的文档进行是否进入所述近线推荐池的判断,得到目标判断结果的步骤,包括:
采用预设的文档类别分类模型,对所述新文档标识对应的文档进行文档分类,得到文档分类结果;
获取所述文档分类结果对应的在线用户数量;
判断所述文档分类结果对应的所述在线用户数量是否大于预设的第一用户数量;
若是,则确定所述目标判断结果为是;
若否,则确定所述目标判断结果为否。
3.根据权利要求1所述的实时与离线结合的文档推荐方法,其特征在于,所述对所述新文档标识对应的文档进行是否进入所述近线推荐池的判断,得到目标判断结果的步骤,还包括:
采用预设的关键词分词词典,对所述新文档标识对应的文档进行分词,得到关键词集;
根据预设的热词集,判断所述关键词集中是否存在为热词的关键词;
若存在,则确定所述目标判断结果为是;
若不存在,则确定所述目标判断结果为否。
4.根据权利要求3所述的实时与离线结合的文档推荐方法,其特征在于,所述离线推荐库的更新步骤包括:
根据所述离线启动时间列表获取离线推荐信号;
响应所述离线推荐信号,从所述离线推荐池中获取一个文档,作为待离线推荐文档;
基于局部敏感哈希方法,对所述待离线推荐文档对应的文档向量和所述旧文档库中的每个旧文档的文档向量进行第一相似度计算,从所有所述第一相似度中提取最相似的多个所述第一相似度,作为初筛相似度集,对所述待离线推荐文档对应的词向量集和所述初筛相似度集对应的每个所述旧文档对应的词向量集进行余弦相似度计算,得到第二相似度,从所有所述第二相似度中提取最相似的多个所述第二相似度,作为目标相似度集;
从所述目标相似度集对应的各个所述旧文档中获取任一个所述旧文档,作为待评估文档;
判断所述待评估文档对应的所述离线推荐子表是否满员;
若满员,则对所述待评估文档对应的所述离线推荐子表中的所述第二相似度最低的文档标识进行删除处理,否则,则执行下一步;
将所述待离线推荐文档对应的文档标识、与所述待离线推荐文档及所述待评估文档对应的所述第二相似度作为关联数据添加到所述待评估文档对应的所述离线推荐子表中,将所述待评估文档对应的所述缓存推荐列表和所述待评估文档对应的文档标识作为关联数据更新所述离线推荐库;
重复执行所述从所述目标相似度集对应的各个所述旧文档中获取任一个所述旧文档,作为待评估文档的步骤,直至完成所述目标相似度集对应的每个所述旧文档的获取;
将所述待离线推荐文档添加到所述旧文档库,并将所述待离线推荐文档从所述离线推荐池中删除;
重复执行所述从所述离线推荐池中获取一个文档,作为待离线推荐文档的步骤,直至所述离线推荐池为空。
5.根据权利要求1所述的实时与离线结合的文档推荐方法,其特征在于,所述根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表,作为第二列表的步骤,包括:
根据所述目标用户标识对应的最近i天内的阅读文档特征词集及搜索关键词集,从所述近线推荐池查找文档标识,作为第一文档标识列表,其中,i为大于0的整数;
根据所述目标用户标识对应的各个订阅作者标识,从所述近线推荐池查找文档标识,作为第二文档标识列表;
分别根据所述目标用户标识对应的每个收藏文章对应的作者标识,从所述近线推荐池查找文档标识,作为第三文档标识列表;
将所述第一文档标识列表、所述第二文档标识列表和所述第三文档标识列表依次进行合表处理及去重处理,得到所述第二列表。
6.一种实时与离线结合的文档推荐装置,其特征在于,所述装置包括:
请求获取模块,用于获取文档推荐请求,其中,所述文档推荐请求携带有目标用户标识和目标点击文档标识;
第一列表确定模块,用于根据所述目标点击文档标识,从预设的离线推荐库中查询缓存推荐列表,作为第一列表;
第二列表确定模块,用于根据预设的近线推荐策略和所述目标用户标识,从预设的近线推荐池中确定实时推荐列表,作为第二列表,所述近线推荐池的更新包括:获取新文档处理请求,所述新文档处理请求携带有新文档标识;从预设的离线启动时间列表获取未来的且距离所述新文档处理请求对应的请求生成时间最近的离线启动时间,作为待分析时间;将所述待分析时间减去所述请求生成时间,得到时间差值;判断所述时间差值是否小于预设时长;若是,则对所述新文档标识对应的文档进行是否进入所述近线推荐池的判断,得到目标判断结果,若所述目标判断结果为是,则将所述新文档标识对应的文档添加到所述近线推荐池,若所述目标判断结果为否,则将所述新文档标识对应的文档添加到离线推荐池;若否,则将所述新文档标识对应的文档添加到所述近线推荐池;所述缓存推荐列表包括固定推荐子表和离线推荐子表;所述将所述新文档标识对应的文档添加到所述近线推荐池的步骤,包括:将所述新文档标识对应的文档添加到所述近线推荐池,并且在所述近线推荐池中,对所述新文档标识对应的文档打上预设的未处理标签;
所述近线推荐池的更新步骤还包括:从所述近线推荐池中,找出添加时间超过预设的第一时长且携带有所述未处理标签的文档,作为第一待分析文档,并获取所述第一待分析文档对应的第一历史推荐数据及第一历史跳转数据;根据预设的预测模型、所述第一历史推荐数据和所述第一历史跳转数据进行推荐数量预测和跳转数量预测,得到第一推荐数量和第一跳转数量;若所述第一推荐数量大于或等于预设的第一推荐阈值,并且,所述第一跳转数量大于或等于预设的第一点击阈值,则将所述第一待分析文档删除所述未处理标签后添加到预设的旧文档库中,将所述第一待分析文档从所述近线推荐池中删除,将所述第一历史推荐数据对应的每个点击文档作为第一添加文档,将所述第一待分析文档对应的文档标识添加到所述第一添加文档对应的所述固定推荐子表中,将所述第一添加文档对应的文档标识添加到所述第一待分析文档对应的所述固定推荐子表中;若所述第一推荐数量小于或等于预设的第二推荐阈值,并且,所述第一跳转数量小于或等于预设的第二点击阈值,则将所述第一待分析文档删除所述未处理标签后添加到所述离线推荐池中,将所述第一待分析文档从所述近线推荐池中删除;若所述第一推荐数量大于所述第二推荐阈值及小于所述第一推荐阈值,并且,所述第一跳转数量大于所述第二点击阈值及小于所述第一点击阈值,则在所述近线推荐池中,对所述第一待分析文档删除所述未处理标签;从所述近线推荐池中,找出添加时间超过预设的第二时长且不携带有所述未处理标签的文档,作为第二待分析文档,并获取所述第二待分析文档对应的第二历史推荐数据及第二历史跳转数据;根据所述第二历史推荐数据计算第二推荐数量,根据所述第二历史跳转数据计算第二跳转数量;若所述第二推荐数量大于或等于预设的第三推荐阈值,并且,所述第二跳转数量大于或等于预设的第三点击阈值,则将所述第二待分析文档添加到所述旧文档库中,将所述第二待分析文档从所述近线推荐池中删除,将所述第二历史推荐数据对应的每个点击文档作为第二添加文档,将所述第二待分析文档对应的文档标识添加到所述第二添加文档对应的所述固定推荐子表中,将所述第二添加文档对应的文档标识添加到所述第二待分析文档对应的所述固定推荐子表中;若所述第二推荐数量小于所述第三推荐阈值,并且,所述第二跳转数量小于所述第三点击阈值,则将所述第二待分析文档添加到所述离线推荐池中,将所述第二待分析文档从所述近线推荐池中删除;
目标文档推荐列表确定模块,用于对所述第一列表和所述第二列表进行组合,得到目标文档推荐列表。
7.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至5中任一项所述方法的步骤。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至5中任一项所述方法的步骤。
CN202310308518.0A 2023-03-28 2023-03-28 实时与离线结合的文档推荐方法、装置、设备及介质 Active CN116010588B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310308518.0A CN116010588B (zh) 2023-03-28 2023-03-28 实时与离线结合的文档推荐方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310308518.0A CN116010588B (zh) 2023-03-28 2023-03-28 实时与离线结合的文档推荐方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN116010588A CN116010588A (zh) 2023-04-25
CN116010588B true CN116010588B (zh) 2023-08-18

Family

ID=86021417

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310308518.0A Active CN116010588B (zh) 2023-03-28 2023-03-28 实时与离线结合的文档推荐方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN116010588B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109062994A (zh) * 2018-07-04 2018-12-21 平安科技(深圳)有限公司 推荐方法、装置、计算机设备和存储介质
CN111897861A (zh) * 2020-06-30 2020-11-06 苏宁金融科技(南京)有限公司 一种内容推荐方法、装置、计算机设备及存储介质
CN112182414A (zh) * 2020-08-13 2021-01-05 亿存(北京)信息科技有限公司 文章推荐方法、装置及电子设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107463698B (zh) * 2017-08-15 2020-11-20 北京百度网讯科技有限公司 基于人工智能推送信息的方法和装置
CN109376309B (zh) * 2018-12-28 2022-05-17 北京百度网讯科技有限公司 基于语义标签的文档推荐方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109062994A (zh) * 2018-07-04 2018-12-21 平安科技(深圳)有限公司 推荐方法、装置、计算机设备和存储介质
CN111897861A (zh) * 2020-06-30 2020-11-06 苏宁金融科技(南京)有限公司 一种内容推荐方法、装置、计算机设备及存储介质
CN112182414A (zh) * 2020-08-13 2021-01-05 亿存(北京)信息科技有限公司 文章推荐方法、装置及电子设备

Also Published As

Publication number Publication date
CN116010588A (zh) 2023-04-25

Similar Documents

Publication Publication Date Title
US11481402B2 (en) Search ranking method and apparatus, electronic device and storage medium
CN108388558B (zh) 问题匹配方法、装置、客服机器人和存储介质
US10255319B2 (en) Searchable index
CN108334632B (zh) 实体推荐方法、装置、计算机设备和计算机可读存储介质
US8554759B1 (en) Selection of documents to place in search index
CN110321408B (zh) 基于知识图谱的搜索方法、装置、计算机设备和存储介质
CN110674319A (zh) 标签确定方法、装置、计算机设备及存储介质
CN109063108B (zh) 搜索排序方法、装置、计算机设备和存储介质
CN111177405A (zh) 数据搜索匹配方法、装置、计算机设备和存储介质
WO2022142043A1 (zh) 课程推荐方法、装置、设备及存储介质
CN112685475A (zh) 报表查询方法、装置、计算机设备及存储介质
CN109446525B (zh) 文本处理方法、装置、计算机可读存储介质和计算机设备
CN110555165B (zh) 信息识别方法、装置、计算机设备和存储介质
CN113360753A (zh) 基于用户历史行为的信息推荐方法、装置、设备及介质
CN110597951A (zh) 文本解析方法、装置、计算机设备和存储介质
CN116010588B (zh) 实时与离线结合的文档推荐方法、装置、设备及介质
US20170357660A1 (en) A Method for Automatically Presenting to a User Online Content Based on the User's Preferences as Derived from the User's Online Activity and Related System and Computer Readable Medium
CN112597274A (zh) 基于bm25算法的文档确定方法、装置、设备及存储介质
CN110851709B (zh) 资讯推送方法、装置、计算机设备和存储介质
CN114003685B (zh) 分词位置索引构建方法及其装置、文档检索方法及其装置
CN115794743A (zh) 一种针对专利和期刊文献的综合检索方法及系统
CN115269765A (zh) 账号识别方法、装置、电子设备和存储介质
CN114610973A (zh) 信息的搜索匹配方法、装置、计算机设备及存储介质
CN115935074B (zh) 文章推荐方法、装置、设备及介质
CN115757923B (zh) 搜索热词的确定方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant