【推荐系统】DUPN:Deep User Perception Network
论文地址: https://arxiv.org/pdf/1805.10727.pdf
Perceive Your Users in Depth: Learning Universal User Representations from Multiple E-commerce Tasks
DUPN (Deep User Perception Network) 通过多任务模型来学习一个通用的用户表征。
1. 系统概览
召回系统的架构如下图所示:
- 有一个商品集( a collection of items)
- 给定用户的query,系统会召回title包含这个query的商品,并且将排在前面的商品列表呈现给用户
2. 模型架构
2.1 输入和行为Embedding(Input & Behavior Embedding)
DUPN 的输入是按时间顺序排列的用户的行为序列
- 为第 个behavior,
-
表征商品的特征,包括:
- common features: shop ID, brand, category, item tags (对于长尾商品起主导作用)
- personalized features: item id (对于popular items起主导作用)
- 描述行为,包括行为的类型(behavior type,比如点击/收藏/加购物车/购买)、场景(scenario,比如搜索、推荐、广告等)、行为的时间(当前search和行为发生时间间隔、工作日还是周末,早晨还是晚上等)
- 处理方式就是将 multi-hot 的 通过 linear mapping transform到一个低维空间 ( 和 分别表示 item 和 property 的 embedding):
2.2 Property Gated LSTM & Attention Net
2.2.1 Property Gated LSTM
- 经过 embedding 层得到的用户行为序列 被喂进 LSTM, LSTM 根据当前的输入 和之前的隐向量 来更新当前的隐向量
- 考虑到 item embedding 和 behavior property embedding 的不同特点,文章提出了 Property Gated LSTM 对 和 区别处理:
- 反映了行为的重要性,因此在 LSTM 中会作为一个强烈的信号,也就是说, 会极大地影响 what to extract, what to remember and what to forward,会输入到 input gate, forget gate 以及 output gate中(上式的(2), (3), (5))
- 描述商品的特征,反映了用户的兴趣,是 的唯一输入
2.2.2 Attention Net
- Property Gated LSTM 的输入是另外一个序列 , 可以视作第 个item 的向量表征
-
会被输入到一个注意力网络中,注意力网络会根据当前的query给予各个 不同的权重,最后用加权和来表征序列
- 是整个序列 的向量表征
- 是 的权重
- 是两层全连接构成的注意力网络,输入包括 当前的query ,user profile embedding , behavior$ property 以及 当前的隐向量
2.3 Multi-task
- 上述得到 user embedding 后,我们定义了一些任务以便同时能够学习,对于每个任务而言,其他的任务都视作regularization,多任务学习的共享表达,可以使得 user representation 泛化性更强,更可靠
- 文中定义了五个任务:
- CTR 预估:user representation 和 current item resprentation 作为输入,预测 点击 的概率
- L2R: learning to Rank
- PPP: Price Preference Prediction
- FIFP: Fashion Icon Following Prediction
- SPP: Shop Preference Prediction