CN116628345B - 一种内容推荐方法、装置、电子设备和存储介质 - Google Patents
一种内容推荐方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN116628345B CN116628345B CN202310855102.0A CN202310855102A CN116628345B CN 116628345 B CN116628345 B CN 116628345B CN 202310855102 A CN202310855102 A CN 202310855102A CN 116628345 B CN116628345 B CN 116628345B
- Authority
- CN
- China
- Prior art keywords
- content
- recommended
- attribute
- sample
- recommendation
- 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 126
- 238000003860 storage Methods 0.000 title claims abstract description 30
- 230000006399 behavior Effects 0.000 claims abstract description 199
- 238000012545 processing Methods 0.000 claims abstract description 44
- 239000013598 vector Substances 0.000 claims description 153
- 238000009826 distribution Methods 0.000 claims description 85
- 239000011159 matrix material Substances 0.000 claims description 76
- 238000012549 training Methods 0.000 claims description 67
- 238000010586 diagram Methods 0.000 claims description 47
- 230000015654 memory Effects 0.000 claims description 40
- 238000004590 computer program Methods 0.000 claims description 34
- 238000000605 extraction Methods 0.000 claims description 26
- 238000005295 random walk Methods 0.000 claims description 18
- 238000012217 deletion Methods 0.000 claims description 8
- 230000037430 deletion Effects 0.000 claims description 8
- 239000003550 marker Substances 0.000 claims description 6
- 238000000354 decomposition reaction Methods 0.000 claims description 5
- 230000003542 behavioural effect Effects 0.000 claims description 3
- 239000002131 composite material Substances 0.000 claims 1
- 239000000470 constituent Substances 0.000 claims 1
- 238000013473 artificial intelligence Methods 0.000 abstract description 17
- 238000005516 engineering process Methods 0.000 description 25
- 230000008569 process Effects 0.000 description 25
- 230000006870 function Effects 0.000 description 23
- 238000000638 solvent extraction Methods 0.000 description 16
- 238000004891 communication Methods 0.000 description 12
- 230000003068 static effect Effects 0.000 description 12
- 238000010801 machine learning Methods 0.000 description 10
- 230000009471 action Effects 0.000 description 8
- 238000003058 natural language processing Methods 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 7
- 238000012512 characterization method Methods 0.000 description 6
- 239000000284 extract Substances 0.000 description 6
- 238000005457 optimization Methods 0.000 description 6
- 208000011580 syndromic disease Diseases 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 241001201614 Prays Species 0.000 description 4
- 238000002372 labelling Methods 0.000 description 4
- 241000282472 Canis lupus familiaris Species 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 241001272996 Polyphylla fullo Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 238000013140 knowledge distillation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 235000001968 nicotinic acid Nutrition 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000004451 qualitative analysis Methods 0.000 description 1
- 238000004445 quantitative analysis Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000009331 sowing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请涉及计算机技术领域,尤其涉及人工智能技术领域,提供一种内容推荐方法、装置、电子设备和存储介质,用以提高内容推荐的准确度。其中,方法包括:根据各内容相关的历史反馈行为构建第一对象行为图网络,并基于第一对象行为图网络提取各内容中待推荐内容对应的内容反馈特征;针对待推荐内容的发布方在不同统计维度的属性特征,进行特征交叉处理,得到发布方的综合属性特征;基于内容反馈特征、综合属性特征和待推荐内容的内容属性特征,分别获得待推荐内容针对每个对象类的推荐参数;基于获得的各推荐参数,分别向相应的对象类关联的各对象推荐待推荐内容。本申请从对象、内容和内容发布方的角度综合理解内容,提高了内容推荐的准确度。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及人工智能技术领域,提供一种内容推荐方法、装置、电子设备和存储介质。
背景技术
随着互联网技术的发展,网络逐渐成为人们获取信息的重要来源。为了将信息迅速、有针对性地提供给感兴趣的对象,各种网站系统、互联网社区系统等都会根据特定的推荐方法向对象推荐信息流,方便对象找到感兴趣的内容。
在信息流推荐场景中,主流推荐方法为:使用对象曾经浏览并点击的内容标签对对象建立对象画像,并在随后该对象使用产品时,推荐和对象画像中的标签相似的内容。
该方式下,由于对象画像基本不会发生变化,内容的标签和分类也不会发生变化,因而对象看到的内容会一直趋向于类似,导致推荐的准确度较低。
发明内容
本申请实施例提供一种内容推荐方法、装置、电子设备和存储介质,用以提高内容推荐的准确度。
本申请实施例提供的一种内容推荐方法,包括:
根据各内容相关的历史反馈行为构建第一对象行为图网络,并基于所述第一对象行为图网络提取所述各内容中待推荐内容对应的内容反馈特征;
针对所述待推荐内容的发布方在不同统计维度的属性特征,进行特征交叉处理,得到所述发布方的综合属性特征;
提取所述待推荐内容的内容属性特征;
基于所述内容反馈特征、综合属性特征和所述内容属性特征,分别获得所述待推荐内容针对每个对象类的推荐参数;所述对象类是基于各对象的基础属性以及历史反馈行为中的至少一种划分得到的;
基于获得的各推荐参数,分别向相应的对象类关联的各对象推荐所述待推荐内容。
本申请实施例提供的一种内容推荐装置,包括:
第一提取单元,用于根据各内容相关的历史反馈行为构建第一对象行为图网络,并基于所述第一对象行为图网络提取所述各内容中待推荐内容对应的内容反馈特征;
第二提取单元,用于针对所述待推荐内容的发布方在不同统计维度的属性特征,进行特征交叉处理,得到所述发布方的综合属性特征;
第三提取单元,用于提取所述待推荐内容的内容属性特征;
预测单元,用于基于所述内容反馈特征、综合属性特征和所述内容属性特征,分别获得所述待推荐内容针对每个对象类的推荐参数;所述对象类是基于各对象的基础属性以及历史反馈行为中的至少一种划分得到的;
推荐单元,用于基于获得的各推荐参数,分别向相应的对象类关联的各对象推荐所述待推荐内容。
可选的,所述预测单元具体用于:
将所述内容反馈特征、综合属性特征和所述内容属性特征,输入已训练的内容推荐模型;
基于所述内容推荐模型,预测得到所述待推荐内容针对每个对象类的概率分布参数;所述概率分布参数用于描述目标概率分布的一种分布状态;
基于所述概率分布参数以及参考参数确定所述推荐参数,所述参考参数服从标准分布状态的目标概率分布。
可选的,所述目标概率分布为高斯分布;所述概率分布参数为均值和标准差。
可选的,所述预测单元还用于通过如下方式训练得到所述内容推荐模型:
基于训练样本集对待训练的内容推荐模型进行循环迭代训练,获得已训练的内容推荐模型;所述训练样本集中的每个训练样本包括:一个样本内容和相应的样本标签,所述样本标签包括:基于所述样本内容相关的历史反馈行为确定的,针对每个对象类的真实推荐参数;其中,每次迭代训练执行以下步骤:
从所述训练样本集中选取训练样本,并将所述训练样本中样本内容对应的内容反馈特征、内容属性特征和相应发布方的综合属性特征输入待训练的内容推荐模型,获得所述样本内容针对每个对象类的样本推荐参数;
基于各样本推荐参数与相应真实推荐参数之间的差异,对所述待训练的内容推荐模型进行参数调整。
可选的,所述预测单元还用于通过如下方式确定所述样本内容针对每个对象类的真实推荐参数:
对于每个对象类,基于所述对象类针对所述样本内容的历史反馈行为,确定所述样本内容对应的各类反馈概率;每类反馈概率表示将所述样本内容推荐给所述对象类后,所述对象类关联的各对象执行相应的目标反馈行为的概率;
将所述各类反馈概率进行加权求和,获得所述对象类对应的真实推荐参数。
可选的,所述装置还包括:
对象划分单元,用于通过执行以下操作,基于各对象的历史反馈行为划分对象类:
根据各样本内容相关的历史反馈行为构建第二对象行为图网络,所述第二对象行为图网络中的节点表示样本内容,存在边关系的两个节点表示被同一对象连续观看的样本内容;
从所述第二对象行为图网络中选取多个节点组成节点序列;
基于已训练的内容表示模型,获得所述节点序列对应的各样本内容各自的内容向量;
基于各内容向量,对所述各样本内容进行聚类;
基于聚类结果,将一定时间内观看同一类样本内容的对象作为一个对象类。
可选的,所述对象划分单元具体用于:
从所述第二对象行为图网络中,随机选取一个节点作为起始节点;
基于所述第二对象行为图网络中各条边的权重,从所述起始节点开始随机游走,获得指定长度的节点序列;
其中,每条边的权重表示所述边对应的第一关联对象与第二关联对象的数量比,所述第一关联对象为:观看所述边对应两个样本内容的对象,所述第二关联对象包括:观看各参考边对应的两个样本内容的对象,每条参考边都包含所述边中的目标节点。
可选的,所述第一对象行为图网络中的节点表示待推荐内容,存在边关系的两个节点表示被同一对象连续观看的内容;
所述第一提取单元,还用于:
对于所述第一对象行为图网络中的各条边,若所述边对应的两个内容未被同一对象执行指定反馈行为,则将所述边作为候选边;
从各候选边中选取至少一条进行删除,得到更新后的第一对象行为图网络。
可选的,所述第一提取单元具体用于:
获取所述第一对象行为图网络所对应的度矩阵和邻接矩阵;
基于所述度矩阵和邻接矩阵,以及所述各内容各自对应的初始内容向量,进行图表征学习,获得所述待推荐内容对应的内容反馈特征。
可选的,所述第二提取单元具体用于:
对于每个统计维度,根据所述统计维度下的属性特征的特征值所属的区间范围,以及目标权重矩阵,确定所述统计维度下,所述发布方对应的初始特征;
将各统计维度下的初始特征进行特征交叉处理,获得所述综合属性特征。
可选的,所述第二提取单元具体用于:
根据所述统计维度下的属性特征的特征值所属的区间范围,确定所述统计维度对应的标记值,每个区间范围对应一个标记值;
将所述标记值输入已训练的特征交叉模型,基于所述特征交叉模型将所述标记值进行编码;
基于获得的编码结果及所述特征交叉模型的嵌入层对应的目标权重矩阵,确定所述统计维度下,所述发布方对应的初始特征。
可选的,所述第二提取单元具体用于:
基于已训练的特征交叉模型中的因子分解机层,对每两个统计维度下的初始特征分别进行特征交叉处理,获得所述综合属性特征。
可选的,所述第三提取单元具体用于:
将所述待推荐内容的每类基础属性分别表示为多个属性向量;
对于每类基础属性,通过一维卷积处理,将所述基础属性对应的多个属性向量表示为一个综合向量;基于多模态注意力网络对所述综合向量进行特征提取,得到相应的目标向量;
将各基础属性对应的目标向量拼接,得到所述待推荐内容的内容属性特征。
可选的,所述推荐单元具体用于:
对于每个对象类,若所述对象类对应的推荐参数大于预设阈值,则对所述推荐参数进行加权处理;
基于获得的加权结果,向所述对象类关联的各对象推荐所述待推荐内容。
本申请实施例提供的一种电子设备,包括处理器和存储器,其中,所述存储器存储有计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器执行上述任意一种内容推荐方法的步骤。
本申请实施例提供一种计算机可读存储介质,其包括计算机程序,当所述计算机程序在电子设备上运行时,所述计算机程序用于使所述电子设备执行上述任意一种内容推荐方法的步骤。
本申请实施例提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序存储在计算机可读存储介质中;当电子设备的处理器从计算机可读存储介质读取所述计算机程序时,所述处理器执行所述计算机程序,使得所述电子设备执行上述任意一种内容推荐方法的步骤。
本申请有益效果如下:
本申请实施例提供了一种内容推荐方法、装置、电子设备和存储介质。由于本申请从对象的角度,基于对象针对内容的历史反馈行为可以获得表征对象反馈行为的内容反馈特征,并且从发布方的角度,提取发布方的综合属性特征,从内容本身的角度,提取内容属性特征,从对象的角度、内容的角度和内容发布方的角度综合地理解内容;并且,本申请为对象增加了类别的划分,在此基础上,为内容增加了对象类的倾向性得分(即本文中的推荐参数),可以更好地优化推荐系统。在实际推荐中,则可根据待推荐内容针对各个对象类的倾向性得分,进行内容推荐,对于得分高的,将在这个类别的对象中有更多被推荐的机会,很好的提高了内容推荐的准确度。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例中的一种应用场景的一个可选的示意图;
图2为本申请实施例中的一种内容推荐方法的实施流程图;
图3为本申请实施例中的一种第一对象行为图网络的示意图;
图4为本申请实施例中的另一种第一对象行为图网络的示意图;
图5为本申请实施例中的一种第一对象行为图网络和相关矩阵的示意图;
图6为本申请实施例中的一种特征交叉模型的具体网络结构的示意图;
图7为本申请实施例中的一种提取视频的内容属性特征的方法示意图;
图8为本申请实施例中的一种推荐参数的计算过程示意图;
图9为本申请实施例中的一种动态划分对象类的流程示意图;
图10为本申请实施例中的一种第二对象行为图网络的示意图;
图11A为本申请实施例中的一种内容表示模型的结构示意图;
图11B为本申请实施例中的另一种内容表示模型的结构示意图;
图12为本申请实施例中的一种视频聚类结果示意图;
图13A为本申请实施例中的一种内容推荐方法的逻辑示意图;
图13B为本申请实施例中的一种视频推荐方法的逻辑示意图;
图14为本申请实施例中的一种内容推荐装置的组成结构示意图;
图15为应用本申请实施例的一种电子设备的硬件组成结构示意图;
图16为应用本申请实施例的另一种电子设备的硬件组成结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请技术方案的一部分实施例,而不是全部的实施例。基于本申请文件中记载的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请技术方案保护的范围。
下面对本申请实施例中涉及的部分概念进行介绍。
对象反馈行为:指将信息流推荐给对象后,对象针对该信息流所产生的行为,如对象在信息流产品中进行浏览、点击、关注、点赞、评论、分享、转发、完整播放、快滑等,对象反馈行为可理解为这些操作的统称,也可称作对象消费行为。本申请实施例中,可描述内容相关对象消费行为的内容维度的特征为内容反馈特征。
账号主:简称号主,也即本文中内容的发布方,在信息流平台中发表内容的机构或者个体,其发表的视频、文章等内容可以被对象浏览并产生其他对象行为,也即本文中的对象反馈行为/对象消费行为。本申请实施例中,可描述内容对应的号主综合表现的特征为综合属性特征。
图(Graph):是一种常见的数据结构和载体。现实世界中许多场景可以抽象为一种图结构,如社交网络,交通网络,电商网站中对象与物品的关系等。图是由若干给定的点及连接两点的线构成的图形,这种图形通常用来描述某些事物之间的某种特定关系,用点代表事物,用连接两点的线表示相应两个事物具有这种关系。例如,在社交图上,对象之间的朋友关系可以视为图中节点之间的边。又如,在本申请实施例中的对象行为图上,内容可以视为图中的节点,两个内容为被同一对象连续查看的关系可以视为图中节点之间的边。在数学定义上,一个图可以被表示为G=(V,E),其中V为节点集合,E为边集合。根据边是否有方向,可将图分为有向图和无向图。另外,有些图的边上还可能有权值,这样的图成为有权图,有权图可以被表示为G=(V,E,W),其中W为边的权重集合。
图表征学习:是专门针对图数据域的技术,要求在输入节点属性、边和边的属性(如果有的话)得到一个向量作为图的表征。其主要思想为:通过学习一类映射,利用图本身的拓扑结构,将图中节点映射到低维稠密的向量空间中,并优化这些映射,使得学习到的向量能够真实反映原始空间上的拓扑结构(它的最基本优化方法是将具有相似上下文的映射节点靠近嵌入空间)。具体来说,对于图中每一个节点,学习一个指定维度的向量表征,并将学习好的表示向量用于图相关的下游任务,如节点分类、链路预测或子图分类等任务。例如,在本申请实施例中,可基于第二对象行为图网络学习每个样本内容的向量表征,并在此基础上,执行对象分类相关的下游任务。
随机游走(random walk):是图论中的重要算法,在数据挖掘领域有广泛的应用。简而言之,随机游走算法构建了若干个随机游走器(random walker)。随机游走器从某个节点初始化,之后在每一步随机游走中,随机地访问当前节点的某个邻接节点。
对象类:指通过对内容的消费对象进行类别划分得到的,每个对象类即表示一类对象,这类对象具有相同的内容喜好,如热门主播、唐诗宋词、萌宠、综艺节目、生肖运势、流量明星、大型犬类等。具体划分方式包括静态划分与动态划分中的至少一种,在本申请实施例中,静态划分指基于信息流对象的基础属性(也称静态属性)进行划分;动态划分指基于信息流对象的历史反馈行为聚类得到对象类,随着时间的推移,对象的历史反馈行为会发生变化,对象类的划分结果也可随着时间的推移动态更新。当对象为用户(即人)时,对象类也可称作人群。
概率分布:是指用于表述随机变量取值的概率规律,具体是指一个随机变量取任何给定值或属于某一给定值集的概率规律。在本申请实施例中,推荐参数是服从目标概率分布的,而概率分布参数则是用于唯一确定目标概率分布的一种分布状态的参数。概率分布通过用概率密度函数随随机变量变化的曲线来表示。概率分布参数则可理解为用于唯一确定一种概率分布曲线的参数,如均值、标准差。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
其中,机器学习(Machine Learning,ML)是人工智能的核心,属于人工智能的一个分支,是一个大的领域,是让计算机拥有像人一样的学习能力,模拟和实现人的学习行为和能力,可以像人一样具有识别和判断的能力,可以看作是仿生学。机器学习的核心就是数据,算法(模型),算力(计算机运算能力)。它是多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。如本申请实施例中,可通过机器学习技术训练相关模型、网络。
自然语言处理(Natural Language Processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。如本申请实施例中,可通过自然语言处理技术,对内容相关的文本特征(如视频字幕、文章正文、语音转文本等)进行处理。
计算机视觉(Computer Vision,CV)是用计算机及相关设备对生物视觉的一种模拟。它的主要任务就是通过对采集的图片或视频进行处理以获得相应场景的三维信息,就像人类和许多其他类生物每天所做的那样。如本申请实施例中,可通过自然语言处理技术,对内容相关的图像特征(如视频的画面信息、资讯中的图片信息等)进行处理。
自动语音识别技术(Automatic Speech Recognition,ASR)是一种将人的语音转换为文本的技术。语音识别是一个多学科交叉的领域,它与声学、语音学、语言学、数字信号处理理论、信息论、计算机科学等众多学科紧密相连。由于语音信号的多样性和复杂性,目前的语音识别系统只能在一定的限制条件下获得满意的性能,或者说只能应用于某些特定的场合。语音识别系统的性能大致取决于以下4类因素:识别词汇表的大小和语音的复杂性;语音信号的质量;单个说话人还是多说话人;硬件。在本申请实施例中,内容为音视频等时,对内容属性特征的提取,则可涉及到对音视频等内容中语音数据的处理,具体可通过ASR技术进行语音识别,获得相应的ASR文本,再进一步提取文本特征即可。
在本申请实施例中,可基于上述所列举的机器学习、自然语言处理和计算机视觉、自动语音识别等技术,训练内容推荐模型、内容表示模型、特征交叉模型和多模态注意力网络等,以基于训练好的各模型、网络提取内容相关的特征,实现内容推荐。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
下面对本申请实施例的设计思想进行简要介绍:
在信息流推荐场景中,主流推荐方法可概括为如下两种:
(一)基于对象画像进行推荐(即背景技术中的推荐方法)。
该方式下,由于对象画像基本不会发生变化,内容的标签和分类也不会发生变化,对象看到的内容会一直趋向于类似,对象会认为没有新鲜感,并且因无法获得更多的信息量而感到枯燥。
并且,推荐系统使用内容分类和内容标签进行推荐时,二者都是从纯内容角度出发来理解视频的,所以其定向人群的反馈能力较弱。
同时,若对象画像对应的内容量不足,还会出现推荐内容缺失导致内容重复推荐的问题,影响对象体验。
(二)基于对象关注的账号主进行推荐。使用对象关注的账号主进行推荐,当对象关注账号主后,在随后的对象使用产品过程中,推荐该账号主的其它内容给关注的对象。
该方式下,由于一般对象关注的账号主量级较少,因而无法获得较多的推荐内容。
有鉴于此,本申请实施例提出了一种内容推荐方法、装置、电子设备和存储介质。由于本申请从对象的角度,基于对象针对内容的历史反馈行为可以获得表征对象反馈行为的内容反馈特征,并且从发布方的角度,提取发布方的综合属性特征,从内容本身的角度,提取内容属性特征,从对象的角度、内容的角度和内容发布方的角度综合地理解内容;并且,本申请为对象增加了类别的划分,在此基础上,为内容增加了对象类的倾向性得分(即本文中的推荐参数),可以更好地优化推荐系统。在实际推荐中,则可根据待推荐内容针对各个对象类的倾向性得分,进行内容推荐,对于得分高的,将在这个类别的对象中有更多被推荐的机会,很好的提高了内容推荐的准确度。
具体的,本申请实施例中的内容推荐方法,并非基于固定的对象画像向对象进行内容推荐,而是从多个角度出发,综合地理解内容,该方式下,向目标对象推荐的内容多为更加倾向于目标对象所属对象类的,且并非都是相同类别的,也不会都是同一账号主的,在提高了内容推荐准确度的基础上,在保证对象新鲜感的同时,也保证了内容量,可有效减少因推荐内容缺失导致内容重复推荐,而对对象体验所造成的伤害。
以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请,并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
如图1所示,其为本申请实施例的应用场景示意图。该应用场景图中包括两个终端设备110和一个服务器120。
在本申请实施例中,终端设备110包括但不限于手机、平板电脑、笔记本电脑、台式电脑、电子书阅读器、智能语音交互设备、智能家电、车载终端等设备;终端设备上可以安装有内容推荐相关的客户端,该客户端可以是软件(例如浏览器、聊天软件、短视频软件、新闻资讯软件等),也可以是网页、小程序等,信息流产品是终端程序的一种产品形式,可以在这种产品上获得各种视频和文章等内容。服务器120则是与软件或是网页、小程序等相对应的后台服务器,或者是专门用于进行内容推荐的服务器,本申请不做具体限定。服务器120可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
需要说明的是,本申请各实施例中的内容推荐方法可以由电子设备执行,该电子设备可以为终端设备110或者服务器120,即,该方法可以由终端设备110或者服务器120单独执行,也可以由终端设备110和服务器120共同执行。比如由服务器120单独执行时,首先服务器120根据各对象的基础属性以及历史反馈行为中的至少一种划分得到至少一个对象类。进而,服务器120将预测待推荐内容对于各个对象类的倾向性得分(即推荐参数),基于此参数进行内容推荐。
其中,倾向指的是一个内容适合某个对象类且被这个对象类关联的对象所喜欢,即“倾向”等于“适合”加“喜欢”。以视频内容为例,例如存在一个野外钓鱼的视频,该视频的内容类型决定了这个视频是适合40岁以上男性这个人群(即对象类),而不适合40岁以上女性这个人群,即内容是否适合某个人群;而野外钓鱼的视频会有很多,并非所有的野外钓鱼视频都会被40岁以上男性所喜欢,而视频的内容质量则决定了其在40岁以上男性这个人群最后的推荐效果,即内容是否被人群喜欢。
因而,本申请通过预估一个内容对于各类人群(即各对象类)的倾向性得分,在实际的推荐系统中,结合此参数提升内容推荐的准确程度,为每一个内容找到更为合适的观看人群。
具体的预测过程为:服务器120根据各内容相关的历史反馈行为构建第一对象行为图网络,并基于第一对象行为图网络提取各内容中待推荐内容对应的内容反馈特征;针对待推荐内容的发布方在不同统计维度的属性特征,进行特征交叉处理,得到发布方的综合属性特征;以及,提取待推荐内容的内容属性特征;进而,对于一个待推荐内容而言,基于内容反馈特征、综合属性特征和内容属性特征,分别获得待推荐内容针对每个对象类的推荐参数;最后,基于获得的各推荐参数,分别向相应的对象类关联的各对象推荐待推荐内容即可。
可选的,由于对象针对内容的历史反馈行为在不断的增加,因而,基于对象的历史反馈行为进行对象类别划分的过程可以是动态更新的。
在一种可选的实施方式中,终端设备110与服务器120之间可以通过通信网络进行通信。
在一种可选的实施方式中,通信网络是有线网络或无线网络。
需要说明的是,图1所示只是举例说明,实际上终端设备和服务器的数量不受限制,在本申请实施例中不做具体限定。
本申请实施例中,当服务器的数量为多个时,多个服务器可组成为一区块链,而服务器为区块链上的节点;如本申请实施例所公开的内容推荐方法,其中所涉及的内容、发布方和对象相关的数据都可保存于区块链上,例如,历史反馈行为、基础属性、内容反馈特征、综合属性特征、内容属性特征、推荐参数、训练样本等。
此外,本申请实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等场景。
可以理解的是,在本申请的具体实施方式中,涉及到对象消费行为等相关的数据,当本申请以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
下面结合上述描述的应用场景,参考附图来描述本申请示例性实施方式提供的内容推荐方法,需要注意的是,上述应用场景仅是为了便于理解本申请的精神和原理而示出,本申请的实施方式在此方面不受任何限制。
参阅图2所示,为本申请实施例提供的一种内容推荐方法的实施流程图,以服务器为执行主体为例,该方法的具体实施流程如下S21~S25:
S21:服务器根据各内容相关的历史反馈行为构建第一对象行为图网络,并基于第一对象行为图网络提取各内容中待推荐内容对应的内容反馈特征。
其中,内容指任意一类信息流,包括但不限于:视频、文章、资讯、问答、话题、百科、贴子、商品、音乐、电子书。
下面以视频为例,对于其他内容也是类似的道理,本文不再重复赘述。
在本申请实施例中,对象反馈行为动态刻画出一个内容的人群隐式倾向(适合人群)和人群隐式偏好(被人群喜欢),针对表示对象反馈行为的相关特征,本申请提出,使用一定时间内,所有信息流产品中对象的历史反馈行为来构建对象行为图网络(即第一对象行为图网络),然后使用图表征学习的方式从该网络中提取内容视频维度的对象动态反馈行为的特征向量,也即本文中的内容反馈特征。
具体而言,可以分为以下几个步骤:
第一步,构建可表征对象反馈行为的第一对象行为图网络。
在本申请实施例中,第一对象行为图网络和第二对象行为图网络的构建方式类似。其中,第一对象行为图网络用于:结合图表征学习方法,学习第一对象行为图网络中各节点的向量表征,该过程需要考虑图中存在的节点,以及节点之间的边关系,因而,第一对象行为图网络可记作G1=(V1,E1),它包括所有的节点V1,节点间的有向边E1。在本申请中,V1节点代表被消费的内容(包含待推荐内容),E1边代表对象连续观看的两个内容。
需要说明的是,本申请实施例中的第一对象行为图网络可以为有向图,也可以为无向图,本文不做具体限定。
其中,图2是以一个待推荐内容为例的,每个待推荐内容都可基于图2所示的方法来确定该待推荐内容针对各个对象类(即各类人群)的推荐参数,该推荐参数影响的是现有推荐系统针对该待推荐内容的原始排序,用来提升内容推荐的准确程度,为每一个内容找到合适的观看对象。
在本申请实施例中,根据各内容相关的历史反馈行为构建第一对象行为图网络时,首先将各内容作为第一对象行为图网络中的节点,每个内容为一个节点;其次,将各内容中,被同一对象连续观看的内容对应的节点之间连接边。
其中,内容相关的历史反馈行为是指将该内容推荐给各对象之后,这些对象针对该内容所产生的反馈,如划过该内容(并未点击查看)、完整播放该内容、点赞、转发、评论、分享等。
如图3所示,其为本申请实施例中的一种第一对象行为图网络的示意图。其中,图3所列举的第一对象行为图网络是一种无向图,该有向图包含了9个节点和13条边。这9个节点分别记作:V1、V2、V3、V4、V5、V6、V7、V8、V9。这13条边分别记作:E12、E25、E32、E41、E45、E46、E49、E53、E56、E63、E74、E84、E87。
其中,每个节点表示一个内容,而被同一对象连续观看的两个内容所对应的节点之间可存在边。如图3中所示的图网络为无向图,边是没有方向的,当然,该第一对象行为图网络也可以为有向图,有向图中的边是具有方向的,该边的方向可以表示所对应的两个内容被观看的先后顺序,比如由先观看的内容对应的节点指向后观看的内容对应的节点,等等,本文不做具体限定。
在本申请实施例中,构建第一对象行为图网络时,还可对上述第一对象行为图网络中的边进行一定的删除处理,以保证边的置信度和模型(指图表征学习模型)的训练速度(指模型训练阶段)和模型的准确度(指模型应用阶段)。一种可选的实施方式如下:
首先,对于第一对象行为图网络中的各条边,分析每条边对应的两个内容是否被同一对象执行指定反馈行为,若任意一条边对应的两个内容未被同一对象执行指定反馈行为,则将该条边作为候选边。进而,从各候选边中选取至少一条进行删除,得到更新后的第一对象行为图网络。
其中,指定反馈行为可以为一种,也可以为多种。当指定反馈行为只有一种时,只要任意一条边对应的两个内容未被同一对象执行该指定反馈行为,则可将该条边作为候选边。
指定反馈行为有多种时,则可确定任意一条边对应的两个内容未被同一对象执行所有指定反馈行为,才将该条边作为候选边。或者,确定任意一条边对应的两个内容未被同一对象执行其中一种指定反馈行为,即可将该条边作为候选边。
以内容为视频为例,比如,指定反馈行为为分享行为,则某条边对应的两个视频未被同一对象分享给其他对象(可以分享给同一对象或不同对象)时,则可确定该条边为候选边。某条边对应的两个视频有被同一对象分享给其他对象(可以分享给同一对象或不同对象)时,则可确定该条边为正常边(即非候选边)。
又比如,指定反馈行为有分享行为、评论行为、点赞行为,则在某条边对应的两个视频未被同一对象分享/点赞/评论时,将该条边作为候选边。比如,图3所示的节点4(对应视频4)和节点5(对应视频5)之间存在一条边,而视频4、视频5只是被同一对象观看,如对象1和对象2,但是对象1对视频4进行了点赞和分享,对视频5进行了评论,对象2仅对视频4进行了点赞。因而,视频4和视频5有被同一对象点赞,但是未被同一对象分享和转发,边E45可作为候选边。
或者,在某条边对应的两个视频未被同一对象分享,未被同一对象点赞,也未被同一对象评论时,将该条边作为候选边。比如,图3所示的节点4(对应视频4)和节点5(对应视频5)之间存在一条边,而视频4、视频5只是被同一对象观看,如对象1和对象2,但是对象1对视频4进行了点赞和分享,对视频5进行了评论,对象2对视频4进行了评论,对视频5进行了点赞和分享。很显然,视频4和视频5既未被同一对象点赞、未被同一对象分享,也未被同一对象评论,边E45可作为候选边。
需要说明的是,上述基于对象是否执行指定反馈行为来筛选候选边的方式只是简单举例,除此之外,其它基于对象是否执行指定反馈行为来确定候选边的方式同样适用于本申请实施例,在此不做具体限定。
在本申请实施例中,从各候选边中选取至少一条进行删除时的方式有很多种,如全部删除,又或者随机删除一部分(不定量),再或者随机删除指定数量的边(如删除10%的候选边)。
以内容为视频为例,如删除10%(这里10%是一个超参数,可以调整)的候选边时,具体处理方式是:被同一对象连续观看的两个视频所对应的节点之间存在一条边,如果这两个视频被同一个对象点赞或评论或分享过,则这条边保留,否则,将以10%的概率删除这条边。也即,需要从所有的候选边中,随机选择10%的候选边进行删除,每条候选边被选中删除的概率即为10%。
如图4所示,其为本申请实施例中的另一种第一对象行为图网络的示意图。图4即表示:将图3所示的第一对象图网络中确定的候选边E45删除后的第一对象行为图网络。
在上述实施方式中,通过对一些候选边进行删除,可保证边的置信度,在此基础上,更新后的第一对象图网络中,由于对部分边进行了删除处理,因而保留的边上的节点之间的关联度会更高,基于此种图网络,结合图表征学习模型,可有效提高基于图表征学习模型所获得的各内容的内容反馈特征的准确度。
此外,在图表征学习模型的训练阶段,也可采用同样的方式构建第一对象行为图网络,进而结合第一对象行为图网络训练图表征学习模型,本文不做具体限定。
在构建第一对象行为图网络后,即可通过第一对象行为图网络提取各内容的内容反馈特征,待推荐内容可以是构建第一对象图网络的各内容中的任意一个,基于此也就获得了待推荐内容对应的内容反馈特征。
在本申请实施例中,可通过图表征学习的方式提取内容反馈特征,一种可选的实施方式如下:
首先,获取第一对象行为图网络所对应的度矩阵和邻接矩阵;进而,基于度矩阵和邻接矩阵,以及各内容各自对应的初始内容向量,进行图表征学习,获得待推荐内容对应的内容反馈特征。
在实际应用中,图神经网络常用度矩阵和邻接矩阵来描述图的结构,图的度矩阵用来描述图中每个节点所连接的变数。图的邻接矩阵用来描述图中每个节点之间的相邻关系。
参阅图5所示,其为本申请实施例中的一种第一对象行为图网络和相关矩阵的示意图。其中,图5中的第一栏为一种第一对象行为图网络的示例,第二栏为该第一对象行为图网络的度矩阵,记作D,第三栏为该第一对象行为图网络的邻接矩阵,记作A。
如图5中所示的第一对象行为图网络存在6个节点,7条边,该图网络的度矩阵A为:;邻接矩阵D为:/>。
本申请中,获取第一对象行为图网络的度矩阵和邻接矩阵后,即可基于度矩阵和邻接矩阵来确定拉普拉斯矩阵,如图5中的第四栏为该第一对象行为图网络的拉普拉斯矩阵,记作L,。
如图5所示的拉普拉斯矩阵L为:。
需要说明的是,本申请实施例中的L可以是一阶近似卷积核,可以简单理解成加权平均邻接特征。
在基于度矩阵和邻接矩阵确定拉普拉斯矩阵后,即可基于拉普拉斯矩阵L,以及各内容的初始内容向量,来进行图表征学习,最终获得各内容对应的内容反馈特征,该内容反馈特征也可表示为特征向量的形式。
其中,各内容的初始内容向量可使用任意预训练模型进行提取。以视频内容为例,视频内容的初始内容向量可以是视频向量、或者视频向量、音频向量、封面图向量的拼接结果,这些向量可以使用任意预训练模型进行提取,例如Vit(一种图像处理模型),swint(又一种图像处理模型)等模型。
一种可选的图表征学习方式所采用的计算公式如下:
在公式1中,δ(*)为激活函数,W为权重矩阵,H0=X,X∈RN*K,
N为图的节点个数,K为每个节点特征向量的维度,X表示第一层的输入。
在进行图表征学习时,每一层可以表示为上述公式,在本申请实施例中,以执行上述公式三次为例,层的概念就是把这个过程执行多次,每次的输出作为下一次的输入。也即,将H3作为最后所提取到的特征向量(执行三次时l的取值分别为0,1,2),它表示了图中每一个节点对应的内容反馈特征。
如第一次(对应第一层)执行上述公式时,公式1可表示为:
其中的H0即本文中各内容的初始内容向量所组成的矩阵。
第二次(对应第二层)执行上述公式时,公式1可表示为:
第三次(对应第三层)执行上述公式时,公式1可表示为:
其中的即本文中各内容的内容嵌入特征所组成的矩阵,每个内容反馈特征为K维。
需要说明的是,图表征学习模型的应用阶段即可基于上述公式提取各内容(包含待推荐内容)的内容反馈特征。如N=6,表示H3一共有6行,每行有K个元素(也即一行向量),某一待推荐内容的节点序号为3,则该待推荐内容的嵌入反馈特征即为H3中的第三行向量。又如,某一待推荐内容的节点序号为6,则该待推荐内容的嵌入反馈特征即为H3中的第六行向量。
在本申请实施例中的训练阶段,W是需要学习的权重矩阵,可理解为待训练的图表征学习模型在训练阶段需要更新的模型参数,训练阶段与上述所列举的基于已训练的图表征学习模型获取各内容的内容反馈特征的过程类似,训练阶段即通过多个样本内容构建第一对象行为图网络,并通过上述方法删除部分候选边后,基于预训练模型提取样本内容的初始内容向量,进而,结合上述公式计算每个样本内容的内容反馈特征。
进而,结合下述思想对待训练的图表征学习模型进行迭代更新,获得已训练的图表征学习模型,W已更新为一个无需再学习的权重矩阵(也即提取待推荐内容的内容反馈特征时,W是已学习后的权重矩阵),若后续再次对已训练的图表征学习模型进行调整时,可再次学习W,本文不做具体限定。
具体地,W的学习过程的基本思想为:基于相邻节点特征向量相似,不相邻节点特征向量不相似的思想,构建一个损失函数(loss),反向传播更新权重。基于此思想多次迭代更新待训练的内容表示模型的模型参数,即可获得已更新的内容表示模型,用于上述待推荐内容的内容反馈特征的提取。
在本申请实施例中,向量之间的相似性可通过余弦相似度表示,余弦相似性是指通过测量两个向量的夹角的余弦值来度量它们之间的相似性。0度角的余弦值是1,而其他任何角度的余弦值都不大于1,并且其最小值是-1。从而两个向量之间的角度的余弦值确定两个向量是否大致指向相同的方向。两个向量有相同的指向时,余弦相似度的值为1;两个向量夹角为90°时,余弦相似度的值为0;两个向量指向完全相反的方向时,余弦相似度的值为-1。这结果是与向量的长度无关的,仅仅与向量的指向方向相关。
因而,在W的学习过程中,可通过节点间内容反馈特征的余弦相似度作为参考,对W进行优化更新。
需要说明的是,除上述所列举的计算向量间余弦相似度的方式外,也可采用其他方式,本文不做具体限定。
在上述实施方式中,对象消费行为动态刻画出一个内容的人群隐式倾向(适合人群)和人群隐式偏好(被人群喜欢),本申请中采用使用一定时间内,所有信息流产品中对象的消费行为来构建对象行为图网络,然后使用图表征学习的方式,则可从网络中提取到内容维度的对象动态消费行为的特征向量,也即本文中的内容反馈特征,基于内容反馈特征来学习内容对于各类对象的倾向性时,考虑到对象消费行为是随着时间动态更新的,基于此可以隐式地对推荐系统中内容标签进行动态补充和更新,提高推荐准确度。
S22:服务器针对待推荐内容的发布方在不同统计维度的属性特征,进行特征交叉处理,得到发布方的综合属性特征。
在本申请实施例中,内容发布方也称账号主,账号主的基础属性可以指:表示账号主发文的受欢迎程度的属性特征(如发文数量、分享数量、曝光数量、评论数量等),还可指表示账号主受关注程度的属性特征(如账号的感兴趣者感兴趣者数量、被关注数量等),还可指表示账号主兴趣爱好的属性特征(如关注数量),等等,本文不做具体限定。号主综合表现也是随着时间动态更新的,可动态刻画出号主的人群显示影响力(被人群喜欢)。
在本申请实施例中,发布方的属性特征可按照不同的统计维度进行划分,包括但不限于下列的部分或全部:账号感兴趣者感兴趣者、单日发文数量、单日分享数量、单日曝光数量、累计发文数量、累计分享数量、累计曝光数量、累计关注数量、累计被关注数量、单日关注数量、单日被关注数量、单日评论数量、累计评论数量等。
本申请考虑到号主综合表现可以动态刻画出号主的人群显示影响力(被人群喜欢),但账号维度特征往往是非常稀疏的,而特征之间往往是具有高阶交叉关系存在的,因而在提取发布方的特征时,则可将发布方在不同统计维度的属性特征进行特征交叉处理,以得到发布方的综合属性特征。
上述特征提取的过程可通过机器学习实现,步骤S22的一种可选的实施方式如下,包括步骤S221-S222(图2未示出):
S221:对于每个统计维度,根据统计维度下的属性特征的特征值所属的区间范围,以及目标权重矩阵,确定统计维度下,发布方对应的初始特征。
S222:将各统计维度下的初始特征进行特征交叉处理,获得综合属性特征。
在上述所列举的各统计维度下,每个属性特征都具有相应的特征值,表征该统计维度下的统计数量,如账号感兴趣者感兴趣者数量为1000,相应的特征值可表示为1000,而账号感兴趣者感兴趣者数量这一统计维度下可划分若干区间,则根据该属性特征的特征值所属的区间范围,以及目标权重矩阵,可确定账号感兴趣者感兴趣者数量这一特征维度下,该发布方的初始特征,每个统计维度都是类似的道理,假设有M个统计维度,每个统计维度对应5个区间,则可得到5M(即下文中的n)个初始特征。
进而,将这5M个初始特征中的每两个之间都进行特征交叉,提取得到发布方的综合属性特征。
其中,目标权重矩阵可以看作是一个通过不断优化得到的,用于查表的向量矩阵。每个统计维度下的特征值可用于确定一个ID,每个ID对应目标权重矩阵中的一行向量,也即该统计维度下的初始特征。
可选的,针对号主综合表现,本申请提出先对原始的属性特征进行分桶,通过分桶确定每个统计维度下的初始特征,进而使用因子分解机对特征进行交叉的方式,得到账号综合表现的特征向量,也即发布方的综合属性特征。
通过分桶确定初始特征时,步骤S221的一种可选的实施方式如下,包括步骤S2211-S2213(图2未示出):
S2211:根据统计维度下的属性特征的特征值所属的区间范围,确定统计维度对应的标记值,每个区间范围对应一个标记值。
例如,对账号感兴趣者感兴趣者数量、单日发文数量、单日分享数量、单日曝光数量、累计发文数量、累计分享数量、累计曝光数量、累计关注数量、累计被关注数量、单日关注数量、单日被关注数量、单日评论数量、累计评论数量等属性特征,进行分桶。具体方式是,针对每个属性特征,若该属性特征的特征值为0,则将这类属性特征的标记值记为0,剩余属性特征进行等频分桶。
在进行等频分桶时,一种实现方式是,共分为5个桶,分别标记为5、4、3、2、1,按照特征值从大到小排序,特征值在top90%以上的标记为5,在top70%到top90%之间的标记为4,在top50%到top70%之间的标记为3,在top30%到top50%之间的标记为2,在top30%以下的标记为1。
对于某个待推荐内容,比如该内容的发布方的账号感兴趣者感兴趣者数量为1000,属于所有内容对应的发布方的账号感兴趣者感兴趣者数量中的top30%到top50%之间,则该统计维度下,该统计维度下,该内容的发布方的标记值为2;又如,该内容的发布方的单日发文数量为2,属于所有内容对应的发布方的单日发文数量中的top70%到top90%之间,则该统计维度下,该统计维度下,该内容的发布方的标记值为4,依次类推即可。
基于上述方式,即可获得待推荐内容的发布方在每个统计维度下对应的标记值。
需要说明的是,上述所列举的特征分桶方式只是简单举例,其它方式同样适用于本申请实施例,如不通过排序百分比确定,而是直接划分数值区间,比如账号感兴趣者感兴趣者数量划分为一千万以上,一百万至一千万,一万至一百万,一千至一万,一千以下;又比如,可不划分为5个桶,而是划分为3个桶,或是划分为7个桶,等等,本文不做具体限定。
此外,每个属性特征所分的桶的数量是可以不一样的,并不一定都是5个桶。
S2212:将标记值输入已训练的特征交叉模型,基于特征交叉模型将标记值进行编码。
S2213:基于获得的编码结果及特征交叉模型的嵌入层对应的目标权重矩阵,确定统计维度下,发布方对应的初始特征。
由于上述属性特征多为离散特征,因而本申请以独热(one-hot)编码(其它编码方式同样适用,在此不做具体限定)为例,如区间范围有5个(即5个桶),则编码时的向量长度为5,在本申请实施例中,若标记值为0,则相应的one-hot编码即为00000,对于其他标记值,则将该标记值对应的位置记为1,其他位置记为0,如上述所列举的账号感兴趣者感兴趣者数量的标记值为2,则进行one-hot编码可表示为:00010,又如单日发文数量的标记值为4,则进行one-hot编码可表示为:01000,依次类推即可。
进而,则可将上述编码结果作为ID,从向量矩阵(指目标权重矩阵)中取ID所对应的向量来作为初始特征。
比如,一共有100个统计维度,每个统计维度对应可划分为5个桶,对应5个ID,则一共有500个ID,特征向量的维度为128,那么目标权重矩阵是一个500*128的矩阵(一共500行,标号分别为1~500),每个统计维度对应该目标权重矩阵中的5行,如第一统计维度对应第1~5行,第二统计维度对应第6~10行,等等。根据每个统计维度下ID的具体数值,从相应行数中选择数值返回。
如第一个统计维度下,输入的ID是00010时,这表示5个ID,最终得到的是5个初始特征,其中,第四位的ID=1,则将目标权重矩阵中第4行的数值返回,代表这个ID的初始特征,而对于其它ID=0,则可将128维的零向量作为这几个ID对应的初始特征,则00010各自对应的初始特征组合作为第一统计维度下的初始特征,也即零向量、零向量、零向量、目标权重矩阵中第4行、零向量;又如第二个统计维度下,输入的ID是01000时,第七位的ID=1,则将目标权重矩阵中第7行的数值返回,代表这个ID的向量,而对于其它ID=0,则对应返回零向量,则第二统计维度下对应的初始特征为:零向量、目标权重矩阵中第7行、零向量、零向量、零向量;第三个统计维度下,输入的ID是00001时,对应的初始特征为:零向量、零向量、零向量、零向量、目标权重矩阵中第15行,依次类推即可。
需要说明的是,上述所列举的基于获得的编码结果及特征交叉模型的嵌入层对应的目标权重矩阵,确定初始特征的方式只是简单示例,其他方式同样适用于本申请实施例,在此不做具体限定。
基于上述方式即可获得全部统计维度下的初始特征,将这些特征间进行特征交叉,提取高阶交叉特征即可。
需要说明的是,上述所列举的确定初始特征的方式只是简单举例,除此之外,其它方式同样适用于本申请实施例,在此不做具体限定。
在本申请实施例中,对账号综合表现进行特征分桶后,可使用因子分解机对特征进行交叉的方式,得到综合属性特征。一种可选的实施方式如下;
基于已训练的特征交叉模型中的因子分解机层,对每两个统计维度下的初始特征分别进行特征交叉处理,获得综合属性特征。
本申请考虑到了账号维度特征的稀疏性,及特征之间具有高阶交叉关系存在,因而提出使用因子分解机来提取综合属性特征。
一种特征交叉模型的具体网络结构如图6所示,将之前所得到的特征分桶后的标记值作为输入该特征交叉模型的输入,映射为one-hot编码,然后从目标化权重矩阵当中通过嵌入查表(Embedding lookup)得到对应的初始特征的向量表示,并将其输入到因子分解机层(FM layer)当中。其中目标权重矩阵可理解为嵌入层(Embedding Layer)的相关模型参数,通过模型训练优化得到。
具体地,FM Layer的公式如下所示:
在公式2中,,/>;w0、wi和V属于FM Layer的模型参数(通过模型训练更新得到),V是一个系数矩阵,V中有很多个v,公式中的vi和vj就是这个V里面的隐向量,vi是V中的第i个隐向量,vj是V中的第j个隐向量。n表示每个属性特征的ID数量之和,k为隐向量的维度,如上述所列举的是都划分为5个桶,若属性特征仅存在账号感兴趣者感兴趣者和单日发文数量这两个统计维度为例,n= 5+5 = 10,又分都划为6个桶,若属性特征由账号感兴趣者感兴趣者、单日发文数量、累计发文数量、单日曝光数量、累计曝光数量这五个统计维度,则n=30;/>表示两个隐向量的内积。/>指的是通过两个隐向量的内积得到一个标量,以该标量当作xixj的权重。
其中,xi即表示第i个初始特征,xj即表示第j个初始特征,一共有n个初始特征,i的取值为1~n(正整数),最后输出的y(x)是经过二阶交叉的特征向量,也即本文中发布方的综合属性特征。
需要说明的是,上述目标权重矩阵及上述公式中的w0、wi和V是通过一定优化更新得到的,具体对应特征交叉模型的训练过程,通过样本内容对待训练的特征交叉模型进行多次迭代训练,即可获得已训练的特征交叉模型,目标权重矩阵可理解为已训练的特征交叉模型的模型参数。
在待训练的特征交叉模型的训练阶段,处理方式同上述过程类似,采用样本内容提取相应发布方的综合属性特征,最初始待训练的特征交叉模型对应的是初始化权重矩阵(即随机初始化得到的),则随后的模型训练过程中,不断优化这个矩阵,就可以得到所需要的目标权重矩阵,同理,w0、wi、V也是类似的道理,具体优化方式本文不做具体限定,如反向传播等。通过模型训练进行优化更新,具体更新方式类似上述所列举的目标权重矩阵,本文不做具体限定。
在上述实施方式中,针对号主综合表现,本申请提出先对原始特征分桶后使用因子分解机对特征进行交叉的方式,得到账号综合表现的特征向量,也即本文中发布方的综合属性特征,基于综合属性特征来学习内容对于各类对象的倾向性时,考虑到号主总和表现也是随着时间动态更新的,基于此也可以隐式地对推荐系统中内容标签进行动态补充和更新,提高推荐准确度。
S23:服务器提取待推荐内容的内容属性特征。
在本申请实施例中,内容属性特征静态刻画出了一个内容的人群显式倾向(适合人群,也即适合的对象类)。提取内容属性特征时,也可通过机器学习的方式实现,待推荐内容具有多类基础属性,这些基础属性也可称作内容的静态特征,以视频内容为例,基础属性包括但不限于以下几类:视频的抽帧、ASR文本、标题、标签和分类等。
其中,分类的粒度较粗,视频分类是指给定一个视频片段,对其中包含的内容进行分类,分类得到的内容类别用来形容内容在广义上的共性及相似性,例如电影类、综艺类、社会类、游戏类、动漫类等。而标签的粒度更精细,内容标签用来表示内容实际包含的概念和内容,包括内容中涉及的人物,地点,场景等详细信息,例如胡某某、蔡文姬等具体的实体。
可选的,本申请提出一种基于多种预训练子模型的多模态方法,可基于此方法把内容的静态特征提取为特征向量,获得内容属性特征。一种可选的实施方式为,通过如下流程实施S23,包括S231-S233(图2中未示出):
S231:将待推荐内容的每类基础属性分别表示为多个属性向量。
S232:对于每类基础属性,通过一维卷积处理,将基础属性对应的多个属性向量表示为一个综合向量;基于多模态注意力网络对综合向量进行特征提取,得到相应的目标向量。
S233:将各基础属性对应的目标向量拼接,得到待推荐内容的内容属性特征。
以视频内容为例,针对视频静态特征,首先,把视频的抽帧、ASR文本、标题、标签和分类等静态特征提取为特征向量。具体地,针对不同类别的基础属性,可采用不同的方式获得相应的属性向量。
如图7所示,其为本申请实施例中的一种提取视频的内容属性特征的方法示意图。对于内容的分类和标签,本申请直接采用词嵌入(Word embedding)的方式将分类和标签转换为多个属性向量,如图7中,对于分类而言,所得到的z个属性向量为w11、w12、…、w1z,对于标签而言,所得到的z个属性向量为w21、w22、…、w2z,然后采用一维卷积(Conv1D)分别将各类基础属性各自的多个属性向量变为一个综合向量,然后将综合向量输入到多模态注意力网络(Multi-modal transformer)当中,得到最终的目标向量。
对于抽帧、ASR文本和标题这几个基础属性而言,处理流程跟分类和标签是相似的,区别在于,本申请采用经过Imagenet(一种图像数据集)预训练过的Swint-t模型来提取抽帧特征,获得相应的多个属性向量,如图7中所列举的z个属性向量分别为m1、m2、…、mz;采用预训练过的Tiny-bert来提取ASR文本和标题特征,获得相应的多个属性向量,如图7中,对于ASR文本而言,所得到的z个属性向量为e11、e12、…、e1z,对于标题而言,所得到的z个属性向量为e21、e22、…、e2z。最后,把分类、标签、抽帧、ASR文本和标题对应的目标向量进行拼接,得到最终的特征向量,也即内容属性特征。
其中,Imagenet是一种计算机视觉系统识别项目,是目前世界上图像识别最大的数据库,能够从图片识别物体。除该数据集外,也可采用其他图像数据集对相关模型进行预训练,以提取视频的抽帧特征,本文不做具体限定。
其中,Tiny-bert是一种为基于transformer的模型专门设计的知识蒸馏方法,模型大小不到BERT的1/7,但速度提高了9倍,而且性能没有出现明显下降。在本申请实施例中,采用预训练的Tiny-bert来提取ASR文本和标题特征可有效提高特征提取的速度。但本文并不局限于Tiny-bert,除此之外,也可采用其他用于对文本数据进行特征提取的模型,如BERT,本文不做具体限定。
需要说明的是,上述所列举的Word embedding、Swint-t模型、Tiny-bert等都可看作是预训练子模型,这些预训练子模型只是简单举例,任何具有相同作用的预训练子模型都适用于本申请实施例,如Swint-t可以使用Vit进行替换,本文不做具体限定。
在上述实施方式中,内容属性特征是不变的,静态刻画出一个内容的人群显式倾向(适合人群),结合上述的内容反馈特征和综合属性特征,从至少三个维度来学习内容的倾向性,可以隐式和显式地对推荐系统中内容标签进行动态补充和更新,提高内容推荐的准确性。
S24:服务器基于内容反馈特征、综合属性特征和内容属性特征,分别获得待推荐内容针对每个对象类的推荐参数。
其中,对象类是基于各对象的基础属性以及历史反馈行为中的至少一种划分得到的。
本申请实施例中,为对象增加了人群划分,从对象的角度、内容的角度和号主的角度综合来显式和隐式地理解内容,为内容增加了人群倾向且动态更新,可以更好地优化推荐系统。
可选的,本申请实施例中的推荐参数的获取,也可通过机器学习的方式实现,步骤S24的一种可选的实施方式如下,包括S241~S243(图2未示出):
S241:将内容反馈特征、综合属性特征和内容属性特征,输入已训练的内容推荐模型。
S242:基于内容推荐模型,预测得到待推荐内容针对每个对象类的概率分布参数;概率分布参数用于描述目标概率分布的一种分布状态。
S243:基于概率分布参数以及参考参数确定推荐参数,参考参数服从标准分布状态的目标概率分布。
在本申请实施例中,每类对象所喜欢看的内容和所不喜欢看的内容的数量相较于其他内容更言,是具有一定分布规律的,也即这些内容的数量变化是符合一定概率分布的,同理,待推荐内容针对每个对象类的推荐参数,也是符合一定概率分布的,本文记作目标概率分布。如目标概率分布可以是高斯分布、卡方分布、t分布等等。
具体地,基于所提取的这三类特征向量和目标概率分布假设,可输出待推荐内容对于每一个人群的倾向性得分,也即待推荐内容针对每个对象类的推荐参数。
以视频内容为例,本申请提出基于所提取的这三类特征向量,采用多层感知机(Multi-Layer Perceptron,MLP)对视频进行人群倾向性预估,并基于人群倾向性得分是服从目标概率分布的假设,输出视频对于每一个人群的倾向性得分。
具体实现时,如图8所示,其为本申请实施例中的一种推荐参数的计算过程示意图。三种类型的特征向量输入到MLP当中(也称之为FC),可以输出两个概率分布参数向量,这两个概率分布参数向量的长度(也即所包含的概率分布参数的个数)与对象类的数量相同。假设分别记作这两种概率分布参数分别记作μ和δ。
比如,如果人群标签的个数是100,那么这两个概率分布参数向量的长度都为100,相应的,图8中的μ和δ则各自有一百个,每个μ和δ对应一个人群(即对象类)。第一个向量的第一个数和第二个向量的第一个数,分别代表第一个人群的概率分布参数μ和δ。
在本申请实施例中,这两种概率分布参数可用于唯一确定目标概率分布的一种分布状态。而参考参数则是服从标准分布状态的目标概率分布的。
可选的,目标概率分布为高斯分布;概率分布参数为均值和标准差。
在本申请实施例中,目标概率分布可以为高斯分布,本申请中之所以提出人群倾向性得分是服从高斯分布的假设,是因为对于同一个人群而言,人群所适合和喜欢的内容比例是少数的,反之,人群所不适合和不喜欢的内容比例也比定是少数的,其比例的分布是一个高斯分布,因此在预测人群倾向性的时候,基于这个假设作出高斯分布的约束是非常有必要的。
在本申请实施例中,假设所有的内容,对一个人群而言,其倾向性得分符合高斯分布,本申请中的内容推荐模型预测的是这个高斯分布的μ和δ,而不是直接预测倾向性得分。
因而,最后的内容倾向性得分如下列公式所示:
/>
在公式3中,表示最终的倾向性得分(也即推荐参数),i表示第i个人群(例如男性41岁到50岁),ϵ为参考参数,服从标准正态分布。按照高斯分布的这个假设,本申请应该从均值为μi标准差为δi的正态分布当中采样一个数得到/>之所以要用上述公式,是一种重参数化技巧,是为了让最终的内容推荐模型是可导的。若一共有100个对象类,则i的取值为1~100(正整数)。
例如一共100个人群,则将待推荐内容的内容反馈特征、综合属性特征和内容属性特征输入已训练的内容推荐模型后,通过该内容推荐模型可预测得到两个长度为100的向量,分别表示均值和标准差,每一个人群有一个均值和一个标准差。基于此以及参考参数,结合上述公式即可确定待推荐内容针对每个人群的倾向性得分。
在上述实施方式中,采用多层感知机对内容进行人群倾向性预估,并基于人群倾向性得分是服从高斯分布的假设,输出内容对于每一个人群的倾向性得分。在实际推荐中,本申请可根据内容推荐模型输出的倾向性得分,对每一个内容倾向的人群进行加权,得分高的将在这个人群中有更多被推荐的机会,提高内容推荐的准确性。
可选的,内容推荐模型是通过如下方式训练得到的:
基于训练样本集对待训练的内容推荐模型进行循环迭代训练,获得已训练的内容推荐模型;训练样本集中的每个训练样本包括:一个样本内容和相应的样本标签,样本标签包括:基于样本内容相关的历史反馈行为确定的,针对每个对象类的真实推荐参数。
以视频内容为例,在本申请实施例中,可从历史发文数据中取最近90天的视频、对象消费数据和账号综合表现构建训练样本集。每个训练样本包括一个样本视频,以及该样本视频对于每个对象类的真实推荐参数。比如有100个对象类,则每一个样本视频就对应有100个倾向性得分,对应这100个人群。
考虑到对象对视频的消费/反馈行为有很多,如上述点赞、转发、分享、评论、收藏等,本申请中的真实推荐参数,可基于这些反馈行为中的至少一种来确定,可记作目标反馈行为。
可选的,样本内容针对每个对象类的真实推荐参数,是通过如下方式确定的:
对于每个对象类,基于该对象类针对一个样本内容的历史反馈行为,确定该样本内容对应的各类反馈概率;进而,将各类反馈概率进行加权求和,获得对象类对应的真实推荐参数。
其中,每种目标反馈行为对应一类反馈概率;每类反馈概率表示将该样本内容推荐给该对象类后,该对象类关联的各对象执行相应的目标反馈行为的概率。
比如,目标反馈行为包括:点赞、评论、分享和完播,相应的反馈概率分别为:点赞率、评论率、分享率和完播率。
具体的,在基于这几类反馈概率计算真实推荐参数时,首先可计算每个人群在每个内容下的消费数据,包括点赞率、评论率、分享率和完播率;然后对这四个指标进行归一化操作;最后使用加权求和的方式把这四个指标加和到一起,公式如下:
在公式4中,yi即表示某样本内容对于第i个对象类的针对推荐参数,对于该样本内容而言,Zan表示第i个对象类对该样本内容的点赞率,Share表示第i个对象类对该样本内容的分享率,Comment表示第i个对象类对该样本内容的评论率,Play表示第i个对象类对该样本内容的完播率,若一共有100个对象类,则i的取值为1~100(正整数);w1,w2,w3,w4采用层次分析法(Analytic Hierarchy Process,AHP)的方式,将与决策总是有关的元素分解成目标、准则、方案等层次,在此基础之上进行定性和定量分析的方式确定。
假设,最终本申请得到的yi是一个0到1之间的得分,i的取值为1~100(正整数),则对于一个样本内容而言,可获得100个yi,每个样本内容都可通过上述方式确定相应的真实推荐参数,依此作为样本标签,可用于后续模型迭代训练。
需要说明的是,上述所列举的目标反馈行为包括点赞、评论、分享和完播只是简单举例,除此之外,目标反馈行为还可以是其他行为,如点赞、评论和转发,等等,本文不做具体限定。
其中,每次迭代训练执行以下步骤:
首先,从训练样本集中选取训练样本,并将训练样本中样本内容对应的内容反馈特征、内容属性特征和相应发布方的综合属性特征输入待训练的内容推荐模型,获得样本内容针对每个对象类的样本推荐参数。进而,基于各样本推荐参数与相应真实推荐参数之间的差异,对待训练的内容推荐模型进行参数调整。
其中,样本内容对应的内容反馈特征、内容属性特征和相应发布方的综合属性特征的提取方式,同上述所列举的待推荐内容相关特征的提取方式相同,重复之处不再赘述。
在本申请实施例中,对于每个样本内容而言,将该样本内容对应的内容反馈特征、内容属性特征和相应发布方的综合属性特征输入待训练的内容推荐模型,即可获得内容推荐模型预估得到的倾向性得分,也即该样本内容针对各对象类的样本推荐参数。
在此基础上,即可基于内容推荐模型输出的样本推荐参数与相对应的真实推荐参数之间的差异构建损失函数,以对内容推荐模型进行参数调整。
可选的,本申请采用均方误差损失(Then mean square error loss,MSE loss),公式如下所示:
在公式5中,yi即表示样本内容对第i个对象类的真实推荐参数,即该样本内容对第i个对象类的样本推荐参数,/>为损失函数。若一共有100个对象类,则i的取值为1~100(正整数)。
需要说明的是,上述所列举的MSE loss只是简单举例,除此之外还可采用其他类别的损失函数,本文不做具体限定。
S25:服务器基于获得的各推荐参数,分别向相应的对象类关联的各对象推荐待推荐内容。
在本申请实施例中,通过为对象增加了对象类的划分,将信息流对象划分为不同人群,从更多的维度和更细的粒度来刻画对象。
其中,将信息流对象划分为不同人群时,人群划分包括静态划分和动态划分中的至少一种,可以更全面对推荐系统中原有对象画像进行补充和更新。下面分别对这两种划分方式进行举例说明。
(一)静态划分方式:基于信息流对象的基础属性(也称静态属性)进行对象类划分。
在本申请实施例中,对象的基础属性是指年龄、性别、学历、城市、工作等静态属性/标签。
比如,根据对象的年龄、性别、学历、城市进行划分。其中,性别包括男性、女性和未知三个类型,年龄包括18-22岁、23-30岁、31-40岁、41-50岁、51-60岁和61+岁,学历包括小学、中学、本科、硕士和博士,城市包括一线城市、二线城市和三线城市。
需要说明的是,上述基于基础属性的对象类划分只是简单举例,本文不做具体限定。
(二)动态划分方式:基于信息流对象的历史反馈行为聚类得到对象类。
人群的动态划分:热门主播、唐诗宋词、萌宠、综艺节目、生肖运势、流量明星、大型犬类等一系列人群倾向性标签。
一种可选的实施方式为,可以按照如图9所示的流程图动态划分对象类,包括以下步骤S91~S95:
S91:服务器根据各样本内容相关的历史反馈行为构建第二对象行为图网络。
其中,第二对象行为图网络中的节点表示样本内容,存在边关系的两个节点表示被同一对象连续观看的样本内容。
在本申请实施例中,第二对象行为图网络的构建过程同上述所列举的第一对象行为图网络的构建过程类似,第二对象行为图网络用于:确定第二对象行为图网络中各节点的向量表征,并基于此实现内容聚类,并基于内容聚类结果进行对象类划分。该过程不仅需要考虑图中存在的节点,以及节点之间的边关系,还需要考虑各条边的权重,因而,第二对象行为图网络可记作G2=(V2,E2,W),它包括所有的节点V2,节点间的有向边E2,边的权重W。在本申请中,V2节点代表被消费的内容(即样本内容),E2边代表对象连续观看的两个样本内容,W权重代表单个样本内容与单个样本内容发生联系的对象数占所有的与其他样本内容关联的对象数的比例。
需要说明的是,本申请实施例中的第二对象行为图网络可以为有向图,也可以为无向图,本文不做具体限定。
下文以有向图为例,有向图G=(V,E,W)指的是一个有序三元组的关联函数,它包括所有的节点V,节点间的有向边E,边的权重W。在本申请中,节点代表被消费的样本内容,边代表对象连续观看了两个样本内容,权重代表单个样本内容与单个样本内容发生联系的对象数占所有的与其他样本内容关联的对象数的比例。
其中,样本内容是指已发布的历史内容,具体可根据发布时间等进行选择,如选取在X平台(某视频平台)近90天内已发布的视频作为样本内容。如图10所示,其为本申请实施例中的一种第二对象行为图网络的示意图。其中,图10示意了6个样本内容节点,分别为节点VA、节点VB、节点VC、节点VD、节点VE、节点VF。图10所示是一个有向图。
其中,每条边的权重表示边对应的第一关联对象与第二关联对象的数量比,具体的,第一关联对象为:观看该条边对应两个样本内容的对象,第二关联对象包括:观看各参考边对应的两个样本内容的对象,每条参考边都包含该条边中的目标节点(本申请中的参考边包含该条需要计算权重的边自身)。
以图10中的边EAB为例,即节点VA与节点VB之间的边,方向为由A指向B,表示对象先观看视频A,再观看视频B,该情况下,目标节点是指对象先观看的视频对应的节点,即节点VA,而边EAB的参考边则是指该第二对象行为图网络中,所有包含节点VA的边(即包含边EAB),如图所示,则边EAB的参考边除其自身外,还包括边EAE和边EDA。
边EAB所对应的权重wAB的计算公式如下:
在公式6中,AB代表视频A和B,N代表和视频A相连的所有视频的数量。count(*)代表两个视频关联的对象数量,count(userAB)即本申请中第一关联对象(表示既观看了视频A又观看了视频B的对象)的数量,即本申请中的第二关联对象的数量和,如图10所示,N的取值为3,i的取值与边EAB的参考边的数量相关,i可以为1~3(正整数),如i取1时代表视频B,则count(userAi)表示既观看了视频A又观看了视频B的对象的数量;i取2时代表视频D,则count(userAi)表示既观看了视频D又观看了视频A的对象的数量,i取3时代表视频E,则count(userAi)表示既观看了视频A又观看了视频E的对象的数量。第二关联对象的数量即上述i取1~3时的三个数量之和。
需要说明的是,在本申请实施例中,用于构建第一对象行为图网络的内容和用于构建第二对象行为图网络的样本内容可以相同,也可以不同;用于训练内容推荐模型的样本内容和用于构建第二对象行为图网络的样本内容可以相同,也可以不同,本文不做具体限定。
S92:服务器从第二对象行为图网络中选取多个节点组成节点序列。
在本申请实施例中,第二对象行为图网络中节点间的连接关系,可以表示对象的历史消费/反馈行为,因而基于此所选取的多个节点间的样本内容的内容向量也具有一定的关系,如相邻节点的特征向量相似,不相邻节点的特征向量不相似。
可选的,步骤S92的一种实施方式如下,包括S921-S922(图9未示出):
S921:从第二对象行为图网络中,随机选取一个节点作为起始节点。
S922:基于第二对象行为图网络中各条边的权重,从起始节点开始随机游走,获得指定长度的节点序列。
上述S921-S922所列举的是一种随机游走生成视频序列的方法,随机游走是一种可重复访问已访问节点的深度优先遍历算法,随机游走可以随机的选一个节点(也即起始节点)开始进行游走,每次根据边的权重加权随机的选取下一个节点。
具体的,本申请使用截断随机游走地方式,在上述所生成的有向图(第二对象行为图网络)中进行游走,截断随机游走即设置随机游走的最大长度(也即指定长度),当随机游走走到最大长度时,即停止随机游走,该次随机游走的全部经过的节点即可组成指定长度的节点序列。
需要说明的是,除上述所列举的选取节点序列的方式只是简单举例,除了随机游走的方式外,还可以使用node2vec,deepwalk等方式进行替换,本文不做具体限定。
在本申请实施例中,结合第二对象行为图网络所选取的节点序列中对应的各样本内容,来进行聚类时,首先需要基于已训练的内容表示模型,获得节点序列对应的各样本内容各自的内容向量,根据内容向量先对样本内容进行聚类,再根据内容的历史消费对象划分对象类。具体实施方式如下S93-S95:
S93:服务器基于已训练的内容表示模型,获得节点序列对应的各样本内容各自的内容向量。
S94:服务器基于各内容向量,对各样本内容进行聚类。
S95:服务器基于聚类结果,将一定时间内观看同一类样本内容的对象作为一个对象类。
以视频内容为例,基于S92获取节点序列后,即可将上述节点序列构成一条训练语料,对内容表示模型进行训练,如采用skip-gram网络结构构建内容表示模型时,skip-gram使用语料中在窗口尺寸内相邻的两个视频作为输入数据,使用其中的一个视频预测另一个视频,如图11A所示,其为本申请实施例中的一种内容表示模型的结构示意图。训练结束后即可得到每一个视频的向量表征,也即本文中的内容向量。
其中,窗口的大小可根据实际需求而定,一般可以是3、5、7这种奇数。如图11A中,窗口大小为5。图中w代表上述提到的第二对象行为图网络和基于节点序列构建的训练语料中的节点。以窗口大小为5为例,则可基于窗口内第3个节点的特征向量预测其前面和后面2个节点的特征向量。
例如训练语料是A、B、C、D、E、F、G、H,窗口大小是5,则把C输入时,预期输出是A、B和D、E。把D输入时,预期输出是B、C和E、F,等等,依此类推即可。当训练结束的时候,所得到的向量就是本申请所需要的内容向量。具体的,输入内容表示模型的向量可以使用任意预训练模型抽取,例如vit、swint等,本文不做具体限定。
其中,把C输入时,预期输出是A、B和D、E时,w(t)即C的特征向量,w(t-1)即B的特征向量,w(t-2)即A的特征向量,w(t+1)即D的特征向量,w(t+2)即E的特征向量,依次类推即可。
需要说明的是,上述所列举的以skip-gram网络结构构建内容表示模型的方式只是简单举例,除此之外还可采用其他网络,如Cbow模型,本文不做具体限定。
参阅图11B所示,其为本申请实施例中的另一种内容表示模型的结构示意图,该示意图即表示以Cbow网络结构构建的内容表示模型,同skip-gram相类似,Cbow也是使用语料中在窗口尺寸内相邻的两个视频作为输入数据,使用其中的一个视频预测另一个视频。
如图11B中,窗口大小也是5。图中w代表上述提到的第二对象行为图网络和基于节点序列构建的训练语料中的节点。以窗口大小为5为例,则可基于窗口内第3个节点的特征向量预测其前面和后面2个节点的特征向量。
例如训练语料是A、B、C、D、E、F、G、H,窗口大小是5,则把A、B和D、E输入时,预期输出是C。把B、C和E、F输入时,预期输出是D,等等,依此类推即可。当训练结束的时候,所得到的向量就是本申请所需要的内容向量。
其中,把A、B和D、E输入时,预期输出是C时,w(t)即C的特征向量,w(t-1)即B的特征向量,w(t-2)即A的特征向量,w(t+1)即D的特征向量,w(t+2)即E的特征向量,依次类推即可。
在基于已训练的内容表示模型获得各样本内容的内容向量后,即可基于这些内容向量进行内容聚类。
一种可选的聚类方式为,使用k-means聚类,得到簇。如图12所示,其为本申请实施例中的一种视频聚类结果示意图。其中,图12中的每一个点表示一个视频,本申请使用k-means方法,基于所有的样本视频的内容向量进行聚类以后,会得到多个簇,本申请对每一个簇进行人工概括,每一个簇中的视频就表示一种人群倾向,例如某一类人喜欢唐诗宋词,那么在聚类后的结果中,就会出现一个簇,这个簇中的所有内容都是跟唐诗宋词相关的,本申请就人工将这部分内容概括为“唐诗宋词”这个标签,而最近经常观看这个簇的内容的对象则会被打上“唐诗宋词”这个人群标签。
例如,最终人群的动态划分结果的人群标签有:热门主播、唐诗宋词、萌宠、综艺节目、生肖运势、流量明星、大型犬类等一系列人群倾向性标签。
在上述实施方式中,人群的动态划分结合了对象的消费行为,可以定期动态更新和增加,并且可以从更多的维度和更细的粒度来刻画对象。基于此方法可动态更新人群倾向性得分,使人群倾向得分持续体现内容的人群偏好。
此外还需要强调的是,本申请实施例中的对象划分方法,可保证任意新潜对象都可以有划分人群,任意内容都可以输出人群倾向性,不受到对象关注的账号主数量的影响,因此可以在内容冷启、新潜对象等各种场景进行应用,可以更好地优化推荐系统。如倾向性冷启实验冷启效果提升明显,完播率:+9.0891%,播放完整度:+5.0218%,冷启动_5秒快滑率:-1.3319%。
在划分对象类的基础上,进而内容推荐时,可通过相应对象类的推荐参数调整推荐系统对待推荐内容的原始排序,步骤S25的一种可选的实施方式如下S251-S252(图2未示出):
S251:对于每个对象类,若对象类对应的推荐参数大于预设阈值,则对推荐参数进行加权处理。
S252:基于获得的加权结果,向对象类关联的各对象推荐待推荐内容。
概括来说,在实际推荐中,本申请根据模型输出的倾向性得分,对每一个内容倾向的人群进行加权。因为人群倾向性得分是一个0到1之间的数字,实际实施的时候,本申请忽略掉得分小于0.1的数据,只对得分大于0.1的数据进行加权,这样,具有人群倾向的内容将会有更多的机会被喜爱它的人群所看到。
例如,设置预设阈值为0.1,对象A是男性,25岁,其属于人群B,那么如果一个内容在这个人群B中,倾向性得分大于0.1,则在推荐系统的排序层的排序,进行加权操作,加权的权重可以是任意方式,只要加权的权重大于1即可。
也即,在推荐系统的召回阶段,基于本申请预测得到的推荐参数对推荐系统的原有排序分数进行加权,如内容C对人群B的打分是0.7,原本推荐系统计算出来对象A对内容C的排序分数是1(假设这个是感兴趣的程度),则在本申请中可对该排序分数(就这个1)进行加权,例如1*(1+0.7)=1.7,则可保证对象A对内容C的感兴趣的程度变大了,这个内容C更有可能被对象A看到。
在本申请实施例中,每个对象会都对应有很多待推荐的内容,原本推荐系统会对这些内容进行排序,会有一个排序的分数,本申请中的倾向性得分只是改变了这个分数,在一定程度上影响了内容排序,使得待推荐内容被更倾向的人群看到的概率大大增加,保证具有人群倾向的内容将会有更多的机会被喜爱它的人群所看到。
参阅图13A所示,其为本申请实施例中的一种内容推荐方法的逻辑示意图。简单来说,如图13A所示,账号主发文以后,内容会经过多个机器学习算法模型识别,获得内容属性特征,包括内容对应的视频抽帧、ASR文本、标题、标签和分类等静态特征,具体参见上述实施例,重复之处不再赘述。对单个账号主进行统计后,可获得号主综合表现,包括账号感兴趣者数量,单日发文数量,单日分享数量,单日曝光数量,累计发文数量,累计分享数量,累计曝光数量,累计关注数量,累计被关注数量,单日关注数量,单日被关注数量,单日评论数量,累计评论数量等。内容在内容消费端进行分发以后,对象在自己的终端设备上可以看到多篇内容,此时会对自己感兴趣的内容进行点击、评论、点赞和分享等,通过关联对象在内容之间的行为特征,可以获得表征对象消费行为的反馈特征,包括对象对内容的点击、点赞、分享和评论等。联合内容属性特征、号主的综合属性特征和表征对象消费行为的内容反馈特征,对内容进行建模,获得内容倾向性得分。
在内容消费端进行内容推荐时,根据模型输出的倾向性得分,对每一个内容倾向的人群进行加权,得分高的内容将在这个人群中有更多被推荐的机会。
参阅图13B所示,其为本申请实施例中的一种视频推荐方法的逻辑示意图。图13B中是以短视频为例的,具体处理逻辑可参见上述实施例,重复之处不再赘述,如最后通过内容推荐模型预测得到某个待推荐内容针对100类人群的推荐参数分别为:1类人群0.7,2类人群0.5,3类人群0.05,…,100类人群0.3,每个推荐参数都为0~1之间的数值。在基于这些推荐参数进行内容推荐时,则可将推荐参数大于0.1的各类人群而言,在将该待推荐内容向该类人群推荐时,对推荐系统的原始排序分数进行加权,如1类人群+0.7,2类人群+0.5,…,100类人群+0.3,基于加权结果重新排序,使得内容倾向性高的人群看到该内容的概率增大。
需要强调的是,本申请从对象的角度、内容的角度和号主的角度综合来显式和隐式地理解内容(而不是从纯内容维度),为内容增加了人群倾向,增加推荐系统人群定向的消费能力;并且,本申请中对象针对内容的消费行为、号主的综合表现是动态变化的,基于此方法可动态更新人群倾向性得分,使人群倾向得分持续体现内容的人群偏好。
基于相同的发明构思,本申请实施例还提供一种内容推荐装置。如图14所示,其为内容推荐装置1400的结构示意图,可以包括:
第一提取单元1401,用于根据各内容相关的历史反馈行为构建第一对象行为图网络,并基于第一对象行为图网络提取各内容中待推荐内容对应的内容反馈特征;
第二提取单元1402,用于针对待推荐内容的发布方在不同统计维度的属性特征,进行特征交叉处理,得到发布方的综合属性特征;
第三提取单元1403,用于提取待推荐内容的内容属性特征;
预测单元1404,用于基于内容反馈特征、综合属性特征和内容属性特征,分别获得待推荐内容针对每个对象类的推荐参数;对象类是基于各对象的基础属性以及历史反馈行为中的至少一种划分得到的;
推荐单元1405,用于基于获得的各推荐参数,分别向相应的对象类关联的各对象推荐待推荐内容。
可选的,预测单元1404具体用于:
将内容反馈特征、综合属性特征和内容属性特征,输入已训练的内容推荐模型;
基于内容推荐模型,预测得到待推荐内容针对每个对象类的概率分布参数;概率分布参数用于描述目标概率分布的一种分布状态;
基于概率分布参数以及参考参数确定推荐参数,参考参数服从标准分布状态的目标概率分布。
可选的,目标概率分布为高斯分布;概率分布参数为均值和标准差。
可选的,预测单元1404还用于通过如下方式训练得到内容推荐模型:
基于训练样本集对待训练的内容推荐模型进行循环迭代训练,获得已训练的内容推荐模型;训练样本集中的每个训练样本包括:一个样本内容和相应的样本标签,样本标签包括:基于样本内容相关的历史反馈行为确定的,针对每个对象类的真实推荐参数;其中,每次迭代训练执行以下步骤:
从训练样本集中选取训练样本,并将训练样本中样本内容对应的内容反馈特征、内容属性特征和相应发布方的综合属性特征输入待训练的内容推荐模型,获得样本内容针对每个对象类的样本推荐参数;
基于各样本推荐参数与相应真实推荐参数之间的差异,对待训练的内容推荐模型进行参数调整。
可选的,预测单元1404还用于通过如下方式确定样本内容针对每个对象类的真实推荐参数:
对于每个对象类,基于对象类针对样本内容的历史反馈行为,确定样本内容对应的各类反馈概率;每类反馈概率表示将样本内容推荐给对象类后,对象类关联的各对象执行相应的目标反馈行为的概率;
将各类反馈概率进行加权求和,获得对象类对应的真实推荐参数。
可选的,装置还包括:
对象划分单元1406,用于通过执行以下操作,基于各对象的历史反馈行为划分对象类:
根据各样本内容相关的历史反馈行为构建第二对象行为图网络,第二对象行为图网络中的节点表示样本内容,存在边关系的两个节点表示被同一对象连续观看的样本内容;
从第二对象行为图网络中选取多个节点组成节点序列;
基于已训练的内容表示模型,获得节点序列对应的各样本内容各自的内容向量;
基于各内容向量,对各样本内容进行聚类;
基于聚类结果,将一定时间内观看同一类样本内容的对象作为一个对象类。
可选的,对象划分单元1406具体用于:
从第二对象行为图网络中,随机选取一个节点作为起始节点;
基于第二对象行为图网络中各条边的权重,从起始节点开始随机游走,获得指定长度的节点序列;
其中,每条边的权重表示边对应的第一关联对象与第二关联对象的数量比,第一关联对象为:观看边对应两个样本内容的对象,第二关联对象包括:观看各参考边对应的两个样本内容的对象,每条参考边都包含边中的目标节点。
可选的,第一对象行为图网络中的节点表示待推荐内容,存在边关系的两个节点表示被同一对象连续观看的内容;
第一提取单元1401,还用于:
对于第一对象行为图网络中的各条边,若边对应的两个内容未被同一对象执行指定反馈行为,则将边作为候选边;
从各候选边中选取至少一条进行删除,得到更新后的第一对象行为图网络。
可选的,第一提取单元1401具体用于:
获取第一对象行为图网络所对应的度矩阵和邻接矩阵;
基于度矩阵和邻接矩阵,以及各内容各自对应的初始内容向量,进行图表征学习,获得待推荐内容对应的内容反馈特征。
可选的,第二提取单元1402具体用于:
对于每个统计维度,根据统计维度下的属性特征的特征值所属的区间范围,以及目标权重矩阵,确定统计维度下,发布方对应的初始特征;
将各统计维度下的初始特征进行特征交叉处理,获得综合属性特征。
可选的,第二提取单元1402具体用于:
根据统计维度下的属性特征的特征值所属的区间范围,确定统计维度对应的标记值,每个区间范围对应一个标记值;
将标记值输入已训练的特征交叉模型,基于特征交叉模型将标记值进行编码;
基于获得的编码结果及特征交叉模型的嵌入层对应的目标权重矩阵,确定统计维度下,发布方对应的初始特征。
可选的,第二提取单元1402具体用于:
基于已训练的特征交叉模型中的因子分解机层,对每两个统计维度下的初始特征分别进行特征交叉处理,获得综合属性特征。
可选的,第三提取单元1403具体用于:
将待推荐内容的每类基础属性分别表示为多个属性向量;
对于每类基础属性,通过一维卷积处理,将基础属性对应的多个属性向量表示为一个综合向量;基于多模态注意力网络对综合向量进行特征提取,得到相应的目标向量;
将各基础属性对应的目标向量拼接,得到待推荐内容的内容属性特征。
可选的,推荐单元1405具体用于:
对于每个对象类,若对象类对应的推荐参数大于预设阈值,则对推荐参数进行加权处理;
基于获得的加权结果,向对象类关联的各对象推荐待推荐内容。
由于本申请从对象的角度,基于对象针对内容的历史反馈行为可以获得表征对象反馈行为的内容反馈特征,并且从发布方的角度,提取发布方的综合属性特征,从内容本身的角度,提取内容属性特征,从对象的角度、内容的角度和内容发布方的角度综合地理解内容;并且,本申请为对象增加了类别的划分,在此基础上,为内容增加了对象类的倾向性得分(即本文中的推荐参数),可以更好地优化推荐系统。在实际推荐中,则可根据待推荐内容针对各个对象类的倾向性得分,进行内容推荐,对于得分高的,将在这个类别的对象中有更多被推荐的机会,很好的提高了内容推荐的准确度。
为了描述的方便,以上各部分按照功能划分为各模块(或单元)分别描述。当然,在实施本申请时可以把各模块(或单元)的功能在同一个或多个软件或硬件中实现。
在介绍了本申请示例性实施方式的内容推荐方法和装置之后,接下来,介绍根据本申请的另一示例性实施方式的电子设备。
所属技术领域的技术人员能够理解,本申请的各个方面可以实现为系统、方法或程序产品。因此,本申请的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
与上述方法实施例基于同一发明构思,本申请实施例中还提供了一种电子设备。在一种实施例中,该电子设备可以是服务器,如图1所示的服务器120。在该实施例中,电子设备的结构可以如图15所示,包括存储器1501,通讯模块1503以及一个或多个处理器1502。
存储器1501,用于存储处理器1502执行的计算机程序。存储器1501可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统,以及运行即时通讯功能所需的程序等;存储数据区可存储各种即时通讯信息和操作指令集等。
存储器1501可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器1501也可以是非易失性存储器(non-volatilememory),例如只读存储器,快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);或者存储器1501是能够用于携带或存储具有指令或数据结构形式的期望的计算机程序并能够由计算机存取的任何其他介质,但不限于此。存储器1501可以是上述存储器的组合。
处理器1502,可以包括一个或多个中央处理单元(central processing unit,CPU)或者为数字处理单元等等。处理器1502,用于调用存储器1501中存储的计算机程序时实现上述内容推荐方法。
通讯模块1503用于与终端设备和其他服务器进行通信。
本申请实施例中不限定上述存储器1501、通讯模块1503和处理器1502之间的具体连接介质。本申请实施例在图15中以存储器1501和处理器1502之间通过总线1504连接,总线1504在图15中以粗线描述,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线1504可以分为地址总线、数据总线、控制总线等。为便于描述,图15中仅用一条粗线描述,但并不描述仅有一根总线或一种类型的总线。
存储器1501中存储有计算机存储介质,计算机存储介质中存储有计算机可执行指令,计算机可执行指令用于实现本申请实施例的内容推荐方法。处理器1502用于执行上述的内容推荐方法,如图2所示。
在另一种实施例中,电子设备也可以是其他电子设备,如图1所示的终端设备110。在该实施例中,电子设备的结构可以如图16所示,包括:通信组件1610、存储器1620、显示单元1630、摄像头1640、传感器1650、音频电路1660、蓝牙模块1670、处理器1680等部件。
通信组件1610用于与服务器进行通信。在一些实施例中,可以包括电路无线保真(Wireless Fidelity,WiFi)模块,WiFi模块属于短距离无线传输技术,电子设备通过WiFi模块可以帮助用户收发信息。
存储器1620可用于存储软件程序及数据。处理器1680通过运行存储在存储器1620的软件程序或数据,从而执行终端设备110的各种功能以及数据处理。存储器1620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。存储器1620存储有使得终端设备110能运行的操作系统。本申请中存储器1620可以存储操作系统及各种应用程序,还可以存储执行本申请实施例内容推荐方法的计算机程序。
显示单元1630还可用于显示由用户输入的信息或提供给用户的信息以及终端设备110的各种菜单的图形用户界面(graphical user interface,GUI)。具体地,显示单元1630可以包括设置在终端设备110正面的显示屏1632。其中,显示屏1632可以采用液晶显示器、发光二极管等形式来配置。显示单元1630可以用于显示本申请实施例中的待推荐内容、样本内容等。
显示单元1630还可用于接收输入的数字或字符信息,产生与终端设备110的用户设置以及功能控制有关的信号输入,具体地,显示单元1630可以包括设置在终端设备110正面的触控屏1631,可收集用户在其上或附近的触摸操作,例如点击按钮,拖动滚动框等。
其中,触控屏1631可以覆盖在显示屏1632之上,也可以将触控屏1631与显示屏1632集成而实现终端设备110的输入和输出功能,集成后可以简称触摸显示屏。本申请中显示单元1630可以显示应用程序以及对应的操作步骤。
摄像头1640可用于捕获静态图像,用户可以将摄像头1640拍摄的图像通过应用发布。摄像头1640可以是一个,也可以是多个。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给处理器1680转换成数字图像信号。
终端设备还可以包括至少一种传感器1650,比如加速度传感器1651、距离传感器1652、指纹传感器1653、温度传感器1654。终端设备还可配置有陀螺仪、气压计、湿度计、温度计、红外线传感器、光传感器、运动传感器等其他传感器。
音频电路1660、扬声器1661、传声器1662可提供用户与终端设备110之间的音频接口。音频电路1660可将接收到的音频数据转换后的电信号,传输到扬声器1661,由扬声器1661转换为声音信号输出。终端设备110还可配置音量按钮,用于调节声音信号的音量。另一方面,传声器1662将收集的声音信号转换为电信号,由音频电路1660接收后转换为音频数据,再将音频数据输出至通信组件1610以发送给比如另一终端设备110,或者将音频数据输出至存储器1620以便进一步处理。
蓝牙模块1670用于通过蓝牙协议来与其他具有蓝牙模块的蓝牙设备进行信息交互。例如,终端设备可以通过蓝牙模块1670与同样具备蓝牙模块的可穿戴电子设备(例如智能手表)建立蓝牙连接,从而进行数据交互。
处理器1680是终端设备的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器1620内的软件程序,以及调用存储在存储器1620内的数据,执行终端设备的各种功能和处理数据。在一些实施例中,处理器1680可包括一个或多个处理单元;处理器1680还可以集成应用处理器和基带处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,基带处理器主要处理无线通信。可以理解的是,上述基带处理器也可以不集成到处理器1680中。本申请中处理器1680可以运行操作系统、应用程序、用户界面显示及触控响应,以及本申请实施例的内容推荐方法。另外,处理器1680与显示单元1630耦接。
在一些可能的实施方式中,本申请提供的内容推荐方法的各个方面还可以实现为一种程序产品的形式,其包括计算机程序,当程序产品在电子设备上运行时,计算机程序用于使电子设备执行本说明书上述描述的根据本申请各种示例性实施方式的内容推荐方法中的步骤,例如,电子设备可以执行如图2中所示的步骤。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本申请的实施方式的程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括计算机程序,并可以在电子设备上运行。然而,本申请的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被命令执行系统、装置或者器件使用或者与其结合使用。
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由命令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的计算机程序,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。计算机程序可以完全地在用户电子设备上执行、部分地在用户电子设备上执行、作为一个独立的软件包执行、部分在用户电子设备上部分在远程电子设备上执行、或者完全在远程电子设备或服务器上执行。在涉及远程电子设备的情形中,远程电子设备可以通过任意种类的网络包括局域网(LAN)或广域网(WAN)连接到用户电子设备,或者,可以连接到外部电子设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
此外,尽管在附图中以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用计算机程序的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序命令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序命令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的命令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序命令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的命令产生包括命令装置的制造品,该命令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序命令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的命令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (17)
1.一种内容推荐方法,其特征在于,所述方法包括:
根据各内容相关的历史反馈行为构建第一对象行为图网络,并基于所述第一对象行为图网络提取所述各内容中待推荐内容对应的内容反馈特征;所述第一对象行为图网络中的节点表示待推荐内容,存在边关系的两个节点表示被同一对象连续观看的内容;
针对所述待推荐内容的发布方在不同统计维度的属性特征,进行特征交叉处理,得到所述发布方的综合属性特征;所述综合属性特征用于描述所述发布方在信息流平台的综合表现;
提取所述待推荐内容的内容属性特征;
将所述内容反馈特征、综合属性特征和所述内容属性特征,输入已训练的内容推荐模型;基于所述内容推荐模型,预测得到所述待推荐内容针对每个对象类的概率分布参数;基于所述概率分布参数以及参考参数确定推荐参数,所述参考参数服从标准分布状态的目标概率分布;其中,所述对象类是基于各对象的基础属性以及历史反馈行为中的至少一种划分得到的;所述概率分布参数用于描述目标概率分布的一种分布状态;
基于获得的各推荐参数,分别向相应的对象类关联的各对象推荐所述待推荐内容。
2.如权利要求1所述的方法,其特征在于,所述目标概率分布为高斯分布;所述概率分布参数为均值和标准差。
3.如权利要求1所述的方法,其特征在于,所述内容推荐模型是通过如下方式训练得到的:
基于训练样本集对待训练的内容推荐模型进行循环迭代训练,获得已训练的内容推荐模型;所述训练样本集中的每个训练样本包括:一个样本内容和相应的样本标签,所述样本标签包括:基于所述样本内容相关的历史反馈行为确定的,针对每个对象类的真实推荐参数;其中,每次迭代训练执行以下步骤:
从所述训练样本集中选取训练样本,并将所述训练样本中样本内容对应的内容反馈特征、内容属性特征和相应发布方的综合属性特征输入待训练的内容推荐模型,获得所述样本内容针对每个对象类的样本推荐参数;
基于各样本推荐参数与相应真实推荐参数之间的差异,对所述待训练的内容推荐模型进行参数调整。
4.如权利要求3所述的方法,其特征在于,所述样本内容针对每个对象类的真实推荐参数,是通过如下方式确定的:
对于每个对象类,基于所述对象类针对所述样本内容的历史反馈行为,确定所述样本内容对应的各类反馈概率;每类反馈概率表示将所述样本内容推荐给所述对象类后,所述对象类关联的各对象执行相应的目标反馈行为的概率;
将所述各类反馈概率进行加权求和,获得所述对象类对应的真实推荐参数。
5.如权利要求1~4任一项所述的方法,其特征在于,通过执行以下操作,基于各对象的历史反馈行为划分对象类:
根据各样本内容相关的历史反馈行为构建第二对象行为图网络,所述第二对象行为图网络中的节点表示样本内容,存在边关系的两个节点表示被同一对象连续观看的样本内容;
从所述第二对象行为图网络中选取多个节点组成节点序列;
基于已训练的内容表示模型,获得所述节点序列对应的各样本内容各自的内容向量;
基于各内容向量,对所述各样本内容进行聚类;
基于聚类结果,将一定时间内观看同一类样本内容的对象作为一个对象类。
6.如权利要求5所述的方法,其特征在于,所述从所述第二对象行为图网络中选取多个节点组成节点序列,包括:
从所述第二对象行为图网络中,随机选取一个节点作为起始节点;
基于所述第二对象行为图网络中各条边的权重,从所述起始节点开始随机游走,获得指定长度的节点序列;
其中,每条边的权重表示所述边对应的第一关联对象与第二关联对象的数量比,所述第一关联对象为:观看所述边对应两个样本内容的对象,所述第二关联对象包括:观看各参考边对应的两个样本内容的对象,每条参考边都包含所述边中的目标节点。
7.如权利要求1~4任一项所述的方法,其特征在于,所述根据各内容相关的历史反馈行为构建第一对象行为图网络,还包括:
对于所述第一对象行为图网络中的各条边,若所述边对应的两个内容未被同一对象执行指定反馈行为,则将所述边作为候选边;
从各候选边中选取至少一条进行删除,得到更新后的第一对象行为图网络。
8.如权利要求1~4任一项所述的方法,其特征在于,所述基于所述第一对象行为图网络提取所述各内容中待推荐内容对应的内容反馈特征,包括:
获取所述第一对象行为图网络所对应的度矩阵和邻接矩阵;
基于所述度矩阵和邻接矩阵,以及所述各内容各自对应的初始内容向量,进行图表征学习,获得所述待推荐内容对应的内容反馈特征。
9.如权利要求1~4任一项所述的方法,其特征在于,所述针对所述待推荐内容的发布方在不同统计维度的属性特征,进行特征交叉处理,得到所述发布方的综合属性特征,包括:
对于每个统计维度,根据所述统计维度下的属性特征的特征值所属的区间范围,以及目标权重矩阵,确定所述统计维度下,所述发布方对应的初始特征;
将各统计维度下的初始特征进行特征交叉处理,获得所述综合属性特征。
10.如权利要求9所述的方法,其特征在于,所述根据所述统计维度下的属性特征的特征值所属的区间范围,以及目标权重矩阵,确定所述统计维度下,所述发布方对应的初始特征,包括:
根据所述统计维度下的属性特征的特征值所属的区间范围,确定所述统计维度对应的标记值,每个区间范围对应一个标记值;
将所述标记值输入已训练的特征交叉模型,基于所述特征交叉模型将所述标记值进行编码;
基于获得的编码结果及所述特征交叉模型的嵌入层对应的目标权重矩阵,确定所述统计维度下,所述发布方对应的初始特征。
11.如权利要求9所述的方法,其特征在于,所述将各统计维度下的初始特征进行特征交叉处理,获得所述综合属性特征,包括:
基于已训练的特征交叉模型中的因子分解机层,对每两个统计维度下的初始特征分别进行特征交叉处理,获得所述综合属性特征。
12.如权利要求1~4任一项所述的方法,其特征在于,所述提取所述待推荐内容的内容属性特征,包括:
将所述待推荐内容的每类基础属性分别表示为多个属性向量;
对于每类基础属性,通过一维卷积处理,将所述基础属性对应的多个属性向量表示为一个综合向量;基于多模态注意力网络对所述综合向量进行特征提取,得到相应的目标向量;
将各基础属性对应的目标向量拼接,得到所述待推荐内容的内容属性特征。
13.如权利要求1~4任一项所述的方法,其特征在于,所述基于获得的各推荐参数,分别向相应的对象类关联的各对象推荐所述待推荐内容,包括:
对于每个对象类,若所述对象类对应的推荐参数大于预设阈值,则对所述推荐参数进行加权处理;
基于获得的加权结果,向所述对象类关联的各对象推荐所述待推荐内容。
14.一种内容推荐装置,其特征在于,包括:
第一提取单元,用于根据各内容相关的历史反馈行为构建第一对象行为图网络,并基于所述第一对象行为图网络提取所述各内容中待推荐内容对应的内容反馈特征;所述第一对象行为图网络中的节点表示待推荐内容,存在边关系的两个节点表示被同一对象连续观看的内容;
第二提取单元,用于针对所述待推荐内容的发布方在不同统计维度的属性特征,进行特征交叉处理,得到所述发布方的综合属性特征;所述综合属性特征用于描述所述发布方在信息流平台的综合表现;
第三提取单元,用于提取所述待推荐内容的内容属性特征;
预测单元,用于将所述内容反馈特征、综合属性特征和所述内容属性特征,输入已训练的内容推荐模型;基于所述内容推荐模型,预测得到所述待推荐内容针对每个对象类的概率分布参数;基于所述概率分布参数以及参考参数确定推荐参数,所述参考参数服从标准分布状态的目标概率分布;其中,所述对象类是基于各对象的基础属性以及历史反馈行为中的至少一种划分得到的;所述概率分布参数用于描述目标概率分布的一种分布状态;
推荐单元,用于基于获得的各推荐参数,分别向相应的对象类关联的各对象推荐所述待推荐内容。
15.一种电子设备,其特征在于,其包括处理器和存储器,其中,所述存储器存储有计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1~13中任一所述方法的步骤。
16.一种计算机可读存储介质,其特征在于,其包括计算机程序,当所述计算机程序在电子设备上运行时,所述计算机程序用于使所述电子设备执行权利要求1~13中任一所述方法的步骤。
17.一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序存储在计算机可读存储介质中;当电子设备的处理器从所述计算机可读存储介质读取所述计算机程序时,所述处理器执行所述计算机程序,使得所述电子设备执行权利要求1~13中任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310855102.0A CN116628345B (zh) | 2023-07-13 | 2023-07-13 | 一种内容推荐方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310855102.0A CN116628345B (zh) | 2023-07-13 | 2023-07-13 | 一种内容推荐方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116628345A CN116628345A (zh) | 2023-08-22 |
CN116628345B true CN116628345B (zh) | 2024-02-06 |
Family
ID=87602768
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310855102.0A Active CN116628345B (zh) | 2023-07-13 | 2023-07-13 | 一种内容推荐方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116628345B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117522614B (zh) * | 2023-12-29 | 2024-05-03 | 北京芯盾时代科技有限公司 | 一种数据的处理方法、装置、电子设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111784455A (zh) * | 2020-06-30 | 2020-10-16 | 腾讯科技(深圳)有限公司 | 一种物品推荐方法及推荐设备 |
CN112163165A (zh) * | 2020-10-21 | 2021-01-01 | 腾讯科技(深圳)有限公司 | 信息推荐方法、装置、设备及计算机可读存储介质 |
CN112543346A (zh) * | 2021-01-14 | 2021-03-23 | 浙江口碑网络技术有限公司 | 信息发布方法和装置,计算机存储介质和电子设备 |
CN114090880A (zh) * | 2021-11-10 | 2022-02-25 | 北京明略软件系统有限公司 | 用于商品推荐的方法及装置、电子设备、存储介质 |
CN114154068A (zh) * | 2021-12-06 | 2022-03-08 | 清华大学 | 媒体内容推荐方法、装置、电子设备及存储介质 |
CN114692007A (zh) * | 2022-06-01 | 2022-07-01 | 腾讯科技(深圳)有限公司 | 表示信息的确定方法、装置、设备及存储介质 |
CN115017362A (zh) * | 2022-06-09 | 2022-09-06 | 腾讯音乐娱乐科技(深圳)有限公司 | 数据处理方法、电子设备及存储介质 |
CN115688024A (zh) * | 2022-09-27 | 2023-02-03 | 哈尔滨工程大学 | 基于用户内容特征和行为特征的网络异常用户预测方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022015464A1 (en) * | 2020-07-16 | 2022-01-20 | Sony Interactive Entertainment Inc. | Influencer tools for stream curation based on follower information |
-
2023
- 2023-07-13 CN CN202310855102.0A patent/CN116628345B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111784455A (zh) * | 2020-06-30 | 2020-10-16 | 腾讯科技(深圳)有限公司 | 一种物品推荐方法及推荐设备 |
CN112163165A (zh) * | 2020-10-21 | 2021-01-01 | 腾讯科技(深圳)有限公司 | 信息推荐方法、装置、设备及计算机可读存储介质 |
CN112543346A (zh) * | 2021-01-14 | 2021-03-23 | 浙江口碑网络技术有限公司 | 信息发布方法和装置,计算机存储介质和电子设备 |
CN114090880A (zh) * | 2021-11-10 | 2022-02-25 | 北京明略软件系统有限公司 | 用于商品推荐的方法及装置、电子设备、存储介质 |
CN114154068A (zh) * | 2021-12-06 | 2022-03-08 | 清华大学 | 媒体内容推荐方法、装置、电子设备及存储介质 |
CN114692007A (zh) * | 2022-06-01 | 2022-07-01 | 腾讯科技(深圳)有限公司 | 表示信息的确定方法、装置、设备及存储介质 |
CN115017362A (zh) * | 2022-06-09 | 2022-09-06 | 腾讯音乐娱乐科技(深圳)有限公司 | 数据处理方法、电子设备及存储介质 |
CN115688024A (zh) * | 2022-09-27 | 2023-02-03 | 哈尔滨工程大学 | 基于用户内容特征和行为特征的网络异常用户预测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116628345A (zh) | 2023-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111444428B (zh) | 基于人工智能的信息推荐方法、装置、电子设备及存储介质 | |
WO2021203819A1 (zh) | 一种内容推荐方法、装置、电子设备和存储介质 | |
CN110737801B (zh) | 内容分类方法、装置、计算机设备和存储介质 | |
CN113626719B (zh) | 信息推荐方法、装置、设备、存储介质及计算机程序产品 | |
CN112131350B (zh) | 文本标签确定方法、装置、终端及可读存储介质 | |
WO2023065211A1 (zh) | 一种信息获取方法以及装置 | |
Katarya et al. | Capsmf: a novel product recommender system using deep learning based text analysis model | |
WO2021139415A1 (zh) | 数据处理方法、装置、计算机可读存储介质及电子设备 | |
CN111339404A (zh) | 基于人工智能的内容热度预测方法、装置和计算机设备 | |
CN115917535A (zh) | 推荐模型的训练方法、推荐方法、装置及计算机可读介质 | |
Wang et al. | Deep and broad learning on content-aware POI recommendation | |
CN116628345B (zh) | 一种内容推荐方法、装置、电子设备和存储介质 | |
Meddeb et al. | Personalized smart learning recommendation system for arabic users in smart campus | |
CN114201516A (zh) | 一种用户画像构建的方法、信息推荐的方法以及相关装置 | |
CN112131345A (zh) | 文本质量的识别方法、装置、设备及存储介质 | |
Chaudhuri | Visual and text sentiment analysis through hierarchical deep learning networks | |
CN114817692A (zh) | 确定推荐对象的方法、装置和设备及计算机存储介质 | |
CN116977701A (zh) | 视频分类模型训练的方法、视频分类的方法和装置 | |
US20220358366A1 (en) | Generation and implementation of dedicated feature-based techniques to optimize inference performance in neural networks | |
CN115482019A (zh) | 一种活动关注度预测方法、装置、电子设备和存储介质 | |
CN116932862A (zh) | 冷启动对象推荐方法、装置、计算机设备和存储介质 | |
Bang et al. | Collective matrix factorization using tag embedding for effective recommender system | |
CN114741587A (zh) | 一种物品推荐方法、装置、介质及设备 | |
Ohtomo et al. | User-centric multimodal feature extraction for personalized retrieval of tumblr posts | |
CN116628236B (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40091431 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |