CN111931075B - 一种内容推荐方法、装置、计算机设备及存储介质 - Google Patents
一种内容推荐方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111931075B CN111931075B CN202011114847.4A CN202011114847A CN111931075B CN 111931075 B CN111931075 B CN 111931075B CN 202011114847 A CN202011114847 A CN 202011114847A CN 111931075 B CN111931075 B CN 111931075B
- Authority
- CN
- China
- Prior art keywords
- scoring matrix
- content
- user
- model
- scoring
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种内容推荐方法、装置、计算机设备及存储介质,属于大数据技术领域。方法包括:根据第一模型对多个用户的第一用户特征进行预测,得到第一预测信息;根据第一预测信息,确定第一评分矩阵,第一评分矩阵中的一个元素表示一个用户对一个待推荐内容的评分所属的等级;响应于第一评分矩阵存在缺失数据,基于第二模型对第一评分矩阵进行填充;根据填充后的第一评分矩阵,向多个用户分别推荐至少一个待推荐内容。上述技术方案,能够使得用户未接触过的内容也具有评分所属的等级,从而基于填充后的评分矩阵,即可向用户推荐接触过或者未接触过的内容,实现内容的有效推荐,提高了推荐的准确率。
Description
技术领域
本申请涉及大数据技术领域,特别涉及一种内容推荐方法、装置、计算机设备及存储介质。
背景技术
随着互联网技术的发展,用户能够通过互联网享受多种服务。相应的,服务提供商能够通过推荐***,向用户推荐其感兴趣的内容,如商品、游戏以及礼券等。因此,如何精准的向用户进行推荐,是需要解决的问题。
目前,在对用户进行内容推荐时,能够通过基于深度学习的推荐算法对用户特征进行多层训练,得到嵌入式特征,基于该嵌入式特征训练得到推荐模型,通过该推荐模型来向用户进行内容推荐。基于深度学习的推荐算法的推荐效果有较大的提升,同时在处理大规模特征处理上也存在明显优势。
然而,基于深度学习的推荐算法重点在于如何更好的处理特征信息,对于新内容,即用户未接触过的内容,该推荐算法不能进行有效的推荐,导致推荐的准确率较低。
发明内容
本申请实施例提供了一种内容推荐方法、装置、计算机设备及存储介质,能够使得用户未接触过的内容也具有评分所属的等级,从而基于填充后的评分矩阵,即可向用户推荐接触过或者未接触过的内容,实现内容的有效推荐,提高了推荐的准确率。所述技术方案如下。
一方面,提供了一种内容推荐方法,所述方法包括:
根据第一模型对多个用户的第一用户特征进行预测,得到第一预测信息,所述第一预测信息用于指示所述多个用户对待推荐内容感兴趣的概率;
根据所述第一预测信息,确定第一评分矩阵,所述第一评分矩阵中的一个元素表示一个用户对一个待推荐内容的评分所属的等级;
响应于所述第一评分矩阵存在缺失数据,基于第二模型对所述第一评分矩阵进行填充;
根据填充后的所述第一评分矩阵,向所述多个用户分别推荐至少一个待推荐内容。
另一方面,提供了一种内容推荐装置,其特征在于,所述装置包括:
预测模块,用于根据第一模型对多个用户的第一用户特征进行预测,得到第一预测信息,所述第一预测信息用于指示所述多个用户对待推荐内容感兴趣的概率;
确定模块,用于根据所述第一预测信息,确定第一评分矩阵,所述第一评分矩阵中的一个元素表示一个用户对一个待推荐内容的评分所属的等级;
填充模块,用于响应于所述第一评分矩阵存在缺失数据,基于第二模型对所述第一评分矩阵进行填充;
内容推荐模块,用于根据填充后的所述第一评分矩阵,向所述多个用户分别推荐至少一个待推荐内容。
在一种可选的实现方式中,所述确定模块,用于将所述第一预测信息中的多个概率转换为多个评分,所述多个评分为正整数;根据所述多个评分,确定多个评分区间,其中,一个评分区间对应一个等级;根据所述多个评分所属的等级,确定所述第一评分矩阵。
在一种可选的实现方式中,所述填充模块,用于响应于所述第一评分矩阵存在缺失数据,基于所述第二模型对所述第一评分矩阵进行矩阵分解,得到用于表示用户的用户评分矩阵和用于表示内容的内容评分矩阵;获取所述用户评分矩阵和所述内容评分矩阵的内积,将所述内积作为所述填充后的所述第一评分矩阵。
在一种可选的实现方式中,所述内容推荐模块,用于对于任一用户,根据所述填充后的所述第一评分矩阵,获取所述用户对应的多个评分所属的等级;根据所述多个评分所属的等级进行排序,确定至少一个评分;
向所述用户推荐所述至少一个评分对应的待推荐内容。
在一种可选的实现方式中,所述第一模型的训练步骤包括:
基于训练样本对第一原始模型进行训练;
基于训练得到的模型对测试样本进行预测,得到第二预测信息,所述测试样本包多个样本用户的第二用户特征和所属的用户标签,所述第二预测信息用于指示所述多个样本用户对样本内容感兴趣的概率;
响应于所述第二预测信息满足测评指标,将所述训练得到的模型确定为所述第一模型。
在一种可选的实现方式中,所述装置还包括:
数据获取模块,用于获取样本数据集,所述样本数据集包括用户特征、内容特征以及样本用户所属的用户标签;
数据划分模块,用于按照目标比例将所述样本数据集划分为所述训练样本和所述测试样本。
在一种可选的实现方式中,所述第二模型的训练步骤包括:
获取基于所述第一模型对训练样本进行预测得到的第三预测信息;
根据所述第三预测信息,确定第二评分矩阵,所述第二评分矩阵中的一个元素表示一个样本用户对一个样本内容的评分所属的等级;
根据协同过滤算法对所述第二评分矩阵进行填充;
根据所述第二评分矩阵填充前后的误差作为损失函数,训练得到所述第二模型。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器用于存储至少一段程序代码,所述至少一段程序代码由所述处理器加载并执行以实现本申请实施例中的内容推荐方法中所执行的操作。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一段程序代码,所述至少一段程序代码由处理器加载并执行以实现如本申请实施例中内容推荐方法中所执行的操作。
另一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该计算机设备执行上述各方面或者各方面的各种可选实现方式中提供的内容推荐方法。
本申请实施例提供的技术方案带来的有益效果是:
本申请实施例提供了一种内容推荐方法,通过第一模型基于用户特征进行预测,来初步确定用户对待推荐内容感兴趣的概率,然后基于该概率构造评分矩阵,从而基于该评分矩阵能够确定每个用户对每个内容的评分所属的等级,由于用户未接触过的内容在评分矩阵中为缺失数据,则通过第二模型对该评分矩阵进行填充,使得用户未接触过的内容也具有评分所属的等级,从而基于填充后的评分矩阵,即可向用户推荐接触过或者未接触过的内容,实现内容的有效推荐,提高了推荐的准确率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本申请实施例提供的内容推荐方法的实施环境示意图;
图2是根据本申请实施例提供的一种内容推荐方法的流程图;
图3是根据本申请实施例提供的另一种内容推荐方法的流程图;
图4是根据本申请实施例提供的一种内容推荐方法的架构示意图;
图5是根据本申请实施例提供的另一种内容推荐方法的流程图;
图6是根据本申请实施例提供的一种内容推荐装置的框图;
图7是根据本申请实施例提供的一种终端的结构框图;
图8是根据本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
下面简单介绍一下本申请实施例可能用到的技术。
机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
大数据(Big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。随着云时代的来临,大数据也吸引了越来越多的关注,大数据需要特殊的技术,以有效地处理大量的容忍经过时间内的数据。适用于大数据的技术,包括大规模并行处理数据库、数据挖掘、分布式文件***、分布式数据库、云计算平台、互联网和可扩展的存储***。本申请实施例基于大数据能够获取用户的用户特征以及待推荐内容的内容特征。
奇异值分解(Singular Value Decomposition,SVD)是线性代数中一种重要的矩阵分解,奇异值分解则是特征分解在任意矩阵上的推广。在信号处理、统计学等领域有重要应用。
PCA(principal components analysis),即主成分分析技术,又称主分量分析技术,旨在利用降维的思想,把多指标转化为少数几个综合指标。
One-Hot编码,又称为一位有效编码,主要是采用N位状态寄存器来对N个状态进行编码,每个状态都由他独立的寄存器位,并且在任意时候只有一位有效。One-Hot编码是分类变量作为二进制向量的表示。这首先要求将分类值映射到整数值。然后,每个整数值被表示为二进制向量,除了整数的索引之外,它都是零值,它被标记为1。
CTR(Click-Through-Rate)即点击通过率,是互联网广告常用的术语,指网络广告(图片广告/文字广告/关键词广告/排名广告/视频广告等)的点击到达率,即该广告的实际点击次数(严格的来说,可以是到达目标页面的数量)除以广告的展现量(Show content)。
ARPU(Average Revenue Per User)一般指每用户平均收入。运营商用来测定其取自每个最终用户的收入的一个指标。但并不反映最终的利润率。
AUC(Area Under Curve)被定义为ROC曲线下与坐标轴围成的面积,显然这个面积的数值不会大于1。又由于ROC曲线一般都处于y=x这条直线的上方,所以AUC的取值范围在0.5和1之间。AUC越接近1.0,检测方法真实性越高;等于0.5时,则真实性最低,无应用价值。
以下,介绍本申请实施例提供的内容推荐方法的实施环境。图1是根据本申请实施例提供的内容推荐方法的实施环境示意图。参见图1,该实施环境包括终端101和服务器102。
终端101和服务器102能够通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
可选的,终端101是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端101安装和运行有支持内容推荐的应用程序。该应用程序可以是购物类应用程序、资讯类应用程序、社交通信类应用程序、游戏类应用程序以及应用市场类应用程序中的任意一种。示意性的,终端101是用户使用的终端,该终端登录有用户的用户账号。
可选的,服务器102是独立的物理服务器,也能够是多个物理服务器构成的服务器集群或者分布式***,还能够是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)以及大数据和人工智能平台等基础云计算服务的云服务器。服务器102用于为支持内容推荐的应用程序提供后台服务。
可选地,在实现内容推荐的过程中,服务器102承担主要内容推荐工作,终端101承担次要内容推荐工作;或者,服务器102承担次要内容推荐工作,终端101承担主要内容推荐工作;或者,服务器102和终端101二者之间采用分布式计算架构进行协同的内容推荐。
可选的,服务器102包括:接入服务器、内容推荐服务器和数据库。接入服务器用于提供终端的接入服务。内容推荐服务器用于提供应用程序的后台服务。内容推荐服务器可以是一台或多台。当内容推荐服务器是多台时,存在至少两台内容推荐服务器用于提供不同的服务,和/或,存在至少两台内容推荐服务器用于提供相同的服务,比如以负载均衡方式提供同一种服务,本申请实施例对此不加以限定。内容推荐服务器能够设置有预测模型和协同过滤模型,该预测模型用于预测用户对待推荐内容感兴趣的概率,该协同过滤模型用于对具有缺失数据的评分矩阵进行填充。数据库用于存储用户特征、内容特征、用户标签、预测模型以及协同过滤模型等数据。
可选的,终端101泛指多个终端中的一个,本实施例仅以终端101来举例说明。本领域技术人员能够知晓,上述终端101的数量能够更多。比如上述终端101为几十个或几百个,或者更多数量,此时上述内容推荐方法的实施环境还包括其他终端。本申请实施例对终端的数量和设备类型不加以限定。
可选的,上述的无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网、但也能够是任何网络,包括但不限于局域网(Local Area Network, LAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合)。在一些实施例中,使用包括超文本标记语言(Hyper Text Mark-up Language,HTML)、可扩展标记语言(Extensible MarkupLanguage,XML)等的技术和/或格式来代表通过网络交换的数据。此外还能够使用诸如安全套接字层(Secure Socket Layer,SSL)、传输层安全(Transport Layer Security,TLS)、虚拟专用网络(Virtual Private Network,VPN)、网际协议安全(Internet ProtocolSecurity,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还能够使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
图2是根据本申请实施例提供的一种内容推荐方法的流程图,如图2所示,在本申请实施例中以应用于服务器为例进行说明。该内容推荐方法包括以下步骤。
201、服务器根据第一模型对多个用户的第一用户特征进行预测,得到第一预测信息,该第一预测信息用于指示该多个用户对待推荐内容感兴趣的概率。
在本申请实施例中,第一模型能够用于预测用户对待推荐内容感兴趣的概率,该待推荐内容对应的概率越大,表示用户越对该待推荐内容感兴趣可能性越高。该第一用户特征为多个用户在第一时间段内的特征,本申请实施例对该第一时间段不进行具体限制。该第一模型由服务器根据该多个用户在第二时间段内的第二用户特征训练得到,该第二时间段为上述第一时间段之前的时间段。
202、服务器根据该第一预测信息,确定第一评分矩阵,该第一评分矩阵中的一个元素表示一个用户对一个待推荐内容的评分所属的等级。
在本申请实施例中,服务器在得到上述第一预测信息之后,能够将每个用户对每个待推荐内容感兴趣的概率,转换每个用户对每个待推荐内容的评分,该评分为正整数,然后服务器能够对该评分划分等级,从而确定个用户对每个待推荐内容的评分所属的等级,最后服务器能够基于该等级构造第一评分矩阵。
203、响应于该第一评分矩阵存在缺失数据,服务器基于第二模型对该第一评分矩阵进行填充。
在本申请实施例中,对于任一待推荐内容,如果用户从未接触过该待推荐内容,如新推出的产品、新上线的游戏以及新推出的会员服务等,则第一模型不能预测该用户对该待推荐内容感兴趣的概率,即用户对该待推荐内容感兴趣的概率缺失,从而该第一评分矩阵中,用户对该待推荐内容的评分所属的等级也缺失。服务器能够基于第二模型对该第一评分矩阵进行协同过滤,从而实现对该第一评分矩阵的填充。
204、服务器根据填充后的该第一评分矩阵,向该多个用户分别推荐至少一个待推荐内容。
在本申请实施例中,服务器在得到填充后的第一评分矩阵后,能够按照评分所述的等级进行降序排列,然后选择前N个待推荐内容向用户进行个性化推荐。
本申请实施例提供了一种内容推荐方法,通过第一模型基于用户特征进行预测,来初步确定用户对待推荐内容感兴趣的概率,然后基于该概率构造评分矩阵,从而基于该评分矩阵能够确定每个用户对每个内容的评分所属的等级,由于用户未接触过的内容在评分矩阵中为缺失数据,则通过第二模型对该评分矩阵进行填充,使得用户未接触过的内容也具有评分所属的等级,从而基于填充后的评分矩阵,即可向用户推荐接触过或者未接触过的内容,实现内容的有效推荐,提高了推荐的准确率。
图3是根据本申请实施例提供的另一种内容推荐方法的流程图,如图3所示,在本申请实施例中以应用于服务器为例进行说明。该内容推荐方法包括以下步骤。
301、服务器训练第一模型,该第一模型用于基于用户特征预测用户对待推荐内容感兴趣的概率。
在本申请实施例中,该第一模型由服务器根据该多个用户在第二时间段内的第二用户特征训练得到。
在一种可选的实现方式中,服务器在训练第一模型之前,能够先获取样本数据集,该样本数据集包括用户特征、内容特征以及样本用户所属的用户标签;然后,服务器能够按照目标比例将该样本数据集划分为训练样本和测试样本。该目标比例用a表示,则训练样本:测试样本为=a:(1-a),能够训练样本和测试样本之间的比例为4:1、3:2或者1:1等,本申请实施例对此不进行限制。
例如,以第二时间段为T时期,目标比例为0.8为例,服务器能够利用该T时期的用户特征、内容特征以及用户标签来构建样本数据集,然后按照目标比例进行随机切分后,训练样本:测试样本=4:1,即按照4:1的比例随机切分训练样本和测试样本。
服务器在得到训练样本和测试样本之后,能够基于该训练样本和测试样本进行模型训练。训练得到第一模型的训练步骤包括:服务器基于训练样本对第一原始模型进行训练,然后基于训练得到的模型对测试样本进行预测,得到第二预测信息,该测试样本包多个样本用户的第二用户特征和所属的用户标签,该第二预测信息用于指示该多个样本用户对样本内容感兴趣的概率。响应于该第二预测信息满足测评指标,服务器能够将训练得到的模型确定为第一模型;响应于该第二预测信息不满足测评指标,服务器重复上述基于训练样本对第一原始模型进行训练的步骤,直到得到的第二预测信息满足测评指标。其中,该测评指标包括查全率、查准率、AUC(Area Under Curve)等指标,本申请实施例对此不进行限制。
302、服务器根据第一模型对多个用户的第一用户特征进行预测,得到第一预测信息,该第一预测信息用于指示该多个用户对待推荐内容感兴趣的概率。
在本申请实施例中,第一模型能够用于预测用户对待推荐内容感兴趣的概率,该待推荐内容对应的概率越大,表示用户越对该待推荐内容感兴趣可能性越高。该第一用户特征为多个用户在第一时间段内的特征,本申请实施例对该第一时间段不进行具体限制。该第一时间段为上述第二时间段之后的时间段。
例如,以第一时间段为T+1时期,待推荐内容为商品为例,服务器获取T+1时期多个用户的第一用户特征,将该多个用户的第一用户特征输入训练完毕的第一模型,基于该第一模型进行预测,得到各用户对各商品感兴趣的概率。
303、服务器根据该第一预测信息,确定第一评分矩阵,该第一评分矩阵中的一个元素表示一个用户对一个待推荐内容的评分所属的等级。
在本申请实施例中,服务器在得到上述第一预测信息之后,能够将每个用户对每个待推荐内容感兴趣的概率,转换每个用户对每个待推荐内容的评分,该评分为正整数,然后服务器能够对该评分划分等级,从而确定各用户对每个待推荐内容的评分所属的等级,最后服务器能够基于该等级构造第一评分矩阵。
在一种可选的实现方式中,服务器能够通过将评分划分为评分区间的方式来确定评分所属的等级。相应的,服务器能够将第一预测信息中的多个概率转换为多个评分,该多个评分为正整数。然后服务器能够根据该多个评分,确定多个评分区间,其中,一个评分区间对应一个等级。最后服务器能够根据多个评分所属的等级,确定该第一评分矩阵。其中,该评分区间能够为按照等距方式划分得到的区间,也能够为按照其他方式划分得到的区间,本申请实施例对此不进行限制。可选的,服务器能够通过将概率乘以常数c的方式将多个概率转换为多个评分。该常数c为10、100或者1000等,本申请实施例对此不进行限制。
例如,以待推荐内容为商品为例,对于第一预测信息中的每个概率,服务器均将该概率乘以常数c,然后按照等距划分的方式划分得到评分区间,其中,第i个等级对应的评分区间表示为。最后,服务器以用户为行,商品为列,用户对商品感兴趣的概率对应的评分所属的等级为元素,构建第一评分矩阵(Rating Data矩阵)。
需要说明的是,对于任一待推荐内容,如果该待推荐内容是用户未接触过的内容,如新推出的产品、新上线的游戏以及新推出的会员服务等,则第一模型不能预测该用户对该待推荐内容感兴趣的概率,即用户对该待推荐内容感兴趣的概率缺失,从而该第一评分矩阵中,用户对该待推荐内容的评分所属的等级也缺失。如果评分矩阵不存在缺失数据,则能够基于该评分矩阵,向该多个用户分别推荐至少一个待推荐内容。
304、响应于该第一评分矩阵存在缺失数据,服务器基于第二模型对该第一评分矩阵进行填充。
在本申请实施例中,对于存在缺失数据的评分矩阵,服务器能够基于第二模型对该第一评分矩阵进行协同过滤,从而实现对该第一评分矩阵的填充。
在一种可选的实现方式中,服务器基于第二模型对第一评分矩阵进行协同过滤的步骤为:响应于上述第一评分矩阵存在缺失数据,服务器能够基于第二模型对该第一评分矩阵进行矩阵分解,得到用于表示用户的用户评分矩阵和用于表示内容的内容评分矩阵。然后服务器能够获取该用户评分矩阵和内容评分矩阵的内积,将该内积作为填充后的第一评分矩阵。
例如,继续以待推荐内容为商品为例,服务器能够通过SVD矩阵分解,将第一评分矩阵分解成用户侧的用户评分矩阵和商品侧的商品评分矩阵,然后将两个矩阵进行矩阵相乘得到完整的第一评分矩阵,即没有缺失的第一评分矩阵。
在一种可选的实现方式中,服务器在得到上述第一模型后,能根据该第一模型对训练样本预测得到的第三预测信息,训练得到上述第二模型。相应的,第二模型的训练步骤包括:服务器获取基于第一模型对训练样本进行预测得到的第三预测信息。然后服务器根据上述第三预测信息,确定第二评分矩阵,该第二评分矩阵中的一个元素标识一个样本用户对一个样本内容的评分所属的等级。然后服务器根据协同过滤算法对第二评分矩阵进行填充。最后服务器能够根据第二评分矩阵填充前后的误差作为损失函数,训练得到上述第二模型。
需要说明的是,服务器还能够获取第一模型对测试样本记性预测得到的上述第二预测信息,基于该第二预测信息确定第三评分矩阵,根据该第三评分矩阵对上述第二模型进行测试评估。响应于该第二模型通过该测试评估,服务器将该第二模型作为最终的第二模型;如果该第二模型没有通过该测试评估,则服务器继续对该第二模型进行优化。
需要说明的是,服务器在训练上述第一模型和第二模型时,采用的是相同的数据处理过程,如PCA去相关处理、one-hot特征处理、离散化特征处理、概率转换为评分以及划分评分区间等,均需要保持一致。即对于第二预测信息中的每个概率,服务器均将该概率乘以常数c,然后按照等距划分的方式划分得到评分区间,其中,第i个等级对应的评分区间表示为。最后,服务器以用户为行,商品为列,用户对商品感兴趣的概率对应的评分所属的等级为元素,构建第二评分矩阵(Rating Data矩阵)。
需要说明的是,服务器在训练模型时,采用的测评指标能够为固定阈值,即采用固定阈值对模型进行评估,该测评指标也能够为自适应阈值,也即采用自适应阈值对模型进行评估,本申请实施例对此不进行限制。
305、服务器根据填充后的该第一评分矩阵,向该多个用户分别推荐至少一个待推荐内容。
在本申请实施例中,服务器在得到填充后的第一评分矩阵后,能够按照评分所述的等级进行降序排列,然后选择前N个待推荐内容向用户进行个性化推荐。其中,第一评分矩阵中的一行元素表示一个用户对应的多个待推荐内容的评分所属的等级。
对于任一用户,服务器能够根据填充后的第一评分矩阵,获取该用户对应的多个评分所属的等级。然后服务器能够根据多个评分所属的等级进行排序,确定至少一个评分。最后服务器能够向该用户推荐至少一个评分对应的待推荐内容。通过填充后的第一评分矩阵,能够得到用户对没有接触过的待推荐内容的评分所属的等级,从而能够对用户进行相应的推荐。解决了基于传统分类算法的推荐方法不能对具有缺失数据的用户进行推荐的问题,例如,对于新商品基于传统分类算法的推荐方法不能进行有效推荐。
为了使本申请实施例提供的内容推荐方法的架构更清晰,参见图4所示,图4是根据本申请实施例提供的一种内容推荐方法的架构示意图。如图4所示,通过T时期的用户标签401、用户特征402以及商品特征403训练第一模型404;然后通过第一模型404对T+1时期的用户特征405和商品特征406进行预测,得到概率407;基于常数c将概率407转换为评分,进一步的得到含有缺失数据的第一评分矩阵408;再通过基于协同过滤算法的第二模型409将含有缺失数据的第一评分矩阵408分解为用户评分矩阵410和商品评分矩阵411;基于用户评分矩阵410和商品评分矩阵411,得到填充后的第一评分矩阵412。
需要说明的是,上述步骤301至步骤304是本申请实施例提供的内容推荐方法的可选实现方式,相应的,本申请实施例提供的内容推荐方法还能够通过其他方式实施。下面以游戏下载推荐场景为例进行说明。参见图5所示,图5是根据本申请实施例提供的另一种内容推荐方法的流程图。首先,步骤501、在进行游戏的个性化推荐时,在数据准备阶段准备数据特征包括用户基础数据(性别、年龄等)、用户登录类数据(登录时长、次数、天数等)、充值类数据(金额、次数、ARPU等)、游戏表现、游戏ctr、游戏费率、游戏品类等共2000个特征,用户在游戏的下载标签(下载标记为正样本,记为1,否则为负样本,记为0),以及用户对已有游戏的评分矩阵等数据作为数据源。步骤502、在模型训练阶段,分为两个训练阶段,第一个训练阶段,根据T时期用户特征和用户下载游戏的标签数据(下载标记为正样本,记为1,否则为负样本,记为0),步骤503、构建T时期的训练样本和测试样本,步骤504、根据训练样本得到第一模型,步骤505、根据测试样本对该第一模型进行测试评估,如果通过测试评估,则进入第二个训练阶段,进行第二模型的训练;如果没有通过测试评估,则继续第一个训练阶段。步骤506、将第一个训练阶段基于训练样本得到的用户下载游戏的概率转化为评分后,步骤507、生成数据缺失的第二评分矩阵,步骤508、基于该数据缺失的第二评分矩阵训练第二模型。步骤509、根据第一训练阶段基于测试样本得到的用户下载游戏的概率转化为评分后,步骤510、生成数据缺失的第三评分矩阵,步骤511、根据该第三评分矩阵对上述第二模型进行测试评估,该第二模型通过该测试评估,将该第二模型作为最终的第二模型;如果该第二模型没有通过该测试评估,则继续对该第二模型进行优化。步骤512、当第二模型通过评估,则使用T+1时期的用户特征,基于第一模型预测T+1期用户下载游戏的概率的得分,步骤513、基于该概率的得分生成第一评分矩阵,步骤514、通过第二模型对该具有缺失数据的第一评分矩阵进行填充,得到填充后的第一评分矩阵。步骤515、最后按照评分所属的等级大小顺序进行倒排序,选择前N个游戏进行个性化推荐。
需要说明的是,在上述游戏下载场景下,基于传统分类算法进行推荐、基于深度学习算法进行推荐、基于协同过滤算法的推荐以及基于本申请提供的方法进行推荐的效果对比参见表1所示。
表1
传统分类算法 | 深度学习算法 | 协同过滤算法 | 本申请方法 | |
查全率 | 76.87% | 82.61% | 63.68% | 87.91% |
查准率 | 71.12% | 85.32% | 69.11% | 83.56% |
AUC | 0.7214 | 0.8641 | 0.6933 | 0.8112 |
本申请实施例提供了一种内容推荐方法,通过第一模型基于用户特征进行预测,来初步确定用户对待推荐内容感兴趣的概率,然后基于该概率构造评分矩阵,从而基于该评分矩阵能够确定每个用户对每个内容的评分所属的等级,由于用户未接触过的内容在评分矩阵中为缺失数据,则通过第二模型对该评分矩阵进行填充,使得用户未接触过的内容也具有评分所属的等级,从而基于填充后的评分矩阵,即可向用户推荐接触过或者未接触过的内容,实现内容的有效推荐,提高了推荐的准确率。
图6是根据本申请实施例提供的一种内容推荐装置的框图。该装置用于执行上述内容推荐方法执行时的步骤,参见图6,装置包括:预测模块601、确定模块602、填充模块603以及内容推荐模块604。
预测模块,用于根据第一模型对多个用户的第一用户特征进行预测,得到第一预测信息,所述第一预测信息用于指示所述多个用户对待推荐内容感兴趣的概率;
确定模块,用于根据所述第一预测信息,确定第一评分矩阵,所述第一评分矩阵中的一个元素表示一个用户对一个待推荐内容的评分所属的等级;
填充模块,用于响应于所述第一评分矩阵存在缺失数据,基于第二模型对所述第一评分矩阵进行填充;
内容推荐模块,用于根据填充后的所述第一评分矩阵,向所述多个用户分别推荐至少一个待推荐内容。
在一种可选的实现方式中,所述确定模块,用于将所述第一预测信息中的多个概率转换为多个评分,所述多个评分为正整数;根据所述多个评分,确定多个评分区间,其中,一个评分区间对应一个等级;根据所述多个评分所属的等级,确定该第一评分矩阵。
在一种可选的实现方式中,所述填充模块,用于响应于所述第一评分矩阵存在缺失数据,基于所述第二模型对所述第一评分矩阵进行矩阵分解,得到用于表示用户的用户评分矩阵和用于表示内容的内容评分矩阵;获取所述用户评分矩阵和所述内容评分矩阵的内积,将所述内积作为所述填充后的所述第一评分矩阵。
在一种可选的实现方式中,所述内容推荐模块,用于对于任一用户,根据所述填充后的所述第一评分矩阵,获取所述用户对应的多个评分所属的等级;根据所述多个评分所属的等级进行排序,确定至少一个评分;
向所述用户推荐所述至少一个评分对应的待推荐内容。
在一种可选的实现方式中,所述第一模型的训练步骤包括:
基于训练样本对第一原始模型进行训练;
基于训练得到的模型对测试样本进行预测,得到第二预测信息,所述测试样本包多个样本用户的第二用户特征和所属的用户标签,所述第二预测信息用于指示所述多个样本用户对样本内容感兴趣的概率;
响应于所述第二预测信息满足测评指标,将所述训练得到的模型确定为所述第一模型。
在一种可选的实现方式中,所述装置还包括:
数据获取模块,用于获取样本数据集,所述样本数据集包括用户特征、内容特征以及样本用户所属的用户标签;
数据划分模块,用于按照目标比例将所述样本数据集划分为所述训练样本和所述测试样本。
在一种可选的实现方式中,所述第二模型的训练步骤包括:
获取基于所述第一模型对训练样本进行预测得到的第三预测信息;
根据所述第三预测信息,确定第二评分矩阵,所述第二评分矩阵中的一个元素表示一个样本用户对一个样本内容的评分所属的等级;
根据协同过滤算法对所述第二评分矩阵进行填充;
根据所述第二评分矩阵填充前后的误差作为损失函数,训练得到所述第二模型。
本申请实施例提供了一种内容推荐方法,通过第一模型基于用户特征进行预测,来初步确定用户对待推荐内容感兴趣的概率,然后基于该概率构造评分矩阵,从而基于该评分矩阵能够确定每个用户对每个内容的评分所属的等级,由于用户未接触过的内容在评分矩阵中为缺失数据,则通过第二模型对该评分矩阵进行填充,使得用户未接触过的内容也具有评分所属的等级,从而基于填充后的评分矩阵,即可向用户推荐接触过或者未接触过的内容,实现内容的有效推荐,提高了推荐的准确率。
需要说明的是:上述实施例提供的内容推荐装置在进行内容推荐时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的内容推荐装置与内容推荐方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
在本申请实施例中,计算机设备能够被配置为终端或者服务器,当计算机设备被配置为终端时,可以由终端作为执行主体来实施本申请实施例提供的技术方案,当计算机设备被配置为服务器时,可以由服务器作为执行主体来实施本申请实施例提供的技术方案,也可以通过终端和服务器之间的交互来实施本申请提供的技术方案,本申请实施例对此不作限定。
图7是根据本申请实施例提供的一种终端700的结构框图。该终端700可以是便携式移动终端,比如:智能手机、平板电脑、MP3播放器(Moving Picture Experts GroupAudio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture ExpertsGroup Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端700还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端700包括有:处理器701和存储器702。
处理器701可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器701可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器701也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器701可以集成有GPU(Graphics Processing Unit,图像处理器), GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器701还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器702可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器702还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器702中的非暂态的计算机可读存储介质用于存储至少一个程序代码,该至少一个程序代码用于被处理器701所执行以实现本申请中方法实施例提供的内容推荐方法。
在一些实施例中,终端700还可选包括有:***设备接口703和至少一个***设备。处理器701、存储器702和***设备接口703之间可以通过总线或信号线相连。各个***设备可以通过总线、信号线或电路板与***设备接口703相连。具体地,***设备包括:射频电路704、显示屏705、摄像头组件706、音频电路707、定位组件708和电源709中的至少一种。
***设备接口703可被用于将I/O(Input /Output,输入/输出)相关的至少一个***设备连接到处理器701和存储器702。在一些实施例中,处理器701、存储器702和***设备接口703被集成在同一芯片或电路板上;在一些其他实施例中,处理器701、存储器702和***设备接口703中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路704用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路704通过电磁信号与通信网络以及其他通信设备进行通信。射频电路704将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路704包括:天线***、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路704可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路704还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏705用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏705是触摸显示屏时,显示屏705还具有采集在显示屏705的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器701进行处理。此时,显示屏705还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏705可以为一个,设置在终端700的前面板;在另一些实施例中,显示屏705可以为至少两个,分别设置在终端700的不同表面或呈折叠设计;在另一些实施例中,显示屏705可以是柔性显示屏,设置在终端700的弯曲表面上或折叠面上。甚至,显示屏705还可以设置成非矩形的不规则图形,也即异形屏。显示屏705可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件706用于采集图像或视频。可选地,摄像头组件706包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件706还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路707可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器701进行处理,或者输入至射频电路704以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端700的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器701或射频电路704的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路707还可以包括耳机插孔。
定位组件708用于定位终端700的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件708可以是基于美国的GPS(GlobalPositioning System,全球定位***)、中国的北斗***或俄罗斯的伽利略***的定位组件。
电源709用于为终端700中的各个组件进行供电。电源709可以是交流电、直流电、一次性电池或可充电电池。当电源709包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端700还包括有一个或多个传感器710。该一个或多个传感器710包括但不限于:加速度传感器711、陀螺仪传感器712、压力传感器713、指纹传感器714、光学传感器715以及接近传感器716。
加速度传感器711可以检测以终端700建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器711可以用于检测重力加速度在三个坐标轴上的分量。处理器701可以根据加速度传感器711采集的重力加速度信号,控制显示屏705以横向视图或纵向视图进行用户界面的显示。加速度传感器711还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器712可以检测终端700的机体方向及转动角度,陀螺仪传感器712可以与加速度传感器711协同采集用户对终端700的3D动作。处理器701根据陀螺仪传感器712采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器713可以设置在终端700的侧边框和/或显示屏705的下层。当压力传感器713设置在终端700的侧边框时,可以检测用户对终端700的握持信号,由处理器701根据压力传感器713采集的握持信号进行左右手识别或快捷操作。当压力传感器713设置在显示屏705的下层时,由处理器701根据用户对显示屏705的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器714用于采集用户的指纹,由处理器701根据指纹传感器714采集到的指纹识别用户的身份,或者,由指纹传感器714根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器701授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器714可以被设置在终端700的正面、背面或侧面。当终端700上设置有物理按键或厂商Logo时,指纹传感器714可以与物理按键或厂商Logo集成在一起。
光学传感器715用于采集环境光强度。在一个实施例中,处理器701可以根据光学传感器715采集的环境光强度,控制显示屏705的显示亮度。具体地,当环境光强度较高时,调高显示屏705的显示亮度;当环境光强度较低时,调低显示屏705的显示亮度。在另一个实施例中,处理器701还可以根据光学传感器715采集的环境光强度,动态调整摄像头组件706的拍摄参数。
接近传感器716,也称距离传感器,通常设置在终端700的前面板。接近传感器716用于采集用户与终端700的正面之间的距离。在一个实施例中,当接近传感器716检测到用户与终端700的正面之间的距离逐渐变小时,由处理器701控制显示屏705从亮屏状态切换为息屏状态;当接近传感器716检测到用户与终端700的正面之间的距离逐渐变大时,由处理器701控制显示屏705从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图7中示出的结构并不构成对终端700的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图8是根据本申请实施例提供的一种服务器的结构示意图,该服务器800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(Central ProcessingUnits,CPU)801和一个或一个以上的存储器802,其中,该存储器802中存储有至少一条程序代码,该至少一条程序代码由该处理器801加载并执行以实现上述各个方法实施例提供的内容推荐方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质应用于计算机设备,该计算机可读存储介质中存储有至少一段程序代码,该至少一段程序代码由处理器加载并执行以实现上述实施例的内容推荐方法中计算机设备所执行的操作。
本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该计算机设备执行上述各种可选实现方式中提供的内容推荐方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (9)
1.一种内容推荐方法,其特征在于,所述方法包括:
根据第一模型对多个用户的第一用户特征进行预测,得到第一预测信息,所述第一预测信息用于指示所述多个用户对待推荐内容感兴趣的概率;
根据所述第一预测信息,确定第一评分矩阵,所述第一评分矩阵中的一个元素表示一个用户对一个待推荐内容的评分所属的等级;
响应于所述第一评分矩阵存在缺失数据,基于第二模型对所述第一评分矩阵进行填充,所述第二模型用于基于协同过滤算法对缺失的矩阵进行填充;
根据填充后的所述第一评分矩阵,向所述多个用户分别推荐至少一个待推荐内容;
其中,所述第二模型的训练步骤包括:
获取基于所述第一模型对训练样本进行预测得到的第三预测信息;
根据所述第三预测信息,确定第二评分矩阵,所述第二评分矩阵中的一个元素表示一个样本用户对一个样本内容的评分所属的等级;
根据协同过滤算法对所述第二评分矩阵进行填充;
根据所述第二评分矩阵填充前后的误差作为损失函数,训练得到所述第二模型。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一预测信息,确定第一评分矩阵,包括:
将所述第一预测信息中的多个概率转换为多个评分,所述多个评分为正整数;
根据所述多个评分,确定多个评分区间,其中,一个评分区间对应一个等级;
根据所述多个评分所属的等级,确定所述第一评分矩阵。
3.根据权利要求1所述的方法,其特征在于,所述响应于所述第一评分矩阵存在缺失数据,基于第二模型对所述第一评分矩阵进行填充,包括:
响应于所述第一评分矩阵存在缺失数据,基于所述第二模型对所述第一评分矩阵进行矩阵分解,得到用于表示用户的用户评分矩阵和用于表示内容的内容评分矩阵;
获取所述用户评分矩阵和所述内容评分矩阵的内积,将所述内积作为所述填充后的所述第一评分矩阵。
4.根据权利要求1所述的方法,其特征在于,所述根据填充后的所述第一评分矩阵,向所述多个用户分别推荐至少一个待推荐内容,包括:
对于任一用户,根据所述填充后的所述第一评分矩阵,获取所述用户对应的多个评分所属的等级;
根据所述多个评分所属的等级进行排序,确定至少一个评分;
向所述用户推荐所述至少一个评分对应的待推荐内容。
5.根据权利要求1至4任一项权利要求所述的方法,其特征在于,所述第一模型的训练步骤包括:
基于训练样本对第一原始模型进行训练;
基于训练得到的模型对测试样本进行预测,得到第二预测信息,所述测试样本包括多个样本用户的第二用户特征和所属的用户标签,所述第二预测信息用于指示所述多个样本用户对样本内容感兴趣的概率;
响应于所述第二预测信息满足测评指标,将所述训练得到的模型确定为所述第一模型。
6.根据权利要求5所述的方法,其特征在于,所述基于训练样本对第一原始模型进行训练之前,所述方法还包括:
获取样本数据集,所述样本数据集包括用户特征、内容特征以及样本用户所属的用户标签;
按照目标比例将所述样本数据集划分为所述训练样本和所述测试样本。
7.一种内容推荐装置,其特征在于,所述装置包括:
预测模块,用于根据第一模型对多个用户的第一用户特征进行预测,得到第一预测信息,所述第一预测信息用于指示所述多个用户对待推荐内容感兴趣的概率;
确定模块,用于根据所述第一预测信息,确定第一评分矩阵,所述第一评分矩阵中的一个元素表示一个用户对一个待推荐内容的评分所属的等级;
填充模块,用于响应于所述第一评分矩阵存在缺失数据,基于第二模型对所述第一评分矩阵进行填充,所述第二模型用于基于协同过滤算法对缺失的矩阵进行填充;
内容推荐模块,用于根据填充后的所述第一评分矩阵,向所述多个用户分别推荐至少一个待推荐内容;
其中,所述第二模型的训练步骤包括:
获取基于所述第一模型对训练样本进行预测得到的第三预测信息;
根据所述第三预测信息,确定第二评分矩阵,所述第二评分矩阵中的一个元素表示一个样本用户对一个样本内容的评分所属的等级;
根据协同过滤算法对所述第二评分矩阵进行填充;
根据所述第二评分矩阵填充前后的误差作为损失函数,训练得到所述第二模型。
8.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器用于存储至少一段程序代码,所述至少一段程序代码由所述处理器加载并执行权利要求1至6任一权利要求所述的内容推荐方法。
9.一种存储介质,其特征在于,所述存储介质用于存储至少一段程序代码,所述至少一段程序代码用于执行权利要求1至6任一权利要求所述的内容推荐方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011114847.4A CN111931075B (zh) | 2020-10-19 | 2020-10-19 | 一种内容推荐方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011114847.4A CN111931075B (zh) | 2020-10-19 | 2020-10-19 | 一种内容推荐方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111931075A CN111931075A (zh) | 2020-11-13 |
CN111931075B true CN111931075B (zh) | 2021-02-26 |
Family
ID=73334478
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011114847.4A Active CN111931075B (zh) | 2020-10-19 | 2020-10-19 | 一种内容推荐方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111931075B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114417174B (zh) * | 2022-03-23 | 2022-06-14 | 腾讯科技(深圳)有限公司 | 内容推荐方法、装置、设备及计算机存储介质 |
CN116680162B (zh) * | 2023-04-17 | 2023-11-10 | 中国软件评测中心(工业和信息化部软件与集成电路促进中心) | 一种测试用例复用方法、装置、介质、设备及产品 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105183727A (zh) * | 2014-05-29 | 2015-12-23 | 上海研深信息科技有限公司 | 一种图书推荐方法及其*** |
CN105183748B (zh) * | 2015-07-13 | 2018-11-06 | 电子科技大学 | 一种基于内容和评分的组合预测方法 |
CN105282616A (zh) * | 2015-11-13 | 2016-01-27 | 云南大学 | 一种组合协同过滤iptv节目推荐方法 |
CN108038629A (zh) * | 2017-12-30 | 2018-05-15 | 北京工业大学 | 一种基于协同过滤的优化方法 |
CN111368216A (zh) * | 2020-03-06 | 2020-07-03 | 昆明理工大学 | 一种基于混合协同过滤的影视推荐方法 |
CN111460316B (zh) * | 2020-03-20 | 2022-08-26 | 南京邮电大学 | 一种面向知识***的个性化推荐方法及计算机存储介质 |
-
2020
- 2020-10-19 CN CN202011114847.4A patent/CN111931075B/zh active Active
Non-Patent Citations (1)
Title |
---|
基于用户行为特征的动态权重混合推荐算法;刘沛文 等;《计算机应用与软件》;20170430;第34卷(第4期);第316-321页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111931075A (zh) | 2020-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109740068B (zh) | 媒体数据推荐方法、装置及存储介质 | |
CN111298445B (zh) | 目标账号检测方法、装置、电子设备及存储介质 | |
CN109284445B (zh) | 网络资源的推荐方法、装置、服务器及存储介质 | |
CN111897996B (zh) | 话题标签推荐方法、装置、设备及存储介质 | |
CN112069414A (zh) | 推荐模型训练方法、装置、计算机设备及存储介质 | |
CN112989229B (zh) | 出行路线的推荐方法、装置、计算机设备及存储介质 | |
CN111104980B (zh) | 确定分类结果的方法、装置、设备及存储介质 | |
CN109784351B (zh) | 行为数据分类方法、分类模型训练方法及装置 | |
CN112749728A (zh) | 学生模型训练方法、装置、计算机设备及存储介质 | |
CN112884770B (zh) | 图像分割处理方法、装置及计算机设备 | |
CN111368116B (zh) | 图像分类方法、装置、计算机设备及存储介质 | |
CN111931075B (zh) | 一种内容推荐方法、装置、计算机设备及存储介质 | |
CN110555102A (zh) | 媒体标题识别方法、装置及存储介质 | |
CN113269612A (zh) | 物品推荐方法、装置、电子设备及存储介质 | |
CN112561084B (zh) | 特征提取方法、装置、计算机设备及存储介质 | |
CN114281936A (zh) | 分类方法、装置、计算机设备及存储介质 | |
CN114765062A (zh) | 基因数据处理方法、装置、计算机设备及存储介质 | |
CN107807940B (zh) | 信息推荐方法和装置 | |
CN114691860A (zh) | 文本分类模型的训练方法、装置、电子设备及存储介质 | |
CN112765470B (zh) | 内容推荐模型的训练方法、内容推荐方法、装置及设备 | |
CN113762585B (zh) | 数据的处理方法、账号类型的识别方法及装置 | |
CN114328948A (zh) | 文本标准化模型的训练方法、文本标准化方法及装置 | |
CN113722422A (zh) | 模型训练方法、文本标签生成方法、装置、设备及介质 | |
CN113486260A (zh) | 互动信息的生成方法、装置、计算机设备及存储介质 | |
CN112035649A (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 |