Learning Disentangled Representations for Recommendation | NIPS 2019 论文解读

简介: 近年来随着深度学习的发展,推荐系统大量使用用户行为数据来构建用户/商品表征,并以此来构建召回、排序、重排等推荐系统中的标准模块。普通算法得到的用户商品表征本身,并不具备可解释性,而往往只能提供用户-商品之间的attention分作为商品粒度的用户兴趣。我们在这篇文章中,想仅通过用户行为,学习到本身就具备一定可解释性的解离化的用户商品表征,并试图利用这样的商品表征完成单语义可控的推荐任务。

点击下载论文

点击下载电子书

1. 背景

近年来随着深度学习的发展,推荐系统大量使用用户行为数据来构建用户/商品表征,并以此来构建召回、排序、重排等推荐系统中的标准模块。普通算法得到的用户商品表征本身,并不具备可解释性,而往往只能提供用户-商品之间的attention分作为商品粒度的用户兴趣。我们在这篇文章中,想仅通过用户行为,学习到本身就具备一定可解释性的解离化的用户商品表征,并试图利用这样的商品表征完成单语义可控的推荐任务。

2. 什么是解离化表征?

image.png
图表 1 截图取自[1]

学习解离化表征的原因和人类认知的Binding Problem (BP) [3]有关。如上图所示,当我们看到一副上面四张图片时,我们可以识别两种较为独立的语义元素,即颜色、形状和位置,这个过程对应Segregation Problem (BP1)。如果我们学到的表征向量中,不同的维度能够分别代表不同的语义,我们称这样的表征是Disentangled的,反之如果某一维对应多种语义,则称该表征是Entangled的;而我们通过这些识别独立的语义元素进而可以组合生成下面四张新的图片,这个过程对应Combination Problem (BP2)。这里假设我们有一个生成模型,能通过BP1学到图片的Disentangled的表征,我们通过调整表征中单个维度的值即可达到只改变某个语义而不影响其他语义的生成,例如把绿色的方块变成绿色的心形,颜色位置不变。除了和人认知过程比较切合,还可以提供可控制的生成之外,学习解离化的向量表征的鲁棒性更好,对测试数据的分布相比而言敏感度较低,同时也有较好的解释性。
用户-商品解离化表征:
在电商系统中,拥有大量的用户、商品标签以及庞大的用户行为数据,如果可以通过这些数据学习解离化的用户和商品表征,将对推荐可解释、认知推理、营销等工作产生非常积极的影响。
而我们此次的工作,是用户-商品解离化表征工作的一个开端,因此我们仅使用到用户行为数据,并不涉及任何商品属性以及用户特征。我们探索,从用户行为当中,能否得到一些认知相关的决策因素并以可解离的方式对商品和用户进行表示。
具体来说,我们关注这样的两个和认知相关的子任务:
a) 商品在人的认知空间中,他们是如何表征的,这样的表征是否具有可解释性,例如是否能找到的对应的某一维就能够代表一个独立的“语义”。类似的,人在这个空间下的表征,是否也具有这样的语义。联系解离化表征(Disentangled Representation Learning)在图像数据上的发展,我们探索其是否能从离散数据,特别是用户行为数据上学习到类似的结果。
b) 基于这样的表征,我们能否提出新型应用,并至少给出一种原型方案。

3. 我们的方法

image.png

针对电商平台上用户行为的特点,我们的模型采用了层次化的设计:它在推理一个用户的表征时将依次进行宏观解离化(macro disentanglement)和微观解离化(micro disentanglement)。

宏观解离化: 宏观解离化的启发一方面来自于用户在综合类电商场景下的兴趣确实较为分散,另一方面也来自于人类的传统认知难题Binding Problem。首先,用户兴趣通常是非常广泛的,一个用户的点击记录往往会涉及到多个独立的消费意图(比如点击不同大类下的商品)。而用户在执行不同意图时的偏好往往也是独立,比如喜欢深色的衣服并不意味着用户也喜欢深色的电器。哪怕是价格偏好也常存在不可迁移的情况,比如买高档口红、和买便宜好用的笔记本电脑这两者并不互斥。另外,宏观解离化也是微观解离化的必要前提(见下)。因此,我们的将用户的表征拆分成K个d维分量 ,用来表示用户执行K种不同的意图时的偏好(比如这K个分量可以对应K个商品大类)。同时,每个商品都有对应的one-hot向量 ,其中 表示商品i通常与第k种宏观的消费意图相关(或属于第k个商品大类)。另一方面,给定一个数据整体(一副图像、一组用户行为),binding problem在讲人是如何将整体分割成部分(图像中不同的物体,行为中不同的兴趣),并且从部分组合出新的数据。这方面的研究本身有难度,也比较有意思。

微观解离化: 我们希望能把用户在执行某个意图时的偏好进一步地分解到更细的粒度。比如,设第k个意图对应服饰,我们希望用户在这个意图下的偏好向量 的各个维度能够对应不同的商品属性,比如某一维和颜色相关,另一维和尺寸相关,等等。这里我们看到,宏观解离是微观解离的前提:不同大类的商品属性集合是很不同的,用户表征向量的某一个维度如果已经被用于刻画用户对手机电量的偏好了,那么这一维对服饰等商品就是没有任何意义的——在预测用户是否会点击某个服饰时、在通过用户行为学习某个服饰的表征时,我们都应当忽略这些只和手机相关的维度。

3.1. 从用户行为学习解离化表征

我们的模型架构总览如下:

image.png

我们的模型是一个深度生成模型,它假设数据的生成过程是这样的:

image.png

image.png

image.png

image.png

image.png

3.2. 用户可控制的交互式推荐

解离化表征在带来一定的可解释性的同时,也带来了一定的可控制性。这种可控制性有望给推荐系统引入一种全新的用户体验。比如说,既然表征的各个维度关联的是不同的商品属性,那么我们完全可以把用户的表征向量提供给用户,允许用户自行固定绝大部分维度(比如对应的是衣服的风格、价格、尺寸等)、然后单独调整某个维度的取值(比如颜色对应的维度),系统再根据这个反馈调整推荐结果。这将帮助用户更加精准地表达自己想要的、并检索得到自己想要的。
我们从某个商品或用户的表征出发,在固定住其它维度后,我们逐步地改变表征第j维的取值。然后我们利用论文中提供的一种类似beam search的小技巧,检索出了表征第j维大不一样、但其它维度都很一致的一批商品。

4.离线数据上的定量实验

4.1. 定量评测解离化程度

我们在小规模数据集上定量测量了解离化程度(及其与推荐性能之间的关系)。我们初步发现:(1)解离化程度较高与推荐性能好这两者之间有较强的相关性;(2)我们引入宏观解离化后,确实大大改善了微观解离化;(3)我们的方法无论是解离化程度还是推荐性能,都优于基线方法。

image.png

4.2. Top-N推荐任务上的性能

我们接着测量了我们的方法在几个离线数据集(包括一个淘宝的数据集AliShop-7C)上的Top-N推荐表现。可以看出来我们的方法优于基线方法,尤其是在小规模或稀疏的数据集上。因为top-n推荐不是我们做这个问题的初衷,所以能做出这样的效果我们认为已经是令人满意的了。

image.png

4.3 用户可控制的交互式推荐

我们在淘宝数据集上进行了单语义控制的case study。以下是我们在调控某个维度后检索得到的两批商品,可以看出这个被调控的维度和背包的颜色这一属性比较相关:

image.png

image.png

以下是我们在另一个维度上检索得到的两批商品,可以看出这个维度和背包的大小这一属性比较相关:
image.png

image.png

当然,并不是所有的维度都有人类可以理解的语义。而且,正如文献[2]所指出的,在无监督的情况下,训练出可解释的模型仍然是需要运气的——在加了beta-VAE的约束后,获得可解释模型的概率相比普通VAE大大提高,但仍然避免不了“反复训练多个模型,然后挑出最好的模型”这一陷阱。因此,我们和文献[2]一样,建议未来的研究者们多多关注(弱/半)监督方法,引入标签信息。

5. 结语

随着现代电商推荐系统的技术发展,学术界和工业界在预估点击率,预测下一个点击商品这些单任务上的提高越发困难,而这样的提高所带来的离线数据上的增量效益也难以准确的对应在线上的指标。我们认为围绕人的认知行为和过程,来探索新的推荐形态的可能性也是一个有前景的方向。未来我们将结合标签、图谱等数据进行更进一步的探索。

6. 参考文献

[1] Beta-VAE: Learning Basic Visual Concepts with a Constrained Variational Framework. Higgins et al., ICLR 2017.
[2] Challenging Common Assumptions in the Unsupervised Learning of Disentangled Representations. Locatello et al., ICML 2019.
[3] The Binding Problem. https://en.wikipedia.org/wiki/Binding_problem
[4] On using Very Large Target Vocabulary for Neural Machine Translation. Jean et al.., ACL 2015.
[5] Categorical Reparameterization with Gumbel-Softmax. Jang et al., ICLR 2017.
[6] Learning Disentangled Representations for Recommendation. Ma & Zhou et al., NeurIPS 2019.

相关文章
|
4天前
|
Python
[Knowledge Distillation]论文分析:Distilling the Knowledge in a Neural Network
[Knowledge Distillation]论文分析:Distilling the Knowledge in a Neural Network
11 1
|
9月前
|
机器学习/深度学习 算法
Keyphrase Extraction Using Deep Recurrent Neural Networks on Twitter论文解读
该论文针对Twitter网站的信息进行关键词提取,因为Twitter网站文章/对话长度受到限制,现有的方法通常效果会急剧下降。作者使用循环神经网络(recurrent neural network,RNN)来解决这一问题,相对于其他方法取得了更好的效果。
61 0
|
9月前
|
机器学习/深度学习 PyTorch 测试技术
SegNeXt: Rethinking Convolutional Attention Design for Semantic Segmentation 论文解读
我们提出了SegNeXt,一种用于语义分割的简单卷积网络架构。最近的基于transformer的模型由于在编码空间信息时self-attention的效率而主导了语义分割领域。在本文中,我们证明卷积注意力是比transformer中的self-attention更有效的编码上下文信息的方法。
220 0
|
机器学习/深度学习 自然语言处理 数据挖掘
Unsupervised Learning | 对比学习——MoCo
Unsupervised Learning | 对比学习——MoCo
581 0
Unsupervised Learning | 对比学习——MoCo
|
机器学习/深度学习 搜索推荐 算法
【推荐系统论文精读系列】(十)--Wide&Deep Learning for Recommender Systems
具有非线性特征转化能力的广义线性模型被广泛用于大规模的分类和回归问题,对于那些输入数据是极度稀疏的情况下。通过使用交叉积获得的记忆交互特征是有效的而且具有可解释性,然后这种的泛化能力需要更多的特征工程努力。在进行少量的特征工程的情况下,深度神经网络可以泛化更多隐式的特征组合,通过从Sparse特征中学得低维的Embedding向量。可是,深度神经网络有个问题就是由于网络过深,会导致过度泛化数据。
140 0
【推荐系统论文精读系列】(十)--Wide&Deep Learning for Recommender Systems
|
机器学习/深度学习 搜索推荐 算法
【推荐系统论文精读系列】(三)--Matrix Factorization Techniques For Recommender Systems
现在推荐系统一般是基于两种策略,一种是基于文本过滤的方式,另外一种是协同过滤,而基于文本过滤的方法是创造画像为用户或者物品,说白了就是用一些描述性的特征去描述它们,例如对于一部电影来说,可以为其创造画像电影类型、导演、演员、电影市场、票房等来进行描述,对于用户来说,可以用一些人口统计特征来进行描述。
420 1
|
机器学习/深度学习 算法 数据可视化
再介绍一篇最新的Contrastive Self-supervised Learning综述论文(三)
再介绍一篇最新的Contrastive Self-supervised Learning综述论文(三)
228 0
再介绍一篇最新的Contrastive Self-supervised Learning综述论文(三)
|
机器学习/深度学习 传感器 编解码
再介绍一篇最新的Contrastive Self-supervised Learning综述论文(一)
再介绍一篇最新的Contrastive Self-supervised Learning综述论文(一)
336 0
再介绍一篇最新的Contrastive Self-supervised Learning综述论文(一)
|
存储 数据挖掘 知识图谱
再介绍一篇最新的Contrastive Self-supervised Learning综述论文(二)
再介绍一篇最新的Contrastive Self-supervised Learning综述论文(二)
173 0
再介绍一篇最新的Contrastive Self-supervised Learning综述论文(二)
|
机器学习/深度学习 自然语言处理
Understanding and Improving Layer Normalization | NIPS 2019 论文解读
作者们认为,前向归一化并非LN起作用的唯一因素,均值和方差也是重要原因。它们改变了后向梯度的中心和范围。同时,作者还发现,LN的参数,包括bias和gain,并非总是能够提升模型表现,甚至它们可能会增加过拟合的风险。因此,为了解决这个问题,作者们提出了自适应的LN(简称AdaNorm)。AdaNorm将LN中的bias和gain替换成线性映射函数的输出。这个函数能够自适应地根据不同的输入调整权重。作者们在七个数据集上做了实验都表明AdaNorm能够取得更好的效果。同时可以看到,AdaNorm缓解了过拟合的问题,并且给训练带来更好的收敛效果。
18237 0
Understanding and Improving Layer Normalization | NIPS 2019 论文解读