CN111400546B - 一种视频召回方法、视频推荐方法及装置 - Google Patents
一种视频召回方法、视频推荐方法及装置 Download PDFInfo
- Publication number
- CN111400546B CN111400546B CN202010193407.6A CN202010193407A CN111400546B CN 111400546 B CN111400546 B CN 111400546B CN 202010193407 A CN202010193407 A CN 202010193407A CN 111400546 B CN111400546 B CN 111400546B
- Authority
- CN
- China
- Prior art keywords
- video
- videos
- target
- recalled
- recall
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/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/73—Querying
- G06F16/735—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种视频召回方法、视频推荐方法及装置,涉及人工智能领域,该方法包括:基于目标用户的目标视频与各个待召回视频之间的相似度,从各个待召回视频中确定所述目标视频的相似视频,其中,各个待召回视频是采用预设的视频有效播放筛选条件从被点播过的历史视频中获取的,相似度是根据视频词向量确定的,视频词向量是通过对各个待召回视频的视频播放记录进行全局词频统计而获得的。然后从目标视频的相似视频中,为目标用户选取召回视频。由于构建视频词向量时基于全局词频统计,使用了全局的共现信息,故视频词向量能更好地表达待召回视频之间相关度,进而提高召回视频的相关度,也使视频推荐的准确性更高。
Description
技术领域
本发明实施例涉及计算机技术领域,尤其涉及人工智能领域,提供了一种视频召回方法、视频推荐方法及装置。
背景技术
如今各种视频应用层出不穷,为了满足不同用户观看视频的需求,每一个视频应用中都包含了大量的视频资料,因此,用户需要花费大量的时间去搜索浏览自己感兴趣的视频。为了节约用户时间,一些视频应用采用推荐引擎个性化地为用户推荐视频。具体地,推荐引擎根据用户历史浏览的视频的标注信息确定用户画像,然后基于用户画像召回对应的视频,进而从召回的视频中选取视频推荐给用户。该方法过于依赖视频的标注信息,当视频的标注信息出现偏差时,视频召回结果也会相应出现偏差,从而导致视频推荐的准确性低。
发明内容
本发明实施例提供了一种视频召回方法、视频推荐方法及装置,用于提高视频召回的准确性,并进一步提高视频推荐的准确性。
一方面,本发明实施例提供了一种视频召回方法,该方法包括:
根据目标用户的视频播放记录,确定所述目标用户的目标视频;
根据所述目标视频与各个待召回视频之间的相似度,从所述各个待召回视频中确定所述目标视频的相似视频,所述各个待召回视频是采用预设的视频有效播放筛选条件从被点播过的历史视频中获取的,所述相似度是根据视频词向量确定的,所述视频词向量是通过对各个待召回视频的视频播放记录进行全局词频统计而获得的;
从所述目标视频的相似视频中,为所述目标用户选取召回视频。
由于构建视频词向量时使用的是待召回视频的视频播放记录,而不需要使用视频的标注信息,从而避免了对视频的标注信息的依赖。其次,构建视频词向量时基于全局词频统计,使用了全局的共现信息,故视频词向量能更好地表达待召回视频之间相关度,进而提高召回视频的相关度,使视频推荐的准确性更高。
一方面,本发明实施例提供了一种视频推荐方法,该方法包括:
采用上述视频召回方法获取目标用户的召回视频;
根据召回视频与目标视频的相似度及所述目标用户的用户画像对所述目标用户的召回视频进行排序;
根据排序结果以及所述目标用户的召回视频的标签,从所述目标用户的召回视频中选取预设数量的召回视频作为推荐视频。
基于用户画像以及召回视频的相似度对召回视频进行排序,使得与目标用户的兴趣越相关的召回视频排序越靠前,之后再结合召回视频的标签作为推荐视频,提高了推荐的视频的多样性和准确性。
一方面,本发明实施例提供了一种视频召回装置,该装置包括:
识别模块,用于根据目标用户的视频播放记录,确定所述目标用户的目标视频;
匹配模块,用于根据所述目标视频与各个待召回视频之间的相似度,从所述各个待召回视频中确定所述目标视频的相似视频,所述各个待召回视频是采用预设的视频有效播放筛选条件从被点播过的历史视频中获取的,所述相似度是根据视频词向量确定的,所述视频词向量是通过对各个待召回视频的视频播放记录进行全局词频统计而获得的;
筛选模块,用于从所述目标视频的相似视频中,为所述目标用户选取召回视频。
可选地,所述各个待召回视频是根据设定的更新周期更新的,每次更新时,采用预设的视频有效播放筛选条件,从距离更新时间最近的预设时间段内被点播过的历史视频中获取各个待召回视频。
可选地,所述匹配模块还用于:
根据各个待召回视频的视频播放记录构建共现矩阵;
从所述共现矩阵中随机抽取非零元素,对视频词向量与所述共现矩阵之间的关系进行拟合;
反复迭代直至损失函数收敛,获得视频词向量。
可选地,每个待召回视频的标识和对应的相似视频的标识,以标识为索引保存在视频索引库中;
所述匹配模块具体用于:
以所述目标视频的标识为索引查询所述视频索引库,确定所述目标视频的相似视频。
可选地,所述识别模块具体用于:
按照时间顺序将目标用户的视频播放记录中的视频标识添加至视频种子列表中;
采用预设粒度的时间窗口从所述视频种子列表中筛选出预设时段内播放的视频;
从所述预设时段内播放的视频中选取视频作为目标视频。
可选地,所述识别模块具体用于:
采用预设步长的滑动窗口从所述预设时段内播放的视频中选取预设数量的视频作为目标视频。
可选地,还包括监测模块;所述监测模块具体用于:
监测每个目标视频对应的召回视频的展示次数和点击率;
在所述展示次数大于第一阈值,且所述点击率不大于第二阈值时,从所述视频种子列表删除所述目标视频的标识。
可选地,所述筛选模块具体用于:
按照相似度从大到小的顺序对所述目标视频的相似视频进行排序;
将排在前N位的所述目标视频的相似视频作为所述目标用户的召回视频,所述N为预设正整数。
可选地,所述筛选模块还用于:
当所述目标用户的召回视频中存在相同召回视频时,对相同召回视频进行去重,并将每个相同召回视频与所述目标视频的相似度求和,获得去重后保留的召回视频与所述目标视频的相似度。
一方面,本发明实施例提供了一种视频推荐装置,该装置包括:
排序模块、选择模块以及上述视频召回装置;
所述视频召回装置,用于获得目标用户的召回视频;
所述排序模块,用于根据获得的召回视频与目标视频的相似度,以及所述目标用户的用户画像对所述目标用户的召回视频进行排序;
所述选择模块,用于根据排序结果以及所述目标用户的召回视频的标签,从所述目标用户的召回视频中选取预设数量的召回视频作为推荐视频。
一方面,本发明实施例提供了一种视频推荐系统,该系统包括:
离线服务器、召回服务器、排序服务器、展示服务器;
所述离线服务器用于对各个待召回视频的视频播放记录进行全局词频统计,获得各个待召回视频对应的词向量,所述各个待召回视频是采用预设的视频有效播放筛选条件从被点播过的历史视频中获取;根据各个待召回视频对应的词向量确定各待召回视频之间的相似度;
所述召回服务器用于根据目标用户的视频播放记录确定所述目标用户的目标视频;以所述目标视频为索引,查询所述离线服务器中各待召回视频之间的相似度,从所述各个待召回视频中确定所述目标视频的相似视频;从所述目标视频的相似视频中,为所述目标用户选取召回视频;
所述排序服务器用于根据召回视频与目标视频的相似度及所述目标用户的用户画像对所述目标用户的召回视频进行排序;
所述展示服务器用于根据排序结果以及所述目标用户的召回视频的标签,从所述目标用户的召回视频中选取预设数量的召回视频作为推荐视频。
一方面,本发明实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利视频召回方法的步骤,或者所述处理器执行所述程序时实现视频推荐方法的步骤。
一方面,本发明实施例提供了一种计算机可读存储介质,其存储有可由计算机设备执行的计算机程序,当所述程序在计算机设备上运行时,使得所述计算机设备执行视频召回方法的步骤,或者使得所述计算机设备执行视频推荐方法的步骤。
本发明实施例中,由于构建视频词向量时使用的是待召回视频的视频播放记录,而不需要使用视频的标注信息,从而避免了对视频的标注信息的依赖。其次,构建视频词向量时基于全局词频统计,使用了全局的共现信息,故视频词向量能更好地表达待召回视频之间相关度,进而提高召回视频的相关度,使视频推荐的准确性更高。通过有效播放筛选条件过滤掉用户不感兴趣的视频,避免其在构建视频词向量时产生负向作用。采用时间窗口和滑动窗口从视频种子列表中筛选出目标视频,实现区别对待目标用户在不同时间段播放的视频,这样使选取的目标视频更能代表目标用户当前的兴趣,从而提高召回视频的准确性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种视频点击统计的示意图;
图2为本发明实施例提供的一种应用场景的示意图;
图3为本发明实施例提供的一种视频应用的界面示意图;
图4为本发明实施例提供的一种视频召回方法的流程示意图;
图5为本发明实施例提供的一种构建视频词向量的方法流程示意图;
图6为本发明实施例提供的一种推荐相似视频的示意图;
图7为本发明实施例提供的一种离线构建视频索引库的流程示意图;
图8为本发明实施例提供的一种在线召回视频的流程示意图;
图9为本发明实施例提供的一种视频推荐方法的流程示意图;
图10为本发明实施例提供的一种视频推荐方法的流程示意图;
图11为本发明实施例提供的一种视频召回装置的结构示意图;
图12为本发明实施例提供的一种视频推荐装置的结构示意图;
图13为本发明实施例提供的一种视频召回系统的结构示意图;
图14为本发明实施例提供的一种计算机设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
为了方便理解,下面对本发明实施例中涉及的名词进行解释。
GloVe算法:全称为Global Vectors for Word Representation,一个基于全局词频统计的词表征算法。
爬虫行为:爬虫模拟真实用户点击、播放,产生了大量虚假行为,这类行为相互之间没有相关性,计算视频词向量的时候会产生负向作用。
极重度用户行为:这类用户短期内发生大量视频点击、播放行为,点击、播放的视频相互之间相关性较弱,一方面在计算视频词向量的时候直接引入会产生负向作用,另外一方面,由于行为量比较大,会极大的增加计算复杂度。
在具体实施中,考虑到当前视频应用中视频数量多,若由用户自己搜索感兴趣的视频,需要花费时间太多,故一些视频应用采用推荐引擎个性化地为用户推荐视频。目前有基于用户画像召回视频,进而为用户推荐视频的方法,该方法基于“一个用户有可能会喜欢和他曾经喜欢过的文章相似的文章”的假设,根据用户历史浏览的视频的标注信息确定用户画像,使用用户画像去召回视频。然而该方法非常依赖视频的标注信息,当视频的标注信息不准确时,视频召回结果也会相应出现偏差,从而导致视频推荐的准确性低。
通过对视频应用进行分析发现,视频应用中的视频具有存在周期长、时效性弱、行为量大等特点。通过对视频应用的用户行为进行分析发现,在启动视频应用的用户中,有视频点击用户远远多于无视频点击用户。示例性地,如图1所示,通过统计某一视频应用最近三天的视频点击历史发现,有视频点击用户的数量占总用户数量的76%,无视频点击用户的数量占总用户数量的24%,有视频点击用户的占比远高于无视频点击用户的占比,由此可见,视频应用中每天能产生大量用户的视频播放记录。鉴于此,本发明实施例考虑采用协同召回的方式获得召回视频,即利用群体智慧,从大量用户的视频播放记录中挖掘出被点播过的历史视频的相似性,然后结合目标用户的视频播放记录以及被点播过的历史视频的相似性为目标用户选取召回视频。
具体实施中,为了提高召回视频的相关度,使视频推荐的准确性更高,同时避免依赖视频的标注信息,本发明实施例采用预设的视频有效播放筛选条件从被点播过的历史视频中获取各个待召回视频,然后采用视频词向量表征各个待召回视频,其中,视频词向量是通过对各个待召回视频的视频播放记录进行全局词频统计而获得的。然后根据各个待召回视频的视频词向量确定各个待召回视频之间的相似度。在为目标用户召回视频时,首先根据目标用户的视频播放记录,确定目标用户的目标视频,其中,目标视频可以是被其他用户点播过的历史视频,即目标视频可以是各个待召回视频中的其中一个视频。然后根据目标视频与各个待召回视频之间的相似度,从各个待召回视频中确定目标视频的相似视频。之后再从目标视频的相似视频中,为目标用户选取召回视频。由于构建视频词向量时使用的是待召回视频的视频播放记录,而不需要使用视频的标注信息,从而避免了对视频的标注信息的依赖。其次,构建视频词向量时基于全局词频统计,使用了全局的共现信息,故视频词向量能更好地表达待召回视频之间相关度,进而提高召回视频的相关度,使视频推荐的准确性更高。再者,通过有效播放筛选条件过滤掉用户不感兴趣的视频,避免其在构建视频词向量时产生负向作用。
在一种可能的实施方式中,为了使待召回视频与目标用户点击的视频始终保持相关性,本发明实施例中根据设定的更新周期更新各个待召回视频,每次更新时,采用预设的视频有效播放筛选条件,从距离更新时间最近的预设时间段内被点播过的历史视频中获取各个待召回视频。
在一种可能的实施方式中,为了提高视频召回的效率,预先可以将每个待召回视频的标识和对应的相似视频的标识,以标识为索引保存在视频索引库中。在召回视频时,可以以目标视频的标识为索引查询视频索引库,确定目标视频的相似视频,从而提高确定目标视频的相似视频的效率,进而也提高视频召回的效率。
在一种可能的实施方式中,由于在召回视频时,目标用户在不同时间点播的视频所起的作用应该是不相同的,比如目标用户30分钟前点播的视频与3天前点播的视频显然不能同等对待,因此根据目标用户的视频播放记录,确定目标用户的目标视频时,应该考虑目标用户点播视频的时间。具体地,预先设置视频种子列表,按照时间顺序将目标用户的视频播放记录中的视频标识添加至视频种子列表中。然后采用预设粒度的时间窗口从视频种子列表中筛选出预设时段内播放的视频,从预设时段内播放的视频中选取视频作为目标视频。这样使选取的目标视频更能代表目标用户当前的兴趣,从而提高召回视频的准确性。进一步地,当时间窗口的粒度较大时,筛选出的视频在时间跨度上也会很大,若同等对待筛选出的视频,将影响视频召回的精度。为此,本发明实施例采用预设步长的滑动窗口从预设时段内播放的视频中选取预设数量的视频作为目标视频。采用滑动窗口进一步对时间窗口筛选的视频进行筛选,进一步区分不同时间段播放的视频,从而提高召回视频的准确性。
在一种可能的实施方式中,由于用户误操作或者视频自动播放等原因,视频种子列表可能存在用户不感兴趣的视频,若以该类视频作为目标视频进行视频召回时,可能会召回用户不感兴趣的视频。为此,本发明实施例中监测每个目标视频对应的召回视频的展示次数和点击率,在展示次数大于第一阈值,且点击率不大于第二阈值时,从视频种子列表删除目标视频的标识。当召回视频的展示次数多,而目标用户的点击率少时,说明目标用户对该召回视频并不感兴趣。通过监控召回视频的展示次数和点击率,及时发现用户不感兴趣的视频,进而更新视频种子列表,从而避免召回用户不感兴趣的视频,影响用户体验。
在一种可能的实施方式中,由于目标用户对应的多个目标视频可能存在关联,故多个目标视频召回的视频可能存在重复。鉴于此,本发明实施例中当目标用户的召回视频中存在相同召回视频时,对相同召回视频进行去重,并将每个相同召回视频与目标视频的相似度求和,获得去重后保留的召回视频与目标视频的相似度。通过对相同召回视频进行去重,避免向用户推荐相同的视频。
本申请实施例中的视频召回方法可以应用于如图2所示的应用场景,该应用场景中包括终端设备201、视频推荐系统202,视频推荐系统102包括离线服务器2021、召回服务器2022、排序服务器2023、展示服务器2024。上述服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备201可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端设备201以及上述服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
离线服务器2021收集多个用户的历史视频播放记录,历史视频播放记录包括被点播视频的标识、播放时间、播放时长等。采用预设的视频有效播放筛选条件,从被点播过的历史视频中确定多个待召回视频。然后对各个待召回视频的视频播放记录进行全局词频统计,获得各个待召回视频对应的词向量。根据各个待召回视频对应的词向量确定各待召回视频之间的相似度。
当目标用户在终端设备201的视频应用中点击感兴趣的视频进行播放时,将产生目标用户的视频播放记录,目标用户的视频播放记录可以包括一个或多个被点播过的视频的相关信息。召回服务器2022获取目标用户的视频播放记录,并根据目标用户的视频播放记录确定目标用户的目标视频。然后以目标视频为索引,查询离线服务器中各待召回视频之间的相似度,从各个待召回视频中确定目标视频的相似视频。之后再从目标视频的相似视频中,为目标用户选取召回视频。排序服务器2023根据召回视频与目标视频的相似度及目标用户的用户画像对目标用户的召回视频进行排序。展示服务器2024根据排序结果以及目标用户的召回视频的标签,从目标用户的召回视频中选取预设数量的召回视频作为推荐视频,并将推荐视频发送至终端设备201。终端设备201接收展示服务器2024发送的推荐视频后,在视频应用中展示推荐视频。示例性地,终端设备上安装某一视频应用,该视频应用中包括推荐页面,终端设备201在接收到展示服务器2024发送的推荐视频A和推荐视频B后,在视频应用的推荐页面中展示推荐视频A和推荐视频B,具体如图3所示。
基于图2所示的应用场景图,本申请实施例提供了一种视频召回方法的流程,如图4所示,该方法的流程可以由视频召回装置执行,视频召回装置可以是上述图2中的召回服务器,该方法包括以下步骤:
步骤S401,根据目标用户的视频播放记录,确定目标用户的目标视频。
视频播放记录包括被点播视频的标识、播放时间、播放时长等信息。一条视频播放记录中可以包括一段时间内用户点播的多个视频的标识、播放时间、播放时长等信息,目标用户的目标视频可以是一个或多个。在选择目标视频时,可以将目标用户点播的所有视频作为目标视频,也可以设置筛选条件从目标用户点播的所有视频中筛选出目标视频。
示例性地,设定目标用户的视频播放记录如表1所示:
表1.
被点播视频的标识 | 播放时间 | 播放时长 |
视频A | 9:00 | 10分钟 |
视频B | 9:30 | 2分钟 |
视频C | 10:30 | 3分钟 |
根据表1中的视频播放记录可知,目标用户点播了视频A、视频B以及视频C三个视频,可以将视频A、视频B以及视频C都作为目标视频,也可以进一步根据视频播放时长与视频总时长的比例,判断视频是否被有效播放,然后将有效播放的视频作为目标视频。比如,设定视频播放时长与视频总时长的比例大于80%时,判定视频被有效播放。通过计算得到:视频A的视频播放时长与视频A的视频总时长的比例为90%,视频B的视频播放时长与视频B的视频总时长的比例为60%,视频C的视频播放时长与视频C的视频总时长的比例为50%。由此可知,视频A被有效播放,视频B以及视频C没有被有效播放,故将视频A作为目标视频。由于视频被有效播放时,说明用户对该视频感兴趣,采用视频是否被有效播放这个筛选条件确定目标视频时,有利于召回用户感兴趣的视频。
步骤S402,根据目标视频与各个待召回视频之间的相似度,从各个待召回视频中确定目标视频的相似视频。
具体地,各个待召回视频是采用预设的视频有效播放筛选条件从被点播过的历史视频中获取的,其中,被点播过的历史视频指视频应用中过去被点播的视频。目标用户可能点播了其他用户之前点播的视频,因此,目标视频可以是各个待召回视频中的一个视频。有效播放筛选条件可以是:当视频播放时长与视频总时长的比例大于预设阈值时,判定视频被有效播放,否则判定没有被有效播放。有效播放筛选条件也可以是:当视频播放时长大于预设阈值时,判定视频被有效播放,否则判定没有被有效播放。
示例性地,获取某视频应用最近6个小时所有用户的历史视频播放记录,每个用户对应的历史视频播放记录包括该用户在最近6小时内点播的视频的相关信息。判断每条历史视频播放记录中被点播过的历史视频的视频播放时长与视频总时长的比例是否大于80%,若大于,则判定历史视频被有效播放,否则判定历史视频没有被有效播放。丢弃历史视频播放记录中没有被有效播放的历史视频的相关信息,将历史视频播放记录中保留的被点播过的历史视频作为待召回视频。通过有效播放筛选条件过滤掉用户不感兴趣的视频,避免其在构建视频词向量时产生负向作用。
可选地,被点播过的历史视频可能存在爬虫行为、极重度用户行为产生的视频,这类视频之间的相关性较弱,会对计算视频词向量产生负向影响。因此,在采用预设的视频有效播放筛选条件对被点播过的历史视频进行过滤之前,可以先根据历史视频播放记录统计每个用户点播视频的次数,删除次数大于预设阈值的用户的历史视频播放记录。
示例性地,获取某视频应用最近6个小时用户的历史视频播放记录,先根据历史视频播放记录统计每个用户点播视频的次数。将6个小时内点播视频超过400次的用户确定为不合法用户,丢弃不合法用户的历史视频播放记录。然后采用有效播放筛选条件对保留的历史视频播放记录中被点播过的历史视频进行过滤,获得待召回视频。通过识别并去除爬虫行为、极重度用户行为产生的历史视频播放记录,避免相关性弱的视频对构建视频词向量产生负向作用,同时降低了计算复杂度。
目标视频与各个待召回视频之间的相似度是根据视频词向量确定的,具体实施中,相似度可以是视频对应的视频词向量之间的余弦距离。视频词向量是通过对各个待召回视频的视频播放记录进行全局词频统计而获得的,所使用的全局词频统计算法可以是GloVe算法,视频词向量具体可以是稠密向量。可选地,将各个待召回视频中与目标视频的相似度大于预设阈值的待召回视频确定为目标视频的相似视频。
步骤S403,从目标视频的相似视频中,为目标用户选取召回视频。
在一种可能的实施方式中,可以将目标视频的相似视频都作为目标用户的召回视频。示例性地,设定目标视频A的相似视频包括视频O、视频P以及视频Q,则可以将视频O、视频P以及视频Q都作为目标用户的召回视频。
在另一种可能的实施方式中,按照相似度从大到小的顺序对目标视频的相似视频进行排序,将排在前N位的目标视频的相似视频作为目标用户的召回视频,N为预设正整数。示例性地,设定目标视频A的相似视频包括视频O、视频P以及视频Q,N为2,按照相似度从大到小的顺序进行排序后得到视频O、视频Q以及视频P,则将视频O及视频Q作为目标用户的召回视频。
由于构建视频词向量时使用的是待召回视频的视频播放记录,而不需要使用视频的标注信息,从而避免了对视频的标注信息的依赖。其次,构建视频词向量时基于全局词频统计,使用了全局的共现信息,故视频词向量能更好地表达待召回视频之间相关度,进而提高召回视频的相关度,使视频推荐的准确性更高。
可选地,在上述步骤S402中,为了使待召回视频与目标用户点击的视频始终保持相关性,本发明实施例中根据设定的更新周期更新各个待召回视频,每次更新时,采用预设的视频有效播放筛选条件从距离更新时间最近的预设时间段内被点播过的历史视频中获取各个待召回视频。更新周期可以根据实际情况进行设定,比如一天、三天、一周等。距离更新时间最近的预设时间段也可以根据实际情况进行设定,比如最近12小时、最近三天、最近一周等。示例性地,以一天为更新周期,每天获取某视频应用最近72小时所有用户的历史视频播放记录,从最近72小时被点播的历史视频中确定待召回视频。
可选地,在上述步骤S402中,通过对各个待召回视频的视频播放记录进行全局词频统计获得视频词向量,具体包括以下步骤,如图5所示:
步骤S501,根据各个待召回视频的视频播放记录构建共现矩阵。
采用各个待召回视频的视频播放记录组成的语料库构建共现矩阵,其中,矩阵中的每一个元素XIJ代表视频I和视频J在特定大小的上下文窗口内共同出现的次数。示例性地,设定第一用户在过去6小时内依次点播了视频A、视频B、视频C,第二用户在过去6小时内依次点播了视频A、视频B、视频D,经过数据清洗得到视频A、视频B、视频C、视频D均为待召回视频,则两条视频播放记录为:
视频播放记录1:待召回视频A、待召回视频B、待召回视频C;
视频播放记录2:待召回视频A、待召回视频B、待召回视频D;
设定上下文窗口的半径为1,则采用上述两条视频播放记录构建的共现矩阵如表2所示:
表2.
统计结果 | 待召回视频A | 待召回视频B | 待召回视频C | 待召回视频D |
待召回视频A | 0 | 2 | 0 | 0 |
待召回视频B | 2 | 0 | 1 | 1 |
待召回视频C | 0 | 1 | 0 | 0 |
待召回视频D | 0 | 1 | 0 | 0 |
下面以共现矩阵中的元素Z12为例进行说明,Z12为矩阵中第一行第二列的元素,表示待召回视频A出现在待召回视频B的上下文窗口的次数,由于上下文窗口的半径为1,则表示待召回视频A与待召回视频B左侧相邻或右侧相邻的次数。通过统计发现,视频播放记录1和视频播放记录2中均出现待召回视频A与待召回视频B相邻的情况,因此表2中Z12=2。采用上述相同的方法可以获得共现矩阵中其他元素的值,此处不再赘述。
在一种可能的实施方式中,共同出现的次数的最小单位可以不是1,而是根据两个视频在上下文窗口的距离d进行衰减,衰减函数为1/d,即为距离越远的两个视频的权重越小。示例性地,设定两条视频播放记录为:
视频播放记录1:待召回视频A、待召回视频B、待召回视频C、待召回视频F;
视频播放记录2:待召回视频A、待召回视频B、待召回视频D、待召回视频E;
设定上下文窗口的半径为2,待召回视频C、待召回视频F均在待召回视频B的上下文窗口内,经过统计发现待召回视频C、待召回视频F与待召回视频B共同出现的次数均为1。待召回视频C与待召回视频B的距离为1,待召回视频F与待召回视频B的距离为2,采用衰减函数对共同出现的次数进行衰减,获得待召回视频C与待召回视频B共同出现的次数为1,待召回视频F与待召回视频B共同出现的次数为1/2。
步骤S502,从共现矩阵中随机抽取非零元素,对视频词向量与共现矩阵之间的关系进行拟合。
步骤S503,反复迭代直至损失函数收敛,获得视频词向量。
具体地,首先构建视频词向量与共现矩阵之间的关系,其损失函数如公式(1)所示:
其中,xmax设置为100,α设置为3/4。针对一起出现次数较多的视频,其f(x)值大于一起出现次数较少的视频,当出现次数到达一定程度之后,f(x)函数值不再增加,当两个视频没有一起出现时,f(x)为0。
对共现矩阵中的所有非零元素随机采样,采用AdaGrad的梯度下降,将学习率统一设定为0.05,共迭代50轮,直至损失函数收敛,获得两组视频词向量w和每组视频词向量中包括所有待召回视频对应的视频词向量,且两组视频词向量是对称的。本发明实施例中可以选取两组视频词向量中任意一组视频词向量作为最终的视频词向量,也可以选取两组视频词向量的和作为最终的视频词向量。
可选地,在上述步骤S402中,为了提高视频召回的效率,预先可以将每个待召回视频的标识和对应的相似视频的标识,以标识为索引保存在视频索引库中。在召回视频时,可以以目标视频的标识为索引查询视频索引库,确定目标视频的相似视频。
具体地,通过计算待召回视频对应的视频词向量之间的余弦距离确定待召回视频之间的相似度。然后针对每个待召回视频,判断该待召回视频与其他待召回视频之间的相似度是否大于相似阈值,将大于相似阈值的其他待召回视频确定为该待召回视频的相似视频。可选地,当大于相似阈值的其他待召回视频过多时,也可以根据相似度从大到小的顺序对其他待召回视频进行排序,将排在前M位的其他待召回视频作为该待召回视频的相似视频,其中,M为预设正整数。然后将每个待召回视频的标识和对应的相似视频的标识保存在视频索引库中。另外,视频索引库中还可以保存待召回视频与对应的相似视频之间的相似度。
下面以待召回视频A为例进行说明,设定待召回视频A的相似视频为待召回视频B和待召回视频D,视频索引库中按照相似度从大到小的顺序依次保存待召回视频A的相似视频的标识及相似度,具体如表3所示:
表3.
待召回视频 | 相似视频 | 相似度 | 相似视频 | 相似度 |
待召回视频A | 待召回视频B | 0.65 | 待召回视频D | 0.63 |
在召回视频时,可以以目标视频的标识为索引查询视频索引库,确定目标视频的相似视频,从而提高确定目标视频的相似视频的效率,进而也提高视频召回的效率。
可选地,在上述步骤S401中,在召回视频时,目标用户在不同时间点播的视频所起的作用应该是不相同的。比如目标用户30分钟前点播的视频与3天前点播的视频显然不能同等对待,目标用户30分钟前点播的视频更能代表目标用户当前的喜好。若将目标用户3天前点播的视频作为目标视频时,召回的视频可能并不是用户当前感兴趣的视频,因此根据目标用户的视频播放记录,确定目标用户的目标视频时,应该考虑目标用户点播视频的时间。
具体地,预先设置视频种子列表,按照时间顺序将目标用户的视频播放记录中的视频标识添加至视频种子列表中。然后采用预设粒度的时间窗口从视频种子列表中筛选出预设时段内播放的视频,从预设时段内播放的视频中选取视频作为目标视频。具体实施中,预先可以设置多种粒度的时间窗口,比如设置3种粒度的时间窗口,分别为30分钟、1天和3天。示例性地,设定时间窗口分别为30分钟、1天。先采用30分钟的时间窗口从视频种子列表中筛选出最近30分钟内播放的视频,从最近30分钟内播放的视频中选取视频作为目标视频。若选取的目标视频不能召回视频,则采用1天的时间窗口从视频种子列表中筛选出最近1天内播放的视频,从最近1天内播放的视频中选取视频作为目标视频。采用预设粒度的时间窗口筛选出目标视频,实现区别对待目标用户在不同时间段播放的视频,这样使选取的目标视频更能代表目标用户当前的兴趣,从而提高召回视频的准确性。
在一种可能的实施方式中,采用预设粒度的时间窗口从视频种子列表中筛选出预设时段内播放的视频后,可以将预设时段内播放的视频都作为目标视频。示例性地,设定采用30分钟的时间窗口从视频种子列表中筛选出10个最近30分钟内播放的视频,则可以将这10个视频都作为目标视频。
在另一种可能的实施方式中,当时间窗口的粒度较大时,筛选出的视频在时间跨度上也会很大。比如,采用30分钟的时间窗口没有从视频种子列表中筛选视频,采用1天的时间窗口从视频种子列表中筛选出最近1天内播放的视频中包括40分钟前播放的视频和23小时前播放的视频,这两种视频时间跨度大,所起的作用也是不同的,因此不能同等对待。鉴于此,本发明实施例采用预设步长的滑动窗口从预设时段内播放的视频中选取预设数量的视频作为目标视频。示例性地,设定滑动窗口的步长为7步,按照时间从后到前的顺序,采用滑动窗口从最近1天内播放的视频中选取最近播放的7个视频作为目标视频。若选取的目标视频不能召回视频,采用滑动窗口从最近1天内播放的视频中选取第8-14个播放的视频作为目标视频,依次类推。采用滑动窗口进一步对时间窗口筛选的视频进行筛选,进一步区分不同时间段播放的视频,从而提高召回视频的准确性。
可选地,由于用户误操作或者视频自动播放等原因,视频种子列表可能存在用户不感兴趣的视频。若以该类视频作为目标视频进行视频召回时,可能会召回用户不感兴趣的视频。另外,用户的兴趣是实时变化的,用户可能前一段时间对视频种子列表中的某个视频感兴趣,而当前并不感兴趣。因此,若不对视频种子列表进行更新,可能持续召回用户不感兴趣的视频,也可能导致召回的视频过于集中。示例性地,视频种子列表中的目标视频A为电影m的视频片段,目标视频A召回的视频持续排在前面位置。若不对视频种子列表进行更新,目标视频A召回的视频将持续推荐给用户,导致给用户推荐大量相似视频。比如给用户推荐大量电影m的视频片段,导致目标用户的第一刷至第四刷获得的都是电影m的视频片段,具体如图6所示,第一刷至第四刷分别对应电影m的视频片段A、电影m的视频片段B、电影m的视频片段C、电影m的视频片段D。
为此,本发明实施例中监测每个目标视频对应的召回视频的展示次数和点击率,在展示次数大于第一阈值,且点击率不大于第二阈值时,从视频种子列表删除目标视频的标识。比如,当目标视频A对应的召回视频的展示次数大于5次,点击率不大于0.2时,从视频种子列表删除目标视频A的标识。当召回视频的展示次数多,而目标用户的点击率少时,说明目标用户对该召回视频并不感兴趣,通过监控召回视频的展示次数和点击率,及时发现用户不感兴趣的视频,进而更新视频种子列表,从而避免召回用户不感兴趣的视频,影响用户体验。
可选地,由于目标用户对应的多个目标视频可能存在关联,故多个目标视频召回的视频可能存在重复。示例性地,设定目标用户对应的目标视频包括目标视频X和目标视频Y,其中目标视频X召回的视频包括召回视频A、召回视频B、召回视频C,目标视频Y召回的视频包括召回视频C、召回视频D、召回视频E,则目标视频X和目标视频Y召回的视频中存在重复的视频,即召回视频C。鉴于此,本发明实施例中,当目标用户的召回视频中存在相同召回视频时,对相同召回视频进行去重。进一步地,将每个相同召回视频与目标视频的相似度求和,获得去重后保留的召回视频与目标视频的相似度,具体如公式(3)所示:
其中,S为去重后保留的召回视频与目标视频的相似度,VCi为召回同一召回视频的目标视频i,n为召回同一召回视频的目标视频的数量,Vr为召回视频,J为相似度。通过对相同召回视频进行去重,一方面避免了向用户推荐相同的视频,另一方面降低了计算的复杂度。
为了更好的解释本发明实施例,下面结合具体的实施场景描述本发明实施例提供的一种视频召回方法,包括在线部分和离线部分,其中离线部分如图7所示,包括历史视频播放记录清洗、构建视频词向量、视频相似度计算三部分,最终获得视频索引库。
历史视频播放记录清洗具体为:每次对6个小时的历史视频播放记录进行清洗。针对每个用户,将该用户最近6个小时点播视频的行为按照时间顺序聚集在一起,获得该用户的历史视频播放记录。统计每个用户6个小时点播视频的次数,将6个小时内点播视频超过400次的用户确定为不合法用户,丢弃不合法用户的历史视频播放记录。判断每条保留的历史视频播放记录中被点播过的历史视频的视频播放时长与视频总时长的比例是否大于80%,若大于,则将被点播过的历史视频判定为有效播放视频,否则判定为无效播放视频,丢弃历史视频播放记录中无效播放视频的相关信息,将历史视频播放记录中保留的被点播过的历史视频作为待召回视频。
构建视频词向量具体为:每天重新构建一次待召回视频的视频词向量,每次选取最近72小时的待召回视频的视频播放记录构建待召回视频的视频词向量,即每次选取最近12次清洗后的历史视频播放记录构建待召回视频的视频词向量。具体实施中,采用GloVe算法构建待召回视频的视频词向量,每个待召回视频对应的视频词向量为一个300维的稠密向量。
视频相似度计算具体为:通过计算待召回视频对应的视频词向量之间余弦距离,获得待召回视频之间的相似度。具体实施中,可以在装有8块T40卡的图形处理器(GraphicsProcessing Unit,简称GPU)上计算待召回视频之间的相似度。针对每个待召回视频,判断该待召回视频与其他待召回视频之间的相似度是否大于相似阈值(预先设置相似阈值为0.65),将大于相似阈值的其他待召回视频确定为该待召回视频的相似视频。当大于相似阈值的其他待召回视频过多时,也可以根据相似度从大到小的顺序对其他待召回视频进行排序,将排在前300位的其他待召回视频作为该待召回视频的相似视频。然后将每个待召回视频的标识、对应的相似视频的标识及待召回视频与对应的相似视频之间的相似度对应保存,获得视频索引库。
在线部分如图8所示,预先设置视频种子列表,将目标用户点播的视频的视频标识保存在视频种子列表中。设置3种粒度的时间窗口,分别为30分钟、1天和30天,采用3种粒度的时间窗口进行多粒度触发。具体为:先采用30分钟的时间窗口从视频种子列表中筛选出最近30分钟内播放的视频,从最近30分钟内播放的视频中选取视频作为目标视频。若选取的目标视频不能召回视频,则采用1天的时间窗口从视频种子列表中筛选出最近1天内播放的视频,从最近1天内播放的视频中选取视频作为目标视频。若选取的目标视频不能召回视频,则采用30天的时间窗口从视频种子列表中筛选出最近30天内播放的视频,从最近30天内播放的视频中选取视频作为目标视频。进一步地,在多粒度触发后,可以再采用种子滑动的方式从时间窗口内的视频中选取视频作为目标视频。以时间窗口为1天举例来说,设定滑动窗口的步长为7步,按照时间从后到前的顺序,采用滑动窗口从最近1天内播放的视频中选取最近播放的7个视频作为目标视频。若选取的目标视频不能召回视频,采用滑动窗口从最近1天内播放的视频中选取第8-14个播放的视频作为目标视频,依次类推。从视频种子列表中确定出目标视频的标识后,以目标视频的标识为索引查询视频索引库,确定目标视频的相似视频,将排在前N位的目标视频的相似视频作为目标用户的召回视频,N为预设正整数。此外,统计每个目标视频对应的召回视频的展示次数和点击率,在展示次数大于第一阈值,且点击率不大于第二阈值时,从视频种子列表删除该目标视频的标识。由于构建视频词向量时使用的是待召回视频的视频播放记录,而不需要使用视频的标注信息,从而避免了对视频的标注信息的依赖。其次,构建视频词向量时基于全局词频统计,使用了全局的共现信息,故视频词向量能更好地表达待召回视频之间相关度,进而提高召回视频的相关度,使视频推荐的准确性更高。采用时间窗口和滑动窗口从视频种子列表中筛选出目标视频,实现区别对待目标用户在不同时间段播放的视频,这样使选取的目标视频更能代表目标用户当前的兴趣,从而提高召回视频的准确性。
基于图2所示的应用场景图,本申请实施例提供了一种视频推荐方法的流程,如图9所示,该方法的流程可以由视频推荐装置执行,视频推荐装置可以是上述图2中的视频推荐系统202,该方法包括以下步骤:
步骤S901,根据目标用户的视频播放记录,确定目标用户的目标视频。
步骤S902,根据目标视频与各个待召回视频之间的相似度,从各个待召回视频中确定目标视频的相似视频。
各个待召回视频是采用预设的视频有效播放筛选条件从被点播过的历史视频中获取的,相似度是根据视频词向量确定的,视频词向量是通过对各个待召回视频的视频播放记录进行全局词频统计而获得的。
步骤S903,从目标视频的相似视频中,为目标用户选取召回视频。
步骤S904,根据召回视频与目标视频的相似度及目标用户的用户画像对目标用户的召回视频进行排序。
具体地,用户画像用于表示用户的兴趣,是根据用户的行为计算获得的,主要从标签、频道等不同维度刻画用户的兴趣。示例性地,设定用户点击了足球比赛视频,则可以在该用户画像的标签中添加足球,在频道中添加体育。召回视频与目标视频的相似度越大,召回视频与用户画像越匹配,召回视频的排序越靠前。
步骤S905,根据排序结果以及目标用户的召回视频的标签,从目标用户的召回视频中选取预设数量的召回视频作为推荐视频。
具体地,在排序结果中排在前面的可能为同一标签的召回视频,比如排在前10位的召回视频的标签均为足球赛事。若只按照排序结果向用户推荐召回视频的话,会出现向用户推荐重复视频的情况。因此,本发明实施例结合排序结果以及目标用户的召回视频的标签,从每类标签对应的召回视频中,选取排在前面的召回视频作为推荐视频,从而提高视频推荐的多样性,同时提高用户体验。
为了更好的解释本发明实施例,下面结合具体的实施场景描述本发明实施例提供的一种视频推荐方法,如图10所示,包括在线部分和离线部分。
离线部分包括用户行为收集、用户画像计算、构建视频索引库,用户行为主要包含点击、展示、点赞、转发、评论、双击等。用户画像计算是根据用户的行为进行用户兴趣的计算,主要从标签、频道等不同维度刻画用户的兴趣。基于用户行为获得历史视频播放记录,采用预设的视频有效播放筛选条件对历史视频播放记录进行清洗后,通过GloVe算法计算待召回视频的视频词向量,根据各个待召回视频对应的词向量确定各待召回视频之间的相似度。采用相似度阈值确定每个待召回视频的相似视频,然后将每个待召回视频的标识、对应的相似视频的标识及待召回视频与对应的相似视频之间的相似度对应保存,获得视频索引库。
在线部分包括候选召回、排序打分和多样性展示。候选召回具体为:根据目标用户的历史视频播放记录确定目标用户点播过的目标视频,以目标视频的标识为索引查询视频索引库,确定目标用户的相似视频,然后在相似视频中选取召回视频。排序打分具体为:根据召回视频与目标视频的相似度及目标用户的用户画像对目标用户的召回视频进行排序,召回视频与目标视频的相似度越大,召回视频与用户画像越匹配,召回视频的排序越靠前。多样性展示具体为:根据排序结果以及目标用户的召回视频的标签,从目标用户的召回视频中选取预设数量的召回视频作为推荐视频,比如从每类标签对应的召回视频中,选取排在前面的召回视频作为推荐视频。本发明实施例中,采用GloVe算法构建视频词向量,使用了全局的共现信息,故视频词向量能更好地表达待召回视频之间相关度,进而提高召回视频的相关度。基于用户画像以及召回视频的相似度对召回视频进行排序,使得与目标用户的兴趣越相关的召回视频排序越靠前,之后再结合召回视频的标签作为推荐视频,提高了推荐的视频的多样性和准确性。
基于相同的技术构思,本发明实施例提供了一种视频召回装置,如图11所示,该装置1100包括:
识别模块1101,用于根据目标用户的视频播放记录,确定目标用户的目标视频;
匹配模块1102,用于根据目标视频与各个待召回视频之间的相似度,从各个待召回视频中确定目标视频的相似视频,各个待召回视频是采用预设的视频有效播放筛选条件从被点播过的历史视频中获取的,相似度是根据视频词向量确定的,视频词向量是通过对各个待召回视频的视频播放记录进行全局词频统计而获得的;
筛选模块1103,用于从目标视频的相似视频中,为目标用户选取召回视频。
可选地,各个待召回视频是根据设定的更新周期更新的,每次更新时,采用预设的视频有效播放筛选条件,从距离更新时间最近的预设时间段内被点播过的历史视频中获取各个待召回视频。
可选地,匹配模块1102还用于:
根据各个待召回视频的视频播放记录构建共现矩阵;
从共现矩阵中随机抽取非零元素,对视频词向量与共现矩阵之间的关系进行拟合;
反复迭代直至损失函数收敛,获得视频词向量。
可选地,每个待召回视频的标识和对应的相似视频的标识,以标识为索引保存在视频索引库中;
匹配模块1102具体用于:
以目标视频的标识为索引查询视频索引库,确定目标视频的相似视频。
可选地,识别模块1101具体用于:
按照时间顺序将目标用户的视频播放记录中的视频标识添加至视频种子列表中;
采用预设粒度的时间窗口从视频种子列表中筛选出预设时段内播放的视频;
从预设时段内播放的视频中选取视频作为目标视频。
可选地,识别模块1101具体用于:
采用预设步长的滑动窗口从预设时段内播放的视频中选取预设数量的视频作为目标视频。
可选地,还包括监测模块1104;监测模块1104具体用于:
监测每个目标视频对应的召回视频的展示次数和点击率;
在展示次数大于第一阈值,且点击率不大于第二阈值时,从视频种子列表删除目标视频的标识。
可选地,筛选模块1103具体用于:
按照相似度从大到小的顺序对目标视频的相似视频进行排序;
将排在前N位的目标视频的相似视频作为目标用户的召回视频,N为预设正整数。
可选地,筛选模块1103还用于:
当目标用户的召回视频中存在相同召回视频时,对相同召回视频进行去重,并将每个相同召回视频与目标视频的相似度求和,获得去重后保留的召回视频与目标视频的相似度。
基于相同的技术构思,本发明实施例提供了一种视频推荐装置,如图12所示,该装置1200包括:
视频召回装置1100、排序模块1201、选择模块1202;
视频召回装置1100,用于获得目标用户的召回视频;
排序模块1201,用于根据获得的召回视频与目标视频的相似度,以及目标用户的用户画像对目标用户的召回视频进行排序;
选择模块1202,用于根据排序结果以及目标用户的召回视频的标签,从目标用户的召回视频中选取预设数量的召回视频作为推荐视频。
基于相同的技术构思,本发明实施例提供了一种视频推荐系统,如图13所示,该系统1300包括:
离线服务器1301、召回服务器1302、排序服务器1303、展示服务器1304;
离线服务器1301用于对各个待召回视频的视频播放记录进行全局词频统计,获得各个待召回视频对应的词向量,各个待召回视频是采用预设的视频有效播放筛选条件从被点播过的历史视频中获取;根据各个待召回视频对应的词向量确定各待召回视频之间的相似度;
召回服务器1302用于根据目标用户的视频播放记录确定目标用户的目标视频;以目标视频为索引,查询离线服务器中各待召回视频之间的相似度,从各个待召回视频中确定目标视频的相似视频;从目标视频的相似视频中,为目标用户选取召回视频;
排序服务器1303用于根据召回视频与目标视频的相似度及目标用户的用户画像对目标用户的召回视频进行排序;
展示服务器1304用于根据排序结果以及目标用户的召回视频的标签,从目标用户的召回视频中选取预设数量的召回视频作为推荐视频。
基于相同的技术构思,本申请实施例提供了一种计算机设备,如图14所示,包括至少一个处理器1401,以及与至少一个处理器连接的存储器1402,本申请实施例中不限定处理器1401与存储器1402之间的具体连接介质,图14中处理器1401和存储器1402之间通过总线连接为例。总线可以分为地址总线、数据总线、控制总线等。
在本申请实施例中,存储器1402存储有可被至少一个处理器1401执行的指令,至少一个处理器1401通过执行存储器1402存储的指令,可以执行前述的视频召回方法中所包括的步骤,或者可以执行前述的视频推荐方法中所包括的步骤。
其中,处理器1401是计算机设备的控制中心,可以利用各种接口和线路连接计算机设备的各个部分,通过运行或执行存储在存储器1402内的指令以及调用存储在存储器1402内的数据,从而进行视频召回或视频推荐。可选的,处理器1401可包括一个或多个处理单元,处理器1401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1401中。在一些实施例中,处理器1401和存储器1402可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
处理器1401可以是通用处理器,例如中央处理器(CPU)、数字信号处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器1402作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器1402可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random AccessMemory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器1402是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器1402还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
基于同一发明构思,本发明实施例提供了一种计算机可读存储介质,其存储有可由计算机设备执行的计算机程序,当所述程序在计算机设备上运行时,使得所述计算机设备执行视频召回方法的步骤,或者使得所述计算机设备执行视频推荐方法的步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (13)
1.一种视频召回方法,其特征在于,包括:
根据目标用户的视频播放记录,确定所述目标用户的目标视频;
根据所述目标视频与各个待召回视频之间的相似度,从所述各个待召回视频中确定所述目标视频的相似视频,所述各个待召回视频是采用预设的视频有效播放筛选条件从被点播过的历史视频中获取的,所述相似度是根据视频词向量确定的,所述视频词向量是通过以下方式获得的:根据各个待召回视频的视频播放记录构建共现矩阵,从所述共现矩阵中随机抽取非零元素,对视频词向量与所述共现矩阵之间的关系进行拟合,反复迭代直至损失函数收敛,获得视频词向量;
从所述目标视频的相似视频中,为所述目标用户选取召回视频。
2.如权利要求1所述的方法,其特征在于,所述各个待召回视频是根据设定的更新周期更新的,每次更新时,采用预设的视频有效播放筛选条件,从距离更新时间最近的预设时间段内被点播过的历史视频中获取各个待召回视频。
3.如权利要求1至2任一所述的方法,其特征在于,每个待召回视频的标识和对应的相似视频的标识,以标识为索引保存在视频索引库中;
所述根据所述目标视频与各个待召回视频之间的相似度,从所述各个待召回视频中确定所述目标视频的相似视频,包括:
以所述目标视频的标识为索引查询所述视频索引库,确定所述目标视频的相似视频。
4.如权利要求3所述的方法,其特征在于,所述根据目标用户的视频播放记录,确定所述目标用户的目标视频,包括:
按照时间顺序将目标用户的视频播放记录中的视频标识添加至视频种子列表中;
采用预设粒度的时间窗口从所述视频种子列表中筛选出预设时段内播放的视频;
从所述预设时段内播放的视频中选取视频作为目标视频。
5.如权利要求4所述的方法,其特征在于,所述从所述预设时段内播放的视频中选取视频作为目标视频,包括:
采用预设步长的滑动窗口从所述预设时段内播放的视频中选取预设数量的视频作为目标视频。
6.如权利要求4所述的方法,其特征在于,还包括:
监测每个目标视频对应的召回视频的展示次数和点击率;
在所述展示次数大于第一阈值,且所述点击率不大于第二阈值时,从所述视频种子列表删除所述目标视频的标识。
7.如权利要求3所述的方法,其特征在于,所述从所述目标视频的相似视频中,为所述目标用户选取召回视频,包括:
按照相似度从大到小的顺序对所述目标视频的相似视频进行排序;
将排在前N位的所述目标视频的相似视频作为所述目标用户的召回视频,所述N为预设正整数。
8.如权利要求7所述的方法,其特征在于,还包括:
当所述目标用户的召回视频中存在相同召回视频时,对相同召回视频进行去重,并将每个相同召回视频与所述目标视频的相似度求和,获得去重后保留的召回视频与所述目标视频的相似度。
9.一种视频推荐方法,其特征在于,包括:
采用权利要求1至8任一所述的方法获取目标用户的召回视频;
根据召回视频与目标视频的相似度及所述目标用户的用户画像对所述目标用户的召回视频进行排序;
根据排序结果以及所述目标用户的召回视频的标签,从所述目标用户的召回视频中选取预设数量的召回视频作为推荐视频。
10.一种视频召回装置,其特征在于,包括:
识别模块,用于根据目标用户的视频播放记录,确定所述目标用户的目标视频;
匹配模块,用于根据所述目标视频与各个待召回视频之间的相似度,从所述各个待召回视频中确定所述目标视频的相似视频,所述各个待召回视频是采用预设的视频有效播放筛选条件从被点播过的历史视频中获取的,所述相似度是根据视频词向量确定的,所述视频词向量是通过以下方式获得的:根据各个待召回视频的视频播放记录构建共现矩阵,从所述共现矩阵中随机抽取非零元素,对视频词向量与所述共现矩阵之间的关系进行拟合,反复迭代直至损失函数收敛,获得视频词向量;
筛选模块,用于从所述目标视频的相似视频中,为所述目标用户选取召回视频。
11.一种视频推荐装置,其特征在于,包括:
排序模块、选择模块、权利要求10所述的视频召回装置;
所述视频召回装置,用于获得目标用户的召回视频;
所述排序模块,用于根据获得的召回视频与目标视频的相似度,以所述目标用户的用户画像对所述目标用户的召回视频进行排序;
所述选择模块,用于根据排序结果以及所述目标用户的召回视频的标签,从所述目标用户的召回视频中选取预设数量的召回视频作为推荐视频。
12.一种视频推荐系统,其特征在于,包括:
离线服务器、召回服务器、排序服务器、展示服务器;
所述离线服务器用于根据各个待召回视频的视频播放记录构建共现矩阵,从所述共现矩阵中随机抽取非零元素,对视频词向量与所述共现矩阵之间的关系进行拟合,反复迭代直至损失函数收敛,获得各个待召回视频对应的词向量,所述各个待召回视频是采用预设的视频有效播放筛选条件从被点播过的历史视频中获取;根据各个待召回视频对应的词向量确定各待召回视频之间的相似度;
所述召回服务器用于根据目标用户的视频播放记录确定所述目标用户的目标视频;以所述目标视频为索引,查询所述离线服务器中各待召回视频之间的相似度,从所述各个待召回视频中确定所述目标视频的相似视频;从所述目标视频的相似视频中,为所述目标用户选取召回视频;
所述排序服务器用于根据召回视频与目标视频的相似度及所述目标用户的用户画像对所述目标用户的召回视频进行排序;
所述展示服务器用于根据排序结果以及所述目标用户的召回视频的标签,从所述目标用户的召回视频中选取预设数量的召回视频作为推荐视频。
13.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1~8任一权利要求所述方法的步骤,或者所述处理器执行所述程序时实现权利要求9所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010193407.6A CN111400546B (zh) | 2020-03-18 | 2020-03-18 | 一种视频召回方法、视频推荐方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010193407.6A CN111400546B (zh) | 2020-03-18 | 2020-03-18 | 一种视频召回方法、视频推荐方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111400546A CN111400546A (zh) | 2020-07-10 |
CN111400546B true CN111400546B (zh) | 2020-12-01 |
Family
ID=71428863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010193407.6A Active CN111400546B (zh) | 2020-03-18 | 2020-03-18 | 一种视频召回方法、视频推荐方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111400546B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111918104A (zh) * | 2020-07-29 | 2020-11-10 | 有半岛(北京)信息科技有限公司 | 一种视频数据的召回方法、装置、计算机设备和存储介质 |
CN112329954B (zh) * | 2020-11-04 | 2024-06-11 | 中国平安人寿保险股份有限公司 | 物品召回方法、装置、终端设备及存储介质 |
CN112182411A (zh) * | 2020-11-09 | 2021-01-05 | 广州酷狗计算机科技有限公司 | 多媒体数据推荐方法、装置、计算机设备及可读存储介质 |
CN113806519A (zh) * | 2021-09-24 | 2021-12-17 | 金蝶软件(中国)有限公司 | 一种搜索召回方法、装置及介质 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103491205A (zh) * | 2013-09-30 | 2014-01-01 | 北京奇虎科技有限公司 | 一种基于视频搜索的关联资源地址的推送方法和装置 |
CN104219575A (zh) * | 2013-05-29 | 2014-12-17 | 酷盛(天津)科技有限公司 | 相关视频推荐方法及系统 |
CN104794429A (zh) * | 2015-03-23 | 2015-07-22 | 中国科学院软件研究所 | 一种面向监控视频的关联可视分析方法 |
CN106484773A (zh) * | 2016-09-12 | 2017-03-08 | 传线网络科技(上海)有限公司 | 确定多媒体资源的关键词的权重的方法及装置 |
CN107343209A (zh) * | 2017-06-29 | 2017-11-10 | 达而观信息科技(上海)有限公司 | 一种基于增量协同过滤的ugc相关视频生成方法 |
CN107885889A (zh) * | 2017-12-13 | 2018-04-06 | 聚好看科技股份有限公司 | 搜索结果的反馈方法、展示方法及装置 |
CN108540860A (zh) * | 2018-02-28 | 2018-09-14 | 北京奇艺世纪科技有限公司 | 一种视频召回方法和装置 |
CN108694236A (zh) * | 2018-05-11 | 2018-10-23 | 优视科技有限公司 | 视频数据处理方法、装置及电子设备 |
CN109189991A (zh) * | 2018-08-17 | 2019-01-11 | 百度在线网络技术(北京)有限公司 | 重复视频识别方法、装置、终端及计算机可读存储介质 |
CN110008375A (zh) * | 2019-03-22 | 2019-07-12 | 广州新视展投资咨询有限公司 | 推荐视频召回方法和装置 |
CN110019944A (zh) * | 2017-12-21 | 2019-07-16 | 飞狐信息技术(天津)有限公司 | 一种视频的推荐方法及系统 |
CN110069714A (zh) * | 2019-04-25 | 2019-07-30 | 北京酷我科技有限公司 | 一种视频推荐系统 |
CN110446065A (zh) * | 2019-08-02 | 2019-11-12 | 腾讯科技(武汉)有限公司 | 一种视频召回方法、装置及存储介质 |
CN110598044A (zh) * | 2019-08-01 | 2019-12-20 | 达而观信息科技(上海)有限公司 | 一种基于用户点击和转化时长反馈的协同召回方法 |
CN110781347A (zh) * | 2019-10-23 | 2020-02-11 | 腾讯科技(深圳)有限公司 | 一种视频处理方法、装置、设备以及可读存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6397378B2 (ja) * | 2015-07-27 | 2018-09-26 | 日本電信電話株式会社 | 特徴量生成方法、特徴量生成装置、及び特徴量生成プログラム |
CN109062994A (zh) * | 2018-07-04 | 2018-12-21 | 平安科技(深圳)有限公司 | 推荐方法、装置、计算机设备和存储介质 |
CN110334283A (zh) * | 2018-08-27 | 2019-10-15 | 腾讯科技(北京)有限公司 | 信息推荐方法、装置、服务器及存储介质 |
CN109255126A (zh) * | 2018-09-10 | 2019-01-22 | 百度在线网络技术(北京)有限公司 | 文章推荐方法及装置 |
CN110866184B (zh) * | 2019-11-11 | 2022-12-02 | 湖南大学 | 短视频数据标签推荐方法、装置、计算机设备和存储介质 |
-
2020
- 2020-03-18 CN CN202010193407.6A patent/CN111400546B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104219575A (zh) * | 2013-05-29 | 2014-12-17 | 酷盛(天津)科技有限公司 | 相关视频推荐方法及系统 |
CN103491205A (zh) * | 2013-09-30 | 2014-01-01 | 北京奇虎科技有限公司 | 一种基于视频搜索的关联资源地址的推送方法和装置 |
CN104794429A (zh) * | 2015-03-23 | 2015-07-22 | 中国科学院软件研究所 | 一种面向监控视频的关联可视分析方法 |
CN106484773A (zh) * | 2016-09-12 | 2017-03-08 | 传线网络科技(上海)有限公司 | 确定多媒体资源的关键词的权重的方法及装置 |
CN107343209A (zh) * | 2017-06-29 | 2017-11-10 | 达而观信息科技(上海)有限公司 | 一种基于增量协同过滤的ugc相关视频生成方法 |
CN107885889A (zh) * | 2017-12-13 | 2018-04-06 | 聚好看科技股份有限公司 | 搜索结果的反馈方法、展示方法及装置 |
CN110019944A (zh) * | 2017-12-21 | 2019-07-16 | 飞狐信息技术(天津)有限公司 | 一种视频的推荐方法及系统 |
CN108540860A (zh) * | 2018-02-28 | 2018-09-14 | 北京奇艺世纪科技有限公司 | 一种视频召回方法和装置 |
CN108694236A (zh) * | 2018-05-11 | 2018-10-23 | 优视科技有限公司 | 视频数据处理方法、装置及电子设备 |
CN109189991A (zh) * | 2018-08-17 | 2019-01-11 | 百度在线网络技术(北京)有限公司 | 重复视频识别方法、装置、终端及计算机可读存储介质 |
CN110008375A (zh) * | 2019-03-22 | 2019-07-12 | 广州新视展投资咨询有限公司 | 推荐视频召回方法和装置 |
CN110069714A (zh) * | 2019-04-25 | 2019-07-30 | 北京酷我科技有限公司 | 一种视频推荐系统 |
CN110598044A (zh) * | 2019-08-01 | 2019-12-20 | 达而观信息科技(上海)有限公司 | 一种基于用户点击和转化时长反馈的协同召回方法 |
CN110446065A (zh) * | 2019-08-02 | 2019-11-12 | 腾讯科技(武汉)有限公司 | 一种视频召回方法、装置及存储介质 |
CN110781347A (zh) * | 2019-10-23 | 2020-02-11 | 腾讯科技(深圳)有限公司 | 一种视频处理方法、装置、设备以及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111400546A (zh) | 2020-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111400546B (zh) | 一种视频召回方法、视频推荐方法及装置 | |
CN108921221B (zh) | 用户特征的生成方法、装置、设备及存储介质 | |
CN110941740B (zh) | 视频推荐方法及计算机可读存储介质 | |
JP7222022B2 (ja) | 情報検索方法、装置、設備、記憶媒体、及びプログラム | |
CN110543598B (zh) | 信息推荐方法、装置及终端 | |
CN105224699B (zh) | 一种新闻推荐方法及装置 | |
TWI636416B (zh) | 內容個人化之多相排序方法和系統 | |
US9535992B2 (en) | Recommendation engine | |
CN108040294B (zh) | 用于推荐视频的方法、系统及计算机可读介质 | |
Hariri et al. | Context adaptation in interactive recommender systems | |
CN108874812B (zh) | 一种数据处理方法及服务器、计算机存储介质 | |
CN111666448B (zh) | 搜索方法、装置、电子设备及计算机可读存储介质 | |
CN112052387B (zh) | 一种内容推荐方法、装置和计算机可读存储介质 | |
CN111815375B (zh) | 广告投放中的用户画像方法及装置 | |
CN112749330B (zh) | 信息推送方法、装置、计算机设备和存储介质 | |
US20170199930A1 (en) | Systems Methods Devices Circuits and Associated Computer Executable Code for Taste Profiling of Internet Users | |
CN109977308B (zh) | 用户群体画像的构建方法、装置、存储介质及电子设备 | |
CN111400609B (zh) | 用户推荐方法、装置、存储介质及服务器 | |
Pyo et al. | Automatic and personalized recommendation of TV program contents using sequential pattern mining for smart TV user interaction | |
CN113239182A (zh) | 一种文章推荐方法、装置、计算机设备及存储介质 | |
US20110179013A1 (en) | Search Log Online Analytic Processing | |
Zhang et al. | Task-based recommendation on a web-scale | |
CN111241381A (zh) | 信息推荐方法、装置、电子设备及计算机可读存储介质 | |
CN112749296B (zh) | 一种视频推荐方法、装置、服务器及存储介质 | |
CN110851708B (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40025910 Country of ref document: HK |