NRSA: Neural Recommendation with Summary-Aware Attention

以下内容纯属个人见解,欢迎大家交流。

发布于2019 KSEM(ccf-c类会议)

1.motivation

1.1问题

(1) 评论在推荐系统中被广泛使用,以处理评分矩阵的稀疏性问题;
(2) 有意义的单词和评论较少,仅从评论中学习用户和条目的表示将是一个挑战;
(3) 除了评论之外,用户还撰写了丰富的现成的摘要以及评论,但是现有的推荐方法忽略了这些有用的信息;
(4) 评论的摘要是用较短的句子描述评论,可以看作是评论的高级抽象。

1.2解决办法

(1) 设计了一个摘要感知的评论编码器,以从原始单词中学习评论的表示方式;另一个摘要感知用户/项目编码器,以从评论中学习用户或项目的表示方式;
(2) 我们提出了一个层次化的注意力模型,其摘要表示作为单词和评论级别下的注意力向量,分别为用户/项目选择重要的单词和评论。

2.相关介绍

(1) 推荐系统的目标是根据评分矩阵和用户以前的行为(例如对用户编写的项目的评论或摘要),预测用户是否喜欢该项目。
(2) 基于矩阵分解(MF)的协作过滤(CF)技术已成为推荐系统中最常用的方法,但是受数据稀疏性的影响;
(3) 为缓解此问题,许多推荐系统结合文字信息(例如,电子商务平台中的评论)与评级一起使用,以共同模拟用户和商品,因为文字包含丰富的信息来模拟用户的偏好和商品特征;
(4) 尽管推荐系统中基于文本的模型得到了显着改进,但是现有作品仅使用评论来学习用户或项目的表示,而这些用户或项目可能会遭受无用的单词或评论的困扰。

3.模型介绍

image.png

3.1 Summary Encoder

我们将通过摘要编码器学习有关用户对项目的摘要的语义特征表示形式,并且这些表示形式将被视为以下注意模块词嵌入中使用的评论的高级信息。给定第m个摘要,它可以表示为具有s个单词的序列,记为S=\{W_1',...,W_s'\},利用词嵌入模型,将W_i'映射到更低维到空间R^{d_w}
在嵌入层之后,我们利用卷积神经网络(CNN)从名为Summary-CNN的摘要中提取特征表示。 Summary-CNN由K个不同的卷积滤波器组成,表示为F = \{f_1,f_2,···,f_K\},每个滤波器都是参数矩阵f_i∈R^{l×d_w},通过在每个窗口上应用卷积运算符来产生特征词向量S的集合。第j个滤波器的卷积结果计算如下:
c_j = ReLU(S1:s * F_j + b_j)
其中∗是卷积运算,b_j是偏差,ReLU是非线性激活函数。 然后,我们可以获得由K个滤波器产生的特征C = \{c_1,c_2,...,c_K}。 由第j个滤波器在嵌入文本上方的滑动窗口t上生成的cj的维数为c_j∈R^{s-t +1}。 考虑到摘要通常很短,我们仅使用max-pooling来获得第j个滤波器的输出,该滤波器的定义为:
o_j = max(c^1_j,c^2_j,···,c^{(s-t + 1)}_j)
然后,最终输出是所有K个滤波器的输出的级联,表示为:
Os = [o_1,o_2,···,o_K]
因此,我们获得了摘要的特征向量O_s,这可以帮助我们模型侧重于更重要的评论和有用的评论词。

3.2 Summary-Aware Review Encoder

我们还采用了上面介绍的卷积运算来获得评论中每个单词的语义特征,并表示为C = \{c_1,c_2,···,c_T\},其中c_i∈C是第i个词的语义特征。 卷积运算后的评论中的单词,T是评论序列的长度。 代替摘要编码器中的最大合并,我们建议使用摘要感知的注意力模型,因为评论始终包含有关用户偏好和项目功能的大量信息,并且最大合并操作会丢失太多信息。
我们获得评论中所有单词的表示形式,如上所述,并非评论中的所有单词都同样重要。 因此,在摘要的指导下,我们引入了摘要意识的注意,以注意那些信息量更大的单词,这是该评论的一个高级抽象。
评论文本中第i个单词的注意力权重α_i定义如下:
αi= exp(gi)/\sum_{j=1}^Texp(gj),α_i∈(0,1)
q_w=MLP(o_s)
g_i=q_w⊙q_w
其中⊙是内部乘积运算,c_i是评论文本中的第i个词表示形式。 请注意,我们在摘要表示Os上采用多感知器层(MLP)作为注意力查询向量q_w
由于我们已经在上面的第m条评论文本中获得了所有单词的权重。 然后,我们利用加权求和来获得第m个审阅文本的表示形式:
O_{rm}=\sum_{j=1}^Tα_jc_j

3.3 Summary-Aware User/Item Encoder

由于我们获得了用户的所有评论的表示形式(即Or = \{O_{r1},O_{r2},··,O_{rN}\})和用户的所有摘要的表示形式(即Os = {O_{s1},O_{s2},···,O_{sN}}) ,我们将根据他们的评论和摘要来学习用户或项目的表示形式。 由于用户的不同评论对用户而言具有不同的重要性,因此我们建议对摘要级别的摘要意识,以在摘要的指导下计算评论的信息性。 我们的方法中每次评论的信息量a_{um}通过以下方式计算:
a ^∗_{um} = h^T(tanh(W_{Ir}O_{rm} + W_{Is}q_r + b_1)+ b_2)
q_r=MLP(O_{sm})
其中h,W_{Ir}W_I为参数,b_1b_2为偏差,我们在摘要表示中使用另一个MLP作为表示为q_r的注意力向量。 请注意,全部来自摘要表示形式O_{sm}q_rq_w可以分别视为单词和复审级别的两个摘要感知指标。
最后,我们通过softmax函数对所有评论的信息性分数进行归一化,以获取每个评论的权重,因此我们可以获得第m条评论的贡献,从而对用户偏好进行建模:
a_{um}=exp(a ^∗_{um})/\sum_{m=1}^Nexp(a ^∗_{um}),a_{um} ∈ ( 0 , 1 )
由于我们已经获得了用户对以上各项的所有评论权重。 然后,我们利用加权求和运算获得每个评论上用户u的摘要感知特征表示p_u
p_u=\sum_{m=1}^Na_{um}O_{rm}
同样,我们可以获得项i的特征表示q_i

3.4 Rating Prediction

在本节中,我们利用LFM来计算用户对项目评分的评分。 首先,我们将LFM模型中的用户偏好和项目特征扩展为两个组成部分,然后引入神经形式LFM来预测收视率。 我们介绍了用户ID嵌入x_u和项目ID嵌入y_i,以了解用户和项目的潜在因素,例如用户偏好和项目质量。 通过引入从评论中学到的潜在表示,用户u和项i之间的交互被建模为:
h0 =(p_u + x_u)⊙(q_i + y_i)
其中p_u是用户偏好,q_i是项目特征,⊙表示矢量的元素乘积。评分R_{u,i}由下式计算:
R_{u,i} = W_1^T h_0 + b_u + b_i + μ
其中W_1^T表示LFM模型的参数,b_u表示用户偏差,b_i表示项目偏差,μ表示全局偏差。 LFM建立了用户和项目的潜在功能,可以进一步捕获用户和项目的潜在属性。
由于任务是一个回归问题,因此我们利用平方损失函数来训练我们的模型:

image.png

4 实验结果对比

image.png

其中,评价指标为RMSE根均方误差Root Mean Square Error

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

推荐阅读更多精彩内容

  • 自立自强 每个人都可能拥有自己的梦想,然而有的人美梦成真了,有的人梦想破灭了,有的人还在...
    庄子梦蝶居士阅读 174评论 0 0
  • 今天又来了两名新学员,都是我们穆棱的。这期学员大多数都是穆棱的。 我们的老师是一位和我们差不多的帅哥,他对我们的耐...
  • 周末,与老姐一起赏牡丹,心情愉悦!大朵大朵圣洁的牡丹,精彩绽放,惹来了无数路人欣赏。 我们总是不断寻找更大更美的一...
    丽卿_8a07阅读 269评论 0 2
  • 首先梳理一下模块化的发展情况~ 无模块化-->CommonJS规范-->AMD规范-->CMD规范-->ES6模块...
    bayi_lzp阅读 8,472评论 0 4
  • 一般人们都喜欢吃时令水果。最近小爱发现,当下的季节是樱桃的市场,大量的樱桃出现在市场上,很多肾友又开始烦恼到底该不...
    爱之依阅读 663评论 0 0