推荐系统遇上深度学习(九十七)-[阿里]使用用户未点击行为增强序列推荐效果

在推荐场景中,用户行为序列往往是很重要的一类特征,但过去介绍的模型中,大都只使用了用户有交互行为的序列,如点击序列,下单序列,这相当于是一种正反馈。而负反馈序列(包括显示负反馈如不喜欢和隐式负反馈序列如曝光未点击)往往涉及较少。之前在本系列的第八十八篇中,我们曾介绍过微信使用负反馈序列来增强推荐的效果。而本文,我们来看一下阿里是如何利用用户未点击序列来增强序列推荐效果的。

1、背景

当前的序列推荐模型,大都只使用用户点击或者购买的行为序列对用户兴趣进行建模,对于更为丰富的曝光数据往往关注较少,例如给用户曝光但未点击的数据。这些数据也包含一些有用的信息,比如用户未点击的行为中包含用户不偏好的信息。

那么应当如何使用这些未点击的数据呢?当前部分对于未点击行为序列的研究,大都停留在特征层面,忽略了未点击行为和点击行为之间的交互关系。而论文首先提出了三点发现:

1)用户未点击的item,确实在一定程度上反映了用户对于某类item的不偏好信息。如下图中的左图,用户很有可能是女性用户,点击的都是女性外套,而男性外套显然是其不感兴趣的。
2)由于这些物品大都是通过个性化推荐算法推荐出来的物品,因此相较于随机推荐的物品,用户的偏好程度往往更高,即用户的偏好程度由高到低为:点击的物品>曝光未点击物品>随机推荐未点击的商品。用户未点击也有可能是出于其他因素,如价格等。如下图中的有图,所有物品都是相似的,部分未点击的物品同样能够满足用户需求,但出于价格、样式上的考虑,用户并没有点击。
3)点击序列中也是存在一定噪声的,比如用户的误点击行为,模型需要通过曝光未点击的物品来消除这部分噪声。

基于上述的观察,本文提出了SRU2B(Sequential Recommendation with Unclicked User Behaviors)模型,我们在下一节中进行介绍。

2、SRU2B模型介绍

2.1 问题陈述

这里,我们使用U={u1,u2,...,um}代表用户的集合,使用I={i1,i2,...,in}代表物品的集合。使用S+u和S-u代表用户点击和曝光未点击的序列:

基于上述定义,序列推荐的问题可以定义为,给定用户u在t时刻的行为序列(包括点击和曝光未点击序列),来预测用户在t时刻后交互的物品集合。因此用于模型训练的label定义为用户在t时刻后点击的k个物品,计作Cu,t={c1,c2,...,ck}。

2.2 用户行为序列建模

接下来看下行为序列建模部分,也是本文的重点。

对于用户点击序列,使用DSR(Deep Sequential Recommenders)进行建模,如RNN,CNN,self-attention,每个物品在表示为对应的embedding之后,通过DSR得到固定长度的向量,计作hu,t:

其中eu代表用户画像特征向量。对于曝光未点击的序列,每个物品在表示为对应的embedding之后,首先进行avg-pooling,再经过多层全连接网络的到这部分的向量表示nu,t:

而对于label中的序列,进行与曝光未点击的序列同样的处理,得到向量cu,t

如上文所说,用户点击行为数据中可能存在误点击带来的噪声,可以通过未点击序列在一定程度上消除这部分的影响,因此论文添加了fusion network,来得到最终的用户表示,具体计算如下:

2.3 损失设计

模型的损失主要包括两部分:

第一部分是与label计算的交叉熵损失,计算如下:

其中比较关键的是 sampled-softmax,这部分可以参考论文:《On using very large target vocabulary for neural machine translation》。

第二部分是triplet loss,这部分主要是通过度量学习的方法,来建模用户三个序列的关系。这三个序列即上文提到的t时刻的用户点击序列,曝光未点击序列以及t时刻后的label序列,其向量表示分别为hu,tnu,tcu,t

首先,我们希望点击序列向量与label序列向量之间的距离,要比点击序列向量与未点击序列向量之间的距离更近,且至少要差m,否则会产生损失:

仅靠上面的损失,有时不一定能训练到想要的结果,如上图中的
n'u,t,其与cu,t距离反而比hu,tcu,t的距离更近,这显然是不符合预期的。因此,需要进一步限制hu,tcu,tnu,tcu,t的距离至少要差m'。因此triplet loss的损失如下:

其中[]+代表合页损失,当[]内结果大于0时,才会产生损失。

因此整体的损失如下:

最后,再来整体回顾一下SRU2B模型的结果:

3、模型实验

最后简单看下模型实验部分,不用多说,肯定是比众多的基线模型好:

其他的实验分析就不过多介绍了,感兴趣的同学可以阅读下原文。

最后简单说两句,最近对于负反馈序列的研究越来越多,模型中引入负反馈序列,对于提升推荐的用户体验(特别是广告场景下,用户体验是非常重要的一块)是很有帮助的,不妨试一试。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,723评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,003评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,512评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,825评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,874评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,841评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,812评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,582评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,033评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,309评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,450评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,158评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,789评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,409评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,609评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,440评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,357评论 2 352