CN110263244B - 内容推荐方法、装置、存储介质和计算机设备 - Google Patents
内容推荐方法、装置、存储介质和计算机设备 Download PDFInfo
- Publication number
- CN110263244B CN110263244B CN201910114843.7A CN201910114843A CN110263244B CN 110263244 B CN110263244 B CN 110263244B CN 201910114843 A CN201910114843 A CN 201910114843A CN 110263244 B CN110263244 B CN 110263244B
- Authority
- CN
- China
- Prior art keywords
- recommended
- recommended content
- content
- recommendation
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 91
- 238000003860 storage Methods 0.000 title claims abstract description 13
- 238000012549 training Methods 0.000 claims description 313
- 238000012360 testing method Methods 0.000 claims description 75
- 230000008901 benefit Effects 0.000 claims description 61
- 230000006399 behavior Effects 0.000 claims description 44
- 230000008569 process Effects 0.000 claims description 34
- 238000004590 computer program Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 10
- 230000000977 initiatory effect Effects 0.000 claims description 5
- 230000001172 regenerating effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 22
- 230000006870 function Effects 0.000 description 17
- 230000009471 action Effects 0.000 description 15
- 230000002787 reinforcement Effects 0.000 description 9
- 238000010801 machine learning Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 239000003795 chemical substances by application Substances 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003631 expected effect Effects 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000003306 harvesting Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及一种内容推荐方法、装置、存储介质和计算机设备,所述内容推荐方法包括:获取目标用户数据和多个推荐内容;所述多个推荐内容所属类别多于一种;结合所述目标用户数据生成各所述推荐内容相应的联合特征;基于各所述联合特征获得相应推荐内容的预测推荐收益值;根据所述多个推荐内容各自的预测推荐收益值,确定所述多个推荐内容的推荐排序;在所述推荐排序下属于不同类别的推荐内容交叉排列;按照所述推荐排序从所述多个推荐内容中挑选推荐内容进行推荐。本申请提供的方案实现用户对多样性需求的个性化。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种内容推荐方法、装置、存储介质和计算机设备。
背景技术
随着计算机技术的飞速发展,越来越多的内容需要通过计算机处理来获取,在处理完后再通过网络进行传输;而且越来越多的场景下需要对用户进行内容推荐。比如新闻、视频或者广告的推荐等。
然而,目前的内容推荐方式主要是依赖于人工筛选的方式来为目标用户选择内容进行推荐,人工筛选则主要依赖于认为的主观判断,不同的人对于不同用户的选择策略有所不同,未能实现用户对多样性需求的个性化。
发明内容
基于此,有必要针对目前的内容推荐方式未能实现用户对多样性需求的个性化的技术问题,提供一种内容推荐方法、装置、存储介质和计算机设备。
一种内容推荐方法,包括:
获取目标用户数据和多个推荐内容;所述多个推荐内容所属类别多于一种;
结合所述目标用户数据生成各所述推荐内容相应的联合特征;
基于各所述联合特征获得相应推荐内容的预测推荐收益值;
根据所述多个推荐内容各自的预测推荐收益值,确定所述多个推荐内容的推荐排序;在所述推荐排序下属于不同类别的推荐内容交叉排列;
按照所述推荐排序从所述多个推荐内容中挑选推荐内容进行推荐。
一种内容推荐装置,包括:
获取模块,用于获取目标用户数据和多个推荐内容;所述多个推荐内容所属类别多于一种;
生成模块,用于结合所述目标用户数据生成各所述推荐内容相应的联合特征;
处理模块,用于基于各所述联合特征获得相应推荐内容的预测推荐收益值;
确定模块,用于根据所述多个推荐内容各自的预测推荐收益值,确定所述多个推荐内容的推荐排序;在所述推荐排序下属于不同类别的推荐内容交叉排列;
推荐模块,用于按照所述推荐排序从所述多个推荐内容中挑选推荐内容进行推荐。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述内容推荐方法的步骤。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述内容推荐方法的步骤。
上述内容推荐方法、装置、计算机可读存储介质和计算机设备,在进行推荐内容推荐时,推荐的是多种不同类别的推荐内容;而且,对于各推荐内容,均是联合了目标用户的用户数据来生成各自针对目标用户的个性化特征,继而可以根据各推荐内容的个性化特征更准确地获得相应推荐内容的预测推荐收益值,从而依据这些推荐内容各自的预测推荐收益值来进行推荐排序。其中,在推荐排序下属于不同类别的推荐内容是交叉进行排列的,这样使得在进行推荐内容推荐时既实现了推荐的多样性需求,又大大地提高了推荐的准确性。
附图说明
图1为一个实施例中内容推荐方法的应用环境图;
图2为一个实施例中内容推荐方法的流程示意图;
图3为一个实施例中进入推荐内容展示页面之前的界面示意图;
图4为一个实施例中推荐内容展示页面的界面示意图;
图5为一个实施例中推荐内容展示页面滑动前后的对比示意图;
图6为另一个实施例中推荐内容展示页面滑动前后的对比示意图;
图7为一个实施例中训练预测模型的原理示意图;
图8为一个实施例中分别使用初步训练得到的预测模型和二次训练得到的预测模型在预测推荐排序上的对比示意图;
图9为一个实施例中强化学习的原理示意图;
图10为一个实施例中多样性收益函数的示意图;
图11为一个实施例中产生多样性收益的示意图;
图12为一个实施例中模型训练方法和内容推荐方法结合的流程示意图;
图13为一个实施例中内容推荐装置的结构框图;
图14为另一个实施例中内容推荐装置的结构框图;
图15为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中内容推荐方法的应用环境图。参照图1,该内容推荐方法应用于内容推荐系统。该内容推荐系统包括终端110和服务器120。终端110和服务器120通过网络连接。终端110具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。终端110和服务器120均可独立用于执行该内容推荐方法,终端110和服务器120也可协同用于执行该内容推荐方法。
需要说明的是,本申请实施例是应用于推荐场景下解决多样性推荐问题的技术方案。推荐场景下的多样性推荐问题,是指如何实现将不同类别的推荐内容按照合理的顺序推荐的问题。可以理解,在将不同类别的推荐内容按照不同的顺序推荐时,用户在浏览推荐内容时可能会产生不同的浏览行为数据。比如,在新闻推荐的场景下,首先推荐了3篇IT类新闻和1篇社会类新闻,用户点击了其中1篇IT类新闻,接着又推荐了2篇IT类新闻,此时由于IT类新闻过多大概率会导致用户厌倦,只点击其中1篇或者不再点击。假设,接着推荐的是1篇金融类新闻和1篇娱乐类新闻,类别的多样性增加给了用户惊喜导致用户都发生了点击。这样,明显可以看出,后一种推荐顺序的推荐收益要高于前一种推荐顺序的推荐收益。另外,后一种推荐顺序中用户点击的新闻的类别比后一种推荐顺序中用户点击的新闻的类别更具多样性。
需要说明的是,本申请实施例中所涉及的多样性是指推荐内容所属类别的多样化,以及在进行推荐内容推荐时类别分布的多样化。具体地,本申请实施例中,根据各推荐内容的联合特征来获得相应的预测推荐收益值,以根据预测推荐收益值来进行推荐排序,在该推荐排序下属于不同类别的推荐内容交叉排列,从而实现进行推荐内容推荐时类别分布的多样化。
在一个实施例中,具体可通过模型来根据各推荐内容的联合特征确定各推荐内容各自的预测推荐收益值。其中,模型在训练时,训练标签的设计兼顾点击参数和点击内容所属类别,能够很好地训练出对点击率与多样性协同预测的模型。举例说明,在对目标用户进行新闻推荐时,推荐娱乐类、金融类、体育类以及社会类等多种类别的新闻;而且在推荐顺序上可推荐几条娱乐新闻后,推荐体育新闻,然后再推荐社会新闻,以将多种不同类别的文章穿插推荐。
在一个实施例中,在模型训练时,在训练数据量足够丰富、且用户覆盖度足够广的条件下,迭代的次数足够多,可以一次即训练到模型收敛的稳定状态,此时模型学习到的是较好的预测策略,也就是说,通过该模型可以确定不同类别的推荐内容的合理推荐顺序。在迭代的次数不够时,可以先对模型进行初步训练,此时,模型学习到的可能不是较好的预测策略;再使用该初步训练得到的模型进行一段时间的测试推荐,得到新的可用于训练模型的数据后,对模型进行进一步训练,以学习到更优的预测策略。
如图2所示,在一个实施例中,提供了一种内容推荐方法。本实施例主要以该方法应用于计算机设备来举例说明,该计算机设备具体可以是上述图1中的终端110或服务器120。参照图2,该内容推荐方法具体包括如下步骤:
S202,获取目标用户数据和多个推荐内容;多个推荐内容所属类别多于一种。
其中,目标用户数据包括目标用户的用户基础数据和/或用户行为数据等。用户基础数据是反映用户基础属性的数据。用户基础数据比如用户的年龄、性别、所在地理位置、学历和喜好等特征。用户行为数据是反映用户行为特征的数据。用户行为数据比如目标用户浏览历史推荐内容时生成的推荐内容浏览数据,如用户对某推荐内容的点击参数、浏览时长或者来源等。
推荐内容是待向用户推荐的内容。推荐内容具体可以是推广信息、应用程序、视频、音频、新闻、文章或者商品等。推荐内容所属的类别,是对推荐内容进行划分得到的类型。比如新闻在内容上的划分可以有娱乐类新闻、体育类新闻或者社会类新闻等。不同的分类依据,可以划分出不同种类的类别。比如新闻在数据格式上的划分可以有文本类新闻、视频类类新闻或者图片类新闻等。
多个推荐内容所属的类别多于一种,是指推荐内容所属的类别至少有两种,而且每种类别的推荐内容至少有一个。举例说明,获取的推荐内容的数量为100,其中,有25个A类推荐内容、10个B类推荐内容、35个C类推荐内容以及30个C类推荐内容。那么,这100个推荐内容所属的类别包括A、B、C和D四种,多于一种;且每种类别下至少有一个推荐内容。
可以理解,计算机设备上可存储有推荐内容库。该推荐内容库中包括若干推荐内容。该推荐内容库中的推荐内容待按照本申请实施例中的内容推荐方法被挑选推荐至各用户。这里获取的多个推荐内容可以是推荐内容库中的全部推荐内容,也可以是推荐内容库中的部分推荐内容。比如,待进行推荐内容推荐的用户对某一或者某几类类别的推荐内容不感兴趣时,可以在推荐时不推荐这种(这些)类别的推荐内容。
S204,结合目标用户数据生成各推荐内容相应的联合特征。
其中,推荐内容的联合特征是联合了用户特征和推荐内容的内容特征所得到的、推荐内容针对用户的个性化特征。可以理解,这里结合目标用户数据生成各推荐内容相应的联合特征,是指针对不同的用户分别结合该用户的用户数据生成按用户区分的个性化特征。这样在后续的推荐内容推荐时,能够对不同的用户有差异地进行推荐,更贴合用户的浏览兴趣。
具体地,计算机设备可对目标用户数据提取目标用户特征,并对获取的多个推荐内容中的每一个推荐内容分别提取相应的内容特征;然后将各推荐内容相应的内容特征与目标用户特征结合,得到各推荐内容的联合特征,也就是各推荐内容对应该目标用户的个性化推荐特征。
在一个具体的实施例中,计算机设备可将目标用户数据向量化,得到目标用户特征;将推荐内容向量化,得到推荐内容的内容特征;再将目标用户的目标用户特征和推荐内容的内容特征结合,得到推荐内容的联合特征。这里的特征结合具体可以是特征组合、特征拼接或者特征融合等。
其中,向量是用于将其他形式的数据以数学形式表达的数据。比如,文本形式的“XXX”表示为数学形式“[0 0 0 1 0 0 0 0 0 0 0...]”,此时,“[0 0 0 1 0 0 0 0 0 00...]”即为“XXX”的向量。可以理解,这里不限定将其他形式的数据转换为何种表示的向量,只要能够将其他形式的数据进行数学化表示即可。
举例说明,假设目标用户1的用户数据包括“点击查看娱乐类文章10篇…”和“女性、21岁…”,向量化得到目标用户的目标用户特征A1;目标用户2的用户数据包括“点击查看社会类文章8篇…”和“男性、28岁…”,向量化得到目标用户的目标用户特征A2;推荐内容1为“幼儿园学生XXX…”,向量化得到推荐内容的内容特征B1;推荐内容2为“娱乐圈明星XXX…”,向量化得到推荐内容的内容特征B2。那么,对目标用户1进行推荐时,可将A1和B1拼接得到推荐内容1的对应于目标用户1的联合特征A1+B1,将A1和B2拼接得到推荐内容2的对应于目标用户1的联合特征A1+B2。而对目标用户2进行推荐时,则将A2和B1拼接得到推荐内容1的对应于目标用户2的联合特征A2+B1,将A2和B2拼接得到推荐内容2的对应于目标用户2的联合特征A2+B2。
在一个实施例中,计算机设备可将目标用户的用户基础数据和/或用户行为数据与推荐内容一起向量化,得到推荐内容的内容特征。
举例说明,假设目标用户的用户行为数据为“点击查看娱乐类文章10篇…”,用户基础数据为“女性、21岁…”,推荐内容为“幼儿园学生XXX…”。计算机设备将这些数据一起向量化得到推荐内容的内容特征C。
需要说明的是,目标用户特征可以是文本形式的数据,也可以是向量形式的数据,还可以是其他形式的数据。目标用户特征是文本形式的数据时,可直接是用户基础数据和/或用户行为数据,或者处理后的用户基础数据和/或用户行为数据。用户特征是向量形式的数据时。可以是将用户基础数据和/或用户行为数据向量化后得到的结果。
S206,基于各联合特征获得相应推荐内容的预测推荐收益值。
其中,预测推荐收益值是预测的推荐内容在推荐后的收益的量化数值。预测推荐收益值越大,表示推荐内容在推荐后的收益越高。推荐内容的收益可以通俗的理解为推荐内容在推荐后所产生的效果。比如,推荐内容在推荐后的点击率、展示的多样性或者点击的多样性等。展示的多样性表示展示的推荐内容所属类别的多样化,点击的多样性表示用户点击的推荐内容所属类别的多样化。
在一个实施例中,计算机设备可通过预测函数根据各推荐内容的联合特征确定各推荐内容的预测推荐收益值。其中,预测函数可以是sigmoid函数、Tanh函数、ReLu函数或者Softmax函数。例如,假设某个推荐内容的联合特征为A1+B1,则利用预测函数sigmoid来确定该推荐内容的预测推荐收益值为R=sigmoid(A1+B1)。
在一个实施例中,计算机设备可通过预测模型根据各推荐内容的联合特征确定各推荐内容的预测推荐收益值。其中,预测模型是通过样本学习具备推荐预测能力的机器学习模型。机器学习英文全称为Machine Learning,简称ML。机器学习模型可采用神经网络模型、支持向量机、逻辑回归模型、随机森林模型或者梯度提升树模型等。机器学习的学习方式可以是监督学习、非监督学习或者强化学习等。例如,假设某个推荐内容的联合特征为A1+B1,则利用预测模型来确定该推荐内容的预测推荐收益值,即将A1+B1输入该预测模型,得到预测模型输出的R为预测推荐收益值。
S208,根据多个推荐内容各自的预测推荐收益值,确定多个推荐内容的推荐排序;在推荐排序下属于不同类别的推荐内容交叉排列。
其中,多个推荐内容的推荐排序,是指多个推荐内容在被推荐时的先后排序。推荐排序靠前的推荐内容先推荐,推荐排序靠后的推荐内容后推荐。
具体地,计算机设备可将这多个推荐内容按照相应的预测推荐收益值降序排序,得到这多个推荐内容的推荐排序。也就是说,预测推荐收益值高的推荐内容排序靠前,预测推荐收益值低的推荐内容排序靠后。
需要说明的是,本申请实施例中的推荐收益兼顾点击收益和多样性收益两个方面,也就是在基于各联合特征获得相应推荐内容的预测推荐收益值时,将推荐内容的点击参数和所属的类别均纳入了考量。比如,当通过预测函数来预测预测推荐收益值时,在构造预测函数时将推荐内容的点击参数和所属的类别均纳入考量;再比如,当通过预测模型来预测推荐内容的预测推荐收益值时,在模型训练时训练样本的训练标签的设计将推荐内容的点击参数和所属的类别均纳入考量。那么在实际进行推荐预测时,则不再是将相同类别的推荐内容集中推荐,而是将各类别的各推荐内容各自计算预测推荐收益值,按照预测推荐收益值的高低进行推荐排序,那么在该推荐排序下属于不同类别的推荐内容交叉排列,从而实现了不同类别的推荐内容交叉推荐的效果,提高了推荐的多样性,防止相似的推荐内容被重复推荐出来影响用户浏览兴趣。比如在推荐几条娱乐新闻后,推荐体育新闻等。
S210,按照推荐排序从多个推荐内容中挑选推荐内容进行推荐。
具体地,计算机设备可事先设置有推荐收益值阈值。这样在得到各推荐内容的预测推荐收益值和推荐排序之后,可按照推荐排序自首个推荐内容起挑选出预测推荐收益值达到推荐收益值阈值的推荐内容;获取目标用户标识,将所挑选的推荐内容按照目标用户标识进行推送,以便在目标用户标识登录的目标终端上显示所挑选的推荐内容。
其中,在目标终端上显示所挑选的推荐内容,可以是由目标终端在推荐内容展示页面将这些推荐内容进行展示。这里的推荐内容展示页面可以是目标终端的操作系统所提供的页面,也可以是目标终端上运行的应用程序所提供的页面。该应用程序可以是专门用于推荐的应用程序,比如应用宝或者今日头条等;也可以是非用于推荐但附带有推荐功能的应用程序,比如社交应用等。
上述内容推荐方法,在进行推荐内容推荐时,推荐的是多种不同类别的推荐内容;而且,对于各推荐内容,均是联合了目标用户的用户数据来生成各自针对目标用户的个性化特征,继而可以根据各推荐内容的个性化特征更准确地获得相应推荐内容的预测推荐收益值,从而依据这些推荐内容各自的预测推荐收益值来进行推荐排序。其中,在推荐排序下属于不同类别的推荐内容是交叉进行排列的,这样使得在进行推荐内容推荐时既实现了推荐的多样性需求,又大大地提高了推荐的准确性。
可以理解,根据推荐内容推送的时机,数据获取的触发条件也可能不同,现划分以下几种场景进行阐述:
场景1,用户开启推荐内容展示页面时进行数据的获取。
在一个实施例中,S202具体可以包括:当接收到目标终端在开启推荐内容展示页面时发起的推荐请求时,则从与目标终端对应的用户数据库中,获取与目标终端对应的用户基础数据和历史的推荐内容浏览数据;从推荐内容库中获取多个类别下的多个推荐内容。
其中,推荐内容展示页面是用于展示推荐内容的页面。推荐内容展示页面可以是目标终端的操作系统所提供的页面,也可以是运行于目标用户终端的应用程序所提供的页面。推荐请求用于请求进行推荐内容的推荐。
具体地,目标终端可检测预定义的触发操作,在检测到预定义的触发操作时,判定用户意图为打开推荐内容展示页面,继而向服务器发起推荐请求。其中,触发操作可以是对页面中控件的操作,比如对控件的触控操作或者光标点击操作等。触发操作也可以是对预定义的物理按钮的点击操作,或者对目标终端的晃动操作,或者语音操作,或者对目标终端中展示页面的页面滑动操作等。
进一步地,服务器在获取到推荐请求时,确定发起推荐请求的目标终端上登录的目标用户标识,查询与该目标用户标识对应的用户数据库,从该数据库中获取与目标终端对应的用户基础数据和历史的推荐内容浏览数据,以便结合用户基础数据和历史的推荐内容浏览数据来生成各推荐内容的联合特征。
可以理解,这里历史的推荐内容浏览数据可以是曾经为目标用户推荐推荐内容时产生的推荐内容查看行为数据,可以从历史浏览日志中提取。这里历史的推荐内容浏览数据可以是全部的历史的推荐内容浏览数据;也可以考虑到行为数据的时效性,仅包括预设时间段内的历史的推荐内容浏览数据,比如一周内的历史的推荐内容浏览数据等。行为数据的时效性在用户兴趣随时间的变化频繁变化的场景下尤为突出。
当然,在其他实施例中,计算机设备也可单独根据用户基础数据或者历史的推荐内容浏览数据。
举例说明,图3示出了一个实施例中进入推荐内容展示页面之前的界面示意图。参考图3,该界面包括触发入口310,该触发入口310用于触发开启推荐内容展示页面。具体地,目标终端上运行有目标应用,该目标应用的某个应用页面包括用于触发开启推荐内容展示页面的触发入口。比如微信应用的发现页面中包括的“看一看”入口,或者音频应用的音频推荐入口,或者视频应用的视频推荐入口,或者直播应用的直播推荐入口等。目标终端在根据用户操作运行目标应用,并控制目标应用展示包括用于触发开启推荐内容展示页面的触发入口的应用页面时,可检测对该触发入口的触发操作。当产生对应于该触发入口的触发操作时,向服务器发送推荐请求,并在接收到服务器响应于该推荐请求反馈的推荐内容后,如图4所示,在推荐内容展示页面将推荐内容按照推荐顺序展示。
参考图4,该推荐内容展示页面展示有多个推荐内容:A类推荐内容1、B类推荐内容2、B类推荐内容3和C类推荐内容4,用户可以通过点击操作对感兴趣的推荐内容进行进一步查看。比如点击B类推荐内容2,则切换至展示完整B类推荐内容2的页面。
在本实施例中,在目标终端发起推荐请求后,即针对使用该目标终端对应的用户进行推荐内容的挑选和推荐。这样,既能够对不同的用户进行个性化推荐,丰富推荐内容类别的多样性;而且推荐结果又能反应出每个推荐内容和在每个推荐内容之后推荐的推荐内容的推荐收益,从而能够更为科学的预估当前推荐内容在被推荐之后的预期效果,提高推荐准确性。
场景2,用户启动推荐内容推荐所基于的应用程序时进行数据的获取。
在一个实施例中,目标终端也可不必等待至开启推荐内容展示页面时才发起推荐请求,可在用户使用推荐内容推荐所基于的应用程序时发起推荐请求,并获取服务器响应于推荐请求反馈的推荐内容。这样,目标终端在用户使用该应用程序的过程中判定用户意图为打开推荐内容展示页面,即可立即打开推荐内容展示页面并展示服务器所推荐的推荐内容,极大地提高了页面的响应效率。需要说明的是,在本实施例中,可能会在一定程度上牺牲推荐内容的时效性。比如,服务器端在响应于推荐请求反馈推荐内容后又新增了推荐内容的场景等。
场景3,用户滑动推荐内容展示页面时进行数据的获取。
在一个实施例中,前述实施例中多个推荐内容的推荐排序为第一推荐排序。该内容推荐方法还包括:当接收到目标终端在产生页面滑动指令时发起的推荐请求时,则获取自上次发起推荐请求的时间节点至当前时间节点新增的推荐内容浏览数据;结合新增的推荐内容浏览数据重新生成剩余的推荐内容相应的联合特征:剩余的推荐内容,包括多个推荐内容中尚未在推荐内容展示页面中展示的推荐内容;基于重新生成的各联合特征获得相应推荐内容的预测推荐收益值;根据剩余的推荐内容各自的预测推荐收益值,确定剩余的推荐内容的第二推荐排序;第二推荐排序异于第一推荐排序;按照第二推荐排序从剩余的推荐内容中挑选推荐内容进行推荐。
其中,页面滑动指令是指滑动推荐内容展示页面的指令。也就是说,本实施例中的推荐请求是在用户浏览推荐内容的过程中触发的。
需要说明的是,场景1中的实施例是一次完整推荐内容浏览过程开始时产生的推荐请求与推荐内容展示场景。本实施例则是一次完整推荐内容浏览过程中产生的推荐请求与推荐内容展示场景。一次完整推荐内容浏览过程是指从进入推荐内容展示页面到退出推荐内容展示页面的浏览过程。
可以理解,终端界面的尺寸有限,呈现在终端界面中的推荐内容的数量也是有限的。随着对应于推荐内容展示页面的页面滑动指令,推荐内容展示页面在滑动后,会有已展示的推荐内容移出终端界面,新的推荐内容进入终端界面。
上次发起推荐请求的时间节点至当前时间节点新增的推荐内容浏览数据,也就是两次发起推荐请求之间的时间段内新增的推荐内容浏览数据。可以理解,在新增推荐内容浏览数据的情况下,在有新的推荐内容进入终端界面时,会对推荐内容进行重新排序,确定新增的推荐内容。这是因为推荐内容的预测推荐收益值是根据推荐内容的联合特征得到的,而推荐内容的联合特征与目标用户数据相关。当新增推荐内容浏览数据时,也就是目标用户数据发生了变化,推荐内容的联合特征也会发生变化,推荐内容的预测推荐收益值也会发生变化,所以需要重新排序。重新排序后的推荐内容的排列顺序,异于之前的排序顺序。
在一个实施例中,计算机设备还可获取上次发起推荐请求的时间节点至当前时间节点新增的用户基础数据,结合新增的推荐内容浏览数据和用户基础数据重新生成剩余的推荐内容相应的联合特征。
当然,在另外的实施例中,当用户仅浏览了推荐内容,并未对浏览的推荐内容进行点击查看,即未新增推荐内容浏览数据,也未新增用户基础数据时,则无需对推荐内容进行重新排序,将之前排序的将推荐内容依次进行展示即可。
具体地,目标终端可在用户浏览推荐内容的过程中,将浏览日志上传至服务器,并在检测到页面滑动指令时向服务器发起推荐请求。服务器可根据浏览日志确定目标终端已经展示的推荐内容,对剩余的推荐内容重新计算预测推荐收益值,再将剩余的推荐内容按照预测推荐收益值重新排序后推荐。当然,这里服务器对剩余的推荐内容重新计算预测推荐收益值时,重新得到的推荐内容的联合特征也可以是结合了用户基础数据、历史的推荐内容浏览数据和新增的推荐内容浏览数据。
举例说明,假设目标终端在开启推荐内容展示页面后向服务器发起推荐请求,服务器反馈至目标终端的按推荐顺序排列的推荐内容为:A类推荐内容23、A类推荐内容16、B类推荐内容11、B类推荐内容15、A类推荐内容4、A类推荐内容43、C类推荐内容8、B类推荐内容36…
图5示出了一个实施例中推荐内容展示页面滑动前后的对比示意图。由于目标用户终端的界面尺寸有限,在推荐内容展示页面首屏展示的推荐内容仅有:A类推荐内容23、A类推荐内容16、B类推荐内容11和B类推荐内容15。假设在本实施例中,用户在浏览首屏展示的推荐内容后,并未对首屏展示的推荐内容产生兴趣进一步点击查看,就触发了页面滑动操作。此时,尚未产生新的行为数据,则无需对还未展示的推荐内容重新排序,将之前的排序将推荐内容依次进行展示。
图6示出了另一个实施例中推荐内容展示页面滑动前后的对比示意图。由于目标终端的界面尺寸有限,在推荐内容展示页面首屏展示的推荐内容仅有:A类推荐内容23、A类推荐内容16、B类推荐内容11和B类推荐内容15。假设在本实施例中,用户在浏览首屏展示的推荐内容后,对首屏展示的推荐内容产生兴趣并进一步点击查看(比如点击查看了A类推荐内容16),在查看完后触发了页面滑动操作。此时,产生了新的行为数据,则需要对还未展示的推荐内容重新排序,将浏览日志上传至服务器并重新发起推荐请求。服务器可根据浏览日志确定目标终端已经展示的推荐内容,对剩余的推荐内容重新排序后推荐:D类推荐内容17、C类推荐内容26、C类推荐内容5、B类推荐内容25…目标用户终端则按照新的排序将推荐内容依次进行展示。
当然,在另外的实施例中也可能存在重新排序后的推荐内容的排列顺序,与之前的排列顺序相同的场景。也就是说,虽然新增了用户数据且影响了推荐内容的预测推荐收益值,但是预测推荐收益值的大小关系并没有发生改变,也就不影响推荐顺序。
上述实施例中,根据在用户浏览推荐内容的过程中实时新增的推荐内容浏览数据,实时更新剩余的各推荐内容的预测推荐收益值,以实时调整推荐内容的推荐顺序,极大地提高了推荐的准确性。
前述S202至S210的步骤,具体可以是场景1中用户开启推荐内容展示页面时进行推荐内容推荐的步骤。场景3中实施例的步骤,则可以是用户开启推荐内容展示页面后,任一次滑动推荐内容展示页面时进行推荐内容推荐的步骤。
在一个实施例中,前述S202至S210的步骤也可以是场景3中用户滑动推荐内容展示页面时进行推荐内容推荐的步骤。此时,获取目标用户数据和多个推荐内容,包括:当接收到目标终端在产生页面滑动指令时发起的推荐请求时,从与目标终端对应的用户数据库中,获取与目标终端对应的用户基础数据和历史的推荐内容浏览数据,并获取自开启推荐内容展示页面至当前时间节点新增的推荐内容浏览数据,将用户基础数据、历史的推荐内容浏览数据和新增的推荐内容浏览数据共同作为目标用户数据,以及从推荐内容库中获取多个类别下的多个推荐内容。
在另外的实施例中,服务器也可不必等待由终端发起推荐请求时才对推荐内容进行排序,可事先对各用户分别挑选好推荐内容。这样,服务器在接收到目标终端发起的推荐请求时,即可立即进行反馈,提高了请求的响应率。但是在本实施例中,可能会在一点程度上造成服务器运算资源的浪费。比如,为某一用户挑选好推荐内容,直到新增了推荐内容需要为该用户重新挑选推荐内容,该用户都未请求进行推荐内容推荐的场景等。
在一个实施例中,S210包括:获取目标用户数据相应目标终端所对应的推荐数量;从推荐排序下的推荐内容中的首个推荐内容起,按照推荐排序挑选推荐数量的推荐内容推荐至目标终端。
需要说明的是,由于终端界面的尺寸有限,呈现在终端界面中的推荐内容的数量也是有限的。随着对应于推荐内容展示页面的页面滑动指令,推荐内容展示页面在滑动后,会有已展示的推荐内容移出终端界面,新的推荐内容进入终端界面。而且,用户在浏览已展示的推荐内容时产生的新的用户数据也会影响推荐内容的推荐排序。那么,服务器在向目标终端推荐推荐内容时,无需将大量的推荐内容均推荐给目标终端,过多占用数据传输通道,浪费资源。
具体地,服务器可获取目标用户数据相应目标终端所对应的推荐数量,即可从推荐排序下的推荐内容中的首个推荐内容起,按照推荐排序挑选推荐数量的推荐内容推荐至目标终端。比如,推荐数量为5,则从推荐排序下的推荐内容中的首个推荐内容起,挑选排在前五位的推荐内容推荐至目标终端。
其中,该推荐数量可以是预先设置的统一的数量,比如5或者10等。该推荐数量也可以是需要根据实际场景计算的数量,具体与推荐内容在目标终端的推荐内容展示页面的展示样式,以及该推荐内容展示页面中需要新增展示的推荐内容的页面区域有关。比如,推荐内容在目标终端的推荐内容展示页面的展示字体越小,该推荐数量越大;该推荐内容展示页面中需要新增展示的推荐内容的页面区域越大,该推荐数量越大等。
举例说明,假设服务器或者目标终端,根据推荐内容在目标终端的推荐内容展示页面的展示样式,以及推荐内容展示页面中推荐内容的展示页面区域确定目标终端所对应的推荐数量为4,则从推荐排序下的首个推荐内容起,依次选取四个推荐内容推荐给目标终端在推荐内容展示页面中展示,如图4所示。
在本实施例中,根据目标终端所对应的推荐数量进行推荐,避免了大量推荐时过多占用数据传输通道,且可能出现推荐了并不会展示的推荐内容导致的无用推荐。比如,一次向目标用户推荐了50个推荐内容,但是用户在浏览前10个推荐内容时,即产生了新的用户数据,影响了后续推荐内容的排序,那后续的推荐内容中即可能出现并不会展示的推荐内容。
在一个实施例中,基于各联合特征获得相应推荐内容的预测推荐收益值,包括:将各联合特征输入预测模型,得到相应推荐内容的预测推荐收益值;预测模型的训练样本为连续推荐的历史推荐内容的联合特征;训练样本的训练标签与连续推荐的历史推荐内容的点击参数及所属的类别相关。
具体地,计算机设备可使用事先训练好的预测模型,根据各推荐内容的联合特征,得到各推荐内容的预测推荐收益值。其中,预测模型的具体训练过程可参考后续实施例的详细描述。
本申请实施例中所使用的预测模型在训练时,以连续推荐的历史推荐内容的联合特征为一个训练样本,也就是说,将连续推荐的多个历史推荐内容的联合特征共同作为预测模型训练时的一个输入。根据该连续推荐的历史推荐内容中,各历史推荐内容各自对应的点击参数及各自所属的类别得到该训练样本的训练标签。训练标签是将训练样本输入预测模型时期望的模型输出。历史推荐内容对应的点击参数用于反映该历史推荐内容是否经历过点击行为,将其纳入训练标签的考量,用于预测模型在点击行为预测方面的学习;将历史推荐内容所属的类别用于反映该历史推荐内容在类别上的多样性,将其纳入训练标签的考量,用于预测模型在多样性预测方面的学习。
需要说明的是,本申请实施例中的预测模型,在训练样本和训练标签的设计上,都是与连续推荐的多个历史推荐内容相关。也就是说,模型的训练不再依赖单一历史推荐内容,而是考虑到连续多个历史推荐内容之间的影响。这样,在采用该方式训练得到的推荐预测模型进行推荐收益预测时,得到的结果不仅仅是预测当前的推荐内容在推荐时可能带来的收益,还包括当前的推荐内容对在该推荐内容之后推荐的推荐内容的收益的影响。
在本实施例中,在对目标用户进行推荐时,推荐的是多种不同类别的推荐内容,而且结合目标用户的用户特征,生成各推荐内容针对目标用户的个性化特征,再通过事先训练好的预测模型根据各推荐内容的个性化特征进行推荐排序,在推荐排序下属于不同类别的推荐内容交叉排列,这样在对目标用户推荐内容时既实现了多样性的需求,又大大地提高了推荐的准确性。而且,预测模型是在训练时的训练样本是连续推荐的历史推荐内容的联合特征,通过将历史推荐内容对于在历史推荐内容之后推荐的其他内容获取收益的影响纳入考量,且训练样本的训练标签与训练样本对应的点击参数及训练样本所属类别相关,从而能够兼顾点击行为和多样性,更为科学的预估当前推荐内容在被推荐之后的预期效果,提高推荐准确性。
在一个实施例中,预测模型的训练步骤包括:获取按照历史推荐顺序排列的历史推荐内容序列;结合各历史推荐内容相应用户标识所对应的用户数据,生成各历史推荐内容相应的联合特征;按照历史推荐顺序依次将历史推荐内容序列中的历史推荐内容作为当前历史推荐内容,并将当前历史推荐内容和当前历史推荐内容后连续多个历史推荐内容的联合特征,共同作为预测模型的训练样本;根据当前历史推荐内容和当前历史推荐内容后连续多个历史推荐内容各自的点击参数、及各自所属的类别,得到训练样本相应的训练标签;根据各训练样本和相应的训练标签训练预测模型。
其中,历史推荐内容序列包括多个按序排列的历史推荐内容。这里的历史推荐顺序是历史推荐内容在推荐时的推荐顺序。历史推荐内容是已经进行过推荐且收集到用户反馈的推荐内容。历史推荐内容比如历史推荐的新闻或视频等。
具体地,计算机设备可获取多个用户的浏览日志,从各用户的浏览日志中提取各用户各自对应的历史推荐内容序列。其中,浏览日志按照用户的浏览顺序记录用户浏览的推荐内容以及对浏览内容触发的行为数据等。浏览顺序即为推荐内容的推荐顺序。
这里获取的历史推荐内容序列可以是多个。每个用户所对应的历史推荐内容序列也可以是多个。一个历史推荐内容序列可以是一次完整浏览过程中涉及的推荐内容的集合。可以理解,一个历史推荐内容序列是从一次浏览日志中提取得到的,一次浏览日志是从进入推荐内容展示页面到离开该页面的一次完整浏览过程的记录。比如,用户打开微信看一看页面到离开微信看一页面的过程。若用户存在多次浏览经历,则对应多个历史推荐内容序列。当然,每个用户的多个历史推荐内容序列也可以按浏览时间顺序拼接成一个历史推荐内容序列。
可以理解,历史推荐内容在经过推荐后必然存在被推荐至的用户,该被推荐至的用户的用户标识即为历史推荐内容相应用户标识,该被推荐至的用户的用户数据即为历史推荐内容相应用户标识所对应的用户数据。那么,计算机设备可对于每个历史推荐内容序列中的每个历史推荐内容,结合该历史推荐内容推荐至的用户的用户数据,生成各历史推荐内容的联合特征。这里生成联合特征的具体过程可参考前述实施例中的相关描述。
进一步地,计算机设备可自历史推荐内容序列的首个历史推荐内容起,按照推荐顺序,依次将历史推荐内容序列中的每个历史推荐内容作为历史推荐内容,再将以当前历史推荐内容和当前历史推荐内容后连续多个历史推荐内容的联合特征共同作为预测模型的训练样本。对于训练样本的训练标签的设计,则根据每个训练样本所源自的多个历史推荐内容各自的点击参数、及各自所属的类别,得到每个训练样本相应的训练标签。这样,即可得到有序的训练样本序列,以在后续的训练中按序进行多次迭代。
在一个实施例中,计算机设备可按照推荐顺序,依次将历史推荐内容序列中的历史推荐内容作为当前历史推荐内容;将当前历史推荐内容和当前历史推荐内容相邻的下一个历史推荐内容的联合特征,共同作为预测模型的训练样本。
举例说明,假设历史推荐内容序列为:历史推荐内容1、历史推荐内容2、历史推荐内容3、历史推荐内容4…计算机设备自该历史推荐内容序列的首个历史推荐内容(历史推荐内容1)起,将历史推荐内容1作为当前样本,获取历史推荐内容1的内容特征1,以及与历史推荐内容1相邻的下一个历史推荐内容2的内容特征2,将内容特征1和内容特征2共同作为推荐预测模型的输入样本。再将历史推荐内容2作为当前样本,获取历史推荐内容2的内容特征2,以及与历史推荐内容2相邻的下一个历史推荐内容3的内容特征3,将内容特征2和内容特征3共同作为推荐预测模型的输入样本,直至最后一个历史推荐内容。
更进一步地,计算机设备可依次将各训练样本输入预测模型,得到与输入的训练样本对应的模型输出,再按照最小化模型输出与输入的训练样本相应的训练标签直接的差异调整预测模型的模型参数并继续训练,直至满足训练停止条件时结束训练。
上述实施例中,模型的训练过程中,将推荐内容的点击参数纳入训练标签的考量,用于训练预测模型在点击行为预测方面的学习;将历史推荐内容所属的类别纳入训练标签的考量,用于训练预测模型在多样性预测方面的学习,使得训练得到的模型能兼顾点击行为和多样性两个方面的预测能力,在实际使用中预测的结果更加准确。
需要说明的是,在训练数据量足够丰富、且用户覆盖度足够广的条件下,也就是迭代的次数足够多时,可以基于上述实施例一次即训练到模型收敛的稳定状态,此时模型即一次学习到较好的预测策略。模型学习到较好的预测策略表示该模型可以确定不同类别的推荐内容的合理推荐顺序,得到最大化的推荐收益。但是,在迭代的次数不够时,只能基于已有的数据对预测模型进行初步的训练,此时,模型可能不能一次即学习到较好的预测策略。
在一个实施例中,训练样本为初步训练样本。根据各训练样本和相应的训练标签训练预测模型,包括:将初步训练样本输入初始的预测模型,得到初步训练样本的训练预测推荐收益值;按照初步训练样本的训练预测推荐收益值与训练标签的差异,调整预测模型的模型参数并继续训练,直至满足初步训练停止条件时结束训练。
其中,初始的预测模型是还未经过本申请实施例中提供的模型训练步骤的原始模型。初步训练样本与后文中的二次训练样本均为训练样本,分别是不同批次下训练预测模型的样本。初步训练停止条件,具体可以是将初步训练样本全部迭代完成,或者迭代次数达到预设的迭代次数等。
可以理解,在本实施例中,获取的历史推荐内容序列的数量有限,得到的初步训练样本的数量也有限,通过有限的初步训练样本初步训练得到的预测模型,会学习到一种预测策略,但该预测策略可能不是较好的预测策略。
那么,在初步训练样本的数量有限、以及初步训练得到的预测模型可能尚未学习得到较好的预测策略的场景下,可以利用初步训练得到的预测模型来进行推荐测试,以产生测试推荐内容序列来得到新的训练样本以二次训练预测模型。也就是说,使用初步训练的预测模型对用户进行一段时间的推荐测试后产生测试推荐内容浏览数据,再利用这些数据对初步训练的预测模型进一步训练。
在一个实施例中,该内容推荐方法所包括的训练步骤还包括:采用初步训练得到的预测模型进行推荐测试,得到测试推荐内容序列,以及对应测试推荐内容序列产生的测试推荐内容浏览数据;测试推荐内容浏览数据包括各测试推荐内容的点击参数和所属类别;结合测试推荐内容浏览数据生成各测试推荐内容相应的联合特征;基于推荐内容序列,得到预测模型的二次训练样本;从测试推荐内容浏览数据中提取二次训练样本相应的训练标签;根据各二次训练样本和相应的训练标签二次训练预测模型;其中,初步训练得到的预测模型与二次训练得到的预测模型,在进行推荐内容推荐时推荐内容的推荐排序不同。
具体地,参考图7,计算机设备可获取按照历史推荐顺序排列的历史推荐内容序列,结合各历史推荐内容相应用户标识所对应的用户数据(用户基础数据和历史推荐内容浏览数据),生成各历史推荐内容相应的联合特征;按照历史推荐顺序依次将历史推荐内容序列中的历史推荐内容作为当前历史推荐内容,并将当前历史推荐内容和当前历史推荐内容后连续多个历史推荐内容的联合特征,共同作为预测模型的初步训练样本;根据当前历史推荐内容和当前历史推荐内容后连续多个历史推荐内容各自的点击参数、及各自所属的类别,得到初步训练样本相应的训练标签;将初步训练样本输入初始的预测模型,得到初步训练样本的训练预测推荐收益值;按照初步训练样本的训练预测推荐收益值与训练标签的差异,调整预测模型的模型参数并继续训练,直至满足初步训练停止条件时结束初步训练。进一步地,计算机设备可获取测试用户数据和多个测试推荐内容;这多个测试推荐内容所属类别多于一种;结合测试用户数据生成各测试推荐内容相应的联合特征,将各测试推荐内容相应的联合特征输入初步训练得到的预测模型,获得相应测试推荐内容的预测推荐收益值;根据多个测试推荐内容各自的预测推荐收益值,确定多个测试推荐内容的测试推荐排序;在推荐排序下属于不同类别的推荐内容交叉排列;按照测试推荐排序对测试推荐内容进行推荐,得到测试推荐内容序列,以及对应测试推荐内容序列产生的测试(实际)推荐内容浏览数据;测试推荐内容浏览数据包括各测试推荐内容的点击参数和所属类别。
更进一步地,计算机设备再结合测试推荐内容浏览数据生成各测试推荐内容相应的联合特征;按照测试推荐顺序依次将测试推荐内容序列中的测试推荐内容作为当前测试推荐内容,并将当前测试推荐内容和当前测试推荐内容后连续多个测试推荐内容的联合特征,共同作为预测模型的二次训练样本;根据当前测试推荐内容和当前测试推荐内容后连续多个测试推荐内容各自的点击参数、及各自所属的类别(从测试推荐内容浏览数据中提取),得到二次训练样本相应的训练标签;将二次训练样本输入初步训练得到的预测模型,得到二次训练样本的训练预测推荐收益值;按照二次训练样本的训练预测推荐收益值与训练标签的差异,调整预测模型的模型参数并继续训练,直至满足二次训练停止条件时结束二次训练。其中,初步训练得到的预测模型与二次训练得到的预测模型,在进行推荐内容推荐时推荐内容的推荐排序不同。也就是说,学习到的预测策略不同。
举例说明,参考图8,图8中展示了分别使用初步训练得到的预测模型和二次训练得到的预测模型在预测推荐排序上的对比。在用户进入推荐场景后,首先推荐了3篇IT类文章和1篇社会类文章,用户点击了1篇IT类文章。基于初步训练得到的预测模型(Action1)接着又展示2篇IT类文章,由于IT类文章过多导致用户厌倦,只点击其中1篇。如果此时用户离开,Action1的推荐点击收益为2(点击了两篇文章),推荐多样性收益为1(点击了一类文章)。基于二次训练得到的预测模型(Action2)则接着展示1篇金融类文章和1篇娱乐类文章,文章的类别多样性的增加给了用户惊喜导致用户都发生了点击。如果此时用户离开,Action2的推荐点击收益为3(点击了三篇文章),推荐多样性收益为3(点击了三类文章)。由此可见,Action2的推荐点击收益和多样性收益均高于Action1。也就是说,二次训练得到的预测模型较初步训练得到的预测模型学习到了更优的预测策略。
在本实施例中,在训练数据不足、模型训练效果不佳的场景下,利用初步训练的模型来产生新的训练数据,进一步训练模型,以使得模型得到优化。
总的来说,训练模型的过程中,测试推荐内容序列也是历史推荐内容序列。历史是在时间上相对的概念。而在后续使用二次训练的推荐模型进行推荐的过程中,推荐后产生的推荐内容序列也是历史推荐内容序列,也可以用于得到新的训练样本对预测模型进行进一步训练。也就是说,模型的使用和训练可以是循环往复的过程,这样,基于大量的、不断产生的用户数据,预测模型可以逐渐学习到更优的、更能为用于用户个性化推荐的预测策略。
在一个实施例中,根据当前历史推荐内容和当前历史推荐内容后连续多个历史推荐内容各自的点击参数、及各自所属的类别,得到训练样本相应的训练标签,包括:对于当前历史推荐内容和当前历史推荐内容后连续多个历史推荐内容中的各历史推荐内容,分别根据相应的点击参数和所属类别生成各历史推荐内容的实际推荐收益值;结合各实际推荐收益值,得到训练样本相应的训练标签。
其中,实际推荐收益值是推荐内容在推荐后真实收益的量化数值。可以理解,推荐内容在推荐后即产生了真实收益。也就是说,每个历史推荐内容的实际推荐收益值是能够得到的。在本实施例中,从点击行为和多样性两个方面考量推荐内容在推荐之后的收益。点击行为与点击参数有关,多样性与推荐内容所属的类别相关。
具体地,计算机设备可采用强化学习(Deep Q-Learning,DQN)的方式训练预测模型。深度强化学习将深度学习(Deep Learning)的感知能力和强化学习(ReinforcementLearning)的决策能力相结合的模型训练方式。
其中,强化学习是学习一个最优策略,可以让本体(Agent)在特定环境中,根据当前的状态(State),做出行动(Action),从而获得最大回报(Reward)。强化学习可以简单通过<A,S,R,P>四元组进行建模。A代表的是Action,是Agent发出的动作;State是Agent所能感知的世界的状态;Reward是一个实数值,代表奖励或惩罚;P则是Agent所交互世界。在本申请实施例中,A是推荐内容,S是当前处于的状态,R是推荐内容的推荐收益值Reward,P是推荐预测模型。
<A,S,R,P>四元组之间的影响关系如下:Action space:A,即所有的动作A构成了动作空间Action space。State space:S,即所有的状态S构成了状态空间State space。Reward:R:S×A×S'→R,即在当前状态S下,执行了动作A后,当前状态变为S',并得到动作A对应的奖励R。Transition:P:S×A→S',即当前状态S下,执行了动作A后,当前状态变为S'。
事实上,强化学习的过程是一个不断迭代的过程,如图9所示,在不断迭代的过程中,对于主体而言,收获了环境反馈的状态o(t)和奖励r(t)后,执行了动作a(t);对于环境而言,接受了主体执行的动作a(t)后,输出了环境反馈的状态o(t+1)和奖励r(t+1)。
在一个具体的实施例中,训练样本的训练标签如下式所示:
Qπ(s,a)=E[rt+1+γrt+2+γ2rt+3+...|s,a] (1)
模型的输出为Q(s,a),那么模型的优化目标如下式所示:
L=f(Qπ(s,a),Q(s,a)) (2)
其中,rt+1是当前历史推荐内容的实际推荐收益值,rt+2为当前历史推荐内容相邻的下一个历史推荐内容的实际推荐收益值,并依次类推。γ∈(0,1)为折扣系数,是当前历史推荐内容之后的历史推荐内容的奖励折现到当前样本的衰减系数,也就是当前历史推荐内容对其后的推荐内容收益的影响系数。模型的优化目标是模型输出与训练标签差异的函数,最小化模型输出与训练标签差异的方向,即为优化目标的优化方向。
在一个具体的实施例中,采用的是线性Q值函数,Q值预估用的是TD(0)的方式(即只考虑下一个状态的Bellman方程),此时,仅考量连续两个历史推荐内容的联合特征作为训练样本,那么训练样本的训练标签如下式所示:
Qπ(s,a)=Es',a'[r+γQπ(s',a')|s,a] (3)
当然,在另外的实时中,为了获得更强大的模型表征能力,可以使用其他更复杂的强化学习方法。比如可以使用RNN进行Q值拟合,更复杂的A3C,DDPG等深度强化学习的方法同样适用。
上述实施例中,不再将单独的历史推荐内容依据来训练预测模型,而是考虑到历史推荐内容之间的影响,将连续多个历史推荐内容的联合特征共同作为预测模型的训练样本,并根据该训练样本源自的多个历史推荐内容的实际推荐收益值来得到训练样本的训练标签,使得模型学习到的推荐预测能力更合理。
在一个实施例中,历史推荐内容的实际推荐收益值的生成步骤包括:确定历史推荐内容的点击参数所对应的点击行为收益值;当历史推荐内容的点击参数表示历史推荐内容经过点击行为、且历史推荐内容所属类别为一次完整浏览过程中新增浏览的类别时,则确定历史推荐内容所对应的多样性收益值;一次完整浏览过程子自进入推荐内容展示页面始至退出推荐内容展示页面终;将历史推荐内容对应的点击行为收益值和多样性收益值之和,作为历史推荐内容的实际推荐收益值。
一方面,计算机设备在向用户推荐推荐内容后,是希望用户能够点击推荐内容进行进一步查看。那么,在设计训练样本的训练标签时将历史推荐内容的点击参数纳入考量;也就是在设计推荐内容的推荐收益值时,将历史推荐内容的点击行为收益值纳入考量。即,Reward=Click+Diversity。
具体地,计算机设备可根据每个历史推荐内容对应的点击参数,确定每个历史推荐内容的点击行为收益值。历史推荐内容对应的点击参数用于表示该历史推荐内容是否经历过点击行为。比如,点击行为收益值Click与用户是否点击相关;历史推荐内容经过点击行为,也就是被用户点击查看,则Click=1;历史推荐内容未经过点击行为,也就是未被用户点击查看,则Click=0。
另一方面,计算机设备在向用户进行推荐内容推荐时,希望提高推荐内容展示的多样性,也就是展示的推荐内容的类别多样化,避免相似的推荐内容被重复推荐出来影响用户浏览兴趣。那么,那么,在设计训练样本的训练标签时将历史推荐内容所属类别纳入考量;也就是在设计推荐内容的推荐收益值时,将历史推荐内容的多样性收益值纳入考量。
具体地,对于每个历史推荐内容,其对应的多样性收益与其所属的类别有关,且只有在该历史推荐内容经过点击行为,且所属的类别为一次完整浏览过程中新增的类别时,该历史推荐内容才对应存在非零的多样性收益值。
举例说明,假设用户在进入推荐内容展示页面到离开该页面的一次完整浏览过程中,点击查看了历史推荐内容1,该历史推荐内容所属的类别为A类别。如果在本次完整浏览过程中、且在点击查看历史推荐内容1前,用户并未点击查看A类别的历史推荐内容,那么历史推荐内容1对应存在非零的多样性收益值。如果在本次完整浏览过程中、且在点击查看历史推荐内容1前,用户已经点击查看过A类别的历史推荐内容,那么历史推荐内容1的多样性收益值为零。当然,若一个历史推荐内容尚未被点击查看过,那么该历史推荐内容的多样性收益值也为零。
具体地,计算机设备可根据每个历史推荐内容所属的类别、该历史推荐内容所属的一次完整浏览过程中在该类别之前点击的推荐内容所属类别,确定每个历史推荐内容的多样性收益值。将各历史推荐内容对应的点击行为收益值和多样性收益值之和,作为该历史推荐内容的实际推荐收益值。
在一个实施例中,所述确定所述历史推荐内容所对应的多样性收益值,包括:确定历史推荐内容在推荐内容展示页面的展示深度;将展示深度所匹配的多样性收益值,作为历史推荐内容所对应的多样性收益值。
可以理解,考虑到随着用户的浏览位置的加深用户对已阅读内容的疲劳程度越大,故需逐渐加强多样性。需要说明的是,由于终端界面尺寸有限,通常情况下无法将所有的历史推荐内容一次全部展示,而是随着页面的滑动依次进行显示,那么历史推荐内容在推荐内容展示页面的展示深度,可以是推荐内容展示页面滑动的深度。
在本实施例中,计算机设备可事先设置推荐内容的多样性收益与推荐内容在推荐内容展示页面的展示深度相关。具体地,推荐内容的多样性收益可以是推荐内容在推荐内容展示页面的展示深度的函数:Diversity=f(Depth)。其中,Diversity为多样性收益,Depth为展示深度。
图10示出了一个实施例中多样性收益函数的示意图。如图10所示,推荐内容展示页面的展示深度是按照终端在显示推荐内容时的屏数划分的。比如,终端打开推荐内容展示页面后,是第一屏的推荐内容,随着推荐内容展示页面的滑动,继续显示第二屏、第三屏…的推荐内容。同一屏中的每个推荐内容的多样性收益函数相同。比如第一屏的推荐内容的Diversity要么为0要么为2.0。当然,在另外的实施例中,多样性收益函数还可以其他形式的函数,只要多样性收益与展示深度成正比即可,也就是展示深度越深,多样性收益越大。
图11示出了一个实施例中产生多样性收益的示意图。参考图11,图中每个图形代表一个推荐内容及其类别。假设终端每屏可展示5个推荐内容,终端第一屏展示了三个IT类推荐内容、一个社会类推荐内容和一个娱乐类推荐内容。随着用户滑动页面,增加展示了一个社会类推荐内容、一个IT类推荐内容和一个金融类推荐内容。用户在浏览过程中点击了其中2个推荐内容:娱乐类推荐内容和金融类推荐内容,而且,娱乐类和金融类的推荐内容之间都未被点击过,那么这两个推荐内容产生了多样性收益值,而剩余的已展示的其他推荐内容的多样性收益值即为0。
在本实施例中,在考虑推荐内容的多样性收益时主要是依赖于推荐内容的展示深度,考虑到随着用户的浏览位置的加深用户对已阅读内容的疲劳程度越大,这样得到的多样性收益更合理。
上述实施例中,在考虑推荐内容的收益时主要考虑的是推荐内容的多样性收益,并兼顾点击行为收益,既在一定程度上避免了在推荐时重复推荐相似的推荐内容导致推荐效果降低,而且可以提高推荐内容的点击率。
在一个实施例中,根据训练样本和各训练样本相应的训练标签训练预测模型,包括:将训练样本分配至多个训练设备上并行训练预测模型;当接收到其中的一个训练设备关于调整预测模型的请求时,将调整的模型参数下发至其他的训练设备继续训练,直至满足训练停止条件时结束训练。
具体地,计算机设备在训练预测模型可将训练样本分配至多个训练设备上并行训练。在每个训练设备在训练时需要对预测模型的模型参数进行调整时,将预测模型的模型参数的调整同步至计算机设备,计算机设备再将预测模型的模型参数的调整同步至其他训练设备。这样可以合理利用训练设备的运算能力,缩短模型训练的耗时,尤其是在输入样本量大的场景。
图12示出了一个实施例中模型训练方法和内容推荐方法结合的流程示意图。参考图12,服务器可获取多个用户的浏览日志,从这些浏览日志中获取按照历史推荐顺序排列的历史推荐内容序列;继而结合各历史推荐内容相应用户标识所对应的用户特征,生成各历史推荐内容相应的联合特征。服务器可自历史推荐内容序列的首个历史推荐内容起,按照历史推荐顺序,依次将历史推荐内容序列中的每个历史推荐内容作为当前样本;再将当前样本和当前样本相邻的下一个历史推荐内容的联合特征共同作为预测模型的输入样本,从而得到有序的训练样本序列。对于训练样本序列中的每个训练样本,根据每个训练样本所源自的多个历史推荐内容各自的点击参数、及各自所属的类别,得到每个训练样本相应的训练标签。服务器再将训练样本分配至多个训练设备上并行训练,得到训练好的推荐模型。
服务器在训练完预测模型,并获取目标终端发起的推荐请求后,获取多个推荐内容;结合目标用户特征,生成各推荐内容相应的联合特征;将各联合特征输入预测模型,得到相应推荐内容的预测推荐收益值;将这多个推荐内容按照相应的预测推荐收益值降序排序;根据降序排序的结果,从这多个推荐内容中挑选推荐内容推荐至目标终端。目标终端则在推荐内容展示页面按序展示服务器推荐的推荐内容。
应该理解的是,虽然上述各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图13所示,在一个实施例中,提供了一种内容推荐装置1300。参照图13,该内容推荐装置1300包括:获取模块1301、生成模块1302、处理模块1303、确定模块1304和推荐模块1305。
获取模块1301,用于获取目标用户数据和多个推荐内容;多个推荐内容所属类别多于一种。
生成模块1302,用于结合目标用户数据生成各推荐内容相应的联合特征。
处理模块1303,用于基于各联合特征获得相应推荐内容的预测推荐收益值。
确定模块1304,用于根据多个推荐内容各自的预测推荐收益值,确定多个推荐内容的推荐排序;在推荐排序下属于不同类别的推荐内容交叉排列。
推荐模块1305,用于按照推荐排序从多个推荐内容中挑选推荐内容进行推荐。
上述内容推荐装置1300,在进行推荐内容推荐时,推荐的是多种不同类别的推荐内容;而且,对于各推荐内容,均是联合了目标用户的用户数据来生成各自针对目标用户的个性化特征,继而可以根据各推荐内容的个性化特征更准确地获得相应推荐内容的预测推荐收益值,从而依据这些推荐内容各自的预测推荐收益值来进行推荐排序。其中,在推荐排序下属于不同类别的推荐内容是交叉进行排列的,这样使得在进行推荐内容推荐时既实现了推荐的多样性需求,又大大地提高了推荐的准确性。
在一个实施例中,获取模块1301还用于当接收到目标终端在开启推荐内容展示页面时发起的推荐请求时,则从与目标终端对应的用户数据库中,获取与目标终端对应的用户基础数据和历史的推荐内容浏览数据;从推荐内容库中获取多个类别下的多个推荐内容。
在一个实施例中,多个推荐内容的推荐排序为第一推荐排序。获取模块1301还用于当接收到目标终端在产生页面滑动指令时发起的推荐请求时,则获取自上次发起推荐请求的时间节点至当前时间节点新增的推荐内容浏览数据。生成模块1302还用于结合新增的推荐内容浏览数据重新生成剩余的推荐内容相应的联合特征:剩余的推荐内容,包括多个推荐内容中尚未在推荐内容展示页面中展示的推荐内容。处理模块1303还用于基于重新生成的各联合特征获得相应推荐内容的预测推荐收益值。确定模块1304还用于根据剩余的推荐内容各自的预测推荐收益值,确定剩余的推荐内容的第二推荐排序;第二推荐排序异于第一推荐排序。推荐模块1305还用于按照第二推荐排序从剩余的推荐内容中挑选推荐内容进行推荐。
在一个实施例中,推荐模块1305还用于获取目标用户数据相应目标终端所对应的推荐数量;从推荐排序下的推荐内容中的首个推荐内容起,按照推荐排序挑选推荐数量的推荐内容推荐至目标终端。
在一个实施例中,处理模块1303还用于将各联合特征输入预测模型,得到相应推荐内容的预测推荐收益值;预测模型的训练样本为连续推荐的历史推荐内容的联合特征;训练样本的训练标签与连续推荐的历史推荐内容的点击参数及所属的类别相关。
如图14所示,在一个实施例中,内容推荐装置1300还包括训练模块1306。
训练模块1306,用于获取按照历史推荐顺序排列的历史推荐内容序列;结合各历史推荐内容相应用户标识所对应的用户数据,生成各历史推荐内容相应的联合特征;按照历史推荐顺序依次将历史推荐内容序列中的历史推荐内容作为当前历史推荐内容,并将当前历史推荐内容和当前历史推荐内容后连续多个历史推荐内容的联合特征,共同作为预测模型的训练样本;根据当前历史推荐内容和当前历史推荐内容后连续多个历史推荐内容各自的点击参数、及各自所属的类别,得到训练样本相应的训练标签;根据各训练样本和相应的训练标签训练预测模型。
在一个实施例中,训练样本为初步训练样本。训练模块1306还用于将初步训练样本输入初始的预测模型,得到初步训练样本的训练预测推荐收益值;按照初步训练样本的训练预测推荐收益值与训练标签的差异,调整预测模型的模型参数并继续训练,直至满足初步训练停止条件时结束训练。
在一个实施例中,训练模块1306还用于采用初步训练得到的预测模型进行推荐测试,得到测试推荐内容序列,以及对应测试推荐内容序列产生的测试推荐内容浏览数据;测试推荐内容浏览数据包括各测试推荐内容的点击参数和所属类别;结合测试推荐内容浏览数据生成各测试推荐内容相应的联合特征;基于测试推荐内容序列,得到预测模型的二次训练样本;从测试推荐内容浏览数据中提取二次训练样本相应的训练标签;根据各二次训练样本和相应的训练标签二次训练预测模型;其中,初步训练得到的预测模型与二次训练得到的预测模型,在进行推荐内容推荐时推荐内容的推荐排序不同。
在一个实施例中,训练模块1306还用于对于当前历史推荐内容和当前历史推荐内容后连续多个历史推荐内容中的各历史推荐内容,分别根据相应的点击参数和所属类别生成各历史推荐内容的实际推荐收益值;结合各实际推荐收益值,得到训练样本相应的训练标签;训练标签,用于反映当前历史推荐内容和当前历史推荐内容后连续多个历史推荐内容在推荐后的累计收益值。
在一个实施例中,训练模块1306还用于确定历史推荐内容的点击参数所对应的点击行为收益值;当历史推荐内容的点击参数表示历史推荐内容经过点击行为、且历史推荐内容所属类别为一次完整浏览过程中新增浏览的类别时,则确定历史推荐内容所对应的多样性收益值;一次完整浏览过程自进入推荐内容展示页面始至退出推荐内容展示页面终;将历史推荐内容对应的点击行为收益值和多样性收益值之和,作为历史推荐内容的实际推荐收益值。
在一个实施例中,训练模块1306还用于确定历史推荐内容在推荐内容展示页面的展示深度;将展示深度所匹配的多样性收益值,作为历史推荐内容所对应的多样性收益值。
图15示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的终端110(或服务器120)。如图15所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现内容推荐方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行内容推荐方法。本领域技术人员可以理解,图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的内容推荐装置可以实现为一种计算机程序的形式,计算机程序可在如图15所示的计算机设备上运行。计算机设备的存储器中可存储组成该内容推荐装置的各个程序模块,比如,图13所示的获取模块1301、生成模块1302、处理模块1303、确定模块1304和推荐模块1305。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的内容推荐方法中的步骤。
例如,图15所示的计算机设备可以通过如图13所示的内容推荐装置1300中的获取模块1301获取目标用户数据和多个推荐内容;多个推荐内容所属类别多于一种。通过生成模块1302结合目标用户数据生成各推荐内容相应的联合特征。通过处理模块1303基于各联合特征获得相应推荐内容的预测推荐收益值。通过确定模块1304根据多个推荐内容各自的预测推荐收益值,确定多个推荐内容的推荐排序;在推荐排序下属于不同类别的推荐内容交叉排列。通过推荐模块1305按照推荐排序从多个推荐内容中挑选推荐内容进行推荐。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述内容推荐方法的步骤。此处内容推荐方法的步骤可以是上述各个实施例的内容推荐方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述内容推荐方法的步骤。此处内容推荐方法的步骤可以是上述各个实施例的内容推荐方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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 (21)
1.一种内容推荐方法,包括:
获取目标用户数据和多个推荐内容;所述多个推荐内容所属类别多于一种;
结合所述目标用户数据生成各所述推荐内容相应的联合特征;
将各所述联合特征输入预测模型,得到相应推荐内容的预测推荐收益值;
根据所述多个推荐内容各自的预测推荐收益值,确定所述多个推荐内容的推荐排序;在所述推荐排序下属于不同类别的推荐内容交叉排列;
按照所述推荐排序从所述多个推荐内容中挑选推荐内容进行推荐;
所述预测模型的训练步骤包括:
获取按照历史推荐顺序排列的历史推荐内容序列;
结合各所述历史推荐内容相应用户标识所对应的用户数据,生成各所述历史推荐内容相应的联合特征;
按照所述历史推荐顺序依次将所述历史推荐内容序列中的历史推荐内容作为当前历史推荐内容,并将所述当前历史推荐内容和所述当前历史推荐内容后连续多个历史推荐内容的联合特征,共同作为预测模型的训练样本;
根据所述当前历史推荐内容和所述当前历史推荐内容后连续多个历史推荐内容各自的点击参数、及各自所属的类别,得到所述训练样本相应的训练标签;
根据各所述训练样本和相应的训练标签训练所述预测模型;
所述预测模型的单个训练样本为源于一次完整浏览过程且连续推荐的多个历史推荐内容的联合特征,所述一次完整浏览过程是自进入推荐内容展示页面始至退出所述推荐内容展示页面终;所述训练标签是基于所述连续推荐的多个历史推荐内容的点击行为收益值和多样性收益值得到的,所述多样性收益值与所述历史推荐内容在所述推荐内容展示页面的展示深度相对应且与所述历史推荐内容所属的类别相关;所述训练样本的训练标签与所述连续推荐的历史推荐内容的点击参数及所属的类别相关。
2.根据权利要求1所述的方法,其特征在于,所述获取目标用户数据和多个推荐内容,包括:
当接收到目标终端在开启推荐内容展示页面时发起的推荐请求时,则
从与所述目标终端对应的用户数据库中,获取与所述目标终端对应的用户基础数据和历史的推荐内容浏览数据;
从推荐内容库中获取多个类别下的多个推荐内容。
3.根据权利要求2所述的方法,其特征在于,所述多个推荐内容的推荐排序为第一推荐排序;所述方法还包括:
当接收到所述目标终端在产生页面滑动指令时发起的推荐请求时,则获取自上次发起推荐请求的时间节点至当前时间节点新增的推荐内容浏览数据;
结合新增的推荐内容浏览数据重新生成剩余的推荐内容相应的联合特征:所述剩余的推荐内容,包括所述多个推荐内容中尚未在所述推荐内容展示页面中展示的推荐内容;
基于重新生成的各所述联合特征获得相应推荐内容的预测推荐收益值;
根据所述剩余的推荐内容各自的预测推荐收益值,确定所述剩余的推荐内容的第二推荐排序;所述第二推荐排序异于所述第一推荐排序;
按照所述第二推荐排序从所述剩余的推荐内容中挑选推荐内容进行推荐。
4.根据权利要求1所述的方法,其特征在于,所述按照所述推荐排序从所述多个推荐内容中挑选推荐内容推荐至目标终端,包括:
获取所述目标用户数据相应目标终端所对应的推荐数量;
从所述推荐排序下的推荐内容中的首个推荐内容起,按照所述推荐排序挑选所述推荐数量的推荐内容推荐至所述目标终端。
5.根据权利要求1所述的方法,其特征在于,所述训练样本为初步训练样本;所述根据各所述训练样本和相应的训练标签训练所述预测模型,包括:
将所述初步训练样本输入初始的预测模型,得到所述初步训练样本的训练预测推荐收益值;
按照所述初步训练样本的训练预测推荐收益值与训练标签的差异,调整所述预测模型的模型参数并继续训练,直至满足初步训练停止条件时结束训练。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
采用初步训练得到的预测模型进行推荐测试,得到测试推荐内容序列,以及对应所述测试推荐内容序列产生的测试推荐内容浏览数据;所述测试推荐内容浏览数据包括各测试推荐内容的点击参数和所属类别;
结合所述测试推荐内容浏览数据生成各所述测试推荐内容相应的联合特征;
基于所述测试推荐内容序列,得到所述预测模型的二次训练样本;
从所述测试推荐内容浏览数据中提取所述二次训练样本相应的训练标签;
根据各所述二次训练样本和相应的训练标签二次训练所述预测模型;
其中,初步训练得到的预测模型与二次训练得到的预测模型,在进行推荐内容推荐时推荐内容的推荐排序不同。
7.根据权利要求1所述的方法,其特征在于,根据所述当前历史推荐内容和所述当前历史推荐内容后连续多个历史推荐内容各自的点击参数、及各自所属的类别,得到所述训练样本相应的训练标签,包括:
对于所述当前历史推荐内容和所述当前历史推荐内容后连续多个历史推荐内容中的各历史推荐内容,分别根据相应的点击参数和所属类别生成各历史推荐内容的实际推荐收益值;
结合各所述实际推荐收益值,得到所述训练样本相应的训练标签;所述训练标签,用于反映所述当前历史推荐内容和所述当前历史推荐内容后连续多个历史推荐内容在推荐后的累计收益值。
8.根据权利要求7所述的方法,其特征在于,所述历史推荐内容的实际推荐收益值的生成步骤包括:
确定历史推荐内容的点击参数所对应的点击行为收益值;
当所述历史推荐内容的点击参数表示所述历史推荐内容经过点击行为、且所述历史推荐内容所属类别为一次完整浏览过程中新增浏览的类别时,则确定所述历史推荐内容所对应的多样性收益值;
将所述历史推荐内容对应的点击行为收益值和多样性收益值之和,作为所述历史推荐内容的实际推荐收益值。
9.根据权利要求8所述的方法,其特征在于,所述确定所述历史推荐内容所对应的多样性收益值,包括:
确定所述历史推荐内容在推荐内容展示页面的展示深度;
将所述展示深度所匹配的多样性收益值,作为所述历史推荐内容所对应的多样性收益值。
10.一种内容推荐装置,包括:
获取模块,用于获取目标用户数据和多个推荐内容;所述多个推荐内容所属类别多于一种;
生成模块,用于结合所述目标用户数据生成各所述推荐内容相应的联合特征;
处理模块,用于将各所述联合特征输入预测模型,得到相应推荐内容的预测推荐收益值;
确定模块,用于根据所述多个推荐内容各自的预测推荐收益值,确定所述多个推荐内容的推荐排序;在所述推荐排序下属于不同类别的推荐内容交叉排列;
推荐模块,用于按照所述推荐排序从所述多个推荐内容中挑选推荐内容进行推荐;
所述装置还包括训练模块,所述训练模块用于:获取按照历史推荐顺序排列的历史推荐内容序列;结合各所述历史推荐内容相应用户标识所对应的用户数据,生成各所述历史推荐内容相应的联合特征;按照所述历史推荐顺序依次将所述历史推荐内容序列中的历史推荐内容作为当前历史推荐内容,并将所述当前历史推荐内容和所述当前历史推荐内容后连续多个历史推荐内容的联合特征,共同作为预测模型的训练样本;根据所述当前历史推荐内容和所述当前历史推荐内容后连续多个历史推荐内容各自的点击参数、及各自所属的类别,得到所述训练样本相应的训练标签;根据各所述训练样本和相应的训练标签训练所述预测模型;
所述预测模型的单个训练样本为源于一次完整浏览过程且连续推荐的多个历史推荐内容的联合特征,所述一次完整浏览过程是自进入推荐内容展示页面始至退出所述推荐内容展示页面终;所述训练标签是基于所述连续推荐的多个历史推荐内容的点击行为收益值和多样性收益值得到的,所述多样性收益值与所述历史推荐内容在所述推荐内容展示页面的展示深度相对应且与所述历史推荐内容所属的类别相关;所述训练样本的训练标签与所述连续推荐的历史推荐内容的点击参数及所属的类别相关。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括:
训练模块,用于获取按照历史推荐顺序排列的历史推荐内容序列;结合各所述历史推荐内容相应用户标识所对应的用户数据,生成各所述历史推荐内容相应的联合特征;按照所述历史推荐顺序依次将所述历史推荐内容序列中的历史推荐内容作为当前历史推荐内容,并将所述当前历史推荐内容和所述当前历史推荐内容后连续多个历史推荐内容的联合特征,共同作为预测模型的训练样本;根据所述当前历史推荐内容和所述当前历史推荐内容后连续多个历史推荐内容各自的点击参数、及各自所属的类别,得到所述训练样本相应的训练标签;根据各所述训练样本和相应的训练标签训练所述预测模型。
12.根据权利要求10所述的装置,其特征在于,所述获取模块还用于:当接收到目标终端在开启推荐内容展示页面时发起的推荐请求时,则从与所述目标终端对应的用户数据库中,获取与所述目标终端对应的用户基础数据和历史的推荐内容浏览数据;从推荐内容库中获取多个类别下的多个推荐内容。
13.根据权利要求12所述的装置,其特征在于,所述多个推荐内容的推荐排序为第一推荐排序;
所述获取模块还用于:当接收到所述目标终端在产生页面滑动指令时发起的推荐请求时,则获取自上次发起推荐请求的时间节点至当前时间节点新增的推荐内容浏览数据;结合新增的推荐内容浏览数据重新生成剩余的推荐内容相应的联合特征:所述剩余的推荐内容,包括所述多个推荐内容中尚未在所述推荐内容展示页面中展示的推荐内容;基于重新生成的各所述联合特征获得相应推荐内容的预测推荐收益值;根据所述剩余的推荐内容各自的预测推荐收益值,确定所述剩余的推荐内容的第二推荐排序;所述第二推荐排序异于所述第一推荐排序;
所述推荐模块还用于:按照所述第二推荐排序从所述剩余的推荐内容中挑选推荐内容进行推荐。
14.根据权利要求10所述的装置,其特征在于,所述推荐模块还用于:获取所述目标用户数据相应目标终端所对应的推荐数量;从所述推荐排序下的推荐内容中的首个推荐内容起,按照所述推荐排序挑选所述推荐数量的推荐内容推荐至所述目标终端。
15.根据权利要求10所述的装置,其特征在于,所述训练模块还用于:将初步训练样本输入初始的预测模型,得到所述初步训练样本的训练预测推荐收益值;按照所述初步训练样本的训练预测推荐收益值与训练标签的差异,调整所述预测模型的模型参数并继续训练,直至满足初步训练停止条件时结束训练。
16.根据权利要求15所述的装置,其特征在于,所述训练模块还用于:采用初步训练得到的预测模型进行推荐测试,得到测试推荐内容序列,以及对应所述测试推荐内容序列产生的测试推荐内容浏览数据;所述测试推荐内容浏览数据包括各测试推荐内容的点击参数和所属类别;结合所述测试推荐内容浏览数据生成各所述测试推荐内容相应的联合特征;基于所述测试推荐内容序列,得到所述预测模型的二次训练样本;从所述测试推荐内容浏览数据中提取所述二次训练样本相应的训练标签;根据各所述二次训练样本和相应的训练标签二次训练所述预测模型;
其中,初步训练得到的预测模型与二次训练得到的预测模型,在进行推荐内容推荐时推荐内容的推荐排序不同。
17.根据权利要求10所述的装置,其特征在于,所述训练模块还用于:对于所述当前历史推荐内容和所述当前历史推荐内容后连续多个历史推荐内容中的各历史推荐内容,分别根据相应的点击参数和所属类别生成各历史推荐内容的实际推荐收益值;结合各所述实际推荐收益值,得到所述训练样本相应的训练标签;所述训练标签,用于反映所述当前历史推荐内容和所述当前历史推荐内容后连续多个历史推荐内容在推荐后的累计收益值。
18.根据权利要求17所述的装置,其特征在于,所述训练模块还用于:确定历史推荐内容的点击参数所对应的点击行为收益值;当所述历史推荐内容的点击参数表示所述历史推荐内容经过点击行为、且所述历史推荐内容所属类别为一次完整浏览过程中新增浏览的类别时,则确定所述历史推荐内容所对应的多样性收益值;将所述历史推荐内容对应的点击行为收益值和多样性收益值之和,作为所述历史推荐内容的实际推荐收益值。
19.根据权利要求18所述的装置,其特征在于,所述训练模块还用于:确定所述历史推荐内容在推荐内容展示页面的展示深度;将所述展示深度所匹配的多样性收益值,作为所述历史推荐内容所对应的多样性收益值。
20.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至9中任一项所述方法的步骤。
21.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至9中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910114843.7A CN110263244B (zh) | 2019-02-14 | 2019-02-14 | 内容推荐方法、装置、存储介质和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910114843.7A CN110263244B (zh) | 2019-02-14 | 2019-02-14 | 内容推荐方法、装置、存储介质和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110263244A CN110263244A (zh) | 2019-09-20 |
CN110263244B true CN110263244B (zh) | 2024-02-13 |
Family
ID=67911706
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910114843.7A Active CN110263244B (zh) | 2019-02-14 | 2019-02-14 | 内容推荐方法、装置、存储介质和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110263244B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110728375B (zh) * | 2019-10-16 | 2021-03-19 | 支付宝(杭州)信息技术有限公司 | 多个计算单元联合训练逻辑回归模型的方法和装置 |
CN110996142B (zh) * | 2019-11-08 | 2021-12-07 | 北京奇艺世纪科技有限公司 | 视频召回方法及装置、电子设备及存储介质 |
CN111008332B (zh) * | 2019-12-03 | 2023-04-07 | 深圳市雅阅科技有限公司 | 内容项推荐方法、装置、服务器以及存储介质 |
CN113032034A (zh) * | 2019-12-06 | 2021-06-25 | 北京达佳互联信息技术有限公司 | 控制应用程序的方法、装置、服务器及存储介质 |
CN111209386B (zh) * | 2020-01-07 | 2022-04-12 | 重庆邮电大学 | 一种基于深度学习的个性化文本推荐方法 |
CN111309939B (zh) * | 2020-02-03 | 2023-02-28 | 天津智融创新科技发展有限公司 | 视频推荐排序方法和装置 |
CN111506803B (zh) * | 2020-03-17 | 2023-10-31 | 阿波罗智联(北京)科技有限公司 | 内容推荐方法、装置、电子设备及存储介质 |
CN111552549A (zh) * | 2020-04-26 | 2020-08-18 | 北京四达时代软件技术股份有限公司 | 一种智能设备的多任务请求动态配置方法及系统 |
CN111552835B (zh) * | 2020-05-08 | 2024-01-09 | 北京达佳互联信息技术有限公司 | 文件推荐方法、装置及服务器 |
CN111813992A (zh) * | 2020-07-14 | 2020-10-23 | 四川长虹电器股份有限公司 | 一种影视推荐候选集的排序系统及方法 |
CN111914077A (zh) * | 2020-08-06 | 2020-11-10 | 平安科技(深圳)有限公司 | 定制化话术推荐方法、装置、计算机设备及存储介质 |
CN113129108B (zh) * | 2021-04-26 | 2023-05-30 | 山东大学 | 基于Double DQN算法的产品推荐方法及装置 |
CN113689260B (zh) * | 2021-08-18 | 2023-08-08 | 青岛海信智慧生活科技股份有限公司 | 商品的搜索方法及装置 |
CN114881736B (zh) * | 2022-05-16 | 2023-12-19 | 阿里巴巴(中国)有限公司 | 推荐方法、显示方法及设备 |
CN115345656A (zh) * | 2022-08-10 | 2022-11-15 | 江西省众灿互动科技股份有限公司 | 一种用于精细化营销的行为数据分析方法 |
CN115168684B (zh) * | 2022-09-05 | 2022-11-22 | 南昌工程学院 | 一种财务档案管理方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106295832A (zh) * | 2015-05-12 | 2017-01-04 | 阿里巴巴集团控股有限公司 | 产品信息推送方法及装置 |
CN106407364A (zh) * | 2016-09-08 | 2017-02-15 | 北京百度网讯科技有限公司 | 一种基于人工智能的信息推荐方法和装置 |
CN108416625A (zh) * | 2018-02-28 | 2018-08-17 | 阿里巴巴集团控股有限公司 | 营销产品的推荐方法和装置 |
CN109062919A (zh) * | 2018-05-31 | 2018-12-21 | 腾讯科技(深圳)有限公司 | 一种基于深度强化学习的内容推荐方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016201631A1 (en) * | 2015-06-17 | 2016-12-22 | Yahoo! Inc. | Systems and methods for online content recommendation |
-
2019
- 2019-02-14 CN CN201910114843.7A patent/CN110263244B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106295832A (zh) * | 2015-05-12 | 2017-01-04 | 阿里巴巴集团控股有限公司 | 产品信息推送方法及装置 |
CN106407364A (zh) * | 2016-09-08 | 2017-02-15 | 北京百度网讯科技有限公司 | 一种基于人工智能的信息推荐方法和装置 |
CN108416625A (zh) * | 2018-02-28 | 2018-08-17 | 阿里巴巴集团控股有限公司 | 营销产品的推荐方法和装置 |
CN109062919A (zh) * | 2018-05-31 | 2018-12-21 | 腾讯科技(深圳)有限公司 | 一种基于深度强化学习的内容推荐方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110263244A (zh) | 2019-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110263244B (zh) | 内容推荐方法、装置、存储介质和计算机设备 | |
US10958748B2 (en) | Resource push method and apparatus | |
CN110321422B (zh) | 在线训练模型的方法、推送方法、装置以及设备 | |
CN110297848B (zh) | 基于联邦学习的推荐模型训练方法、终端及存储介质 | |
CN109831684B (zh) | 视频优化推荐方法、装置及可读存储介质 | |
CN110209922B (zh) | 对象推荐方法、装置、存储介质及计算机设备 | |
US10096040B2 (en) | Management of the display of online ad content consistent with one or more performance objectives for a webpage and/or website | |
CN110263189B (zh) | 媒体内容的推荐方法、装置、存储介质和计算机设备 | |
CN110162698B (zh) | 一种用户画像数据处理方法、装置及存储介质 | |
EP4181026A1 (en) | Recommendation model training method and apparatus, recommendation method and apparatus, and computer-readable medium | |
CN108228873A (zh) | 对象推荐、发布内容推送方法、装置、存储介质和设备 | |
US20230066853A1 (en) | Method and apparatus for training information prediction models, method and apparatus for predicting information, and storage medium and device thereof | |
CN111859160B (zh) | 一种基于图神经网络会话序列推荐方法及系统 | |
CN111966914B (zh) | 基于人工智能的内容推荐方法、装置和计算机设备 | |
WO2021027256A1 (zh) | 处理交互序列数据的方法及装置 | |
CN111242310B (zh) | 特征有效性评估方法、装置、电子设备及存储介质 | |
CN103348342A (zh) | 基于用户话题简档的个人内容流 | |
CN110941764A (zh) | 对象推荐方法、装置、计算机设备和存储介质 | |
CN109087178A (zh) | 商品推荐方法和装置 | |
CN113688326B (zh) | 推荐方法、装置、设备及计算机可读存储介质 | |
CN109801101A (zh) | 标签确定方法、装置、计算机设备和存储介质 | |
CN111680213B (zh) | 信息推荐方法、数据处理方法及装置 | |
CN111552835A (zh) | 文件推荐方法、装置及服务器 | |
CN112559777A (zh) | 内容项投放方法、装置、计算机设备及存储介质 | |
CN114817692A (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20221116 Address after: 1402, Floor 14, Block A, Haina Baichuan Headquarters Building, No. 6, Baoxing Road, Haibin Community, Xin'an Street, Bao'an District, Shenzhen, Guangdong 518100 Applicant after: Shenzhen Yayue Technology Co.,Ltd. Address before: 518000 Tencent Building, No. 1 High-tech Zone, Nanshan District, Shenzhen City, Guangdong Province, 35 Floors Applicant before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |