0%

论文阅读-阿里系推荐系统(二)DIEN

论文链接:Deep Interest Evolution Network for Click-Through Rate Prediction

论文详情:2019年阿里系的推荐系统DIEN

论文收录在AAAI2019的会议上

出发点和贡献

  1. 和上篇文章一脉相承,这篇针对时序信息的兴趣的变化做了一定的优化
  2. 主要加了一个额外的loss来建模兴趣的evolution的经过,然后加了一个带auditional update gate的GRU模块,建模序列化的兴趣数据

主要模型

image

  1. base model:
    • 都一脉相承的,就四种数据,user profile、user behavior、ad、context
    • 所有设置都和DIN的base model一样
  2. 主要是对用户行为数据进行处理,操作包括两块:
    • 建模从行为数据中提取时序化的用户兴趣interest extractor layer
    • 建模从时序化的用户兴趣中分析兴趣变化趋势的interest evolution layer
  3. interest extractor layer:
    • 使用GRU,主要是GRU能抵御梯度消失问题,且运行比LSTM快
    • 由于单独进行最后一个隐藏层特征ht和目标点击行为的监督学习,丢失了前面的序列学习经验,因此增加了辅助的损失函数,即对每一个当前隐藏层特征h(t),都使用e(t+1)进行监督学习
    • 同时由于整个序列只有正样本,因此同时对负样本进行采样,同时进行监督预测学习
    • 监督损失的优点:更好训练、引入更多语义信息
  4. interest evolving layer:将interest extractor layer的隐藏层作为序列参数输入该层,设计带attention的GRU来计算兴趣特征,具体的,权重的计算是$\frac{\alpha_t(h_tWe_a)}{\Sigma_{j=1}^Texp(h_jWe_a)}$,其中h是feature extractor layer的隐藏层参数,$e_a$是广告的特征,W是可学习的权重
    • AIGRU:对输入进行权重相乘,效果不好,因为zero的输入一样会对权重造成影响,意义不大
    • AGRU:借鉴QA领域的思想,使用权重来更新隐藏层,类似动量的那种更新方法
    • AUGRU:对GRU的更新门乘以权重—$u_t = \alpha_t * u_t$,其中$u_t$是GRU原本的更新门参数,具体可以参考一下GRU的更新公式

实验

  1. 数据集:
    • amazon:用其中两个子集,books / electronics
    • alibabab私有online数据集
  2. 因为自己目前缺乏工业的经验,这种实验自己看的不仔细,这里先贴一张图,留到后来再慢慢回顾
    image

想法

  1. 卖点是解决了时序的依赖,挖掘了兴趣的时序数据
  2. 整体很不错的,GRU的改进也不错,但是辅助loss的ablation study只做了loss的变化,感觉看不出来最后准确率的影响,不过确实说明了加快了训练速度和收敛能力