推荐方法、装置、电子设备及计算机可读存储介质转让专利

申请号 : CN202010403963.1

文献号 : CN111310060B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 赵琳琳

申请人 : 腾讯科技(深圳)有限公司

摘要 :

本申请实施例涉及人工智能技术领域,公开了一种推荐方法、装置、电子设备及计算机可读存储介质,其中,推荐方法包括:确定待推荐对象的分类类别和每个用户对应的多个对象中属于分类类别的至少一个目标对象;接着,基于词频逆文本频率TF‑IDF,根据每个用户对应的多个对象和至少一个目标对象,确定每个用户针对分类类别的兴趣值;接着,根据每个用户针对分类类别的兴趣值,从多个用户中确定目标用户,并向目标用户推荐待推荐对象。通过创新性地将TF‑IDF引入到兴趣值的计算中,使得计算出的兴趣值能够更加精准地诠释用户的个性化需求,可以有效地弱化用户的共性需求、突出用户的个性化需求,从而准确地预测用户行为需求或偏好。

权利要求 :

1.一种推荐方法,其特征在于,包括:

确定待推荐对象的分类类别和每个用户对应的多个对象中属于所述分类类别的至少一个目标对象;

针对所述每个用户的每个目标对象,确定所述每个用户的多个对象的第一对象数量和所述每个目标对象的第二对象数量,并基于词频逆文本频率TF-IDF的词频计算公式,计算所述第二对象数量与所述第一对象数量的比值,且将所述比值确定为所述每个用户的所述每个目标对象的词频;

基于所述每个用户的所述每个目标对象的词频,确定所述每个用户针对所述分类类别的兴趣值;

根据所述每个用户针对所述分类类别的兴趣值,从多个用户中确定目标用户,并向所述目标用户推荐所述待推荐对象。

2.根据权利要求1所述的方法,其特征在于,在所述基于所述每个用户的所述每个目标对象的词频,确定所述每个用户针对所述分类类别的兴趣值之前,还包括:基于所述TF-IDF的逆文本频率计算公式,根据所述至少一个目标对象分别对应的第一用户数量和所述TF-IDF的语料库中的第二用户数量,确定所述每个用户的所述至少一个目标对象分别对应的逆文本频率;

所述基于所述每个用户的所述每个目标对象的词频,确定所述每个用户针对所述分类类别的兴趣值,包括:基于所述每个用户的所述至少一个目标对象分别对应的词频与逆文本频率,确定所述每个用户针对所述分类类别的兴趣值。

3.根据权利要求2所述的方法,其特征在于,在所述基于所述每个用户的所述至少一个目标对象分别对应的词频与逆文本频率,确定所述每个用户针对所述分类类别的兴趣值之前,还包括:确定所述每个用户的所述至少一个目标对象分别对应的权重值;

所述基于所述每个用户的所述至少一个目标对象分别对应的词频与逆文本频率,确定所述每个用户针对所述分类类别的兴趣值,包括:基于所述每个用户的所述至少一个目标对象分别对应的词频、逆文本频率与所述权重值,确定每个用户针对所述分类类别的兴趣值。

4.根据权利要求3所述的方法,其特征在于,所述基于所述每个用户的所述至少一个目标对象分别对应的词频、逆文本频率与所述权重值,确定每个用户针对所述分类类别的兴趣值,包括:针对每个目标对象,基于预定兴趣值计算公式,计算每个目标对象的词频、逆文本频率与权重值之间的第一乘积;

确定所述至少一个目标对象分别对应的第一乘积之间的总和,并将该总和确定为所述每个用户针对所述分类类别的兴趣值。

5.根据权利要求1-4任一项所述的方法,其特征在于,所述根据所述每个用户针对所述分类类别的兴趣值,从所述多个用户中确定目标用户,包括:从所述多个用户分别对应的兴趣值中确定最大的N个兴趣值,并将所述最大的N个兴趣值分别对应的N个用户确定为所述目标用户,所述N为正整数。

6.一种推荐装置,其特征在于,包括:

第一确定模块,用于确定待推荐对象的分类类别和每个用户对应的多个对象中属于所述分类类别的至少一个目标对象;

第二确定模块,用于针对所述每个用户的每个目标对象,确定所述每个用户的多个对象的第一对象数量和所述每个目标对象的第二对象数量,并基于TF-IDF的词频计算公式,计算所述第二对象数量与所述第一对象数量的比值,且将所述比值确定为所述每个用户的所述每个目标对象的词频;

所述第二确定模块还用于基于所述每个用户的所述每个目标对象的词频,确定所述每个用户针对所述分类类别的兴趣值;

处理模块,用于根据所述每个用户针对所述分类类别的兴趣值,从多个用户中确定目标用户,并向所述目标用户推荐所述待推荐对象。

7.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-5任一项所述的方法。

8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现权利要求1-5任一项所述的方法。

说明书 :

推荐方法、装置、电子设备及计算机可读存储介质

技术领域

[0001] 本申请实施例涉及人工智能技术领域,具体而言,本申请涉及一种推荐方法、装置、电子设备及计算机可读存储介质。

背景技术

[0002] 随着云时代的来临,大数据也吸引了越来越多的关注,向用户推荐可能感兴趣的内容(例如购物、新闻、广告和应用程序APP等)已经成为目前大数据领域的一项重要内容。在个性化推荐系统的构建过程中,最重要的是根据大数据准确预测用户对于特定物品的需求或偏好喜好程度,并基于判断结果为其进行相应的推荐,这不仅影响到用户体验,同时直接影响到企业相关产品的收益,如使用频率或者下载、点击量等。因此,如何根据大数据准确地预测用户行为需求或偏好具有重要意义。

发明内容

[0003] 本申请实施例的目的旨在至少能解决上述的技术缺陷之一,特提出以下技术方案:
[0004] 一方面,提供了一种推荐方法,包括:
[0005] 确定待推荐对象的分类类别和每个用户对应的多个对象中属于分类类别的至少一个目标对象;
[0006] 基于词频逆文本频率TF-IDF,根据每个用户对应的多个对象和至少一个目标对象,确定每个用户针对分类类别的兴趣值;
[0007] 根据每个用户针对分类类别的兴趣值,从多个用户中确定目标用户,并向目标用户推荐待推荐对象。
[0008] 一方面,提供了一种推荐装置,包括:
[0009] 第一确定模块,用于确定待推荐对象的分类类别和每个用户对应的多个对象中属于分类类别的至少一个目标对象;
[0010] 第二确定模块,用于基于词频逆文本频率TF-IDF,根据每个用户对应的多个对象和至少一个目标对象,确定每个用户针对分类类别的兴趣值;
[0011] 处理模块,用于根据每个用户针对分类类别的兴趣值,从多个用户中确定目标用户,并向目标用户推荐待推荐对象。
[0012] 在一种可能的实现方式中,第二确定模块用于:
[0013] 基于TF-IDF的词频计算公式,根据每个用户对应的多个对象和至少一个目标对象,确定每个用户的至少一个目标对象分别对应的词频;
[0014] 基于每个用户的至少一个目标对象分别对应的词频,确定每个用户针对分类类别的兴趣值。
[0015] 在一种可能的实现方式中,第二确定模块在基于TF-IDF的词频计算公式,根据每个用户对应的多个对象和至少一个目标对象,确定每个用户的至少一个目标对象分别对应的词频时,用于:
[0016] 针对每个用户的每个目标对象,确定每个用户的多个对象的第一对象数量和每个目标对象的第二对象数量;
[0017] 基于TF-IDF的词频计算公式,计算第二对象数量与第一对象数量的比值,并将比值确定为每个目标对象的词频。
[0018] 在一种可能的实现方式中,还包括第三确定模块;
[0019] 第三确定模块,用于基于TF-IDF的逆文本频率计算公式,根据至少一个目标对象分别对应的第一用户数量和TF-IDF的语料库中的第二用户数量,确定每个用户的至少一个目标对象分别对应的逆文本频率;
[0020] 第二确定模块用于基于每个用户的至少一个目标对象分别对应的词频与逆文本频率,确定每个用户针对分类类别的兴趣值。
[0021] 在一种可能的实现方式中,还包括第四确定模块;
[0022] 第四确定模块,用于确定每个用户的至少一个目标对象分别对应的权重值;
[0023] 第二确定模块在基于每个用户的至少一个目标对象分别对应的词频与逆文本频率,确定每个用户针对分类类别的兴趣值时,用于基于每个用户的至少一个目标对象分别对应的词频、逆文本频率与权重值,确定每个用户针对分类类别的兴趣值。
[0024] 在一种可能的实现方式中,第二确定模块在基于每个用户的至少一个目标对象分别对应的词频、逆文本频率与权重值,确定每个用户针对分类类别的兴趣值时,用于:
[0025] 针对每个目标对象,基于预定兴趣值计算公式,计算每个目标对象的词频、逆文本频率与权重值之间的第一乘积;
[0026] 确定至少一个目标对象分别对应的第一乘积之间的总和,并将该总和确定为每个用户针对分类类别的兴趣值。
[0027] 在一种可能的实现方式中,处理模块在根据每个用户针对分类类别的兴趣值,从多个用户中确定目标用户时,用于:
[0028] 从多个用户分别对应的兴趣值中确定最大的N个兴趣值,并将最大的N个兴趣值分别对应的N个用户确定为目标用户,N为正整数。
[0029] 一方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行所述程序时实现上述的推荐方法。
[0030] 一方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现上述的推荐方法。
[0031] 本申请实施例提供的推荐方法,基于词频逆文本频率TF-IDF,确定每个用户针对待推荐对象的分类类别的兴趣值,创新性地将TF-IDF引入到兴趣值的计算中,使得计算出的兴趣值能够更加精准地诠释用户的个性化需求,可以有效地弱化用户的共性需求、突出用户的个性化需求,从而准确地预测用户行为需求或偏好;根据兴趣值确定目标用户,并向目标用户推荐该待推荐对象,使得可以更加准确地将待推荐对象推荐给目标用户,实现对用户的个性化推荐,满足用户的个性化需求,提升用户体验,同时提升待推荐对象的使用频率、点击率等,提高企业相关产品的收益。
[0032] 本申请实施例附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。

附图说明

[0033] 本申请实施例上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
[0034] 图1为本申请实施例的推荐方法的流程示意图;
[0035] 图2为本申请实施例的推荐方法的过程示意图;
[0036] 图3为本申请实施例的推荐方法的应用示意图;
[0037] 图4为本申请实施例的推荐装置的基本结构示意图;
[0038] 图5为本申请实施例的电子设备的结构示意图。

具体实施方式

[0039] 下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
[0040] 本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
[0041] 为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
[0042] 下面以具体地实施例对本申请实施例的技术方案以及本申请实施例的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
[0043] 具体地,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
[0044] 其中,人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
[0045] 具体地,机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
[0046] 具体地,自然语言处理(Nature Language processing, NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
[0047] 本申请实施例提供的方法涉及人工智能的机器学习及自然语言处理等技术,具体通过如下实施例进行说明:
[0048] 本申请一个实施例提供了一种推荐方法,该方法由计算机设备执行,该计算机设备可以是终端或者服务器。终端可以是台式设备或者移动终端。服务器可以是独立的物理服务器、物理服务器集群或者虚拟服务器。如图1所示,该方法包括:
[0049] 步骤S110,确定待推荐对象的分类类别和每个用户对应的多个对象中属于分类类别的至少一个目标对象;步骤S120,基于词频逆文本频率TF-IDF,根据每个用户对应的多个对象和至少一个目标对象,确定每个用户针对分类类别的兴趣值;步骤S130,根据每个用户针对分类类别的兴趣值,从多个用户中确定目标用户,并向目标用户推荐所述待推荐对象。
[0050] 大数据(Big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。随着云时代的来临,大数据也吸引了越来越多的关注,大数据需要特殊的技术,以有效地处理大量的容忍经过时间内的数据。适用于大数据的技术,包括大规模并行处理数据库、数据挖掘、分布式文件系统、分布式数据库、云计算平台、互联网和可扩展的存储系统。
[0051] 在大数据领域中,待推荐对象可以是视频、新闻、广告、商品、应用程序(APP)及汽车等,本申请实施例不对其作限制。当待推荐对象为视频时,待推荐对象的分类类别可以是食品视频类别、化妆品视频类别、服装视频类别及渔具视频类别等等;当待推荐对象为新闻时,推荐对象的分类类别可以是时政新闻类别、娱乐新闻类别、科技新闻类别、财经新闻类别及体育新闻类别等等;当待推荐对象为应用程序时,推荐对象的分类类别可以是社交类别(例如各种即时通讯应用程序)、教育类别(例如某个英语应用程序、Y辅导等)及游戏类别(例如各种游戏应用程序)等等;当待推荐对象为汽车时,推荐对象的分类类别可以是轿车类别、跑车类别、大型车类别及小型车类别等等;当待推荐对象为广告时,推荐对象的分类类别可以是保健器广告类别、化妆品广告类别、服装广告类别及食品广告类别等等;当待推荐对象为商品时,推荐对象的分类类别可以是休闲食品类别、粮油调味类别、电子数码类别、家居日用类别等等。对于其它待推荐对象(例如文章),其分类类别是与其它待推荐对象相关联的一些类别,在此不再赘述。
[0052] TF-IDF(term frequency–inverse document frequency,词频逆文本频率)是一种用于信息检索与数据挖掘的常用加权技术。TF-IDF的值实际上是TF * IDF,TF是词频(Term Frequency)的意思,IDF是逆文本频率(Inverse Document Frequency)的意思。TF-IDF的主要思想是:如果某个词w或短语w在一篇文章中出现的频率(即TF)很高,并且在其他文章中很少出现,则认为此词w或者短语w具有很好的类别区分能力,适合用来分类。
[0053] 基于TF-IDF,根据每个用户对应的多个对象和至少一个目标对象,确定每个用户针对待推荐对象的分类类别的兴趣值,从而将TF-IDF引入到兴趣值的计算中,使得计算出的兴趣值可以更精准地诠释用户的个性化需求,可以有效地弱化用户的共性需求、突出用户的个性化需求,可以准确地预测用户行为需求或偏好。
[0054] 假如待推荐对象为一个应用程序(例如APP_T1),各个用户分别为User_1、User_2及User_3,且User_1对应的多个对象(即应用程序)分别为APP_A1、APP_A2、…、APP_A50,即User_1安装的多个应用程序分别为APP_A1、APP_A2、…、APP_A50,User_2对应的多个对象(即应用程序)分别为APP_B1、APP_B2、…、APP_B50,User_3对应的多个对象(即应用程序)分别为APP_C1、APP_C2、…、APP_C10,则在推荐APP_T1的过程中,可以执行如下处理:
[0055] 首先,确定待推荐对象APP_T1的分类类别,比如确定APP_T1为社交类别。同时,确定User_1对应的多个对象(即APP_A1、APP_A2、…、APP_A50)中属于社交类别的至少一个目标对象,比如该至少一个目标对象分别为APP_A1与APP_A2;并且确定User_2对应的多个对象(即APP_B1、APP_B2、…、APP_B50)中属于社交类别的至少一个目标对象,比如该至少一个目标对象分别为APP_B1与APP_B2;同时确定User_3对应的多个对象(即APP_C1、APP_C2、…、APP_C10)中属于社交类别的至少一个目标对象,比如该至少一个目标对象为APP_C1。
[0056] 接着,基于TF-IDF,根据每个用户对应的多个对象和至少一个目标对象,确定每个用户针对待推荐对象的分类类别(比如社交类别)的兴趣值。针对User_1,根据User_1对应的多个对象(即APP_A1、APP_A2、…、APP_A50)和至少一个目标对象(即APP_A1与APP_A2),确定User_1针对社交类别的兴趣值,比如确定User_1针对社交类别的兴趣值为V1;针对User_2,根据User_2对应的多个对象(即APP_B1、APP_B2、…、APP_B50)和至少一个目标对象(即APP_B1与APP_B2),确定User_2针对社交类别的兴趣值,比如确定User_2针对社交类别的兴趣值为V2;针对User_3,根据User_3对应的多个对象(即APP_C1、APP_C2、…、APP_C10)和至少一个目标对象(即APP_C1),确定User_3针对社交类别的兴趣值,比如确定User_3针对社交类别的兴趣值为V3。
[0057] 接着,根据每个用户针对待推荐对象的分类类别(比如社交类别)的兴趣值,从多个用户中确定目标用户,并向目标用户推荐待推荐对象。即根据V1、V2和V3,从User_1、User_2及User_3中确定目标用户,比如目标用户为User_1,又比如目标用户为User_1与User_2,再比如目标用户为User_1、User_2及User_3,在确定出目标用户后,将待推荐对象APP_T1推荐给目标用户,从而完成APP_T1的准确推荐。
[0058] 在根据每个用户针对待推荐对象分类类别(比如社交类别)的兴趣值,从多个用户中确定目标用户的过程中,可以将大于预定阈值的兴趣值所对应的用户均确定为目标用户,也可以将最大的一个兴趣值所对应的用户确定为目标用户,还可以将较大的L个兴趣值对应的用户均确定为目标用户,其中,L的值小于或等于多个用户的总数量。当然也可以是其它的确定方式,本申请实施例不对其作限制。
[0059] 需要说明的是,上述的APP_A1、APP_A2、…、及APP_A50等是同一用户下的不同应用程序,上述的APP_B1、APP_B2、…、及APP_B50等也是同一用户下的不同应用程序,上述的APP_C1、APP_C2、…、及APP_C10也是同一用户下的不同应用程序。而APP_AX、APP_BX及APP_CX,X的取值为1至50或者1至10,则是为了方便区分不同用户的应用程序而进行的命名,其中,APP_AX与APP_BX可能为相同的应用程序,也可能为不同的应用程序,本申请实施例不作限制,APP_AX与APP_CX可能为相同的应用程序,也可能为不同的应用程序,本申请实施例不作限制,APP_BX与APP_CX可能为相同的应用程序,也可能为不同的应用程序,本申请实施例不作限制。
[0060] 本申请实施例提供的推荐方法,基于词频逆文本频率TF-IDF,确定每个用户针对待推荐对象的分类类别(比如社交类别)的兴趣值,创新性地将TF-IDF引入到兴趣值的计算中,使得计算出的兴趣值能够更加精准地诠释用户的个性化需求,可以有效地弱化用户的共性需求、突出用户的个性化需求,从而准确地预测用户行为需求或偏好;根据兴趣值确定目标用户,并向目标用户推荐该待推荐对象,使得可以更加准确地将待推荐对象推荐给目标用户,实现对用户的个性化推荐,满足用户的个性化需求,提升用户体验,同时提升待推荐对象的使用频率、点击率等,提高企业相关产品的收益。
[0061] 下面以推荐对象是应用程序(比如APP_T1)为例,对本申请实施例的推荐方法进行具体介绍:
[0062] 在一种可能的实现方式中,在基于词频逆文本频率TF-IDF,根据每个用户对应的多个对象和至少一个目标对象,确定每个用户针对分类类别的兴趣值的过程中,可以执行如下处理:首先,基于TF-IDF的词频计算公式,根据每个用户的多个对象和至少一个目标对象,确定每个用户的至少一个目标对象分别对应的词频;接着,基于每个用户的至少一个目标对象分别对应的词频,确定每个用户针对分类类别的兴趣值。
[0063] 由于TF-IDF是一种用于信息检索与数据挖掘的常用加权技术,因此,为了将该技术平移到应用程序推荐领域,需要做一些映射,具体如下所示:
[0064] (a)将每个应用程序看作TF-IDF中一个词w或者短语w,比如APP_A1就是一个w,又比如APP_A2就是另一个w。
[0065] (b)每个用户安装的所有应用程序看作TF-IDF技术中的一个文件(或文档、文章),假如用户User_1安装的所有应用程序分别为APP_A1、APP_A2、…、APP_A50,则该50个应用程序就够成了一个文件,又假如用户User_2安装的所有应用程序分别为APP_B1、APPB 2、…、APP_B 50,则该50个应用程序就够成了另一个文件。
[0066] (c)将安装各种应用程序的所有用户的总数量看作TF-IDF技术中的语料库D,相当于将大盘用户数量看作TF-IDF技术中的语料库D,其中,|D|表示语料库的规模,即语料库中的文件总数。假如大盘用户数量为10亿(即安装各种应用程序的所有用户的总数量为10亿),则|D|=10亿。
[0067] TF-IDF的词频计算公式如公式(1)所示:
[0068]
[0069] 其中, 表示词w在文章 中出现的次数, 表示文章 中所有词出现的次数的总和。
[0070] 在上述将每个应用程序看作TF-IDF中一个词w,并将每个用户安装的所有应用程序看作TF-IDF技术中的一个文件(或文档、文章)之后,可以基于公式(1)的词频计算公式,根据每个用户对应的多个对象和至少一个目标对象,确定每个用户的至少一个目标对象分别对应的词频,在确定出每个用户的至少一个目标对象分别对应的词频后,可以基于每个用户的至少一个目标对象分别对应的词频,确定每个用户针对待推荐对象的分类类别(比如社交类别)的兴趣值。
[0071] 在一个示例中,假如用户User_1对应的多个应用程序分别为APP_A1、APP_A2、…、APP_A50,即用户User_1安装的所有应用程序分别为APP_A1、APP_A2、…、及APP_A50,且用户User_1对应的至少一个目标应用程序分别为APP_A1与APP_A2,则可以公式(1)的词频计算公式,根据User_1对应的多个应用程序(即APP_A1、APP_A2、…、APP_A50)和至少一个目标应用程序(即APP_A1与APP_A2),确定用户User_1的至少一个目标应用程序(即APP_A1与APP_A2)分别对应的词频,比如目标应用程序APP_A1的词频为TF_A1、目标应用程序APP_A2的词频为TF_A2。在确定出用户User_1的目标应用程序APP_A1的词频TF_A1与目标应用程序APP_A2的词频TF_A2之后,可以基于TF_A1和TF_A2确定User_1针对待推荐对象的分类类别(例如社交类别)的兴趣值。
[0072] 在一种可能的实现方式中,在基于TF-IDF的词频计算公式,根据每个用户对应的多个对象和至少一个目标对象,确定每个用户的至少一个目标对象分别对应的词频的过程中,可以针对每个用户的每个目标对象,确定每个用户的多个对象的第一对象数量和每个目标对象的第二对象数量;接着,基于TF-IDF的词频计算公式,计算第二对象数量与第一对象数量的比值,并将比值确定为每个目标对象的词频。
[0073] 根据公式(1)可以看出,词w的词频可以表示为:词w在文章中 出现的次数与总次数之间的比值,该总次数为文章 中所有词分别出现的次数的总和。同时,根据前面描述,可以将每个应用程序看作TF-IDF中一个词w,并将每个用户安装的所有应用程序看作TF-IDF技术中的一个文件(或文档、文章)。于是,每个目标应用程序的词频可以表示为:每个目标应用程序在用户安装的所有应用程序中出现的次数(即每个目标应用程序的数量)与用户安装的所有应用程序出现的次数的总和(即每个用户对应安装的所有应用程序的总数量)之间的比值。其中,为了便于描述,可以将每个用户对应安装的所有应用程序的总数量记作第一对象数量,将每个目标应用程序的数量记作第二对象数量。
[0074] 根据上述描述可以看出,在计算每个用户的每个目标应用程序的词频的过程中,可以针对每个用户的每个目标应用程序,首先,确定每个用户对应的多个应用程序的第一对象数量和每个目标应用程序的第二对象数量,接着,基于TF-IDF的词频计算公式,计算第二对象数量与第一对象数量的比值,并将该比值确定为该每个目标对象的词频。
[0075] 在一个示例中,假如用户User_1对应的多个应用程序分别为APP_A1、APP_A2、…、APP_A50,即用户User_1安装的所有应用程序分别为APP_A1、APP_A2、…、及APP_A50,且用户User_1对应的至少一个目标应用程序分别为APP_A1与APP_A2,则目标应用程序APP_A1的词频的计算过程可以为:
[0076] 首先,确定用户User_1对应的多个对象(即APP_A1、APP_A2、…、及APP_A50)的第一对象数量,由于用户User_1一共安装了50个应用程序,所以第一对象数量为50;同时确定用户User_1对应的目标应用程序(即APP_A1)的数量,由于用户User_1一共安装了1个目标应用程序APP_A1,所以第二对象数量为1。
[0077] 接着,计算第二对象数量与第一对象数量的比值,即1/50=0.02,并将该比值确定为目标应用程序APP_A1的词频TF,即目标应用程序APP_A1的词频TF为1/50=0.02。
[0078] 其中,目标应用程序APP_A2的词频的计算过程与上述目标应用程序APP_A1的词频的计算过程相同,在此不再赘述。
[0079] 在一种可能的实现方式中,在基于每个用户的至少一个目标对象分别对应的词频,确定每个用户针对待推荐对象的分类类别(比如社交类别)的兴趣值之前,还可以执行如下处理:基于TF-IDF的逆文本频率计算公式,根据至少一个目标对象分别对应的第一用户数量和TF-IDF的语料库中的第二用户数量,确定每个用户的至少一个目标对象分别对应的逆文本频率。
[0080] TF-IDF的逆文本频率计算公式如公式(2)所示:
[0081]
[0082] 其中,|D|表示语料库的规模,即语料库中的文件(或文档、文章)总数,表示包含词语 的文件(或文档、文章)数目或数量。
[0083] 在上述将每个应用程序看作TF-IDF中一个词w,并将每个用户安装的所有应用程序看作TF-IDF技术中的一个文件(或文档、文章)以及将安装各种应用程序的所有用户的总数量看作TF-IDF技术中的语料库D之后,可以基于公式(2)的逆文本频率计算公式,根据至少一个目标应用程序分别对应的第一用户数量和TF-IDF的语料库中的第二用户数量,确定每个用户的至少一个目标应用程序分别对应的逆文本频率。
[0084] 针对上述的目标应用程序APP_A1,目标应用程序APP_A1对应的第一用户数量为安装有该目标应用程序APP_A1的所有用户的数量,假如一共有9亿用户安装了目标应用程序APP_A1,则可以确定目标应用程序APP_A1对应的第一用户数量为9亿。针对上述的目标应用程序APP_A2,目标应用程序APP_A2对应的第一用户数量为安装有该目标应用程序APP_A2的所有用户的数量,假如一共有7亿用户安装了目标应用程序APP_A2,则可以确定目标应用程序APP_A2对应的第一用户数量为7亿。
[0085] 由于将安装各种应用程序的所有用户的总数量看作TF-IDF技术中的语料库D,所以TF-IDF的语料库中的第二用户数量即为安装各种应用程序的所有用户的总数量。假如安装各种应用程序的所有用户的总数量为10亿,则可以确定第二用户数量为10亿,即|D|=10亿。
[0086] 在确定出目标应用程序对应的第一用户数量和TF-IDF的语料库中的第二用户数量后,可以基于TF-IDF的逆文本频率计算公式,根据至少一个目标对象分别对应的第一用户数量和TF-IDF的语料库中的第二用户数量,确定目标应用程序对应的逆文本频率IDF。假如将第二用户数量记作T2,将第一用户数量记作T1,则 。
[0087] 在一个示例中,假如用户User_1对应的多个应用程序分别为APP_A1、APP_A2、…、APP_A50,即用户User_1安装的所有应用程序分别为APP_A1、APP_A2、…、及APP_A50,且用户User_1对应的至少一个目标应用程序分别为APP_A1与APP_A2,则目标应用程序APP_A1的逆文本频率的计算过程可以为:
[0088] 首先,确定目标应用程序APP_A1对应的第一用户数量,假如一共有9亿用户安装了目标应用程序APP_A1,则可以确定目标应用程序APP_A1对应的第一用户数量T1为9亿。同时,确定TF-IDF的语料库中的第二用户数量,假如安装各种应用程序的所有用户的总数量为10亿,则可以确定第二用户数量T2为10亿,即|D|=10亿。
[0089] 接着,基于TF-IDF的逆文本频率计算公式,计算目标应用程序APP_A1的逆文本频率IDF,即 。
[0090] 其中,目标应用程序APP_A2的逆文本频率的计算过程与上述目标应用程序APP_A1的逆文本频率的计算过程相同,在此不再赘述。
[0091] 在根据上述处理过程确定出每个用户的至少一个目标对象分别对应的逆文本频率后,可以基于每个用户的至少一个目标对象分别对应的词频与逆文本频率,确定每个用户待推荐对象的分类类别(例如社交类别)的兴趣值。
[0092] 在一种可能的实现方式中,在基于每个用户的至少一个目标对象分别对应的词频与逆文本频率,确定每个用户针对分类类别的兴趣值之前,还可以确定每个用户的至少一个目标对象分别对应的权重值。
[0093] 通常每个用户的每个应用程序都具有对应的权重值,在一个示例中,User_1的应用程序APP_A1的权重值为W_A1、应用程序APP_A2的权重值为W_A2、依此类推,应用程序APP_A50的权重值为W_A50,如果User_1对应的至少一个目标应用程序分别为APP_A1与APP_A2,则可以确定目标应用程序APP_A1的权重值为W_A1、目标应用程序APP_A2的权重值为W_A2。
[0094] 在基于每个用户的至少一个目标对象分别对应的词频与逆文本频率,确定每个用户针对分类类别的兴趣值的过程中,可以基于每个用户的至少一个目标对象分别对应的词频、逆文本频率与权重值,确定每个用户针对分类类别的兴趣值。
[0095] 在基于每个用户的至少一个目标对象分别对应的词频、逆文本频率与权重值,确定每个用户针对分类类别的兴趣值的过程中,针对每个目标对象,基于预定兴趣值计算公式,计算每个目标对象的词频、逆文本频率与权重值之间的第一乘积;接着,确定至少一个目标对象分别对应的第一乘积之间的总和,并将该总和确定为每个用户针对分类类别的兴趣值。
[0096] 在一个示例中,假如用户User_1的至少一个目标应用程序分别为APP_A1与APP_A2,APP_A1的词频为TF_A1,APP_A2的词频为TF_A2,APP_A1的逆文本频率为IDF_A1,APP_A2的词频为IDF_A2,且APP_A1的权重值为W_A1,APP_A2的权重值为W_A2,则在基于每个用户的至少一个目标对象分别对应的词频、逆文本频率与权重值,确定每个用户针对待推荐对象的分类类别的兴趣值的过程中,可以执行如下处理:
[0097] 首先,针对APP_A1,基于预定兴趣值计算公式,计算APP_A1的词频、逆文本频率与权重值之间的乘积,预定兴趣值计算公式可以为词频*逆文本频率*权重值的形式,此时可以计算乘积为:TF_A1*IDF_A1*W_A1,为便于描述将其记作P_A1,即P_A1=TF_A1*IDF_A1*W_A1;接着,针对APP_A2,基于预定兴趣值计算公式,计算APP_A2的词频、逆文本频率与权重值之间的乘积,即计算TF_A2、IDF_A2及W_A2之间的乘积(记作P_A2),即P_A2=TF_A2*IDF_A2*W_A2。接着,确定用户User_1的至少一个目标对象分别对应的乘积之间的总和,即确定P_A1与P_A2之间的总和,也即总和=P_A1+P_A2,并将该总和确定为用户User_1针对待推荐应用程序的分类类别(比如社交类别)的兴趣值。
[0098] 在一种可能的实现方式中,在根据每个用户针对分类类别的兴趣值,从多个用户中确定目标用户的过程中,可以从多个用户分别对应的兴趣值中确定最大的N个兴趣值,并将最大的N个兴趣值分别对应的N个用户确定为目标用户,N为正整数。
[0099] 假如多个用户分别为User_1、User_2及User_3,User_1针对待推荐对象的分类类别的兴趣值为P_A1,User_2针对待推荐对象的分类类别的兴趣值为P_A2,User_3针对待推荐对象的分类类别的兴趣值为P_A3,则:
[0100] 在一种情况下,可以首先确定P_A1、P_A2及P_A3中的最大值,比如最大值为P_A2,接着,确定该最大值P_A2对应的用户为User_2,接着,将User_2确定为目标用户。
[0101] 在另一种情况下,可以首先确定P_A1、P_A2及P_A3中的N个最大值,若P_A1大于P_A2、P_A2大于P_A3,且N的取值为2,则:最大的N个兴趣值分别为P_A1与P_A2,接着,确定P_A1与P_A2分别对应的用户为User_1与User_2,接着,将User_1与User_2确定为目标用户。
[0102] 在一个示例中,如图2所示,可以通过执行如下步骤来计算每个用户在每类应用程序上的兴趣值:
[0103] 步骤S210:计算每个文件的规模,即计算每个用户安装的应用程序APP总数,为了方便该步骤可以提前完成,结果直接在表一中给出,比如用户User_1安装了50个应用程序,则用户User_1的文件的规模为50。
[0104] 表一用户在社交类别的应用程序上的基本数值
[0105]
[0106] 步骤S220:计算语料库D,即计算APP大盘用户量。为了方便,这个步骤可以提前完成,结果直接在表一中。大盘用户是为10亿,即|D|=10亿。
[0107] 步骤S230:对于每个词w,计算包括该词w的文档数,即计算每个APP(比如APP_A1)对应的用户量,也即计算安装该每个APP_A1的用户量,比如9亿。为了方便,这个步骤可以提前完成,结果直接在表一中,比如APP_A2的用户量为7亿。
[0108] 步骤S240:计算每个用户的每个已安装APP的词频,比如用户User_1的APP_A1的词频值(记作TF_A1)为: 。需要注意的是,每个用户每个APP的安装个数为1,所以词频数(即分子)为1。对表一中的用户的APP的TF计算结果如下表二所示:
[0109] 表二用户在社交类别的应用程序上的TF值
[0110]
[0111] 步骤S250:计算每个用户的每个已安装APP的逆文本频率IDF值,比如用户User_1的APP_A1的逆文本频率IDF值(记IDF_A1作)为:
[0112]
[0113] 于是,可以得到针对表二中的用户的APP的IDF计算结果如下表三所示:
[0114] 表三用户在社交类别的应用程序上的IDF值
[0115]
[0116] 步骤S260:计算单个用户在每类APP上的兴趣值,即计算单个用户在某APP(例如APP_A1)分类类别上的分值socre(即兴趣值),如公式(3)所示:
[0117]
[0118] 其中,T表示一个APP的分类类别,如社交类别, 表示单个APP的权重分值,表一中把单个APP的权重分值均设置为1。于是,可以得到针对表三中的用户在社交类别的分值如下表四所示:
[0119] 表四用户在社交类别上的分值(即兴趣值)
[0120]
[0121] 在计算出单个用户在每类APP上的兴趣值后,还可以对兴趣值进行归一化处理。
[0122] 通过表四可以看出,用户User_3的兴趣值大于用户User_2的兴趣值,用户User_2的兴趣值大于用户User_1的兴趣值,此时假如N的取值为2,则可以将用户User_3与用户User_2确定为目标用户,将待推荐用户程序(例如APP_T1)推荐给用户User_3和用户User_2,假如N的取值为1,则可以将用户User_3确定为目标用户,将待推荐用户程序(例如APP_T1)推荐给用户User_3。其中,推荐场景可以如图3所示。
[0123] 图4为本申请又一实施例提供的一种推荐装置的结构示意图,如图4所示,该装置400可以包括第一确定模块401、第二确定模块402及处理模块403,其中:
[0124] 第一确定模块401,用于确定待推荐对象的分类类别和每个用户对应的多个对象中属于分类类别的至少一个目标对象;
[0125] 第二确定模块402,用于基于词频逆文本频率TF-IDF,根据每个用户对应的多个对象和至少一个目标对象,确定每个用户针对分类类别的兴趣值;
[0126] 处理模块403,用于根据每个用户针对分类类别的兴趣值,从多个用户中确定目标用户,并向目标用户推荐待推荐对象。
[0127] 在一种可能的实现方式中,第二确定模块用于:
[0128] 基于TF-IDF的词频计算公式,根据每个用户对应的多个对象和至少一个目标对象,确定每个用户的至少一个目标对象分别对应的词频;
[0129] 基于每个用户的至少一个目标对象分别对应的词频,确定每个用户针对分类类别的兴趣值。
[0130] 在一种可能的实现方式中,第二确定模块在基于TF-IDF的词频计算公式,根据每个用户对应的多个对象和至少一个目标对象,确定每个用户的至少一个目标对象分别对应的词频时,用于:
[0131] 针对每个用户的每个目标对象,确定每个用户的多个对象的第一对象数量和每个目标对象的第二对象数量;
[0132] 基于TF-IDF的词频计算公式,计算第二对象数量与第一对象数量的比值,并将比值确定为每个目标对象的词频。
[0133] 在一种可能的实现方式中,还包括第三确定模块;
[0134] 第三确定模块,用于基于TF-IDF的逆文本频率计算公式,根据至少一个目标对象分别对应的第一用户数量和TF-IDF的语料库中的第二用户数量,确定每个用户的至少一个目标对象分别对应的逆文本频率;
[0135] 第二确定模块用于基于每个用户的至少一个目标对象分别对应的词频与逆文本频率,确定每个用户针对分类类别的兴趣值。
[0136] 在一种可能的实现方式中,还包括第四确定模块;
[0137] 第四确定模块,用于确定每个用户的至少一个目标对象分别对应的权重值;
[0138] 第二确定模块在基于每个用户的至少一个目标对象分别对应的词频与逆文本频率,确定每个用户针对分类类别的兴趣值时,用于基于每个用户的至少一个目标对象分别对应的词频、逆文本频率与权重值,确定每个用户针对分类类别的兴趣值。
[0139] 在一种可能的实现方式中,第二确定模块在基于每个用户的至少一个目标对象分别对应的词频、逆文本频率与权重值,确定每个用户针对分类类别的兴趣值时,用于:
[0140] 针对每个目标对象,基于预定兴趣值计算公式,计算每个目标对象的词频、逆文本频率与权重值之间的第一乘积;
[0141] 确定至少一个目标对象分别对应的第一乘积之间的总和,并将该总和确定为每个用户针对分类类别的兴趣值。
[0142] 在一种可能的实现方式中,处理模块在根据每个用户针对分类类别的兴趣值,从多个用户中确定目标用户时,用于:
[0143] 从多个用户分别对应的兴趣值中确定最大的N个兴趣值,并将最大的N个兴趣值分别对应的N个用户确定为目标用户,N为正整数。
[0144] 本申请实施例提供的装置,基于词频逆文本频率TF-IDF,确定每个用户针对待推荐对象的分类类别的兴趣值,创新性地将TF-IDF引入到兴趣值的计算中,使得计算出的兴趣值能够更加精准地诠释用户的个性化需求,可以有效地弱化用户的共性需求、突出用户的个性化需求,从而准确地预测用户行为需求或偏好;根据兴趣值确定目标用户,并向目标用户推荐该待推荐对象,使得可以更加准确地将待推荐对象推荐给目标用户,实现对用户的个性化推荐,满足用户的个性化需求,提升用户体验,同时提升待推荐对象的使用频率、点击率等,提高企业相关产品的收益。
[0145] 需要说明的是,本实施例为与上述的方法项实施例相对应的装置项实施例,本实施例可与上述方法项实施例互相配合实施。上述方法项实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在上述方法项实施例中。
[0146] 本申请另一实施例提供了一种电子设备,如图5所示,图5所示的电子设备500包括:处理器501和存储器503。其中,处理器501和存储器503相连,如通过总线502相连。进一步地,电子设备500还可以包括收发器504。需要说明的是,实际应用中收发器504不限于一个,该电子设备500的结构并不构成对本申请实施例的限定。
[0147] 其中,处理器501应用于本申请实施例中,用于实现图4所示的第一确定模块、第二模块及处理模块的功能。收发器504包括接收机和发射机。
[0148] 处理器501可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器501也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
[0149] 总线502可包括一通路,在上述组件之间传送信息。总线502可以是PCI总线或EISA总线等。总线502可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0150] 存储器503可以是ROM或可存储静态信息和指令的其他类型的静态存储设备,RAM或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM、CD-ROM或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
[0151] 存储器503用于存储执行本申请方案的应用程序代码,并由处理器501来控制执行。处理器501用于执行存储器503中存储的应用程序代码,以实现图4所示实施例提供的推荐装置的动作。
[0152] 本申请实施例提供的电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时,可实现:确定待推荐对象的分类类别和每个用户对应的多个对象中属于分类类别的至少一个目标对象;接着,基于词频逆文本频率TF-IDF,根据每个用户对应的多个对象和至少一个目标对象,确定每个用户针对分类类别的兴趣值;接着,根据每个用户针对分类类别的兴趣值,从多个用户中确定目标用户,并向目标用户推荐待推荐对象。
[0153] 本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现上述实施例所示的方法。其中:基于词频逆文本频率TF-IDF,确定每个用户针对待推荐对象的分类类别的兴趣值,创新性地将TF-IDF引入到兴趣值的计算中,使得计算出的兴趣值能够更加精准地诠释用户的个性化需求,可以有效地弱化用户的共性需求、突出用户的个性化需求,从而准确地预测用户行为需求或偏好;根据兴趣值确定目标用户,并向目标用户推荐该待推荐对象,使得可以更加准确地将待推荐对象推荐给目标用户,实现对用户的个性化推荐,满足用户的个性化需求,提升用户体验,同时提升待推荐对象的使用频率、点击率等,提高企业相关产品的收益。
[0154] 本申请实施例提供的计算机可读存储介质适用于上述方法的任一实施例。
[0155] 应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0156] 以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。