CN113569136B - 视频推荐方法、装置、电子设备及存储介质 - Google Patents
视频推荐方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113569136B CN113569136B CN202110752995.7A CN202110752995A CN113569136B CN 113569136 B CN113569136 B CN 113569136B CN 202110752995 A CN202110752995 A CN 202110752995A CN 113569136 B CN113569136 B CN 113569136B
- Authority
- CN
- China
- Prior art keywords
- preset operation
- account
- video
- layer
- codes
- 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 39
- 238000013528 artificial neural network Methods 0.000 claims abstract description 57
- 238000004590 computer program Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/71—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/78—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/783—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Library & Information Science (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本公开是关于一种视频推荐方法、装置、电子设备及存储介质,该方法包括:获取各预设操作对应的拓扑图;对于各预设操作对应的拓扑图,利用图神经网络基于该预设操作对应的拓扑图,分别对各账户执行第一操作,分别对各视频执行第二操作;基于每一个账户的各对应于预设操作的总编码,确定每一个账户的总编码,基于各视频的各对应于预设操作的总编码,确定各视频的总编码;基于各账户的总编码和各视频的总编码,确定各账户对应的推荐视频。对应多个预设操作中的每一个预设操作,考虑了多个账户与多个视频之间的与该预设操作的相关的关系,利用图神经网络基于每一个预设操作对应的拓扑图,确定每一个账户对应的推荐视频,提升视频推荐的准确性。
Description
技术领域
本公开涉及视频领域,尤其涉及视频推荐方法、装置、电子设备及存储介质。
背景技术
在相关技术中,在向一个账户进行进行视频推荐时,确定该账户进行过操作的视频,从其他视频中查找该账户进行过操作的视频的关联视频,将该账户进行过操作的视频的关联视频作为该账户对应的推荐视频。仅考虑了该账户进行过操作的视频与其他视频的关联性,没有考虑该账户进行过的操作与其他视频的关联性、该账户与对该用户进行过操作的视频进行过操作的其他账户的关联性等可以影响视频推荐的准确性的因素,导致视频推荐的准确性较低。
发明内容
为克服相关技术中存在的问题,本公开提供一种视频推荐方法、装置、电子设备及存储介质,以至少解决相关技术中的视频推荐的准确性较低问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种视频推荐方法,包括:
获取各预设操作对应的拓扑图,其中,所述预设操作对应的拓扑图指示多个账户与多个视频之间的与所述预设操作相关的关系;
对于各预设操作对应的拓扑图,利用图神经网络基于所述预设操作对应的拓扑图,分别对各所述账户执行第一操作,以及分别对各所述视频执行第二操作,其中,第一操作包括:基于图神经网络的各编码层输出的、所述账户的对应于所述预设操作的编码,确定所述账户的对应于所述预设操作的总编码,其中,编码层输出的、所述账户的对应于所述预设操作的编码基于所述编码层的前一层输出的、账户的对应于所述预设操作的关联视频的编码确定;第二操作包括:基于各编码层输出的、所述视频的对应于所述预设操作的编码,确定所述视频的对应于所述预设操作的总编码,其中,编码层输出的、所述视频的对应于所述预设操作的编码基于所述编码层的前一层输出的、所述视频的对应于所述预设操作的关联账户的编码确定;
对于每一个账户,基于所述账户的各对应于预设操作的总编码,确定所述账户的总编码,对于每一个视频,基于所述视频的各对应于预设操作的总编码,确定所述视频的总编码;
基于各账户的总编码和各视频的总编码,确定各账户对应的推荐视频。
根据本公开实施例的第二方面,提供一种视频推荐装置,包括:
获取模块,被配置为获取各预设操作对应的拓扑图,其中,所述预设操作对应的拓扑图指示多个账户与多个视频之间的与所述预设操作相关的关系;
编码模块,被配置为对于各预设操作对应的拓扑图,利用图神经网络基于所述预设操作对应的拓扑图,分别对各所述账户执行第一操作,以及分别对各所述视频执行第二操作,其中,第一操作包括:基于图神经网络的各编码层输出的、所述账户的对应于所述预设操作的编码,确定所述账户的对应于所述预设操作的总编码,其中,编码层输出的、所述账户的对应于所述预设操作的编码基于所述编码层的前一层输出的、账户的对应于所述预设操作的关联视频的编码确定;第二操作包括:基于各编码层输出的、所述视频的对应于所述预设操作的编码,确定所述视频的对应于所述预设操作的总编码,其中,编码层输出的、所述视频的对应于所述预设操作的编码基于所述编码层的前一层输出的、所述视频的对应于所述预设操作的关联账户的编码确定;
总编码确定模块,被配置为对于每一个账户,基于所述账户的各对应于预设操作的总编码,确定所述账户的总编码,对于每一个视频,基于所述视频的各对应于预设操作的总编码,确定所述视频的总编码;
推荐视频确定模块,被配置为基于各账户的总编码和各视频的总编码,确定各账户对应的推荐视频。
本公开的实施例提供的技术方案可以包括以下有益效果:
在进行视频推荐时,对于多个预设操作中的每一个预设操作,考虑了多个账户与多个视频之间的与该预设操作的相关的关系,利用相应的预设操作对应的拓扑图指示多个账户与多个视频之间的与该预设操作的相关的关系,利用图神经网络基于每一个预设操作对应的拓扑图,确定每一个账户的总编码和每一个视频的总编码,确定每一个账户对应的推荐视频,提升视频推荐的准确性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的一种视频推荐方法的一个实施例的流程图;
图2是设操作对应的拓扑图的示意图;
图3是根据一示例性实施例示出的视频推荐装置的结构框图;
图4是根据一示例性实施例示出的一种服务器的结构框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的视频推荐方法的一个实施例的流程图。该方法包括以下步骤:
步骤101,获取每一个预设操作对应的拓扑图。
例如,多个预设操作包括:有效观看操作、点赞操作、观看完成操作,有效观看操作为观看时长大于时长阈值,点赞操作为点击指示喜欢视频的控件,观看完成操作为完整地观看视频,可以获取有效观看操作对应的拓扑图、点赞操作对应的拓扑图、观看完成操作对应的拓扑图。
在本公开中,预设操作对应的操作拓扑图可以包括:多个账户中的每一个账户对应的账户节点、多个视频中的每一个视频对应的视频节点。
预设操作对应的拓扑图指示多个账户与多个视频之间的、与该预设操作相关的关系。
对于该多个账户中的每一个账户,在预设操作对应的拓扑图中,该账户对应的账户节点连接至少一个视频节点,该账户对应的账户节点连接一个视频对应的视频节点表示该账户对该视频进行过该预设操作,该视频为该账户的、对应于该预设操作的关联视频。对于该多个视频中的每一个视频,在预设操作对应的拓扑图中,该视频对应的视频节点连接至少一个账户节点,该视频对应的视频节点连接一个账户对应的账户节点,表示该账户对该视频进行过该预设操作,该账户为该视频的、对应于该预设操作的关联账户。
请参考图2,其示出了预设操作对应的拓扑图的示意图。
在图2中,示例性地示出了三个预设操作对应的拓扑图。有效观看操作可以称之为Effective-view,点赞操作可以称之为Favorite,观看完成操作可以称之为Long-view。
在Effective-view对应的拓扑图中,账户u1对应的账户节点同时连接视频i1对应的视频节点、视频i2对应的视频节点、视频i4对应的视频节点,表示账户u1对i1、i2、i4进行过Effective-view,i1、i2、i4均为账户u1的、对应于Effective-view的关联视频。
在Effective-view对应的拓扑图中,视频i1对应的视频节点同时连接账户u1对应的账户节点、账户u4对应的账户节点、账户u5对应的账户节点,u1、u4、u5均为视频i1的、对应于Effective-view的关联账户。
在Favorite对应的拓扑图中,账户u1对应的账户节点同时连接视频i1对应的视频节点、视频i2对应的视频节点、视频i3对应的视频节点,表示账户u1对i1、i2、i3进行过Favorite,i1、i2、i3均为账户u1的、对应于Favorite的关联视频。
在Favorite对应的拓扑图中,视频i1对应的视频节点同时连接账户u1对应的账户节点、账户u4对应的账户节点、账户u6对应的账户节点,u1、u4、u6均为视频i1的、对应于Favorite的关联账户。
在Long-view对应的拓扑图中,账户u1对应的账户节点同时连接视频i1对应的视频节点、视频i3对应的视频节点、视频i4对应的视频节点,表示账户u1对i1、i3、i4进行过Long-view,i1、i3、i4均为账户u1的、对应于Long-view的关联视频。
在Long-view对应的拓扑图中,在Favorite对应的拓扑图中,视频i1对应的视频节点同时连接账户u1对应的账户节点、账户u4对应的账户节点、账户u6对应的账户节点,u1、u4、u6均为视频i1的、对应于Long-view的关联账户。
步骤102,对于各预设操作对应的拓扑图,利用图神经网络基于该预设操作对应的拓扑图,分别对各账户执行第一操作,以及分别对各视频执行第二操作。
在本公开中,图神经网络(Graph Neural Network,简称GNN)可以包括:账户初始编码和视频初始编码生成层、多个编码层。
账户初始编码和视频初始编码生成层可以分别对账户中的每一个账户进行编码(embedding)操作,得到多个账户中的每一个账户的初始编码。账户初始编码和视频初始编码生成层可以分别对多个视频中的每一个视频进行编码操作,得到多个视频中的每一个视频的初始编码。
账户编码和视频编码生成层输出、每一个账户的编码为每一个账户的初始编码,账户编码和视频编码生成层输出、每一个视频的为每一个视频的初始编码。
在本公开中,对于图神经网络中的第1个编码层,第1个编码层的前一层为账户编码和视频编码生成层。
对于于图神经网络中的多个编码层中的除了第1个编码层之外的每一个其他编码层,该其他编码层的前一层为该其他编码层的前一个编码层。
在本公开中,对于每一个预设操作对应的拓扑图,利用图神经网络基于该预设操作对应的拓扑图,分别对多个账户中的每一个账户执行第一操作,以及分别对多个视频中的每一个视频执行第二操作。
例如,多个预设操作包括:有效观看操作、点赞操作、观看完成操作。
利用图神经网络基于有效观看操作对应的拓扑图,分别对每一个账户执行第一操作,得到每一个账户的、对应于有效观看操作的总编码。利用图神经网络基于有效观看操作对应的拓扑图,分别对每一个视频执行第二操作,得到每一个视频的、对应于有效观看操作的总编码。
利用图神经网络基于点赞操作对应的拓扑图,分别对每一个账户执行第一操作,得到每一个账户的、对应于点赞操作的总编码。利用图神经网络基于点赞操作对应的拓扑图,分别对每一个视频执行第二操作,得到每一个视频的、对应于点赞操作的总编码。
利用图神经网络基于观看完成操作对应的拓扑图,分别对每一个账户执行第一操作,得到每一个账户的、对应于观看完成操作的总编码。利用图神经网络基于观看完成操作对应的拓扑图,分别对每一个视频执行第二操作,得到每一个视频的、对应于观看完成操作的总编码。
在本公开中,对于多个账户中的每一个账户,利用图神经网络基于一个预设操作对应的拓扑图,对该账户执行第一操作包括:基于各编码层输出的、该账户的对应于该预设操作的编码,确定该账户的对应于该预设操作的总编码。
在本公开中,在利用图神经网络基于一个预设操作对应的拓扑图,对一个账户执行第一操作时,对于每一个编码层,可以基于该编码层的前一层输出的、该账户的、对应于该预设操作的关联视频的编码,确定该编码层输出的、该账户的对应于预设操作的编码。
例如,在利用图神经网络基于一个预设操作对应的拓扑图,对一个账户执行第一操作时,对于每一个编码层,可以将该编码层的前一层输出的、该账户的每一个对应于该预设操作的关联视频的编码相加,将得到的结果除以该账户的、所有对应于该预设操作的关联视频的数量的平方根,得到该编码层输出的、该账户的对应于该预设操作的编码。
以下举例说明利用图神经网络基于一个预设操作对应的拓扑图,对一个账户执行第一操作的过程,利用图神经网络基于任意一个预设操作对应的拓扑图,对任意一个账户执行第一操作的过程与该过程同理:
在利用图神经网络基于一个预设操作b对应的拓扑图,对一个账户u执行第一操作时,图神经网络可以基于b对应的拓扑图,确定账户u的、每一个对应于b的关联视频。
在利用图神经网络基于b对应的拓扑图,对账户u执行第一操作时,对于每一个编码层,可以基于该编码层的前一层输出的、账户u的对应于b的关联视频的编码,确定该编码层输出的、账户u的对应于b的编码。
在确定每一个编码层输出的、账户u的对应于b的编码之后,基于每一个编码层输出的、账户u的对应于b的编码,确定账户u的、对应于b的总编码。可以将每一个编码层输出的、账户u的对应于b的编码相加,将得到的结果除以编码层的数量,得到账户u的、对应于b的总编码。
即可以采用以下公式确定账户u的对应于b的总编码
表示第k个编码层输出的账户u的、对应于预设操作b的编码,K表示编码层的数量。
在一些实施例中,在利用图神经网络基于一个预设操作对应的拓扑图,对一个账户执行第一操作时,对于每一个编码层,该编码层输出的、该账户的对应于该预设操作的编码通过以下步骤确定:对于该账户的、每一个对应于该预设操作的关联视频,基于该编码层的前一层输出的、该对应于该预设操作的关联视频的编码与该编码层的前一层输出的、该账户的每一个其他的对应于该预设操作的关联视频的编码的关联度,确定该对应于该预设操作的关联视频的权重;利用该账户的、每一个对应于该预设操作的关联视频的权重,计算该编码层的前一层输出的、该账户的每一个对应于该预设操作的关联视频的编码的加权和;基于该编码层的前一层输出的、该账户的每一个对应于该预设操作的关联视频的编码的加权和与该账户的、所有对应于该预设操作的关联视频的数量,得到该编码层输出的、该账户的对应于该预设操作的编码。
一个账户的、其他的对应于预设操作的关联视频并不特指该账户的、某一个对应于该预设操作的关联视频。一个账户的、其他的对应于预设操作的关联视频是相对于该账户的、某一个特定的对应于该预设操作的关联视频而言的。
例如,在计算账户u的、对应于b的关联视频i的权重时,对于账户u的、对应于b的关联视频i而言,账户u的所有对应于b的关联视频中的、除了视频i之外的关联视频为账户u的、其他的对应于b的关联视频,账户u的、其他的对应于b的关联视频的数量为一个或多个。
对于账户u和预设操作b,在计算第k个编码层输出的、账户u的对应b的编码时,对于账户u的每一个对应于b的关联视频,基于第k个编码层的前一层输出的、该对应于b的关联视频的编码与第k个编码层的前一层输出的、账户u的每一个其他的对应于b的关联视频的编码的关联度,确定该对应于b的关联视频的权重。
例如,对于账户u和预设操作b,在计算第k个编码层输出的、账户u的对应b的编码时,若对于账户u的、对应于b的关联视频i而言,账户u的其他的对应于b的关联视频的数量为一个,则将第k个编码层的前一层输出的、账户u的对应于b的关联视频i的编码与第k个编码层的前一层输出的、账户u的其他的对应于b的关联视频的编码的关联度确定为账户u的、对应于b的关联视频i的权重。
若对于账户u的、对应于b的关联视频i而言,账户u的其他的对应于b的关联视频的数量为多个,分别确定第k个编码层的前一层输出的、账户u的对应于b的关联视频i的编码与第k个编码层的前一层输出的、账户u的每一个其他的对应于b的关联视频的编码的关联度,得到多个关联度。若多个为两个,可以将两个关联度中的最小值、最大值、平均值中的一个确定为账户u的、对应于b的关联视频i的权重。若多个大于两个,可以将多个关联度中的中位数确定为账户u的、对应于b的关联视频i的权重。
在本公开中,对于一个账户和一个预设操作,在确定一个编码层输出的、该账户的对应于该预设操作的编码时,利用该账户的、每一个对应于该预设操作的关联视频的权重表示该编码层的前一层输出的、该账户的每一个对应于该预设操作的关联视频的编码与该编码层输出的、该账户的对应于该预设操作的编码的关联程度,考虑了该编码层的前一层输出的、该账户的每一个对应于该预设操作的关联视频的编码与该编码层输出的、该账户的对应于该预设操作的编码的关联程度,提升确定出的该编码层输出的、该账户的对应于该预设操作的编码的精确度。
在本公开中,可以采用函数f(.)计算第k个编码层的前一层输出的、账户u的一个对应于预设操作的关联视频的编码与第k个编码层的前一层输出的、账户u的另一个对应于预设操作的关联视频的编码的关联度。f(.)可以为ReLU函数。
f(.)的自变量与第k个编码层的前一层输出的、账户u的一个对应于预设操作的关联视频的编码和第k个编码层的前一层输出的、账户u的另一个对应于预设操作的关联视频的编码相关。
在计算账户u的对应于b的关联视频i的编码与账户u的对应于b的一个其他的关联视频j的编码的关联度时,f(.)可以表示为以下公式中的等号右侧的部分:
表示第k个编码层的前一层输出的、账户u的对应于预设操作b的关联视频i的编码,/>表示第k个编码层的前一层输出的、账户u的对应于预设操作b的其他关联视频j的编码。
在一些实施例中,在利用图神经网络基于一个预设操作对应的拓扑图,对一个账户执行第一操作时,对于一个编码层,基于该编码层的前一层输出的、该账户的对应于该预设操作的关联视频的编码与该编码层的前一层输出的、该账户的每一个其他的对应于该预设操作的关联视频的编码的关联度,确定该账户的对应于该预设操作的关联视频的权重包括:将该编码层的前一层输出的、该账户的对应于该预设操作的关联视频的编码与该编码层的前一层输出的、该账户的其他的对应于该预设操作的关联视频的编码的关联度的均值确定为该账户的对应于该预设操作的关联视频的权重。
在确定一个编码层输出的账户u的对应于预设操作b的关联视频i的权重时,可以将该编码层的前一层输出的、账户u的对应于b的关联视频i的编码与该编码层的前一层输出的、账户u的每一个其他的对应于b的关联视频的编码的关联度相加,将得到的结果除以账户u的、所有对应于b的关联视频的数量,账户u的对应于b的关联视频i的权重。
即可以采用以下公式计算账户u的对应于b的关联视频i的权重
Nu表示账户u的、对应于b的关联视频的集合,|Nu|表示账户u的、所有对应于b的关联视频的数量。
在本公开中,对于一个账户和一个预设操作,当基于一个编码层的前一层输出的、该账户的一个对应于该预设操作的关联视频的编码与该编码层的前一层输出的、该账户的每一个其他的对应于该预设操作的关联视频的编码的关联度,确定该账户的一个对应于该预设操作的关联视频的权重时,计算该编码层的前一层输出的、该账户的一个对应于该预设操作的关联视频的编码与该编码层的前一层输出的、该账户的每一个其他的对应于该预设操作的关联视频的编码的关联度的均值。该均值可以较为精确地反映该编码层的前一层输出的、该账户的一个对应于该预设操作的关联视频的编码与该编码层的前一层输出的、该账户的其他的对应于该预设操作的关联视频的编码的总体的关联度,将该均值确定为该账户的、一个对应于该预设操作的关联视频的权重,提升确定出的该账户的一个对应于该预设操作的关联视频的权重的精确度。
在本公开中,对于账户u和预设操作b,在计算第k个编码层输出的、账户u的对应b的编码时,利用账户u的每一个对应于b的关联视频的权重,计算第k个编码层的前一层输出的、账户u的每一个对应于b的关联视频的编码的加权和,基于第k个编码层的前一层输出的、账户u的每一个对应于b的关联视频的编码的加权和账户u的、所有对应于b的关联视频的数量,得到第k个编码层输出的、该账户的对应于b的编码。
可以将第k个编码层的前一层输出的、账户u的每一个对应于b的关联视频的编码的加权和除以账户u的所有对应于b的关联视频的数量的平方根,得到第k个编码层输出的、账户u的对应b的编码。
可以采用以下公式得到第k个编码层输出的、账户u的对应b的编码
表示账户u的对应于b的关联视频i的权重,/>表示第k个编码层的前一层输出的、账户u的对应于预设操作b的关联视频i的编码。
在本公开中,对于多个视频中的每一个视频,利用图神经网络基于该预设操作对应的拓扑图,对该视频执行第二操作包括:基于各编码层输出的、该视频的对应于该预设操作的编码,确定该视频的、对应于该预设操作的总编码。
在本公开中,在利用图神经网络基于一个预设操作对应的拓扑图,对一个视频执行第二编码操作时,对于每一个编码层,可以基于该编码层的前一层输出的、该视频的对应于该预设操作的关联账户的编码,确定该编码层输出的、该视频的对应于该预设操作的编码。
例如,在利用图神经网络基于一个预设操作对应的拓扑图,对一个视频执行第二编码操作时,对于每一个编码层,可以将该编码层的前一层输出的、该视频的每一个对应于该预设操作的关联账户的编码相加,将得到的结果除以对该视频的、所有对应于该预设操作的关联账户的数量的平方根,得到该编码层输出的、该视频的对应于该预设操作的编码。
以下举例说明利用图神经网络基于一个预设操作对应的拓扑图,对一个视频执行第二操作的过程,利用图神经网络基于任意一个预设操作对应的拓扑图,对任意一个视频执行第二操作的过程与该过程同理:
在利用图神经网络基于一个预设操作b对应的拓扑图,对一个视频i执行第二操作时,图神经网络可以基于b对应的拓扑图,确定视频i的、每一个对应于b的关联账户,对于视频i的、每一个对应于b的关联账户,图神经网络可以确定该对应于b的关联账户的、每一个对应于b的关联视频。
在利用图神经网络基于b对应的拓扑图,对视频i执行第二操作时,对于每一个编码层,可以基于该编码层的前一层输出的、视频i的对应于b的关联账户的编码,确定该编码层输出的、视频i的对应于b的编码。
在确定每一个编码层输出的、视频i的对应于b的编码之后,可以基于每一个编码层输出的、视频i的对应于b的编码,确定视频i的、对应于b的总编码。
在本公开中,可以采用以下公式确定视频i的对应于b的总编码
表示第k个编码层输出的视频i的、对应于预设操作b的编码,K表示编码层的数量。
在一些实施例中,在利用图神经网络基于一个预设操作对应的拓扑图,对一个视频执行第二操作时,对于每一个编码层,该编码层输出的、该视频的对应于该预设操作的编码通过以下步骤确定:对于该视频的每一个对应于该预设操作的关联账户,基于该编码层的前一层输出的、该对应于该预设操作的关联账户的编码与该编码层的前一层输出的、该视频的每一个其他的对应于该预设操作的关联账户的编码的关联度,确定该对应于该预设操作的关联账户的权重;利用每一个对应于该预设操作的关联账户的权重,计算该编码层的前一层输出的、该视频的每一个对应于该预设操作的关联账户的编码的加权和;基于该编码层的前一层输出的、该视频的每一个对应于该预设操作的关联账户的编码的加权和与该视频的、所有对应于该预设操作的关联账户的数量,得到编码层输出的、该视频的对应于该预设操作的编码。
一个视频的其他的对应于预设操作的关联账户是相对于该视频的、某一个特定的对应于该预设操作的关联账户而言的。
例如,在计算视频i的、对应于b的关联账户u的权重时,视频i的所有对应于b的关联账户中的、除了u之外的账户为账户u的其他的对应于b的关联账户,账户u的其他的对应于b的关联账户的数量为一个或多个。
在本公开中,对于视频i和预设操作b,在计算第k个编码层输出的、视频i的对应于b的编码时,对于视频i的、每一个对应于b的关联账户,基于k个编码层的前一层输出的、该对应于b的关联账户的编码与k个编码层的前一层输出的、每一个其他的对应于b的关联账户的编码的关联度,确定该对应于b的关联账户的权重。
例如,对于视频i和预设操作b,在计算第k个编码层输出的、视频i的对应于b的编码时,若对于视频i的、对应于b的关联账户u而言,视频i的、其他的对应于b的关联账户的数量为一个,则将第k个编码层的前一层输出的视频i的对应于b的关联账户u的编码与第k个编码层的前一层输出的、一个其他的对应于b的关联视频的编码的关联度确定为账户u的、对应于b的关联账户u的权重。
若对于视频i的、对应于b的关联账户u而言,视频i的、其他的对应于b的关联账户的数量为多个,分别确定第k个编码层的前一层输出的、视频i的对应于b的关联账户u的编码与第k个编码层的前一层输出的、视频i的、每一个其他的对应于b的关联账户的编码的关联度,得到多个关联度。若多个为两个,可以将确定出的两个关联度中的最小值、最大值、平均值中的一个确定为视频i的对应于b的关联账户u的权重。若多个大于两个,可以将确定出的多个关联度中的中位数确定为视频i的对应于b的关联账户u的权重。
在确定到第k个编码层输出的、视频i的对应于b的编码时,可以将第k个编码层的前一层输出的、视频i的每一个对应于b的关联账户的编码的加权和除以视频i的所有对应于b的关联账户的数量的平方根,得到第k个编码层输出的、视频i的对应于b的编码。
在本公开中,对于一个视频和一个预设操作,当确定一个编码层输出的、该视频的对应于该预设操作的编码时,利用该视频的每一个对应于该预设操作的关联账户的权重表示该编码层的前一层输出的、该视频的每一个对应于该预设操作的关联账户的编码与该编码层输出的、该视频的对应于该预设操作的编码的关联程度,考虑了该编码层的前一层输出的、该视频的每一个对应于该预设操作的关联账户的编码与该编码层输出的、该视频的对应于该预设操作的编码的关联程度,提升确定出的该编码层输出的、该视频的对应于该预设操作的编码的精确度。
在一些实施例中,在利用图神经网络基于一个预设操作对应的拓扑图,对一个视频执行第二操作,确定一个编码层输出的、该视频的对应于该预设操作的编码时,基于该编码层的前一层输出的、该视频的对应于该预设操作的关联账户的编码与该编码层的前一层输出的、该视频的每一个其他的对应于该预设操作的关联账户的编码的关联度,确定该视频的对应于该预设操作的关联账户的权重包括:将该编码层的前一层输出的、该视频的对应于该预设操作的关联账户的编码与该编码层的前一层输出的、该视频的其他的对应于该预设操作的关联账户的编码的关联度的均值确定为该视频的对应于该预设操作的关联账户的权重。
在确定一个编码层输出的、视频i的对应于b的关联账户u的权重时,将该编码层的前一层输出的、视频i的对应于b的关联账户u的编码与该编码层的前一层输出的、视频i的每一个其他的对应于b的关联账户的编码的关联度相加,将得到的结果除以视频i的、所有对应于b的关联账户的数量,得到视频i的对应于b的关联账户u的权重。
对于一个视频和一个预设操作,当基于一个编码层的前一层输出的、该视频的一个对应于该预设操作的关联账户的编码与该编码层的前一层输出的、该视频的每一个其他的对应于该预设操作的关联账户的编码的关联度,确定该视频的一个对应于该预设操作的关联账户的权重时,可以计算该编码层的前一层输出的、该视频的一个对应于该预设操作的关联账户的编码与该编码层的前一层输出的、该视频的其他的对应于该预设操作的关联账户的编码的关联度的均值。该均值可以较为精确地表示该编码层的前一层输出的、该视频的一个对应于该预设操作的关联账户的编码与该编码层的前一层输出的、该视频的其他的对应于该预设操作的关联账户的编码的整体关联度,将该均值确定为该视频的一个对应于该预设操作的关联账户的权重,提升确定出的该视频的一个对应于该预设操作的关联账户的权重的精确度。
步骤103,对于每一个账户,基于该账户的各对应于预设操作的总编码,确定该账户的总编码,以及对于每一个视频,基于该视频的各对应于预设操作的总编码,确定该视频的总编码。
例如,多个预设操作包括:有效观看操作、点赞操作、观看完成操作。
利用图神经网络基于有效观看操作对应的拓扑图,分别对各账户执行第一操作,以及分别对各视频执行第二操作,得到每一个账户的、对应于有效观看操作的总编码和每一个视频的、对应于有效观看操作的总编码。
利用图神经网络基于点赞操作对应的拓扑图,分别对各账户执行第一操作,以及分别对各视频执行第二操作,得到每一个账户的、对应于点赞操作的总编码和每一个视频的、对应于点赞操作的总编码。
利用图神经网络基于观看完成操作对应的拓扑图,分别对各账户执行第一操作,以及分别对各视频执行第二操作,得到每一个账户的、对应于观看完成操作的总编码和每一个视频的、对应于观看完成操作的总编码。
对于每一个账户,该账户的各对应于预设操作的总编码包括:该账户的对应于有效观看操作的总编码、该账户的对应于点赞操作的总编码、该账户的对应于观看完成操作的总编码,基于该账户的各对应于预设操作的总编码,确定该账户的总编码,例如,可以将该账户的对应于有效观看操作的总编码、该账户的对应于点赞操作的总编码、该账户的对应于观看完成操作的总编码相加,得到该账户的总编码。
对于每一个视频,该视频的各对应于预设操作的总编码包括:该视频的对应于有效观看操作的总编码、该视频的对应于点赞操作的总编码、该视频的对应于观看完成操作的总编码,基于该账户的各对应于预设操作的总编码,确定该视频的总编码,例如,可以将该视频的对应于有效观看操作的总编码、该视频的对应于点赞操作的总编码、该视频的对应于观看完成操作的总编码相加,得到该视频的总编码。
在一些实施例中,对于每一个账户,基于该账户的各对应于预设操作的总编码,确定该账户的总编码包括:利用每一个预设操作对应的权重,计算该账户的各对应于预设操作的总编码的加权和,以及将该账户的各对应于预设操作的总编码的加权和确定为该账户的总编码。每一个预设操作对应的权重可以为超参数(hyper-parameters)。
例如,多个预设操作包括:有效观看操作Effective-view、点赞操作Favorite、观看完成操作Long-view。对于每一个账户,该账户的各对应于预设操作的总编码包括:该账户的对应于Effective-view的总编码、该账户的对应于Favorite的总编码、该账户的对应于Long-view的总编码。
可以采用以下公式确定账户u的总编码/>
表示账户u的、对应于Effective-view的总编码,/>表示账户u的、对应于Favorite的总编码,/>表示账户u的、对应于Long-view的总编码。
βEV表示Effective-view对应的权重,βL表示Favorite对应的权重,βLV表示Long-view对应的权重。
在本公开中,对于一个账户,当基于该账户的各对应于预设操作的总编码,确定该账户的总编码时,利用每一个预设操作的权重表示该账户的每一个对应于预设操作的总编码与该账户的总编码的关联程度,考虑了该账户的每一个对应于预设操作的总编码与该账户的总编码的关联程度,提升确定出的该账户的总编码的精确度。
在一些实施例中,对于每一个视频,基于该视频的各对应于预设操作的总编码,确定该视频的总编码包括:利用每一个预设操作对应的权重,计算该视频的各对应于预设操作的总编码的加权和,以及将该视频的各对应于预设操作的总编码的加权和确定为该视频的总编码。
例如,多个预设操作包括:有效观看操作Effective-view、点赞操作Favorite、观看完成操作Long-view。对于每一个视频,该视频的各对应于预设操作的总编码包括:该视频的对应于Effective-view的总编码、该视频的对应于Favorite的总编码、该视频的对应于Long-view的总编码。
可以采用以下公式确定视频i的总编码
表示视频i的、对应于Effective-view的总编码,/>表示视频i的、对应于Favorite的总编码,/>表示视频i的、对应于Long-view的总编码。
在本公开中,对于一个视频,当基于该视频的各对应于预设操作的总编码,确定该视频的总编码时,利用每一个预设操作的权重表示该视频的每一个对应于预设操作的总编码与该视频的总编码的关联程度,考虑了该视频的每一个对应于预设操作的总编码与该视频的总编码的关联程度,提升确定出的该视频的总编码的精确度。
步骤104,基于各账户的总编码和各视频的总编码,确定各账户对应的推荐视频。
在本公开中,对于每一个账户,可以计算该账户的总编码与每一个视频的总编码的距离例如欧式距离,按照距离由小至大对所有视频进行排序,确定前k个视频。例如,可以利用近似最近邻(Approximate Nearest Neighbor,简称ANN)检索引擎确定该前k个视频。可以该前k个视频或该前k个视频中的、除了该账户的对应于预设操作的关联视频之外的视频确定为该账户对应的推荐视频。
在本公开中,在进行视频推荐时,对于多个预设操作中的每一个预设操作,考虑了多个账户与多个视频之间的与该预设操作的相关的关系,利用相应的预设操作对应的拓扑图指示多个账户与多个视频之间的与该预设操作的相关的关系,利用图神经网络基于每一个预设操作对应的拓扑图,确定每一个账户的总编码和每一个视频的总编码,确定每一个账户对应的推荐视频,提升视频推荐的准确性。
在本公开中,在获取各预设操作对应的拓扑图之前,可以采用以下方式重复地对图神经网络进行训练:
在一次训练图神经网络的过程中,获取一个用于训练的、每一个预设操作对应的拓扑图。利用图神经网络基于用于训练的、每一个预设操作对应的拓扑图,获取用于训练的各账户的总编码和用于训练的各视频的总编码。
利用图神经网络基于用于训练的、每一个预设操作对应的拓扑图,获取用于训练的各账户的总编码和用于训练的各视频的总编码与上述获取各账户的总编码和各视频的总编码的过程同理。
在一次训练图神经网络的过程中,对每一个预设操作分别执行损失计算操作,得到每一个预设操作对应的损失。对一个预设操作执行损失计算操作包括:对于每一个账户,计算该账户的对应于该预设操作的总编码与该账户的对应于该预设操作的一个关联视频的、对应于该预设操作的总编码之间的匹配得分,计算该账户的对应于该预设操作的总编码与该账户的对应于该预设操作的一个非关联视频的、对应于该预设操作的总编码之间的匹配得分;根据计算出的所有匹配得分,计算该预设操作对应的损失。
在得到每一个预设操作对应的损失之后,基于每一个预设操作对应的损失,计算总损失,然后,基于总损失进行反向传播,更新图神经网络的参数。
在本公开中,对于一个账户和一个预设操作,若该账户未对一个视频进行过该预设操作但多个账户中的、除了该账户之外的其他的至少一个账户对该视频进行过该预设操作,则该视频为该账户的、对应于该预设操作的非关联视频。
以下举例说明计算一个预设操作对应的损失的过程,计算任意一个预设操作对应的损失的过程同理:
可以采用以下公式计算账户u的、对应于b的总编码与视频i的、对应于b的总编码之间的匹配得分
表示账户u的对应于b的总编码,/>表示视频i的、对应于b的总编码。
在本公开中,可以通过以下公式计算预设操作b对应的损失
其中,表示在用于训练的、预设操作b对应的拓扑图中可观测到的、账户与视频的关联,/>表示在用于训练的、预设操作b对应的拓扑图中未观测到的、账户与视频的关联,σ表示soft-plus函数,/>表示账户u的、对应于b的总编码与视频i的、对应于b的总编码之间的匹配得分,/>表示账户u的、对应于b的总编码与视频j的、对应于b的总编码之间的匹配得分,|Sb|表示参与预设操作b对应的损失的计算的对应于b的非关联视频的总数量,视频i为账户u的、对应于b的一个关联视频,视频j为账户u的、对应于b的一个非关联视频,视频j为从账户u的、对应于b的所有非关联视频中随机选择出的一个非关联视频,视频i为账户u的、对应于b的一个关联视频、账户u的、对应于b的所有非关联视频均通过用于训练的、预设操作b对应的拓扑图观测到。
在一次训练图神经网络的过程中,在计算出每一个预设操作对应的损失之后,可以采用以下公式计算总损失LMulti-behavior:
表示超参数集合,η表示系数控制l2正则。
图3是根据一示例性实施例示出的一种视频推荐装置的结构框图。参照图3,视频推荐装置包括:获取模块301,编码模块302,总编码确定模块303,推荐视频确定模块304。
获取模块301被配置为获取各预设操作对应的拓扑图,其中,所述预设操作对应的拓扑图指示多个账户与多个视频之间的与所述预设操作相关的关系;
编码模块302被配置为对于各预设操作对应的拓扑图,利用图神经网络基于所述预设操作对应的拓扑图,分别对各所述账户执行第一操作,以及分别对各所述视频执行第二操作,其中,第一操作包括:基于图神经网络的各编码层输出的、所述账户的对应于所述预设操作的编码,确定所述账户的对应于所述预设操作的总编码,其中,编码层输出的、所述账户的对应于所述预设操作的编码基于所述编码层的前一层输出的、账户的对应于所述预设操作的关联视频的编码确定;第二操作包括:基于各编码层输出的、所述视频的对应于所述预设操作的编码,确定所述视频的对应于所述预设操作的总编码,其中,编码层输出的、所述视频的对应于所述预设操作的编码基于所述编码层的前一层输出的、所述视频的对应于所述预设操作的关联账户的编码确定;
总编码确定模块303被配置为对于每一个账户,基于所述账户的各对应于预设操作的总编码,确定所述账户的总编码,对于每一个视频,基于所述视频的各对应于预设操作的总编码,确定所述视频的总编码;
推荐视频确定模块304被配置为基于各账户的总编码和各视频的总编码,确定各账户对应的推荐视频。
在一些实施例中,编码模块302包括:
账户编码确定子模块,被配置为对于所述账户的每一个对应于所述预设操作的关联视频,基于所述编码层的前一层输出的、所述对应于所述预设操作的关联视频的编码与所述编码层的前一层输出的、所述账户的每一个其他的对应于所述预设操作的关联视频的编码的关联度,确定所述对应于所述预设操作的关联视频的权重;利用所述账户的每一个对应于所述预设操作的关联视频的权重,计算所述编码层的前一层输出的、所述账户的每一个对应于所述预设操作的关联视频的编码的加权和;基于所述加权和与所述账户的、所有对应于所述预设操作的关联视频的数量,得到编码层输出的、所述账户的对应于所述预设操作的编码。
在一些实施例中,账户编码确定子模块进一步被配置为将所述编码层的前一层输出的、所述对应于所述预设操作的关联视频的编码与所述编码层的前一层输出的、所述账户的其他的对应于所述预设操作的关联视频的编码的关联度的均值确定为所述对应于所述预设操作的关联视频的权重。
在一些实施例中,编码模块302包括:
视频编码确定子模块,被配置为对于所述视频的每一个对应于所述预设操作的关联账户,基于所述编码层的前一层输出的、所述对应于所述预设操作的关联账户的编码与所述编码层的前一层输出的、所述视频的每一个其他的对应于所述预设操作的关联账户的编码的关联度,确定所述对应于所述预设操作的关联账户的权重;利用所述视频的每一个对应于所述预设操作的关联账户的权重,计算所述编码层的前一层输出的、所述视频的每一个对应于所述预设操作的关联账户的编码的加权和;基于所述加权和与所述视频的、所有对应于所述预设操作的关联账户的数量,得到编码层输出的、所述视频的对应于所述预设操作的编码。
在一些实施例中,视频编码确定子模块进一步被配置为将所述编码层的前一层输出的、所述对应于所述预设操作的关联账户的编码与所述编码层的前一层输出的、所述视频的其他的对应于所述预设操作的关联账户的编码的关联度的均值确定为所述对应于所述预设操作的关联账户的权重。
在一些实施例中,总编码确定模块303包括:
账户总编码确定子模块,被配置为利用每一个预设操作对应的权重,计算所述账户的各对应于预设操作的总编码的加权和,以及将所述账户的各对应于预设操作的总编码的加权和确定为所述账户的总编码。
在一些实施例中,总编码确定模块303包括:
视频总编码确定子模块,被配置为利用每一个预设操作对应的权重,计算所述视频的各对应于预设操作的总编码的加权和,以及将所述视频的各对应于预设操作的总编码的加权和确定为所述视频的总编码。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图4是根据一示例性实施例示出的一种电子设备的结构框图。参照图4,电子设备包括处理组件422,其进一步包括一个或多个处理器,以及由存储器432所代表的存储器资源,用于存储可由处理组件422执行的指令,例如应用程序。存储器432中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件422被配置为执行指令,以执行上述方法。
电子设备还可以包括一个电源组件426被配置为执行电子设备的电源管理,一个有线或无线网络接口450被配置为将电子设备连接到网络,和一个输入输出(I/O)接口458。电子设备可以操作基于存储在存储器432的操作***,例如Windows ServerTM,MacOS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
在示例性实施例中,还提供了一种包括指令的存储介质,例如包括指令的存储器,上述指令可由电子设备执行以完成上述视频推荐方法。可选地,计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,本申请还提供一种计算机程序产品,包括计算机可读代码,当计算机可读代码在电子设备上运行时,使得电子设备执行视频推荐方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (17)
1.一种视频推荐方法,其特征在于,所述方法包括:
获取各预设操作对应的拓扑图,其中,所述预设操作对应的拓扑图指示多个账户与多个视频之间的与所述预设操作相关的关系;
对于各预设操作对应的拓扑图,利用图神经网络基于所述预设操作对应的拓扑图,分别对各所述账户执行第一操作,以及分别对各所述视频执行第二操作,其中,第一操作包括:基于图神经网络的各编码层输出的、所述账户的对应于所述预设操作的编码,确定所述账户的对应于所述预设操作的总编码,其中,编码层输出的、所述账户的对应于所述预设操作的编码基于所述编码层的前一层输出的、所述账户的对应于所述预设操作的关联视频的编码确定;第二操作包括:基于所述各编码层输出的、所述视频的对应于所述预设操作的编码,确定所述视频的对应于所述预设操作的总编码,其中,编码层输出的、所述视频的对应于所述预设操作的编码基于所述编码层的前一层输出的、所述视频的对应于所述预设操作的关联账户的编码确定;
对于每一个账户,基于所述账户的各对应于预设操作的总编码,确定所述账户的总编码,对于每一个视频,基于所述视频的各对应于预设操作的总编码,确定所述视频的总编码;
基于各账户的总编码和各视频的总编码,确定各账户对应的推荐视频。
2.根据权利要求1所述的方法,其特征在于,所述编码层输出的、所述账户的对应于所述预设操作的编码通过以下步骤确定:
对于所述账户的每一个对应于所述预设操作的关联视频,基于所述编码层的前一层输出的、所述对应于所述预设操作的关联视频的编码与所述编码层的前一层输出的、所述账户的每一个其他的对应于所述预设操作的关联视频的编码的关联度,确定所述对应于所述预设操作的关联视频的权重;
利用所述账户的每一个对应于所述预设操作的关联视频的权重,计算所述编码层的前一层输出的、所述账户的每一个对应于所述预设操作的关联视频的编码的加权和;
基于所述加权和与所述账户的、所有对应于所述预设操作的关联视频的数量,得到编码层输出的、所述账户的对应于所述预设操作的编码。
3.据权利要求2所述的方法,其特征在于,基于所述编码层的前一层输出的、所述对应于所述预设操作的关联视频的编码与所述编码层的前一层输出的、所述账户的每一个其他的对应于所述预设操作的关联视频的编码的关联度,确定所述对应于所述预设操作的关联视频的权重包括:
将所述编码层的前一层输出的、所述对应于所述预设操作的关联视频的编码与所述编码层的前一层输出的、所述账户的其他的对应于所述预设操作的关联视频的编码的关联度的均值确定为所述对应于所述预设操作的关联视频的权重。
4.根据权利要求1所述的方法,其特征在于,所述编码层输出的、所述视频的对应于所述预设操作的编码通过以下步骤确定:
对于所述视频的每一个对应于所述预设操作的关联账户,基于所述编码层的前一层输出的、所述对应于所述预设操作的关联账户的编码与所述编码层的前一层输出的、所述视频的每一个其他的对应于所述预设操作的关联账户的编码的关联度,确定所述对应于所述预设操作的关联账户的权重;
利用所述视频的每一个对应于所述预设操作的关联账户的权重,计算所述编码层的前一层输出的、所述视频的每一个对应于所述预设操作的关联账户的编码的加权和;
基于所述加权和与所述视频的、所有对应于所述预设操作的关联账户的数量,得到编码层输出的、所述视频的对应于所述预设操作的编码。
5.根据权利要求4所述的方法,其特征在于,基于所述编码层的前一层输出的、所述对应于所述预设操作的关联账户的编码与所述编码层的前一层输出的、所述视频的每一个其他的对应于所述预设操作的关联账户的编码的关联度,确定所述对应于所述预设操作的关联账户的权重包括:
将所述编码层的前一层输出的、所述对应于所述预设操作的关联账户的编码与所述编码层的前一层输出的、所述视频的其他的对应于所述预设操作的关联账户的编码的关联度的均值确定为所述对应于所述预设操作的关联账户的权重。
6.根据权利要求1所述的方法,其特征在于,基于所述账户的各对应于预设操作的总编码,确定所述账户的总编码包括:
利用每一个预设操作对应的权重,计算所述账户的各对应于预设操作的总编码的加权和,以及将所述账户的各对应于预设操作的总编码的加权和确定为所述账户的总编码。
7.根据权利要求1所述的方法,其特征在于,基于所述视频的各对应于预设操作的总编码,确定所述视频的总编码包括:
利用每一个预设操作对应的权重,计算所述视频的各对应于预设操作的总编码的加权和,以及将所述视频的各对应于预设操作的总编码的加权和确定为所述视频的总编码。
8.一种视频推荐装置,其特征在于,所述装置包括:
获取模块,被配置为获取各预设操作对应的拓扑图,其中,所述预设操作对应的拓扑图指示多个账户与多个视频之间的与所述预设操作相关的关系;
编码模块,被配置为对于各预设操作对应的拓扑图,利用图神经网络基于所述预设操作对应的拓扑图,分别对各所述账户执行第一操作,以及分别对各所述视频执行第二操作,其中,第一操作包括:基于图神经网络的各编码层输出的、所述账户的对应于所述预设操作的编码,确定所述账户的对应于所述预设操作的总编码,其中,编码层输出的、所述账户的对应于所述预设操作的编码基于所述编码层的前一层输出的、账户的对应于所述预设操作的关联视频的编码确定;第二操作包括:基于各编码层输出的、所述视频的对应于所述预设操作的编码,确定所述视频的对应于所述预设操作的总编码,其中,编码层输出的、所述视频的对应于所述预设操作的编码基于所述编码层的前一层输出的、所述视频的对应于所述预设操作的关联账户的编码确定;
总编码确定模块,被配置为对于每一个账户,基于所述账户的各对应于预设操作的总编码,确定所述账户的总编码,对于每一个视频,基于所述视频的各对应于预设操作的总编码,确定所述视频的总编码;
推荐视频确定模块,被配置为基于各账户的总编码和各视频的总编码,确定各账户对应的推荐视频。
9.根据权利要求8所述的装置,其特征在于,所述编码模块包括:
账户编码确定子模块,被配置为对于所述账户的每一个对应于所述预设操作的关联视频,基于所述编码层的前一层输出的、所述对应于所述预设操作的关联视频的编码与所述编码层的前一层输出的、所述账户的每一个其他的对应于所述预设操作的关联视频的编码的关联度,确定所述对应于所述预设操作的关联视频的权重;利用所述账户的每一个对应于所述预设操作的关联视频的权重,计算所述编码层的前一层输出的、所述账户的每一个对应于所述预设操作的关联视频的编码的加权和;基于所述加权和与所述账户的、所有对应于所述预设操作的关联视频的数量,得到编码层输出的、所述账户的对应于所述预设操作的编码。
10.根据权利要求9所述的装置,其特征在于,所述账户编码确定子模块进一步被配置为将所述编码层的前一层输出的、所述对应于所述预设操作的关联视频的编码与所述编码层的前一层输出的、所述账户的其他的对应于所述预设操作的关联视频的编码的关联度的均值确定为所述对应于所述预设操作的关联视频的权重。
11.根据权利要求8所述的装置,其特征在于,所述编码模块包括:
视频编码确定子模块,被配置为对于所述视频的每一个对应于所述预设操作的关联账户,基于所述编码层的前一层输出的、所述对应于所述预设操作的关联账户的编码与所述编码层的前一层输出的、所述视频的每一个其他的对应于所述预设操作的关联账户的编码的关联度,确定所述对应于所述预设操作的关联账户的权重;利用所述视频的每一个对应于所述预设操作的关联账户的权重,计算所述编码层的前一层输出的、所述视频的每一个对应于所述预设操作的关联账户的编码的加权和;基于所述加权和与所述视频的、所有对应于所述预设操作的关联账户的数量,得到编码层输出的、所述视频的对应于所述预设操作的编码。
12.根据权利要求11所述的装置,其特征在于,所述视频编码确定子模块进一步被配置为将所述编码层的前一层输出的、所述对应于所述预设操作的关联账户的编码与所述编码层的前一层输出的、所述视频的其他的对应于所述预设操作的关联账户的编码的关联度的均值确定为所述对应于所述预设操作的关联账户的权重。
13.根据权利要求8所述的装置,其特征在于,所述总编码确定模块包括:
账户总编码确定子模块,被配置为利用每一个预设操作对应的权重,计算所述账户的各对应于预设操作的总编码的加权和,以及将所述账户的各对应于预设操作的总编码的加权和确定为所述账户的总编码。
14.根据权利要求8所述的装置,其特征在于,所述总编码确定模块包括:
视频总编码确定子模块,被配置为利用每一个预设操作对应的权重,计算所述视频的各对应于预设操作的总编码的加权和,以及将所述视频的各对应于预设操作的总编码的加权和确定为所述视频的总编码。
15.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至7中任一项所述的方法。
16.一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至7中任一项所述的方法。
17.一种计算机程序产品,包括计算机可读代码,当所述计算机可读代码在电子设备上运行时,使得电子设备执行如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110752995.7A CN113569136B (zh) | 2021-07-02 | 2021-07-02 | 视频推荐方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110752995.7A CN113569136B (zh) | 2021-07-02 | 2021-07-02 | 视频推荐方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113569136A CN113569136A (zh) | 2021-10-29 |
CN113569136B true CN113569136B (zh) | 2024-03-05 |
Family
ID=78163562
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110752995.7A Active CN113569136B (zh) | 2021-07-02 | 2021-07-02 | 视频推荐方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113569136B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106126524A (zh) * | 2016-06-07 | 2016-11-16 | 腾讯科技(深圳)有限公司 | 信息推送方法和装置 |
CN108694223A (zh) * | 2018-03-26 | 2018-10-23 | 北京奇艺世纪科技有限公司 | 一种用户画像库的构建方法及装置 |
CN110557659A (zh) * | 2019-08-08 | 2019-12-10 | 北京达佳互联信息技术有限公司 | 视频推荐方法、装置、服务器及存储介质 |
CN111198956A (zh) * | 2019-12-24 | 2020-05-26 | 北京达佳互联信息技术有限公司 | 一种多媒体资源的互动方法、装置、电子设备及存储介质 |
CN111225282A (zh) * | 2019-12-30 | 2020-06-02 | 重庆特斯联智慧科技股份有限公司 | 一种基于大数据的视频信息推荐方法、***和可读存储介质 |
CN111368210A (zh) * | 2020-05-27 | 2020-07-03 | 腾讯科技(深圳)有限公司 | 基于人工智能的信息推荐方法、装置以及电子设备 |
CN111708948A (zh) * | 2020-06-19 | 2020-09-25 | 北京达佳互联信息技术有限公司 | 内容项推荐方法、装置、服务器及计算机可读存储介质 |
CN111859136A (zh) * | 2020-07-23 | 2020-10-30 | 深圳前海微众银行股份有限公司 | 个性化推荐方法、装置、设备及可读存储介质 |
CN111932386A (zh) * | 2020-09-09 | 2020-11-13 | 腾讯科技(深圳)有限公司 | 用户账号确定方法及装置、信息推送方法及装置、电子设备 |
CN112214636A (zh) * | 2020-09-21 | 2021-01-12 | 华为技术有限公司 | 音频文件的推荐方法、装置、电子设备以及可读存储介质 |
CN112749296A (zh) * | 2019-10-31 | 2021-05-04 | 北京达佳互联信息技术有限公司 | 一种视频推荐方法、装置、服务器及存储介质 |
CN112925924A (zh) * | 2019-12-05 | 2021-06-08 | 北京达佳互联信息技术有限公司 | 多媒体文件的推荐方法、装置、电子设备及存储介质 |
-
2021
- 2021-07-02 CN CN202110752995.7A patent/CN113569136B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106126524A (zh) * | 2016-06-07 | 2016-11-16 | 腾讯科技(深圳)有限公司 | 信息推送方法和装置 |
CN108694223A (zh) * | 2018-03-26 | 2018-10-23 | 北京奇艺世纪科技有限公司 | 一种用户画像库的构建方法及装置 |
CN110557659A (zh) * | 2019-08-08 | 2019-12-10 | 北京达佳互联信息技术有限公司 | 视频推荐方法、装置、服务器及存储介质 |
CN112749296A (zh) * | 2019-10-31 | 2021-05-04 | 北京达佳互联信息技术有限公司 | 一种视频推荐方法、装置、服务器及存储介质 |
CN112925924A (zh) * | 2019-12-05 | 2021-06-08 | 北京达佳互联信息技术有限公司 | 多媒体文件的推荐方法、装置、电子设备及存储介质 |
CN111198956A (zh) * | 2019-12-24 | 2020-05-26 | 北京达佳互联信息技术有限公司 | 一种多媒体资源的互动方法、装置、电子设备及存储介质 |
CN111225282A (zh) * | 2019-12-30 | 2020-06-02 | 重庆特斯联智慧科技股份有限公司 | 一种基于大数据的视频信息推荐方法、***和可读存储介质 |
CN111368210A (zh) * | 2020-05-27 | 2020-07-03 | 腾讯科技(深圳)有限公司 | 基于人工智能的信息推荐方法、装置以及电子设备 |
CN111708948A (zh) * | 2020-06-19 | 2020-09-25 | 北京达佳互联信息技术有限公司 | 内容项推荐方法、装置、服务器及计算机可读存储介质 |
CN111859136A (zh) * | 2020-07-23 | 2020-10-30 | 深圳前海微众银行股份有限公司 | 个性化推荐方法、装置、设备及可读存储介质 |
CN111932386A (zh) * | 2020-09-09 | 2020-11-13 | 腾讯科技(深圳)有限公司 | 用户账号确定方法及装置、信息推送方法及装置、电子设备 |
CN112214636A (zh) * | 2020-09-21 | 2021-01-12 | 华为技术有限公司 | 音频文件的推荐方法、装置、电子设备以及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113569136A (zh) | 2021-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108829822B (zh) | 媒体内容的推荐方法和装置、存储介质、电子装置 | |
US8543521B2 (en) | Supervised re-ranking for visual search | |
CN110348362B (zh) | 标签生成、视频处理方法、装置、电子设备及存储介质 | |
US20130173571A1 (en) | Click noise characterization model | |
CN111382255A (zh) | 用于问答处理的方法、装置、设备和介质 | |
CN109241243B (zh) | 候选文档排序方法及装置 | |
CN106599194B (zh) | 标签确定方法及装置 | |
CN106844788B (zh) | 一种图书馆智能搜索排序方法及*** | |
CN112733043B (zh) | 评论推荐方法及装置 | |
CN110990533A (zh) | 确定查询文本所对应标准文本的方法及装置 | |
US20220374474A1 (en) | Recommending content to subscribers | |
CN109754135B (zh) | 信用行为数据处理方法、装置、存储介质和计算机设备 | |
CN115471771A (zh) | 一种基于语义级时序关联建模的视频时序动作定位方法 | |
CN110502620B (zh) | 导诊相似问题对生成方法、***及计算机设备 | |
CN111161238A (zh) | 图像质量评价方法及装置、电子设备、存储介质 | |
CN113392321A (zh) | 一种信息推荐方法、装置、电子设备及存储介质 | |
CN117194772B (zh) | 一种基于用户标签的内容推送方法及装置 | |
CN111126617B (zh) | 一种选择融合模型权重参数的方法、装置及设备 | |
CN113569136B (zh) | 视频推荐方法、装置、电子设备及存储介质 | |
CN117540336A (zh) | 时间序列预测方法、装置及电子设备 | |
CN110262906B (zh) | 接口标签推荐方法、装置、存储介质和电子设备 | |
CN112966095B (zh) | 一种基于jean的软件代码推荐方法 | |
CN110502715B (zh) | 点击概率的预测方法及装置 | |
CN114565791A (zh) | 一种人物档案识别方法、装置、设备及介质 | |
CN114357242A (zh) | 基于召回模型的训练评估方法及装置、设备、存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |