《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.推荐系统总是尝试给用户推荐重复的东西,这会让用户觉得非常无聊。
2.本文贡献
1.本文提出一种深度强化学习框架(DQN,如图2)来学习推荐的动态性,综合考虑当前的reward和未来的rewrad。
2.本文加入用户活跃度作为用户点击行为的补充,提高推荐的准确度。
3.提出一种更有效的探索方法DBGD使推荐更加多样性。
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网络更好的时候保持当前的网络不变,否则就将网络向进行转变。
4.MAJOR UPDATE:经过一定的时间后(比如t3),代理G将会根据存储在memory中的用户反馈以及用户活跃度来更新整个网络。
4.特征表示
本文一共选取了四类特征,如下:
1.新闻特征:包含417维one hot特征,描述新闻中包含的各种属性,包括标题、提供者、排序、实体名称、种类、以及一小时点击量、六小时点击量等等。
2.用户特征:主要描述用户在一小时内、六小时内、24小时内、一周内、一年内点击各种属性新闻的次数。一共413*5维。
3.用户新闻特征:这25维特征描述的是用户与某一新闻之间的交互,当前新闻的实体(包含种类,题目种类等)历史上出现在用户阅读中的次数。
4.上下文特征:一共包含32维特征,描述新闻的请求时间(hour、weekday)、新闻的新鲜程度(请求时间距离发布时间的间隔)。
5.模型描述
我们用Q值来模拟reward,定义为:
其中γ代表的是未来奖励(reward)的折扣系数。
然后采用DDQN预测t时刻动作a的整体reward:
其中 ra,t+1是因为推荐有延时,当前t的推荐需要在在一个时间t+1才能得到反馈。而t+1时刻的候选集的a'的产生是基于t时刻推荐动作为a的假设。
基于第四章提到的特征表示,我们将用户特征和上下文特征定义为status特征(可以理解为动态的,基于请求时的状态),而新闻特征和用户新闻特征定义为action特征。于是我们将Q值拆为两部分来表示,如图3。
6.用户活跃度
作者认为好的推荐会在很大程度上激活用户行为,使用户的生命周期更长,本文采用生存分析作为用户活跃度的表示。用户两次打开app的间隔时间如图4所示:
我们可以看到用户的活跃时间符合指数分布,所以根据用户的生存分析,用户在t时刻之后返回app的概率为:
所用用户的生命周期定义为:
其中我们令t λ(t) = λ0,每次当用户在t时刻打开app的时候,我们都更新S(t)=S(t)+Sa,如图5所示:
但是用户活跃度不会超过1,所以即使用户在t4-t9的时候非常的活跃,用户活跃度也不会超过1。
7.探索网络
行业内使用 ϵ-greedy 和 UCB两种算法来进行探索,但是这两种算法都有缺点,第一种思想是随机搜素一些新的项目推荐给用户,但是这样就有可能会给用户推荐毫不相关的推荐,实验证明这种方法并不能是ctr提高。第二种是给用户推荐一些历史上推荐频率较低的item,这种方法会使推荐准确度drop。本文使用Dueling Bandit Gradient Descent算法进行探索,这种算法的思想在于给用户推荐距离已推荐列表较近的一些item。框架图如图6所示。
8.实验结果
实验数据集如图7所示。
离线效果相比较于各个模型如下,DDQN(深度强化学习框架)+U(用户活跃度)+DBGD(探索网络)是本文使用的模型。如图9所示。
线上效果如图10所示:
另外本文用ILS公式来评估模型的多样性:
其中S(bi,bj)代表两个推荐时间的相似性,很容易理解,当ILS越小的时候模型的推荐效果越好。多个模型多样性比较如图11所示。
9. 结论
1.本文提出一种基于DQN深度强化学习的学习框架来实现新闻的在线个性化推荐。
2.本文将用户的活跃度作为用户点击/不点击的反馈补充。
3.提出一种有效的探索策略提高系统推荐的多样性。
4.证明线上线下的效果都要好与其他的推荐系统。