一种视频与视频关键词相关度的确定方法及装置
技术领域
本发明涉及网络视频领域,尤其涉及一种视频与视频关键词相关度的确定方法及装置。
背景技术
在互联网时代,特别是移动互联网时代,如何有效的为用户推荐用户感兴趣的视频显得尤为重要。在视频的个性化推荐领域和视频解释领域,有效的视频与兴趣词(关键词)的计算可以快速对视频进行文字信息的解释以及用户兴趣的匹配,从而为用户快速的匹配和推荐其兴趣的视频。目前视频与兴趣词匹配度的计算主要是通过视频标题的关键词的词频信息进行度量,如通过视频标题关键词的IF(Term Frequency,词频)和IDF(inversedocument frequency,逆向文件频率)信息表征该关键词与视频的相关度。此方法假设视频标题唯一表征了视频的所有信息,但是在人为给视频进行标题描述时,关键词很难覆盖大多数人对这个视频的认知或关键词不具有信息扩展性。例如,视频本身讲述了猫和狗的内容,视频上传者只给视频添加上了猫的关键词,但是没有狗的关键词,该视频也就与狗没有相关性。因此,如何有效的计算视频与兴趣词的显性和隐性的相关性,显得尤为重要。现有的视频与兴趣词的计算方法的具有以下缺点:
1)、现有的视频与兴趣词的计算区分性小且受噪声影响大,目前的方法利用标题关键词的TF和IDF信息进行度量,如果关键词与视频的信息不符且TF和IDF值大,会给视频和兴趣词计算带来噪声,并且关键词词频信息的描述覆盖度小,无法充分描述视频。
2)、现有的视频与关键词的计算缺乏用户行为的维度信息,目前的方法只考虑视频上传者对视频的标题描述,没有考虑由于用户观看行为产生的视频描述和聚类信息,缺乏视频用户行为信息。
3)、现有的视频与关键词不在同一维度表示,缺乏共享信息。目前的方法只是单一的考虑文本信息,视频和文本为两个不同的空间描述,两个对象的计算不存在共享信息。
发明内容
本发明的主要目的在于提供一种视频与视频关键词相关度的确定方法及装置,以解决目前无法确定视频与视频对应的关键词的匹配度的问题。
根据本发明的一个方面,提供了一种视频与视频关键词相关度的确定方法,该方法包括:根据用户对视频的观看行为,获取与用户相关的视频信息,根据视频信息生成相关视频列表;获取相关视频列表中的视频对应的关键词;以视频列表中的视频与关键词为训练目标使用神经网络模型在同一维度进行协同训练;输出协同训练的结果;根据协同训练的结果确定视频与关键词的相关度。
其中,根据用户对视频的观看行为,获取与用户相关的视频信息,根据视频信息生成相关视频列表,包括:从日志文件中获取用户在预设时间段内观看、订阅、以及参与评论的视频信息,将该视频信息作为与用户相关的视频信息;根据视频信息生成候选视频列表;将候选视频列表中的视频按照时间进行排序;将候选视频列表中重复的视频敏感的视频、以及观看完成度小于预设百分比的视频删除;得到用户的相关视频列表。
其中,以视频列表中的视频与关键词为训练目标使用神经网络模型在同一维度进行协同训练,包括:将初始化的视频的向量和初始化的关键词的词向量作为神经网络模型的输入层;将输入层的视频的向量进行求和后再进行非线性变换得到的对象作为神经网络模型的映射层;神经网络模型的输出层用于输出神经网络模型和优化目标,使用最大似然估计算法得到优化的标的计算公式为:
其中,wj是关键词,vk为视频列表中的视频,Hw为关键词的向量,Hv为视频的向量,E为神经网络模型中最大化的函数,表征视频列表中的视频。
其中,输出协同训练的结果,包括:获取训练完成的神经网络模型;通过对神经网络模型的解析,得到相关视频列表中每个视频对应的视频向量和每个关键词对应的词向量。
其中,根据协同训练的结果确定视频与关键词的相关度,包括:采用余弦距离公式(3)计算视频与关键词之间的距离,使用计算出的距离表征视频与关键词之间的相关度;
其中,wj表示关键词,vk表示视频列表中的视频,Hw表示关键词的向量,Hv表示视频的向量。
根据本发明的另一个方面,提供了一种视频与视频关键词相关度的确定装置,包括:生成模块,用于根据用户对视频的观看行为,获取与用户相关的视频信息,根据视频信息生成相关视频列表;获取模块,用于获取相关视频列表中的视频对应的关键词;训练模块,用于以视频列表中的视频与关键词为训练目标使用神经网络模型在同一维度进行协同训练;输出模块,用于输出协同训练的结果;确定模块,用于根据协同训练的结果确定视频与关键词的相关度。
其中,上述生成模块包括:第一获取单元,用于从日志文件中获取用户在预设时间段内观看、订阅、以及参与评论的视频信息,将该视频信息作为与用户相关的视频信息;生成单元,用于根据视频信息生成候选视频列表;排序单元,用于将候选视频列表中的视频按照时间进行排序;删除单元,用于将候选视频列表中重复的视频敏感的视频、以及观看完成度小于预设百分比的视频删除,得到用户的相关视频列表。
其中,上述训练模块包括:第一输入单元,用于将初始化的视频的向量和初始化的关键词的词向量作为神经网络模型的输入层;变换单元,将输入层的视频的向量进行求和后再进行非线性变换得到的对象作为神经网络模型的映射层;第二输入单元,神经网络模型的输出层用于输出神经网络模型和优化目标,使用最大似然估计算法得到优化的标的计算公式为:
其中,wj是关键词,vk为视频列表中的视频,Hw为关键词的向量,Hv为视频的向量,E为神经网络模型中最大化的函数,表征视频列表中的视频。
其中,上述输出模块包括:第二获取单元,用于获取训练完成的神经网络模型;
解析单元,用于通过对神经网络模型的解析,得到相关视频列表中每个视频对应的视频向量和每个关键词对应的词向量。
其中,上述确定模块具体用于:采用余弦距离公式(3)计算视频与关键词之间的距离,使用计算出的距离表征视频与关键词之间的相关度;
其中,wj表示关键词,vk表示视频列表中的视频,Hw表示关键词的向量,Hv表示视频的向量。本发明有益效果如下:
本发明实施例提供的方案,根据用户对视频的观看行为获取用户感兴趣的视频列表,并获取用户感兴趣的视频对应的关键词,根据用户感兴趣的视频以及视频对应的关键词在同一空间内进行训练,得到用户感兴趣的视频的向量以及视频对应的关键词的向量,根据视频的向量以及与视频对应的关键词的向量计算二者的相关度,该方法能够确定出视频与其对应的关键词的相关度,且能够使得视频的关键词与用户行为相关。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例1提供的视频与视频关键词相关度的确定方法的流程图;
图2是本发明实施例2中上下文视频列表与兴趣词获取模块所执行的流程的流程图;
图3是本发明实施例2中视频与兴趣词的协同训练模块所执行的流程的流程图;
图4是本发明实施例2中视频与兴趣词向量的获取模块所执行的流程的流程图;
图5是本发明实施例3提供的种视频与视频关键词相关度的确定装置的结构框图。
具体实施方式
为了解决现有技术在无法确定视频与视频对应的关键词的匹配度的问题,本发明提供了一种视频与视频关键词相关度的确定方法及装置,以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
实施例1
本实施例提供了一种视频与视频关键词相关度的确定方法,图1是该方法的流程图,如图1所示,该方法包括如下步骤:
步骤101:根据用户对视频的观看行为,获取与用户相关的视频信息,根据视频信息生成相关视频列表;
在本实施例中,根据用户对视频的观看行为,获取与用户相关的视频信息,根据视频信息生成相关视频列表具体可以包括:
从日志文件中获取用户在预设时间段内观看、订阅、以及参与评论的视频信息,在本实施例中,视频的信息具体包括但不限于视频的编号,视频的名称等,将该视频信息作为与用户相关的视频信息;根据视频信息生成候选视频列表;将候选视频列表中的视频按照时间进行排序;将候选视频列表中重复的视频敏感的视频、以及观看完成度小于预设百分比(例如,50%)的视频删除;得到用户的相关视频列表。此外,还可以直接将获取到的用户在预设时间段内观看、订阅以及参与评论(例如,在某个视频的评论栏中选择顶或踩,点赞等评论方式)的视频直接生成用户相关视频列表,在生成的过程中重复的视频只记录一次。
步骤102:获取相关视频列表中的视频对应的关键词;
在该步骤102中,关键词(也称兴趣词)可以是预先为视频设置的与视频主题相关的关键词,也可以从视频的描述信息中提取。
步骤103:以视频列表中的视频与关键词为训练目标使用神经网络模型在同一维度进行协同训练;
以视频列表中的视频与关键词为训练目标使用神经网络模型在同一维度进行协同训练,具体可以包括:将初始化的视频的向量和初始化的关键词的词向量作为神经网络模型的输入层;将输入层的视频的向量进行求和后再进行非线性变换得到的对象作为神经网络模型的映射层;神经网络模型的输出层用于输出神经网络模型和优化目标,使用最大似然估计算法得到优化的标的计算公式为:
其中,wj是关键词,vk为视频列表中的视频,Hw为关键词的向量,Hv为视频的向量,E为神经网络模型中最大化的函数,表征视频列表中的视频。
步骤104:输出协同训练的结果;
在本实施例中,输出协同训练的结果,具体可以包括:
获取训练完成的神经网络模型;通过对神经网络模型的解析,得到相关视频列表中每个视频对应的视频向量和每个关键词对应的词向量。
步骤105:根据协同训练的结果确定视频与关键词的相关度。
在本实施例中,根据协同训练的结果确定视频与关键词的相关度具体可以包括:
采用余弦距离公式(3)计算视频与关键词之间的距离,使用计算出的距离表征视频与关键词之间的相关度;
其中,wj表示关键词,vk表示视频列表中的视频,Hw表示关键词的向量,Hv表示视频的向量。
实施例2
本实施例提供了另一种视频与视频关键词相关度的确定方法,该方法首先要收集与用户相关的视频的序列列表,然后进行离线的协同训练和输出视频向量和兴趣词的词向量,最后通过输出的模型文件进行视频和兴趣词的相似度计算,该过程需要采用以下四个模块实体实现,上下文视频列表与兴趣词获取模块、视频与兴趣词协同训练模块、视频向量与词向量获取模块和视频与兴趣词相关度计算模块,以下结合这几个模块对该方法的具体实现进行说明:
上下文视频列表与兴趣词获取模块用于根据用户的观看行为,获取上下文视频列表(也称用户相关视频列表),生成用户Ui的相关序列视频列表UVi={Vi1,Vi2..ViN},同时获取该视频列表中的视频对应的关键词TUVi={TVi1,TVi2..TViM},TVi={Wi1,Wi2…WiN}。
视频与兴趣词协同训练模块,主要利用神经网络将视频与兴趣词放在同一维度进行协同训练,让视频与相近兴趣词在空间的表示上距离比较近。
视频向量与词向量获取模块,本模块将协同训练的结果解析输出,供视频与兴趣词的相关度计算模块使用。
视频与兴趣词的相关度计算模块,本模块主要是计算视频与兴趣词的相关度。
以下对上文提到的四个模块所执行的步骤进行进一步说明:
上下文视频列表与兴趣词获取模块:上下文视频列表的定义是视频列表内的视频在用户行为下具有相似的主题或隐含的视频。假设用户在T时间段内观看(评论、订阅和顶、踩)视频LUi={Vi1,Vi2…ViN},则LUi为用户Ui的一个上下文视频列表。如2图所示,该模块主要用于执行以下步骤:
201)、从日志文件中获取用户在时间T内观看、订阅、顶、踩等的视频信息,获取候选的上下文视频列表{V1,V2,..,VN}。
202)、将获取的候选上下文视频列表中的视频按照时间进行排序;
203)、为了去除上下文视频列表对训练的噪音影响,将重复的视频、敏感视频删除,并去除用户无效的观看行为,如观看完成比很小的视频等;
204)、获取筛选和排序好的上下文候选列表;
205)、获取上下文列表中的视频对应的兴趣词列表,具体地,每个视频id对应一个兴趣词列表,如视频V1对应兴趣词{W1,W2},W2对应兴趣词{W3,W4}。
视频与兴趣词的协同训练模块采用了可以处理复杂特征的神经网络模型,根据用户行为的特征和视频及兴趣词的关系,设计了与此相适应的神经网络模型,如图3所示,该模块主要用于执行以下步骤:
301)、输入层为H(Vj)视频向量和上下文视频列表中对应的兴趣词向量H(W)(其中H(Vj),H(W)可以是优选的初始视频向量以及兴趣词向量),根据训练需要选择上下文的长度,本实施例中优选长度为2,其中,视频向量H(Vj)的值在0-1之间进行选择,H(W)为兴趣词的词向量,且这两个向量同维度,该步骤主要是将视频向量和兴趣词向量编码在同一空间。
302)、映射层是将输入层的视频向量进行取和后进行非线性变换,公式如下:
此过程中主要是获取视频Vj的向量和其上下文视频列表对应的关键词向量,输出的值为f(vk,wj-2,wj-1,wj+1,wj+2)。
303)输出层主要是模型的输出和优化的目标,在本发明中采用最大似然估计,优化目标公式为:
其中,E为本模型中最大化的函数,表征在统一上下文中的视频,视频的兴趣词和视频在空间中的位置相距的较近,在训练中采用随机梯度下降算法进行模型的更新和训练。
视频与兴趣词向量的获取模块,
模型协同训练完成后,即获取了对应的视频向量和兴趣词向量,该模块主要用于输出视频向量以及兴趣词向量,如图4所示,该模块主要用于执行以下步骤:
401)获取已经训练好的模型文件;
402)通过对模型文件的存储解析,得到每个视频对应的视频向量和每个兴趣词对应的词向量;
403)获取视频向量(V1…VN);
404)获取兴趣词向量(W1,WN)。
视频与兴趣词相关度计算模块,
本实施例中提出了一种视频与兴趣词向量的权重计算公式,由于由协同模型训练的视频向量和兴趣词向量在同一空间维度,因此本实施例中采用余弦距离计算两者的距离,具体公式如下:
余弦距离计算的距离在0-1之间,表征了视频与其对应的兴趣词的相似度。
实施例3,
生成模块51,用于根据用户对视频的观看行为,获取与用户相关的视频信息,根据视频信息生成相关视频列表;
获取模块52,用于获取相关视频列表中的视频对应的关键词;
训练模块53,用于以视频列表中的视频与关键词为训练目标使用神经网络模型在同一维度进行协同训练;
输出模块54,用于输出协同训练的结果;
确定模块55,用于根据协同训练的结果确定视频与关键词的相关度。
其中,上述生成模块具体可以包括:第一获取单元,用于从日志文件中获取用户在预设时间段内观看、订阅、以及参与评论的视频信息,将该视频信息作为与用户相关的视频信息;生成单元,用于根据视频信息生成候选视频列表;排序单元,用于将候选视频列表中的视频按照时间进行排序;删除单元,用于将候选视频列表中重复的视频敏感的视频、以及观看完成度小于预设百分比的视频删除,得到用户的相关视频列表。
其中,上述训练模块具体可以包括:
第一输入单元,用于将初始化的视频的向量和初始化的关键词的词向量作为神经网络模型的输入层;变换单元,将输入层的视频的向量进行求和后再进行非线性变换得到的对象作为神经网络模型的映射层;第二输入单元,神经网络模型的输出层用于输出神经网络模型和优化目标,使用最大似然估计算法得到优化的标的计算公式为:
其中,wj是关键词,vk为视频列表中的视频,Hw为关键词的向量,Hv为视频的向量,E为神经网络模型中最大化的函数,表征视频列表中的视频。
其中,上述输出模块具体可以包括:第二获取单元,用于获取训练完成的神经网络模型;解析单元,用于通过对神经网络模型的解析,得到相关视频列表中每个视频对应的视频向量和每个关键词对应的词向量。
其中,上述确定模块具体用于:
采用余弦距离公式(3)计算视频与关键词之间的距离,使用计算出的距离表征视频与关键词之间的相关度;
其中,wj表示关键词,vk表示视频列表中的视频,Hw表示关键词的向量,Hv表示视频的向量。
本发明中提出的方法可以学习兴趣词的隐含语义信息,神经网络在学习兴趣词向量的过程中,会学习到相同词在高维空间上的相近的特征信息,共享相同的语义信息和隐含信息;本发明中提出的方法能够学习用户对视频的行为信息,在协同训练过程中,使用到了用户的观看序列信息,能够学习到隐含的视频相似度信息,将用户行为对视频的影响映射到向量中;本发明将视频和兴趣词映射到同一空间,共享空间信息,神经网络的协同训练将视频和兴趣词放在同一空间进行训练学习,共享空间信息,有效进行视频和兴趣词的计算,提高相似度计算准确度。
以上所述仅为本发明的实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。