基于深度学习的多目标视频推荐方法、装置及存储介质制造方法及图纸

技术编号:31508520 阅读:49 留言:0更新日期:2021-12-22 23:43
本发明专利技术涉及推荐系统领域,提供了一种基于深度学习的多目标视频推荐方法、装置及存储介质,解决正样本稀疏以及多个目标的视频推荐问题。主要方案包括:1)准备包含用户在目标上的交互行为的数据集;2)多任务框架的修改与设计,完成每个子任务相应的损失计算;3)对得到的每个子任务的损失函数进行动态加权优化;4)底层共享网络结构设计,得到历史交互序列的权重;5)设计权重衰减结构,对得到历史交互序列的权重进行衰减后用于申请网络的训练;6)网络中的embedding层的预热初始化;7)神经网络的训练。本发明专利技术用于视频的多目标推荐。本发明专利技术用于视频的多目标推荐。本发明专利技术用于视频的多目标推荐。

【技术实现步骤摘要】
基于深度学习的多目标视频推荐方法、装置及存储介质


[0001]本专利技术涉及视频推荐领域。提供了一种基于深度学习的多目标视频推荐方法、装置及存储介质。

技术介绍

[0002]推荐系统是一项交互式产品功能,产品为推荐系统提供载体,用户通过使用产品触达及触发推荐系统,推荐系统为用户提供个性化的推荐,从而提升用户体验;和搜索引擎不同,推荐系统本质上是在用户需求不明确的情况下,从海量的信息中为用户寻找其感兴趣的信息的技术手段。推荐系统结合用户的信息(地域,年龄,性别等),物品信息(价格,产地等),以及用户过去对物品的行为(是否购买,是否点击,是否播放等),利用机器学习技术构建用户兴趣模型,为用户提供精准的个性化推荐。
[0003]传统的推荐系统算法中经典的便是协同过滤的推荐算法,其主要分为基于用户的协同过滤和基于物品的协同过滤,基本思想根据用户之前的喜好以及其他兴趣相近的用户的选择来给用户推荐物品,基于用户的协同过滤是给用户推荐和他兴趣相似的其他用户喜欢的产品,而基于物品的协同过滤给用户推荐和他之前喜欢的物品相似的物品,但是存在稀疏性、扩展性等缺点。
[0004]随着深度学习的发展,深度学习在推荐系统领域也得到了极大的应用,一系列基于深度学习的推荐算法也逐渐问世,例如Wide&Deep、DeepCrossing、DeepFM等模型,深度模型一定程度上减少人工构造特征的成本。而在2018年阿里提出的深度兴趣网络(DIN),用户对于不同的目标物品可以通过注意力机制结合历史的购买行为生成不同的表达,从而更加准确的表达用户的兴趣。而推荐系统除了应用于购物软件,还广泛的应用于新闻app的咨询推荐以及视频软件的视频推荐等。

技术实现思路

[0005]针对上述技术问题,本专利技术基于深度学习的推荐算法,解决正样本稀疏以及多个目标的视频推荐问题。
[0006]本专利技术采取的技术方案如下:
[0007]步骤1:准备数据集,每个样本包括用户的id,交互过的视频id、视频的作者id、交互日期、背景音乐的id、背景音乐的作者id和用户在这条视频上(是否点赞、是否点击头像、是否转发、是否收藏、是否发表评论、是否关注)这六个目标上的交互情况,通过对这六个目标的预测来对视频进行推荐,基于每个目标不同的重要度,最后加权得到待预测视频的分数,按照分数排序进行推荐;
[0008]步骤2:对于用户在(是否点赞、是否点击头像、是否转发、是否收藏、是否发表评论、是否关注)这六个目标上的交互情况作为六个不同但是存在相关性的子任务,因为例如如果用户对某个视频点赞了那么大概率可能也会发生转发或者关注等行为,因此使用多任务框架可以将不同任务之间的信息结合起来,每个任务之间相互补充,这里使用MMoE
(Multi

gate Mixture

of

Experts)多任务框架,具体的结构为底层部分共享,上层使用多个不同的专家网络,然后gate层对每个专家网络的输出进行加权,加权后的输出作为顶层tower层的输入,tower层完成具体的每个目标子任务,为了提升在多个目标任务上的表现,使用主流的attention机制替换掉原有的gate层的加权方式,其中attention的具体计算方式如下:
[0009]scores=softmax((expert
out
*W
key
)*query)
[0010]tower
input
=scores*(expert
out
*W
value
)
[0011]其中expert
out
表示专家层的输出,W
key
和W
value
都是需要学习的参数,分别用于生成attention中key和value向量,query是为每个任务生成的向量,也是需要学习的参数。
[0012]步骤3:对每个目标子任务进行加权,因为采用相同的权重多任务框架可能无法保证每个子任务都达到最优,并且由于不同子任务在不同时期学习速度不同,采用固定的权重往往也不能达到最优的效果,因此采用动态加权平均(Dynamic Weight Averaging)的方法,同时考虑不同子任务的loss情况以及训练速度,保证各个子任务能够以相近的速度进行学习,权重的具体计算方式如下:
[0013][0014][0015]其中,w
i
(t)表示任务i在t步时权重,L
n
(t

1)和r
n
(t

1)分别表示任务n在t

1步时的loss和训练速度,r越小,训练速度越快,N表示子任务的数量,T是一个常数。
[0016]步骤4:多任务框架中的底层网络结构设计,采用DNN+Attention的结构,首先对离散的id特征进行Embedding嵌入,然后1)DNN部分为三层的全连接层网络,主要进行特征之间的高阶交叉;2)Attention部分,首先使用固定大小L的滑动窗口根据交互日期为每个样本生成序列长度为L的历史交互视频id序列(具体做法是根据用户id进行分组,然后每组根据样本的交互日期排序,对于每个样本选择前L个交互过的视频id生成当前样本的历史交互序列,不足的则用特殊值代替,例如所有视频的id总和+1),然后将样本中要预测的视频id和历史交互视频id序列进行attention得到历史交互序列的权重,然后对历史交互的embedding加权得到当前用户的行为表达,然后将这个行为表达和1)中生成的高阶交叉特征进行拼接作为多任务框架中专家网络的输入;
[0017]步骤5:为底层共享网络设计权重衰减结构,步骤4中attention只考虑了待预测视频和历史序列视频之间的相似度的度量,丢失了历史序列中视频的位置以及交互时间的信息,因为用户的兴趣偏好是随着时间不断变化的,因此不同的时期交互的视频对于当前用户的影响权重也是有变化的,因此对步骤4中attention对于历史视频序列权重进行衰减:
[0018][0019]scores=softmax(dnn(q,k,q

k,q*k)*decay)
[0020]attention
output
=scores*feed_hist
emb
[0021]其中α是衰减系数,T是当前待预测视频的时间,t是历史序列中视频的时间,q是视频id的embedding,k是历史序列视频id的embedding,dnn是一个全连接层网络,feed_hist
emb
是历史序列视频的embedding。
[0022]步骤6:为了能够更好的训练网络,因此对网络中id的embedding层进行预热初始化。首先按照用户id对视频id进行分组,然后将每一组视作一个“文本”,通过计算“文本”中每个视频id的tfidf值,得到每个用本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于深度学习的多目标视频推荐方法,其特征在于,包括以下步骤:步骤1、准备包含用户在目标上的交互行为的数据集,所述数据集包含有id特征;步骤2、多任务框架的修改与设计,通过对MMOE多任务框架中的gate层进行修改,采用attention的机制对多任务框架中专家网络的输出进行加权输出,能够得到每个任务更加清晰的特征向量,最后传入到每个子任务的tower层,完成每个子任务相应的损失计算;步骤3、对步骤2得到的每个子任务的损失函数进行动态加权优化,使得各个子任务能够以相近的速度进行学习,保证最终每个子任务都能达到最优;步骤4、底层共享网络结构设计,先通过固定大小L的滑动窗口按照交互日期为每个样本生成序列长度为L的历史交互视频id序列,将样本中待预测视频的id和历史交互视频的id序列进行attention得到历史交互序列的权重;步骤5、设计权重衰减结构,对步骤4中attention得到的历史交互序列的权重进行衰减,用于步骤7的神经网络的训练;步骤6、网络中的embedding层的预热初始化,生成初始化参数;步骤7、根据初始化参数进行神经网络的训练,得到用于预测每个用户在视频上的每个交互行为情况的可能性,根据每个交互行为情况的重要度计算得分,然后根据得分进行排序,根据排序对视频进行推荐。2.根据权利要求1所述的一种基于深度学习的多目标视频推荐方法,其特征在于,步骤2具体包括以下步骤:采用MMoE的多任务框架,多任务框架的底层部分为底层共享网络,然后底层共享网络的输出作为多个专家网络的输入(多个专家网络是为了增加模型中特征的多样性,学到的不同特征对于不同任务的影响程度不同。),每个专家网络使用多层的全连接层,然后为每个子任务生成一个query查询向量,然后和专家网络的输出进行attention生成每个子任务的输入,最后将子任务的输入传入到每个子任务的tower层,完成每个子任务相应的损失计算,其中attention的计算放方式如下:scores=softmax((expert
out
*W
key
)*query)tower
input
=scores*(expert
out
*W
value
)其中expert
out
表示专家层的输出,W
key
和W
value
都是需要学习的参数,分别用于生成attention中key和value向量,query是为每个任务生成的向量,也是需要学习的参数。3.根据权利要求1所述的一种基于深度学习的多目标视频推荐方法,其特征在于,步骤3具体包括以下步骤:对步骤2中多任务框架中的顶层rower层计算的子任务loss进行加权优化,通过采用动态加权平均的方法,同时考虑不同子任务的loss情况以及训练速度,保证各个子任务能够以相近的速度进行学习,保证最终每个子任务都能达到最优,动态权重的计算方式如下:学习,保证最终每个子任务都能达到最优,动态权重的计算方式如下:
其中,w
i
(t)表示任务i在t步时权重,L
n
(t

1)和r
n
(t

1)分别表示任务n在t

1步时的loss和训练速度,r越小,训练速度越快,N表示子任务的数量,T是一个常数。4.根据权利要求1所述的一种基于深度学习的多目标视频推荐方法,其特征在于,步骤4具体包括:步骤2中的底层共享网络部分采用DNN+Attention的结构,首先是embedding层将步骤1中的数据集中的离散的id特征映射到低维的向量空间,得到embedding向量,然后3层全连接层网络的DNN部分对embedding向量生成高阶交叉特征;Attention部分,先通过固定大小L的滑动窗口按照交互日期为每个样本生成序列长度为L的历史交互视频id序列(具体做法是根据用户id进行分组,然后每组根据样本的交互日期排序,对于每个样本选择前L个交互过的视频id生成当前样本的历史交互序列,不足的则用特殊值代替,例如所有视频的id总和+1),然...

【专利技术属性】
技术研发人员:谢东霖罗崇军魏骁勇张栩禄杨震群
申请(专利权)人:深圳市广联智通科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1