美文网首页工业推荐系统
推荐领域-深度强化学习在推荐系统的运用

推荐领域-深度强化学习在推荐系统的运用

作者: lmmaaalmm | 来源:发表于2019-04-18 14:23 被阅读0次

    《DRN: A Deep Reinforcement Learning Framework for News Recommendation》

    论文地址:http://www.personal.psu.edu/~gjz5038/paper/www2018_reinforceRec/www2018_reinforceRec.pdf

    1.问题提出

    1.在新闻推荐领域,新闻的时效性非常强,总是实时变化的,而且用户的喜好也会随着时间的推移而发生变化,目前的推荐系统只能得到当前的reward,无法解决这种动态性的问题。如图1.

    2.过去我们往往以用户点击/不点击作为用户的反馈,而事实上用户的停留时长,活跃程度等也代表了用户的满意程度。

    3.推荐系统总是尝试给用户推荐重复的东西,这会让用户觉得非常无聊。

    图1. 用户喜欢随时间的变化

    2.本文贡献

    1.本文提出一种深度强化学习框架(DQN,如图2)来学习推荐的动态性,综合考虑当前的reward和未来的rewrad。

    2.本文加入用户活跃度作为用户点击行为的补充,提高推荐的准确度。

    3.提出一种更有效的探索方法DBGD使推荐更加多样性。

    图2. DQN的系统框架图

    3.参数定义

    图3. 参数的定义

    3.推荐过程

    1.PUSH:在每个时间内(t1, t2, t3,...)当用户像系统发起一个新闻请求,推荐代理G将当前用户和新闻的候选集的特征表示作为输入,产生一个top-k的推荐列表给用户。

    2.FEEDBACK:用户u接受到系统推荐的新闻列表L后,将会对此作出反馈B,比如是否点击。

    3.MINOR UPDATE:在每一时刻,代理G根据先前的用户u,新闻列表L,以及用户反馈B来更新模型,具体操作是当当前的exploitation 网络Q比exploration网络\tilde{Q} 更好的时候保持当前的网络不变,否则就将网络向\tilde{Q} 进行转变。

    4.MAJOR UPDATE:经过一定的时间后(比如t3),代理G将会根据存储在memory中的用户反馈以及用户活跃度来更新整个网络。

    4.特征表示

    本文一共选取了四类特征,如下:

    1.新闻特征:包含417维one hot特征,描述新闻中包含的各种属性,包括标题、提供者、排序、实体名称、种类、以及一小时点击量、六小时点击量等等。

    2.用户特征:主要描述用户在一小时内、六小时内、24小时内、一周内、一年内点击各种属性新闻的次数。一共413*5维。

    3.用户新闻特征:这25维特征描述的是用户与某一新闻之间的交互,当前新闻的实体(包含种类,题目种类等)历史上出现在用户阅读中的次数。

    4.上下文特征:一共包含32维特征,描述新闻的请求时间(hour、weekday)、新闻的新鲜程度(请求时间距离发布时间的间隔)。

    5.模型描述

    我们用Q值来模拟reward,定义为:

    ys,a = Q(s, a) = rimmed iate +γ rf utur e

    其中γ代表的是未来奖励(reward)的折扣系数。

    然后采用DDQN预测t时刻动作a的整体reward:

    ys,a,t = ra,t+1 +γQ(sa,t+1, arg maxa′Q(sa,t+1, a′; Wt ); W′t)

    其中 ra,t+1是因为推荐有延时,当前t的推荐需要在在一个时间t+1才能得到反馈。而t+1时刻的候选集的a'的产生是基于t时刻推荐动作为a的假设。

    基于第四章提到的特征表示,我们将用户特征和上下文特征定义为status特征(可以理解为动态的,基于请求时的状态),而新闻特征和用户新闻特征定义为action特征。于是我们将Q值拆为两部分来表示,如图3。

    图3. Q network

    6.用户活跃度

    作者认为好的推荐会在很大程度上激活用户行为,使用户的生命周期更长,本文采用生存分析作为用户活跃度的表示。用户两次打开app的间隔时间如图4所示:

    图4. 用户两次打开app的时间间隔

    我们可以看到用户的活跃时间符合指数分布,所以根据用户的生存分析,用户在t时刻之后返回app的概率为:

    所用用户的生命周期定义为:

    其中我们令t λ(t) = λ0,每次当用户在t时刻打开app的时候,我们都更新S(t)=S(t)+Sa,如图5所示:

    图5. 用户活跃度

    但是用户活跃度不会超过1,所以即使用户在t4-t9的时候非常的活跃,用户活跃度也不会超过1。

    7.探索网络

    行业内使用 ϵ-greedy 和 UCB两种算法来进行探索,但是这两种算法都有缺点,第一种思想是随机搜素一些新的项目推荐给用户,但是这样就有可能会给用户推荐毫不相关的推荐,实验证明这种方法并不能是ctr提高。第二种是给用户推荐一些历史上推荐频率较低的item,这种方法会使推荐准确度drop。本文使用Dueling Bandit Gradient Descent算法进行探索,这种算法的思想在于给用户推荐距离已推荐列表较近的一些item。框架图如图6所示。

    图6. DDNQ+DBGD框架图

    8.实验结果

    实验数据集如图7所示。

    图7. 实验数据 图8. 用户请求次数分布以及新闻推荐分布

    离线效果相比较于各个模型如下,DDQN(深度强化学习框架)+U(用户活跃度)+DBGD(探索网络)是本文使用的模型。如图9所示。

    图9. 模型效果

    线上效果如图10所示:

    图10. 线上效果

    另外本文用ILS公式来评估模型的多样性:

    多样性公式

    其中S(bi,bj)代表两个推荐时间的相似性,很容易理解,当ILS越小的时候模型的推荐效果越好。多个模型多样性比较如图11所示。

    图11. 模型ILS值

    9. 结论

    1.本文提出一种基于DQN深度强化学习的学习框架来实现新闻的在线个性化推荐。

    2.本文将用户的活跃度作为用户点击/不点击的反馈补充。

    3.提出一种有效的探索策略提高系统推荐的多样性。

    4.证明线上线下的效果都要好与其他的推荐系统。

    相关文章

      网友评论

        本文标题:推荐领域-深度强化学习在推荐系统的运用

        本文链接:https://www.haomeiwen.com/subject/feknwqtx.html