《深度学习推荐系统实战》 学习笔记 3月Day 27

155 阅读3分钟

21|注意力机制、兴趣演化:推荐系统如何抓住用户的心?

image.png

注意力机制在深度兴趣网络 DIN 上的应用

下面的图 2 就是 DIN 的基础模型 Base Model。我们可以看到,Base Model 是一个典型的 Embedding MLP 的结构。它的输入特征有用户属性特征(User Proflie Features)、用户行为特征(User Behaviors)、候选广告特征(Candidate Ad)和场景特征(Context Features)。用户属性特征和场景特征我们之前也已经讲过很多次了,这里我们重点关注用户的行为特征和候选广告特征,也就是图 2 中彩色的部分。

image.png
阿里巴巴的推荐系统模型 DIN(Deep Interest Network)的原理和应用。DIN 模型借助注意力机制对用户历史行为数据进行个性化建模,提高推荐的准确度和效果。其中,DIN 模型的输入数据包括用户的历史行为序列和候选广告特征,通过将商品 ID 进行 Embedding 后,采用 SUM Pooling 层将用户历史行为序列中商品的 Embedding 叠加起来,得到一个长度固定的 Embedding。基于这个 Embedding,应用注意力机制计算历史商品对当前候选广告的重要性(即注意力权重),并把这些历史商品的 Embedding 和对应的注意力权重进行加权平均得到一个加权 Embedding。最后,将加权 Embedding 和其他特征进行连接,输入 MLP 进行预测。DIN 模型通过应用注意力机制对用户历史行为序列进行个性化建模,提高了推荐的精度和效果。

兴趣进化序列模型

image.png
最下面一层是行为序列层(Behavior Layer,浅绿色部分)。它的主要作用和一个普通的 Embedding 层是一样的,负责把原始的 ID 类行为序列转换成 Embedding 行为序列。再上一层是兴趣抽取层(Interest Extractor Layer,浅黄色部分)。它的主要作用是利用 GRU 组成的序列模型,来模拟用户兴趣迁移过程,抽取出每个商品节点对应的用户兴趣。最上面一层是兴趣进化层(Interest Evolving Layer,浅红色部分)。它的主要作用是利用 AUGRU(GRU with Attention Update Gate) 组成的序列模型,在兴趣抽取层基础上加入注意力机制,模拟与当前目标广告(Target Ad)相关的兴趣进化过程,兴趣进化层的最后一个状态的输出就是用户当前的兴趣向量 h'(T)。

小结

注意力机制和兴趣演化序列模型的加入,让推荐系统能够更好地抓住用户的心。对于注意力机制来说,它主要模拟了人类注意力的天性。具体到阿里的 DIN 模型上,它利用激活单元计算出用户对于不同历史商品的注意力权重,针对当前广告商品,作出更有针对性的预测。而序列模型更注重对序列类行为的模拟和预测。典型的例子是 DIEN 模型对用户购买兴趣进化过程的模拟。DIEN 模型可以应用的场景非常广泛,包括电商平台的下次购买,视频网站的下次观看,音乐 App 的下一首歌曲等等。总的来说,注意力机制的引入是对经典深度学习模型的一次大的改进,因为它改变了深度学习模型对待用户历史行为“一视同仁”的弊端。而序列模型则把用户行为串联起来,让用户的兴趣随时间进行演化,这也是之前的深度学习模型完全没有考虑到的结构。最后,我把今天的重要概念总结在了表格中,方便你及时查看和复习。

image.png此文章为3月Day25学习笔记,内容来源于极客时间《深度学习推荐系统实战》,强烈推荐该课程!