基于RNN的个性化电影推荐尝试

基于RNN的个性化电影推荐尝试

随着深度学习在工业界的应用越来越多,优酷土豆尝试在视频推荐领域中利用深度学习方法,提高视频推荐的准确性,为用户提供优质的视频推荐服务。本次为大家分享在个性化电影推荐上的尝试,利用RNN的序列模型进行用户电影推荐。

视频推荐问题

目前常用的个性化推荐包括:基于关联规则的推荐算法、基于内容的推荐算法和基于协同过滤的推荐算法。在视频网站中的个性化推荐中,基于协同过滤的个性化推荐算法为主要的推荐算,它能够过滤难以进行机器自动基于内容分析的信息,能够基于一些复杂的难以表达的概念(信息质量、品位)进行过滤。但是协同过滤算法无法处理用户的观看序列信息,不能根据用户的观看序列进行视频的推荐,只是考虑了用户单个观看行为信息。那么如何挖掘用户的观看序列信息,对用户进行更为准确的个性化视频推荐?
目前的序列模型中,比较火和使用的为RNN模型,其在语音识别机器翻译文本处理等领域中取到了较好的结果。因此,我们采用了RNN模型进行用户观看序列的建模和预测。

RNN模型

本文RNN介绍借鉴了循环神经网络(RNN, Recurrent Neural Networks)介绍,下面部分图和解释来自博客。

RNN

RNN模型主要是用来处理序列问题,在传统的神经网络模型中,是从输入层到隐含层再到输出层,层与层之间是全连接的,每层之间的节点是无连接的。但是这种普通的神经网络对于很多问题却无能无力。例如,你要预测句子的下一个单词是什么,一般需要用到前面的单词,因为一个句子中前后单词并不是独立的。RNN之所以称为循环神经网路,即一个序列当前的输出与前面的输出也有关。具体的表现形式为网络会对前面的信息进行记忆并应用于当前输出的计算中,即隐藏层之间的节点不再无连接而是有连接的,并且隐藏层的输入不仅包括输入层的输出还包括上一时刻隐藏层的输出。

流程图

RNNs包含输入单元(Input units),输入集标记为{x0,x1,…,xt,xt+1,…},而输出单元(Output units)的输出集则被标记为{y0,y1,…,yt,yt+1.,..}。RNN还包含隐藏单元(Hidden units),我们将其输出集标记为{s0,s1,…,st,st+1,…},这些隐藏单元完成了最为主要的工作。你会发现,在图中:有一条单向流动的信息流是从输入单元到达隐藏单元的,与此同时另一条单向流动的信息流从隐藏单元到达输出单元。在某些情况下,RNNs会打破后者的限制,引导信息从输出单元返回隐藏单元,这些被称为“Back Projecti

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值