CN117593089A - ***推荐方法、装置、设备、存储介质及程序产品 - Google Patents

***推荐方法、装置、设备、存储介质及程序产品 Download PDF

Info

Publication number
CN117593089A
CN117593089A CN202311651204.7A CN202311651204A CN117593089A CN 117593089 A CN117593089 A CN 117593089A CN 202311651204 A CN202311651204 A CN 202311651204A CN 117593089 A CN117593089 A CN 117593089A
Authority
CN
China
Prior art keywords
credit card
recommendation
user
information
historical
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.)
Pending
Application number
CN202311651204.7A
Other languages
English (en)
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.)
Agricultural Bank of China
Original Assignee
Agricultural Bank of China
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 Agricultural Bank of China filed Critical Agricultural Bank of China
Priority to CN202311651204.7A priority Critical patent/CN117593089A/zh
Publication of CN117593089A publication Critical patent/CN117593089A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Technology Law (AREA)
  • Computational Linguistics (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施例提供一种***推荐方法、装置、设备、存储介质及程序产品,本申请实施例涉及***推荐技术领域,该方法包括:获取目标用户的需求信息、历史用户的历史数据以及各***产品的信息;分别通过基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法,确定***产品的第一推荐列表、***产品的第二推荐列表、***产品的第三推荐列表;基于目标用户的需求信息,通过第一推荐列表、第二推荐列表以及第三推荐列表,确定为目标用户推荐的目标***产品。本申请实例提供的方法能够克服现有技术无法适用于多样化的场景来准确地为用户推荐***产品的问题。

Description

***推荐方法、装置、设备、存储介质及程序产品
技术领域
本申请实施例涉及***推荐技术领域,尤其涉及一种***推荐方法、装置、设备、存储介质及程序产品。
背景技术
随着互联网的发展,曾经匮乏的信息数据如指数函数般发生了***性增长。对于用户来讲,过多的冗余数据会对其检索相关信息产生干扰,极大降低其获取有用数据的效率;各大信息平台同样会因为数据洪流无法定位到精准的目标用户。这一现象同样出现在银行的***产品***当中,如何使得业务人员能迅速为客户提供合适并且其可能喜欢的***产品成为了研究的关键。
目前,通过开发推荐***,为用户过滤掉大量的冗余信息和数据,通过减少该类过载信息的干扰,使得人们在进行信息检索时更加方便快捷,提升用户体验效果。
然而,现有的推荐***无法适用于多样化的场景,无法准确地为用户推荐***产品,进而影响用户体验。
发明内容
本申请实施例提供一种***推荐方法、装置、设备、存储介质及程序产品,以克服现有技术无法适用于多样化的场景来准确地为用户推荐***产品的问题。
第一方面,本申请实施例提供一种***推荐方法,所述方法包括:
获取目标用户的需求信息、历史用户的历史数据以及各***产品的信息;
根据所述目标用户的需求信息、历史用户的历史数据以及各***产品的信息,分别通过基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法,确定基于内容的推荐算法对应的***产品的第一推荐列表、基于用户的协同过滤推荐算法对应的***产品的第二推荐列表、基于物品的协同过滤推荐算法对应的***产品的第三推荐列表;
基于所述目标用户的需求信息,通过所述第一推荐列表、第二推荐列表以及第三推荐列表,确定为所述目标用户推荐的目标***产品。
在一种可能的设计中,所述历史数据包括历史用户的需求信息、使用的***产品的信息以及对***产品的评价信息;所述根据所述目标用户的需求信息、历史用户的历史数据以及各***产品的信息,分别通过基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法,确定基于内容的推荐算法对应的***产品的第一推荐列表、基于用户的协同过滤推荐算法对应的***产品的第二推荐列表、基于物品的协同过滤推荐算法对应的***产品的第三推荐列表,包括:
根据各所述***产品的信息,通过TF-IDF模型,得到各所述***产品的内容特征向量,并根据各所述***产品的内容特征向量,通过基于内容的推荐算法,确定各所述***产品对应的推荐列表,根据所述目标用户的需求信息和历史用户的历史数据,从各所述***产品对应的推荐列表中确定与所述目标用户的需求信息匹配的第一推荐列表;
根据所述历史用户的历史数据以及各所述***产品的信息,通过基于用户的协同过滤推荐算法,确定为所述历史用户推荐的***产品对应的推荐列表,根据所述目标用户的需求信息和历史用户的历史数据,从为所述历史用户推荐的***产品对应的推荐列表中确定与所述目标用户的需求信息匹配的第二推荐列表;
根据所述历史用户的历史数据以及各所述***产品的信息,基于物品的协同过滤推荐算法,确定各所述***产品之间的相似度,将相似的***产品构建推荐列表,并根据所述目标用户的需求信息和历史用户的历史数据,从各所述相似的***产品的推荐列表中确定与所述目标用户的需求信息匹配的第三推荐列表。
在一种可能的设计中,所述根据各所述***产品的内容特征向量,通过基于内容的推荐算法,确定各所述***产品对应的推荐列表,包括:
根据各所述***产品的内容特征向量,通过基于内容的推荐算法对应的UGC推荐模型,得到各所述***产品对应的评分;其中,所述UGC推荐模型为对热门标签加入惩罚项的推荐模型;
根据各所述***产品的内容特征向量,计算不同***产品之间的相似度;
根据各所述***产品对应的评分和不同***产品之间的相似度,确定各所述***产品对应的推荐列表,所述各所述***产品对应的推荐列表中包括基于评分排序后的各***产品的信息。
在一种可能的设计中,所述根据所述历史用户的历史数据以及各所述***产品的信息,通过基于用户的协同过滤推荐算法,确定为所述历史用户推荐的***产品对应的推荐列表,包括:
根据所述历史用户的历史数据以及各所述***产品的信息,通过基于用户的协同过滤推荐算法,确定所述历史用户之间的相似度;
根据所述历史用户之间的相似度和所述历史用户的历史数据中使用的***产品的信息以及对***产品的评价信息,确定为所述历史用户推荐的***产品对应的推荐列表。
在一种可能的设计中,所述将相似的***产品构建推荐列表,包括:
根据所述历史用户的历史数据以及各所述***产品的信息,从存储在Redis缓存数据库中获取预设时间段内的评分数据,所述评分数据用于表示对用户对***产品的评分数据;
根据各所述***产品的评分数据,对相似***产品构建推荐列表;其中,各所述***产品的推荐列表中包括基于所述评分数据排序后的与所述***产品相似的其他***产品的信息。
在一种可能的设计中,所述基于所述目标用户的需求信息,通过所述第一推荐列表、第二推荐列表以及第三推荐列表,确定为所述目标用户推荐的目标***产品,包括:
根据所述目标用户的需求信息,确定当前业务场景下,所述第一推荐列表、所述第二推荐列表以及所述第三推荐列表分别对应的权重;
根据所述第一推荐列表、所述第二推荐列表以及所述第三推荐列表分别对应的权重,确定为所述目标用户推荐的目标***产品;
相应的,所述方法还包括:
获取所述目标用户对推荐的目标***产品的反馈信息;
根据所述反馈信息,更新历史用户的历史数据以及各***产品的信息。
第二方面,本申请实施例提供一种***推荐装置,所述装置包括:
获取模块,用于获取目标用户的需求信息、历史用户的历史数据以及各***产品的信息;
推荐模块,用于根据所述目标用户的需求信息、历史用户的历史数据以及各***产品的信息,分别通过基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法,确定基于内容的推荐算法对应的***产品的第一推荐列表、基于用户的协同过滤推荐算法对应的***产品的第二推荐列表、基于物品的协同过滤推荐算法对应的***产品的第三推荐列表;
推荐模块,还用于基于所述目标用户的需求信息,通过所述第一推荐列表、第二推荐列表以及第三推荐列表,确定为所述目标用户推荐的目标***产品。
第三方面,本申请实施例提供一种电子设备,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面以及第一方面各种可能的设计所述的***推荐方法。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的***推荐方法。
第五方面,本申请实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上第一方面以及第一方面各种可能的设计所述的***推荐方法。
本实施例提供的***推荐方法、装置、设备、存储介质及程序产品,首先获取目标用户的需求信息、历史用户的历史数据以及各***产品的信息;然后根据所述目标用户的需求信息、历史用户的历史数据以及各***产品的信息,分别通过基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法,确定基于内容的推荐算法对应的***产品的第一推荐列表、基于用户的协同过滤推荐算法对应的***产品的第二推荐列表、基于物品的协同过滤推荐算法对应的***产品的第三推荐列表;再基于所述目标用户的需求信息,通过所述第一推荐列表、第二推荐列表以及第三推荐列表,确定为所述目标用户推荐的目标***产品。因此,通过获取用户的需求信息,结合不同的推荐算法,综合分析用户的需求,为用户推荐一款或多款适合用户或用户喜欢的***产品,适用于不同用户的不同需求下的多样化场景,能够准确地为用户推荐匹配的***产品,同时满足用户的个性化需求,进而提高用户体验。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的***推荐方法的场景示意图;
图2为本申请实施例提供的***推荐方法的流程示意图;
图3为本申请实施例提供的***推荐方法的流程示意图;
图4为本申请实施例提供的***推荐装置的结构示意图;
图5为本申请实施例提供的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例,例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
目前,通过开发推荐***,为用户过滤掉大量的冗余信息和数据,通过减少该类过载信息的干扰,使得人们在进行信息检索时更加方便快捷,提升用户体验效果。然而,现有的推荐***无法适用于多样化的场景,无法准确地为用户推荐***产品,进而影响用户体验。
针对现有技术存在的问题,本申请的技术构思是通过获取用户的需求信息,结合不同的推荐算法,综合分析用户的需求,为用户推荐一款或多款适合用户或用户喜欢的***产品,适用于不同用户的不同需求下的多样化场景,能够准确地为用户推荐匹配的***产品,同时满足用户的个性化需求,进而提高用户体验。
术语解释:
基于内容的推荐算法:将项目通过其本身所拥有的相关特征属性进行定义,并且能够发现各个不同项目之前之间的相似程度,随后基于用户的历史数据(比如,使用过或喜欢(比如,对喜欢的***产品打标签)哪些***产品等),将相似度最高的物品推荐给用户。
基于用户的协同过滤推荐算法:通过挖掘用户的历史数据从而获取用户对于项目的偏好情况,随后去寻找与当前用户有相似兴趣的邻近用户群体,并将他们的偏好项目推荐给当前用户。
基于物品的协同过滤推荐算法:比如,产品A被用户A和用户B喜欢;产品B也被用户A和用户B喜欢,那么认为产品A和产品B相似,当用户C喜欢产品A时,那么会认为用户C也喜欢产品B,那么会把产品B也推荐给用户C。
隐语义模型:隐语义分析技术可用于挖掘不同语句、文本之间的潜在关系,即通过降维技术来填充原有的评分矩阵。
交替最小二乘法:矩阵P和矩阵Q通过矩阵乘法耦合到一起之后,为了使其解耦,可通过先行固定矩阵Q,将另外一个矩阵P作为一个变量,通过损失函数最小化来求得矩阵Q,同样,可通过先行固定矩阵P,将另外一个矩阵Q作为一个变量,通过损失函数最小化来求得矩阵P。
词频-逆文档频率模型(TF-IDF):是用于文本挖掘和资讯检索的一种加权技术,可以评估一个字词在文件集或者语料库中某一个指定文件的重要程度。该字词的重要程度会伴随着其在文件中出现次数的增加而上升,也会伴随着其在语料库中出现的次数增加而呈现下降趋势。其公式为:
TF-DF=TF×IDF
Flume-ng:一套用于收集日志数据的***,可以将不同数据源所获得的大量日志数据进行高效率的收集聚合,并将所获得的数据存储到特定的数据存储***中。
Redis缓存数据库:Redis是一个性能极高并且能够支持丰富的数据类型的key-value数据库,因本身是基于内存实现的,所以相比磁盘数据省去了将数据由磁盘读取到内容所需要的开销。
Kafka:一个拥有着极高吞吐量的分布式发布订阅消息***,通过它能够完成***之间实时流数据管道的构建,不仅能够读取、写入和存储数据流,还可以实现对于流数据的实时处理。
在实际应用中,参见图1所示,图1为本申请实施例提供的***推荐方法的场景示意图。本申请的执行主体可以是***推荐装置,该***推荐装置可以部署在电子设备中,比如终端设备或服务器。
示例性地,以***推荐场景为例,该场景可以包括:用户终端101和银行***终端102;该用户终端用于提供推荐***产品的搜索功能,该银行***终端102安装有***推荐装置。当某一用户存在需求时,可以通过用户终端101提供的搜索功能,将需求信息(比如:需要***的用途、外观、额度等一个或多个维度的信息)输入到搜索功能对应的搜索框中,用户终端101将该需求信息上报至银行***终端102,银行***终端102的***推荐装置根据获取到的用户的需求信息,通过从数据库中获取历史用户的历史数据以及存储的各***产品的信息(比如,***产品中的产品名称、卡片品牌、卡片有效期、额度,提供的服务等),将上述信息输入到推荐模型中,得到为该用户推荐的目标***产品。
其中,该推荐模型是基于多种推荐算法融合的模型,这里的多种推荐算法包括基于内容的推荐算法、基于隐语义模型的协同过滤推荐算法,其中,基于隐语义模型的协同过滤推荐算法可以包括基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法等。然后通过各推荐算法推荐的***产品或***产品的推荐列表,通过加权计算,确定为该用户推荐的目标***产品。
解决了由单一推荐算法针对多样化场景,无法准确地为用户推荐合适的***产品的问题,即:
1.由于基于内容的推荐算法对内容的建模过程中尽可能要求模型完整全面,能够完善的表达出其本身的内容,但是在基荐于内容的推***中大多使用分类标签来对内容进行描述,从而造成了描述的片面性。在提取属性的过程中需要包含可解释的意义,因此需要通过人工的方式进行提取维护,从而造成了人力资源的浪费。而本申请实施例中采用的基于内容的推荐算法是融合了TF-IDF模型来获取每个***产品的内容特征向量,通过该模型能够修正基于UGC推荐模型中经常遇到的热门标签霸榜问题,进而提高推荐的准确性。
2.基于用户的协同过滤推荐算法当用户的数量远远大于物品的数量时,计算用户相似度矩阵的代价过大,且伴随着用户数量的动态增长,计算量将会大幅提升。因此,存在有另一种推荐方式为:当用户的数量达到一定阈值时,可以将其权重设置为0或者不采用该推荐算法,重新采用其他的推荐算法,比如,基于物品的协同过滤推荐算法,与基于内容的推荐算法相结合使用。
3.基于物品的协同过滤推荐算法过于依赖历史数据,因而存在冷启动和数据稀疏性的问题,因此,可以将基于物品的协同过滤推荐算法与其他算法(比如,基于内容的推荐算法和/或基于用户的协同过滤推荐算法等)相结合,来解决存在冷启动和数据稀疏性的问题。
因此,通过获取用户的需求信息,结合不同的推荐算法,综合分析用户的需求,为用户推荐一款或多款适合用户或用户喜欢的***产品,适用于不同用户的不同需求下的多样化场景,能够准确地为用户推荐匹配的***产品,同时满足用户的个性化需求,进而提高用户体验。
下面以具体地实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图2为本申请实施例提供的***推荐方法的流程示意图,该方法可以包括:
S201、获取目标用户的需求信息、历史用户的历史数据以及各***产品的信息。
本实施例中,***推荐方法的执行主体可以是***推荐装置,该***推荐装置可以部署在电子设备中,比如终端设备、服务器等。具体地,结合图1所示,当某一用户存在需求时,可以通过用户终端101提供的搜索功能,将需求信息(比如:需要***的用途、外观、额度等一个或多个维度的信息)输入到搜索功能对应的搜索框中,用户终端101将该需求信息上报至银行***终端102,银行***终端102的***推荐装置根据获取到的用户的需求信息,通过从数据库中获取历史用户的历史数据以及存储的各***产品的信息(比如,***产品中的产品名称、卡片品牌、卡片有效期、额度,提供的服务等)。
S202、根据所述目标用户的需求信息、历史用户的历史数据以及各***产品的信息,分别通过基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法,确定基于内容的推荐算法对应的***产品的第一推荐列表、基于用户的协同过滤推荐算法对应的***产品的第二推荐列表、基于物品的协同过滤推荐算法对应的***产品的第三推荐列表。
本实施例中,为了保证推荐***产品的准确性,可以结合基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法等至少三种推荐算法,分别确定各推荐算法对应的***产品的第三推荐列表,在通过加权计算,确定最终为用户推荐的目标***产品。
还有一种推荐方式为:根据所述目标用户的需求信息、历史用户的历史数据以及各***产品的信息,确定采用的推荐算法,采用的推荐算法包括基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法中的至少两项,然后根据所述目标用户的需求信息、历史用户的历史数据以及各***产品的信息,通过采用的推荐算法中的各推荐算法,确定各推荐算法对应的***产品的推荐列表。
S203、基于所述目标用户的需求信息,通过所述第一推荐列表、第二推荐列表以及第三推荐列表,确定为所述目标用户推荐的目标***产品。
本实施例中,根据目标用户的需求信息,通过所述第一推荐列表、第二推荐列表以及第三推荐列表的加权计算,确定为所述目标用户推荐的目标***产品。
在一种可能的设计中,所述基于所述目标用户的需求信息,通过所述第一推荐列表、第二推荐列表以及第三推荐列表,确定为所述目标用户推荐的目标***产品,可以通过以下步骤实现:
步骤a1、根据所述目标用户的需求信息,确定当前业务场景下,所述第一推荐列表、所述第二推荐列表以及所述第三推荐列表分别对应的权重;
步骤a2、根据所述第一推荐列表、所述第二推荐列表以及所述第三推荐列表分别对应的权重,确定为所述目标用户推荐的目标***产品。
本实施例中,根据目标用户的需求信息,结合用户的历史数据以及各***产品的信息,确定当前业务场景以及适用的推荐算法(包括基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法中的至少两项),比如:历史用户的数据量未达到一定阈值时,可以采用基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法,综合分析,进而为用户推荐匹配的***产品,保证推荐的准确度,进而满足用户的需求,提高用户的体验。当历史用户的数据量达到一定阈值时,为了节约算力资源,可以采用基于内容的推荐算法和基于物品的协同过滤推荐算法相结合。可以依据具体场景或业务需求而定,在此对三种算法的选取不做具体限定。
本申请提供的***推荐方法,首先获取目标用户的需求信息、历史用户的历史数据以及各***产品的信息;然后根据所述目标用户的需求信息、历史用户的历史数据以及各***产品的信息,分别通过基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法,确定基于内容的推荐算法对应的***产品的第一推荐列表、基于用户的协同过滤推荐算法对应的***产品的第二推荐列表、基于物品的协同过滤推荐算法对应的***产品的第三推荐列表;再基于所述目标用户的需求信息,通过所述第一推荐列表、第二推荐列表以及第三推荐列表,确定为所述目标用户推荐的目标***产品。因此,通过获取用户的需求信息,结合不同的推荐算法,综合分析用户的需求,为用户推荐一款或多款适合用户或用户喜欢的***产品,适用于不同用户的不同需求下的多样化场景,能够准确地为用户推荐匹配的***产品,同时满足用户的个性化需求,进而提高用户体验。
在一种可能的设计中,所述历史数据包括历史用户的需求信息和使用的***产品的信息;所述根据所述目标用户的需求信息、历史用户的历史数据以及各***产品的信息,分别通过基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法,确定基于内容的推荐算法对应的***产品的第一推荐列表、基于用户的协同过滤推荐算法对应的***产品的第二推荐列表、基于物品的协同过滤推荐算法对应的***产品的第三推荐列表,可以通过以下步骤实现:
步骤b1、根据各所述***产品的信息,通过TF-IDF模型,得到各所述***产品的内容特征向量,并根据各所述***产品的内容特征向量,通过基于内容的推荐算法,确定各所述***产品对应的推荐列表,根据所述目标用户的需求信息和历史用户的历史数据,从各所述***产品对应的推荐列表中确定与所述目标用户的需求信息匹配的第一推荐列表;
步骤b2、根据所述历史用户的历史数据以及各所述***产品的信息,通过基于用户的协同过滤推荐算法,确定为所述历史用户推荐的***产品对应的推荐列表,根据所述目标用户的需求信息和历史用户的历史数据,从为所述历史用户推荐的***产品对应的推荐列表中确定与所述目标用户的需求信息匹配的第二推荐列表;
步骤b3、根据所述历史用户的历史数据以及各所述***产品的信息,基于物品的协同过滤推荐算法,确定各所述***产品之间的相似度,将相似的***产品构建推荐列表,并根据所述目标用户的需求信息和历史用户的历史数据,从各所述相似的***产品的推荐列表中确定与所述目标用户的需求信息匹配的第三推荐列表。
本实施例中,结合图3所示,将目标用户的需求信息、历史用户的历史数据以及各***产品的信息,分别输入到基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法中,得到各推荐算法对应的***产品的推荐列表(即:基于内容的推荐算法对应的***产品的第一推荐列表、基于用户的协同过滤推荐算法对应的***产品的第二推荐列表、基于物品的协同过滤推荐算法对应的***产品的第三推荐列表),然后通过加权计算,得到最终为用户推荐的目标***产品。其中,目标***产品为一个或多个。
在一种可能的设计中,所述根据各所述***产品的内容特征向量,通过基于内容的推荐算法,确定各所述***产品对应的推荐列表,包括:
根据各所述***产品的内容特征向量,通过基于内容的推荐算法对应的UGC推荐模型,得到各所述***产品对应的评分;其中,所述UGC推荐模型为对热门标签加入惩罚项的推荐模型;
根据各所述***产品的内容特征向量,计算不同***产品之间的相似度;
根据各所述***产品对应的评分和不同***产品之间的相似度,确定各所述***产品对应的推荐列表,所述各所述***产品对应的推荐列表中包括基于评分排序后的各***产品的信息。
本实施例中,存储数据时选择使用mongoDB数据库。同时也将数据一并加载到elasticsearch搜索服务器当中,通过此项服务可以实现键入***产品时的相关性推荐。
具体地,本申请所要实现的基于内容的推荐算法,可以将***产品中的产品名称、卡片品牌、卡片有效期等等作为每一个卡产品的特征内容来进行处理,由于将这部分内容直接转换为评分的难度较大,因此,采用TF-IDF模型来获取每个***产品的内容特征向量,通过该模型能够修正基于内容的推荐算法(比如,基于UGC推荐)中经常遇到的热门标签霸榜问题。
基于UGC的推荐算法,首先对每一个用户经常用到的标签进行初步统计,然后,对于得到的每一个标签,去计算拥有该标签次数最多的物品,最后进行用户物品匹配,将最具该用户常用标签的物品推荐给该用户,在该算法中,某一用户U对于物品A的评分公式如下所示:
从该公式可以看出,通过这种方法所计算出的评分会倾向于给那些更加热门的标签更大的权重,若是某一热门物品被打了较多的热门标签,便会大量出现在用户的推荐列表中,从而降低推荐列表的新颖度。而上述所提到的TF-IDF模型,则能较好地解决这个问题,因为其公式中的IDF项会对热门标签进行一定的惩罚,其中词频则对应着某一标签在物品所有标签中出现的频率,逆文档频率则对应着该标签在其他物品标签集合中所普遍出现的频率,在UGC推荐模型的基础上,引入了TF-IDF模型,实现在对热门标签加入一定的惩罚项后,其评分公式如下所示:
其中,nu,x表示用户U打出标签x的次数,nA,x表示卡产品A被打标签x的次数,表示特定标签x被多少个用户使用过,/>表示物品A(这里指***产品A,下述不再赘述)总共被多少不同用户打上过标签,通过这两项的加入便分别完成了对热门标签以及热门物品的惩罚。使用TF模型将所要提取的内容特征进行分割向量化处理,随后将分割好的类型列按照词频进行统计,而后便会获得许多稀疏向量,每个稀疏向量又由三部分组成,分别是划分的向量维度、特征向量中每个标签所对应的位置以及其出现频率,随后使用IDF模型对所获得的数据进行训练,便能评价出特征向量中每一纬度所能代表出该卡产品的强度,并以追加的features列来进行显示。
然后,需要计算各卡(这里指***,下述不再赘述)产品之间的相似度,从而能够针对单个卡产品获取推荐列表,不同卡产品之间的相似度可以通过余弦相似度来刻画,其计算公式如下:
其中,A和B表示两个卡产品,tAi表示卡产品A的特征向量中的每一项,tBi表示卡产品B的特征向量中的每一项。
在将所有***产品做笛卡尔积并且获得一张评分矩阵后,便可通过余弦相似度公式,将所有卡产品的相似度两两计算出来,最后按照评分高低降序填入到每一个卡产品的推荐列表中(其中,一个卡产品对应一个推荐列表)。
在一种可能的设计中,所述根据所述历史用户的历史数据以及各所述***产品的信息,通过基于用户的协同过滤推荐算法,确定为所述历史用户推荐的***产品对应的推荐列表,包括:
根据所述历史用户的历史数据以及各所述***产品的信息,通过基于用户的协同过滤推荐算法,确定所述历史用户之间的相似度;
根据所述历史用户之间的相似度和所述历史用户的历史数据中使用的***产品的信息,确定为所述历史用户推荐的***产品对应的推荐列表。
在一种可能的设计中,所述将相似的***产品构建推荐列表,包括:
根据所述历史用户的历史数据以及各所述***产品的信息,从存储在Redis缓存数据库中获取预设时间段内的评分数据,所述评分数据用于表示对用户对***产品的评分数据;
根据各所述***产品的评分数据,对相似***产品构建推荐列表;其中,各所述***产品的推荐列表中包括基于所述评分数据排序后的与所述***产品相似的其他***产品的信息。
具体地,基于隐语义模型的协同过滤推荐算法(可以包括基于用户的协同过滤推荐算法和基于物品的协同过滤推荐算法;目标是为了得到用户或产品对应的特征向量矩阵,然后计算相似度),需要用到ALS算法对评分表(一个卡产品对应一个评分,多个卡产品的评分形成评分表)所构建的评分矩阵进行矩阵分解,从而获得两个特征矩阵P和Q,而这两个特征矩阵则隐含着用户以及卡产品的特征。获得这两个矩阵的步骤如下:
(1)通过伪随机数为矩阵Q赋予一个初始值Q0。
(2)将矩阵Q0的值固定不动,解出矩阵P0的值。
(3)固定住矩阵P0的值,进而解出矩阵Q1的值。
(4)将矩阵Q1的值固定不动,解出矩阵P1的值。
(5)重复(2)到(4)步。
(6)直到误差值满足了阈值条件,或者迭代次数到达上限值。
假若以将矩阵Q固定不动,获取矩阵P的值为例,在进行求解操作时的过程分为以下几步,首先对于用户特征矩阵P来说,每一个用户U的特征向量PU都是独立的,其所获取的值与其余用户的特征向量并无关系,因此可以对每一个特征向量PU进行单独求解,则优化目标可转换为如下公式:
其中,RUi表示评分矩阵当中用户U对于某一卡产品i的评分,PU表示用户U的特征向量,Qi表示卡产品i的特征向量。
设公式的后半段为LU(PU),则下一步的任务就是求取一个用户的特征向量PU,能够使得LU(PU)取得最小值,通过LU(PU)对PU求偏导,可以得到如下公式:
/>
令偏导为0,则可进一步得到以下公式:
由于PU与Qi相乘得到的是一个数字,因此可以将其顺序转置后交换,进而能够将PU的转置矩阵提取出来,所得到的公式如下所示:
其中,Qi代表的是卡产品的特征向量,实际上将卡产品特征矩阵按照列拆分后得到的就是上式中的Qi求和累加部分,将其还原为Q,并在PU的转置矩阵左方乘上其原有矩阵的逆矩阵,便可得到用户特征向量PU的最终表达式:
通过上述步骤每次都可求解出一个PU,最终将所求的PU都合并起来,便可以获得用户特征矩阵P。
下述可以计算得到卡产品特征矩阵Q:将所获得的矩阵P固定,重复上述步骤获取卡产品特征矩阵Q的值,在迭代次数到达上限后便分别获得了用户特征矩阵P以及***特征矩阵Q。而在使用ALS模型时,为使最终取得的误差最小,需要进行参数的调整,本申请中将均方根误差(RMSE)作为考察预测评分和其实际评分之间的误差考量,其公式如下所示:
其中,均方根误差(RMSE)公式是用来对推荐***进行评判的模型,truei表示用户对某一***产品(这里指卡产品i)的实际评分,predicti表示通过该推荐***进行预测评分。
在得到为每个用户推荐的***产品列表的同时,也会得到***特征矩阵Q,基于此矩阵Q可以一并将不同卡产品的相似度计算出来,与上述基于内容的推荐算法中计算相似度的方式相同,采用余弦相似度来作为两个卡产品之间比较的标准,从而便可提前为下述中将要提及的改进的基于物品的协同过滤实时推荐算法铺垫好所需数据。改进的基于物品的协同过滤实时推荐算法会用到Kafka服务、Redis缓存数据库以及基于物品的协同过滤推荐技术。
其中,在此之前已将不同卡产品相似度矩阵通过基于隐语义模型的协同过滤推荐算法计算得出,此处便可根据用户的近几次评分对原有的基于物品的协同过滤推荐算法加以改进。改进思路则是考虑到用户近期对于某些卡产品的评分以及消费习惯,将存储在Redis缓存数据库当中的近期评分数据融合到基于物品的协同过滤推荐算法中,从而获得一个新的推荐列表。为保证算法完成后测试数据时的真实可靠性,将原ratings表中ID为1的用户的评分提前存入Redis缓存数据库,当收到来自Kafka的实时评分消息流后,首先将其按照分隔符划分并完成数据类型的转换,接下来便围绕以下公式展开:
其中,q表示用户对于某卡产品进行评分后,与该卡产品最为相似的推荐列表,也就是直接基于物品的协同过滤推荐算法所获取的推荐结果,r则是用户最近K次评价的卡产品,sim(q,r)会使用余弦相似度来获取卡产品q和卡产品r的相似程度,而Rr则代表着用户对于卡产品r的评分,sim_sum是相似度符合所设定阈值的卡产品个数,最后的两项lg(max{strong,1}和lg(max{weak,1}分别代表着奖励项和惩罚项,会在用户的爱好出现明显倾向时起到作用。
然后,第一步便是通过连接Redis,获取用户最近的K次评分,然后通过上述算法获取当前评分卡产品的推荐列表,但在此处需额外读入ratings表以寻找用户已经评分过的卡产品,并将其从备选列表中排除以防给用户推荐相同的结果,至此便可通过代码计算出公式的第一项,即初始得分,通过循环将获取的卡产品推荐列表中的每一部和近K次评分的每一部逐一匹配计算相似度,并乘上用户对于当前循环到的曾评分卡产品的评价分数,最后将相似度满足阈值条件的项相加求平均数。处理过后,若是待推荐卡产品与用户某次评分很高的卡产品相似程度也很高,其优先级则会有明显提升,而若是与用户某次评分很低的卡产品相似程度高,则其所获取的分数便会下降。后两项作为惩罚奖励项会在用户的爱好出现明显偏向时产生作用,例如将评分大于4分设定为尤其偏好,评分小于2分设定为极度厌恶,当读取到近K次评分中有符合这两个设定的评分数据时,便会对推荐优先级产生明显影响,但为防止其影响过度,选取log函数以放慢其增长趋势。
最后将上述三个推荐算法的推荐结果进行一定比例的混合,得到最终为用户推荐的目标***产品,能够保证推荐的准确性,同时满足用户的个性化需求,进而提高用户体验。在一种可能的设计中,所述方法还包括:
获取所述目标用户对推荐的目标***产品的反馈信息;所述反馈信息至少包括对推荐结果的评分数据;
根据所述反馈信息,优化推荐模型,所述推荐模型是由基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法中的至少两项确定的。
本实施例中,在为用户推荐目标***产品之后,可以获取用户对该次推荐结果的评分数据,基于该评分数据可以不断地优化相应的推荐模型,以提高推荐的准确性。
本申请,通过提取***产品名称、卡片品牌、卡片有效期等等作为每一个卡产品的特征内容来进行处理,从多个维度对每一个产品进行了刻画,能够较好地用数据模型将其表示出来。通过融合了各种不同的推荐算法,能够改善某些算法的不足并用其他算法的优点加以点缀和补偿,并通过收集用户近期的评分来增强***推荐的实时性。
因此,通过融入了各种不同维度的内容特征向量,并加之TF-IDF模型,解决了热门标签霸榜的问题,并且能够从多个维度去全面的描绘一个卡产品。结合了基于物品的协同过滤推荐算法和基于用户的协同过滤推荐算法,一定程度上保证了推荐的多样性和新颖性,并且拥有更好的实时性和可扩展性。通过用户的近几次评分数据对整个推荐模型进行了一定程度的优化,从而确保推荐的卡产品拥有较强的实时性。
为了实现所述***推荐方法,本实施例提供了一种***推荐装置。参见图4,图4为本申请实施例提供的***推荐装置的结构示意图;***推荐装置40,包括:
获取模块,用于获取目标用户的需求信息、历史用户的历史数据以及各***产品的信息;
推荐模块401,用于根据所述目标用户的需求信息、历史用户的历史数据以及各***产品的信息,分别通过基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法,确定基于内容的推荐算法对应的***产品的第一推荐列表、基于用户的协同过滤推荐算法对应的***产品的第二推荐列表、基于物品的协同过滤推荐算法对应的***产品的第三推荐列表;
推荐模块402,还用于基于所述目标用户的需求信息,通过所述第一推荐列表、第二推荐列表以及第三推荐列表,确定为所述目标用户推荐的目标***产品。
本实施例中,通过设置获取模块401和推荐模块402,用于通过获取用户的需求信息,结合不同的推荐算法,综合分析用户的需求,为用户推荐一款或多款适合用户或用户喜欢的***产品,适用于不同用户的不同需求下的多样化场景,能够准确地为用户推荐匹配的***产品,同时满足用户的个性化需求,进而提高用户体验。
本实施例提供的装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
在一种可能的设计中,所述历史数据包括历史用户的需求信息、使用的***产品的信息以及对***产品的评价信息;所述推荐模块,包括:
第一推荐单元,用于根据各所述***产品的信息,通过TF-IDF模型,得到各所述***产品的内容特征向量,并根据各所述***产品的内容特征向量,通过基于内容的推荐算法,确定各所述***产品对应的推荐列表,根据所述目标用户的需求信息和历史用户的历史数据,从各所述***产品对应的推荐列表中确定与所述目标用户的需求信息匹配的第一推荐列表;
第二推荐单元,用于根据所述历史用户的历史数据以及各所述***产品的信息,通过基于用户的协同过滤推荐算法,确定为所述历史用户推荐的***产品对应的推荐列表,根据所述目标用户的需求信息和历史用户的历史数据,从为所述历史用户推荐的***产品对应的推荐列表中确定与所述目标用户的需求信息匹配的第二推荐列表;
第三推荐单元,用于根据所述历史用户的历史数据以及各所述***产品的信息,基于物品的协同过滤推荐算法,确定各所述***产品之间的相似度,将相似的***产品构建推荐列表,并根据所述目标用户的需求信息和历史用户的历史数据,从各所述相似的***产品的推荐列表中确定与所述目标用户的需求信息匹配的第三推荐列表。
在一种可能的设计中,所述第一推荐单元,具体用于:
根据各所述***产品的内容特征向量,通过基于内容的推荐算法对应的UGC推荐模型,得到各所述***产品对应的评分;其中,所述UGC推荐模型为对热门标签加入惩罚项的推荐模型;
根据各所述***产品的内容特征向量,计算不同***产品之间的相似度;
根据各所述***产品对应的评分和不同***产品之间的相似度,确定各所述***产品对应的推荐列表,所述各所述***产品对应的推荐列表中包括基于评分排序后的各***产品的信息。
在一种可能的设计中,所述第二推荐单元,具体用于:
根据所述历史用户的历史数据以及各所述***产品的信息,通过基于用户的协同过滤推荐算法,确定所述历史用户之间的相似度;
根据所述历史用户之间的相似度和所述历史用户的历史数据中使用的***产品的信息,确定为所述历史用户推荐的***产品对应的推荐列表。
在一种可能的设计中,所述第三推荐单元,具体用于:
根据所述历史用户的历史数据以及各所述***产品的信息,从存储在Redis缓存数据库中获取预设时间段内的评分数据,所述评分数据用于表示对用户对***产品的评分数据;
根据各所述***产品的评分数据,对相似***产品构建推荐列表;其中,各所述***产品的推荐列表中包括基于所述评分数据排序后的与所述***产品相似的其他***产品的信息。
在一种可能的设计中,所述推荐模块,还具体用于:
根据所述目标用户的需求信息,确定当前业务场景下,所述第一推荐列表、所述第二推荐列表以及所述第三推荐列表分别对应的权重;
根据所述第一推荐列表、所述第二推荐列表以及所述第三推荐列表分别对应的权重,确定为所述目标用户推荐的目标***产品;
相应的,所述装置还包括:更新模块;更新模块,用于:
获取所述目标用户对推荐的目标***产品的反馈信息;所述反馈信息至少包括对推荐结果的评分数据;
根据所述反馈信息,优化推荐模型,所述推荐模型是由基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法中的至少两项确定的。
为了实现所述***推荐方法,本实施例提供了一种电子设备。图5为本申请实施例提供的电子设备的结构示意图。如图5所示,本实施例的电子设备50包括:至少一个处理器501以及存储器502;其中,存储器502,用于存储计算机执行指令;至少一个处理器501,用于执行存储器存储的计算机执行指令,以实现上述实施例中所执行的各个步骤。具体可以参见前述方法实施例中的相关描述。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上所述的***推荐方法。
本申请实施例还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上所述的***推荐方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述模块成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例所述方法的部分步骤。应理解,上述处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application SpecificIntegrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(PeripheralComponent,PCI)总线或扩展工业标准体系结构(Extended Industry StandardArchitecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(Application Specific Integrated Circuits,简称:ASIC)中。当然,处理器和存储介质也可以作为分立组件存在于电子设备或主控设备中。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (10)

1.一种***推荐方法,其特征在于,所述方法包括:
获取目标用户的需求信息、历史用户的历史数据以及各***产品的信息;
根据所述目标用户的需求信息、历史用户的历史数据以及各***产品的信息,分别通过基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法,确定基于内容的推荐算法对应的***产品的第一推荐列表、基于用户的协同过滤推荐算法对应的***产品的第二推荐列表、基于物品的协同过滤推荐算法对应的***产品的第三推荐列表;
基于所述目标用户的需求信息,通过所述第一推荐列表、第二推荐列表以及第三推荐列表,确定为所述目标用户推荐的目标***产品。
2.根据权利要求1所述的方法,其特征在于,所述历史数据包括历史用户的需求信息、使用的***产品的信息以及对***产品的评价信息;所述根据所述目标用户的需求信息、历史用户的历史数据以及各***产品的信息,分别通过基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法,确定基于内容的推荐算法对应的***产品的第一推荐列表、基于用户的协同过滤推荐算法对应的***产品的第二推荐列表、基于物品的协同过滤推荐算法对应的***产品的第三推荐列表,包括:
根据各所述***产品的信息,通过TF-IDF模型,得到各所述***产品的内容特征向量,并根据各所述***产品的内容特征向量,通过基于内容的推荐算法,确定各所述***产品对应的推荐列表,根据所述目标用户的需求信息和历史用户的历史数据,从各所述***产品对应的推荐列表中确定与所述目标用户的需求信息匹配的第一推荐列表;
根据所述历史用户的历史数据以及各所述***产品的信息,通过基于用户的协同过滤推荐算法,确定为所述历史用户推荐的***产品对应的推荐列表,根据所述目标用户的需求信息和历史用户的历史数据,从为所述历史用户推荐的***产品对应的推荐列表中确定与所述目标用户的需求信息匹配的第二推荐列表;
根据所述历史用户的历史数据以及各所述***产品的信息,基于物品的协同过滤推荐算法,确定各所述***产品之间的相似度,将相似的***产品构建推荐列表,并根据所述目标用户的需求信息和历史用户的历史数据,从各所述相似的***产品的推荐列表中确定与所述目标用户的需求信息匹配的第三推荐列表。
3.根据权利要求2所述的方法,其特征在于,所述根据各所述***产品的内容特征向量,通过基于内容的推荐算法,确定各所述***产品对应的推荐列表,包括:
根据各所述***产品的内容特征向量,通过基于内容的推荐算法对应的UGC推荐模型,得到各所述***产品对应的评分;其中,所述UGC推荐模型为对热门标签加入惩罚项的推荐模型;
根据各所述***产品的内容特征向量,计算不同***产品之间的相似度;
根据各所述***产品对应的评分和不同***产品之间的相似度,确定各所述***产品对应的推荐列表,所述各所述***产品对应的推荐列表中包括基于评分排序后的各***产品的信息。
4.根据权利要求2所述的方法,其特征在于,所述根据所述历史用户的历史数据以及各所述***产品的信息,通过基于用户的协同过滤推荐算法,确定为所述历史用户推荐的***产品对应的推荐列表,包括:
根据所述历史用户的历史数据以及各所述***产品的信息,通过基于用户的协同过滤推荐算法,确定所述历史用户之间的相似度;
根据所述历史用户之间的相似度和所述历史用户的历史数据中使用的***产品的信息以及对***产品的评价信息,确定为所述历史用户推荐的***产品对应的推荐列表。
5.根据权利要求4所述的方法,其特征在于,所述将相似的***产品构建推荐列表,包括:
根据所述历史用户的历史数据以及各所述***产品的信息,从存储在Redis缓存数据库中获取预设时间段内的评分数据,所述评分数据用于表示对用户对***产品的评分数据;
根据各所述***产品的评分数据,对相似***产品构建推荐列表;其中,各所述***产品的推荐列表中包括基于所述评分数据排序后的与所述***产品相似的其他***产品的信息。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述基于所述目标用户的需求信息,通过所述第一推荐列表、第二推荐列表以及第三推荐列表,确定为所述目标用户推荐的目标***产品,包括:
根据所述目标用户的需求信息,确定当前业务场景下,所述第一推荐列表、所述第二推荐列表以及所述第三推荐列表分别对应的权重;
根据所述第一推荐列表、所述第二推荐列表以及所述第三推荐列表分别对应的权重,确定为所述目标用户推荐的目标***产品;
相应的,所述方法还包括:
获取所述目标用户对推荐的目标***产品的反馈信息;所述反馈信息至少包括对推荐结果的评分数据;
根据所述反馈信息,优化推荐模型,所述推荐模型是由基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法中的至少两项确定的。
7.一种***推荐装置,其特征在于,所述装置包括:
获取模块,用于获取目标用户的需求信息、历史用户的历史数据以及各***产品的信息;
推荐模块,用于根据所述目标用户的需求信息、历史用户的历史数据以及各***产品的信息,分别通过基于内容的推荐算法、基于用户的协同过滤推荐算法以及基于物品的协同过滤推荐算法,确定基于内容的推荐算法对应的***产品的第一推荐列表、基于用户的协同过滤推荐算法对应的***产品的第二推荐列表、基于物品的协同过滤推荐算法对应的***产品的第三推荐列表;
推荐模块,还用于基于所述目标用户的需求信息,通过所述第一推荐列表、第二推荐列表以及第三推荐列表,确定为所述目标用户推荐的目标***产品。
8.一种电子设备,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1至6任一项所述的***推荐方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至6任一项所述的***推荐方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至6任一项所述的***推荐方法。
CN202311651204.7A 2023-12-04 2023-12-04 ***推荐方法、装置、设备、存储介质及程序产品 Pending CN117593089A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311651204.7A CN117593089A (zh) 2023-12-04 2023-12-04 ***推荐方法、装置、设备、存储介质及程序产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311651204.7A CN117593089A (zh) 2023-12-04 2023-12-04 ***推荐方法、装置、设备、存储介质及程序产品

Publications (1)

Publication Number Publication Date
CN117593089A true CN117593089A (zh) 2024-02-23

Family

ID=89911381

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311651204.7A Pending CN117593089A (zh) 2023-12-04 2023-12-04 ***推荐方法、装置、设备、存储介质及程序产品

Country Status (1)

Country Link
CN (1) CN117593089A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117830046A (zh) * 2024-03-06 2024-04-05 长春电子科技学院 一种基于互联网的在线课程数据云管理***

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117830046A (zh) * 2024-03-06 2024-04-05 长春电子科技学院 一种基于互联网的在线课程数据云管理***
CN117830046B (zh) * 2024-03-06 2024-05-07 长春电子科技学院 一种基于互联网的在线课程数据云管理***

Similar Documents

Publication Publication Date Title
CN105224699B (zh) 一种新闻推荐方法及装置
Chen et al. AR-miner: mining informative reviews for developers from mobile app marketplace
CN103914478B (zh) 网页训练方法及***、网页预测方法及***
CN108885624B (zh) 信息推荐***及方法
CN104978314B (zh) 媒体内容推荐方法及装置
CN110334356B (zh) 文章质量的确定方法、文章筛选方法、以及相应的装置
CN111461841A (zh) 物品推荐方法、装置、服务器及存储介质
CN110929166A (zh) 一种内容推荐的方法、电子设备和存储介质
KR20210047229A (ko) 구매 우선순위와 상품 리뷰 감성분석을 반영한 상품 추천 시스템 및 방법
CN109325146A (zh) 一种视频推荐方法、装置、存储介质和服务器
CN111506831A (zh) 一种协同过滤的推荐模块、方法、电子设备及存储介质
CN112862567B (zh) 一种在线展会的展品推荐方法与***
CN101211368B (zh) 一种对查询词分类的方法、装置及搜索引擎***
CN117593089A (zh) ***推荐方法、装置、设备、存储介质及程序产品
Wang et al. CROWN: a context-aware recommender for web news
Wang et al. Research on hybrid collaborative filtering recommendation algorithm based on the time effect and sentiment analysis
CN113672793A (zh) 一种信息召回方法、装置、电子设备及存储介质
CN113204953A (zh) 基于语义识别的文本匹配方法、设备及设备可读存储介质
CN112182351A (zh) 一种基于多特征融合的新闻推荐方法及装置
CN113961823B (zh) 新闻推荐方法、***、存储介质及设备
CN115062151A (zh) 一种文本特征提取方法、文本分类方法及可读存储介质
Wei et al. Online education recommendation model based on user behavior data analysis
CN111737607B (zh) 数据处理方法、装置、电子设备以及存储介质
CN113392329A (zh) 内容推荐方法、装置、电子设备及存储介质
Kim et al. Product recommendation system based user purchase criteria and product reviews

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