本文主要记录了这篇文章的主要方法和贡献,以及个人的一些思考和想法,欢迎讨论!
最开始是在语雀写的,导出后可能格式有点问题,欢迎移步语雀:

https://www.yuque.com/docs/share/fee366de-68ba-4254-9a57-cccfe3edd356?#

 

Alibaba, KDD 2019

https://arxiv.org/abs/1905.09248

 

Contribution

  1. 解耦了用户兴趣捕捉模块,UIC
    1. traffic request Vs. trigger event
  2. 设计了memory-based模型MIMN来从长序列行为数据中建模用户兴趣
    1. Sequence up to 1000 (120 days
    2. based on NTM ( Alex Graves, Greg Wayne, and Ivo Danihelka. 2014. Neural turing machines. arXiv preprint arXiv:1410.5401 (2014).
    3. implemented with UIC module

 

User Interest Center Architecture

 

Practice on Long Sequential User Behavior Modeling for Click-Through Rate Prediction

A是目前的推荐服务架构,B是本文设计了UIC的服务架构。

他们的区别在于B将UIC解耦出来,用户兴趣特征的计算不再由广告服务请求触发,而是由用户的实时动作触发,因此在广告服务请求发生时,这部分特征已经计算好了。

Long Sequential Modeling

Practice on Long Sequential User Behavior Modeling for Click-Through Rate Prediction

粉色部分为文章对sequence的建模,灰色部分为利用sequence建模后的特征以及其他常规特征进行最后的预测

对sequence的建模分为两部分,一部分为对长期序列运用神经图灵机机制进行建模,另一部分是在这一基础上再进行high-order 信息的建模,用于刻画用户兴趣的变化。

Nerual Turing Machine

文章主要基于原始的神经图灵机,使用神经图灵机来对用户行为序列进行建模。

Alex Graves, Greg Wayne, and Ivo Danihelka. 2014. Neural turing machines. arXiv preprint arXiv:1410.5401 (2014).

 

神经图灵机的直观理解:

一个可微的memory机制,由controller、read head、write head、memory组成。

有两个操作,读操作和写操作

  • 读的时候,由controller给出“地址”,将对应地址的数据读出来

Practice on Long Sequential User Behavior Modeling for Click-Through Rate Prediction

Practice on Long Sequential User Behavior Modeling for Click-Through Rate Prediction

Practice on Long Sequential User Behavior Modeling for Click-Through Rate Prediction

Practice on Long Sequential User Behavior Modeling for Click-Through Rate Prediction是 controller给出的“地址”,是一个向量;Practice on Long Sequential User Behavior Modeling for Click-Through Rate Prediction 是t时刻的i-th memory slot;

Practice on Long Sequential User Behavior Modeling for Click-Through Rate Prediction 是一个权重,是i-th memory slot在读写时的权重,和Practice on Long Sequential User Behavior Modeling for Click-Through Rate Prediction越像的memory slot的权重越高

最后输出的是所有memory slot的加权和(因为做了soft max所以近似取了某一个最像的memory slot

  • 写的时候,由controller给出“地址”,将对应地址的数据进行更新

Practice on Long Sequential User Behavior Modeling for Click-Through Rate Prediction

controller 是一个rnn

 

神经图灵机是如何完成对序列的建模的:

  • memory里存的是什么?从理论分析,memory里很有可能存放了序列中有代表性的几个特征,相当于对sequence先做了聚类,然后将聚类的中心或mean存在了memory里。(实验部分没有分析,需要对神经图灵机进一步了解
  • Vs. pooling?基于上一点的分析,pooling只能存放一个特征,可能是用户长期动作的一个倾向;神经图灵机可以存放多个特征,可能是用户长期动作中的多个倾向,比如好几个品类的商品。
  • Vs. attention? 神经图灵机对应于attention的k,v部分,attention是在所有item中算weight,而神经图灵机为item做了聚类、筛选

 

 

Memory Utilization Regularization

文章对神经图灵机做的一个改进,使得memory的利用更为balance

 

Memory Induction Unit

MIU也会维护一个memory S,  和 memory M对应。

在t-th时刻,MIU会对memory M进行一次read,将memory slot按照w排序,选M中前K个memory slot更新自己的memory S中对应的部分。

更新方法如下:

 Practice on Long Sequential User Behavior Modeling for Click-Through Rate Prediction

使用GRU,基于上一时刻的S(i)作为hidden state,使用这一时刻排序后的i-th M,和这一时刻的用户动作特征,来更新S(i)。

 

理解:

MIU中的memory存放的是用户兴趣的变化。

 

Experiments

  • 在公开数据集(Taobao, Amazon)上相较DIEN AUC上涨1%左右
  • Ablation Study
    • Slot Number of Memory:长序列需要slot数更多,短序列需要slot数更少。但文章这里只是对tabao和amazon上的number实验结果不同做了分析(tabao sequence长,Amazon短)。这样的分析没有说服力,应该在tabao数据集上调整sequence长度,分析长度和memory slot number的数量的关系,才能给出一个令人信服的结果。
    • Memory utilization:用了memory utiliza- tion regularization trick后,memory slot的利用更均衡,auc更好。
    • Memory Induction Unit:用了MIU,AUC有0.005%的提升。Practice on Long Sequential User Behavior Modeling for Click-Through Rate Prediction

Practice on Long Sequential User Behavior Modeling for Click-Through Rate Prediction

用了MUR神经图灵机建模用户行为序列的方法才work;

直接长序建模和high-order信息建模带来的增益一半一半

  • Industrial Dataset
    • 性能效率:

Practice on Long Sequential User Behavior Modeling for Click-Through Rate Prediction

    • A/B Testing: CTR 7.5%, RPM 6%
    • 部署的实践经验
    • todo

 

Comments

采用memory-based的方法进行用户长序行为建模的做法十分新颖,也符合一些对用户长序行为建模的启发式经验。将user interest解耦的做法可以被广泛应用。这种memory-based&解耦user interest的架构看起来是长序用户行为数据建模的一种解决方案。

但是神经图灵机的技术不太流行,对于它的复现效果还是存疑。

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-09-29
  • 2021-12-15
  • 2021-04-14
  • 2021-09-15
  • 2021-09-13
  • 2021-05-16
猜你喜欢
  • 2022-12-23
  • 2021-05-10
  • 2021-09-08
  • 2021-06-24
  • 2022-12-23
  • 2021-07-03
  • 2021-08-28
相关资源
相似解决方案