21|注意力机制、兴趣演化:推荐系统如何抓住用户的心?
该思维导图由 AI 生成,仅供参考
什么是“注意力机制”?
- 深入了解
- 翻译
- 解释
- 总结
推荐系统的关键技术:注意力机制和兴趣演化序列模型。注意力机制模拟用户的选择性注意习惯,提高推荐效果。深度兴趣网络DIN模型成功应用于电商广告推荐,通过引入注意力机制模拟用户的注意力分布。DIEN模型进一步改进DIN模型,模拟用户兴趣的迁移过程。DIEN模型利用序列模型预测用户的兴趣向量,应用于电商、视频网站和音乐App等场景。注意力机制和序列模型的引入改进了深度学习模型对待用户历史行为的弊端,让推荐系统更好地抓住用户的兴趣。 DIN模型使用复杂的激活单元计算注意力权重,是否有更简单、更实用的方式生成注意力权重?是否能利用特征交叉的知识来计算历史行为物品和广告物品的相关性?这些问题值得深入思考。
《深度学习推荐系统实战》,新⼈⾸单¥68
全部留言(30)
- 最新
- 精选
- 浣熊当家图3中DIN的激活单元里我们用到了“外积”, 之前的课程里感觉我们多数是用“内积”。请问老师,如何选择使用“内积”和“外积”, 有什么规则吗?
作者回复: 本质上都是做特征交叉,计算相似性的方式,一般来说,外积因为输出是一个向量,所以表达能力更强一些。
2020-11-2937 - 李元根据NLP的发展,我觉得GRU这种提取序列信息的方式肯定会被Transformer取代。不知道有没有人已经发paper了。
作者回复: 已经不少了,最近提的比较多的是bert for rec
2021-01-09322 - Sebastian老师想问下,DIN模型在工业界的排序阶段使用的多吗?因为我在想在业界每个用户都有比较长的用户行为序列的场景可能还是少数,很多公司的场景可能是,用户进入app端后点击了2-3次后可能就没有后续行为了,那么这种场景下,DIN应该就不适用了吧?
作者回复: DIN比DIEN的使用场景要求低很多,我知道很多团队在用,或者说很多团队在用DIN的思路来构建自己的模型。 就我自己的实践经验,attention机制是非常有价值的,推荐在自己的场景下尝试。
2020-11-2817 - Leo Zhao思考题:广告和历史行为 相关性 其实就是 广告物品与历史物品的相关性,可以用一个dot层 或者通过物品embedding 算出similarity 当作feature 直接输入。
作者回复: 非常好
2020-11-28314 - fsc20161,老师,看了最近几章介绍的推荐模型,发现神经网络的隐层数量都比较少(相对cv),这个是防止模型太复杂,导致线上推断太慢吗 2,请教下老师,业界常用的MLP隐层数量和神经元数量,有没有一个大致的取值范围?
作者回复: 这个问题其实挺好的。相比CV动辄上百的隐层数量,推荐模型真的是比较“浅”的了。 隐层数量大致在1到5之间吧,确实在推荐问题上再提高隐层数量效果上意义不大,inference延迟还大,得不偿失。 至于为什么相比cv,推荐模型不需要那么多隐层,你能分享下你的思考吗?
2020-12-09611 - 轩老师您好,我有一个问题请教您: transformer中有position encoding,而在推荐的领域中,点击的序列中同样有时间间隔的因素,例如取用户最近若干次点击,可能每次间隔时间不等。这个间隔时间应该是有信息可以揭示用户兴趣的变迁速率等信息的吧?但是如何将其引入到推荐序列中呢? 是类似于transformer中 position learned encoding这样么?
作者回复: 这是一个很好的idea。但说实话我还没有见到非常成功的案例说能够很好的利用event interval然后取得很大的收益。也许是这个信号本身不够强,带来的收益有限。 如果今后发现相关paper,可以分享到这里。
2021-01-0610 - 小红亮老师,请教一下DIEN中用到了GRU,它是串行处理的,那么推理的过程会比较慢,这就不太适合延长要求很高的场景,比如计算广告,那对于电商场景来说它DIEN的推理延迟能满足业务要求吗,或者有什么优化手段可以解决延迟问题吗
作者回复: 这是个非常好的问题,一般上线前要做模型的割裂,把复杂部分生成的Embedding做预生成,线上直接使用。
2021-04-109 - 浣熊当家想请教老师一个题外问题, 您作为面试官的话,对于MLE的候选人会更注重考察哪方面的能力(比如算法coding, 系统架构设计,机器学习的领域知识)?,然后对于机器学习的各种模型会期待候选人有多深的了解(比如说了解DIEN的各个层级的结构就够了,还是要知道GRU是具体如何实现的)。 随着老师课程,我对深度学习燃起了更大的热情,觉得想真正提高的话,最好的方法还是能从事做深度学习的工作,想知道从面试角度来讲,怎么学习才是性价比最高的选择, (比如注重项目经验,刷题,还是算法的理论公式推到)。
作者回复: 我在知乎有一篇专栏文章专门讲面试,可以参考 https://zhuanlan.zhihu.com/p/76827460 我在课程最后也会有一些总结。
2020-11-298 - Geek_3c29c3老师,我对DIN里面的注意力机制有一点疑问:就是DIN的目标广告的id和usr behavior的id是同一领域的id,那能不能推广到比如我们的广告id和商城内的物品不是同属于一个id系列的。就是广告的内容和商城的内容(包含用户行为)是不一样的,这时候还可以用DIN的注意力机制了吗?如果不能,还有什么方法呢?
作者回复: 这是个好问题,我觉得是可以的,因为广告内容和商城内容从经验上来说也会有一定的相关性。 就拿deepfm的思路来说,其实可以做任意两个特征之间的交叉。对于注意力机制,当然也可以学任意两个特征间的注意力。但到底作用有多大,能不能提高效果,就看自己的实践了。
2020-12-167 - Geek1254老师您好。 1.我看到在Sparrow里面的代码。没有严格意义上使用外积吧?使用的是element-wise sub & multipy。然后用这两个向量去拼接,组成的activation_all。请问这是老师实践之后得到的方法吗? 2. 我看到参考代码中使用的是PRelu(),请问这种激活函数适合哪些场景呢?
作者回复: 1. 确实没有使用外积。我的实践经验来看外积的作用不是很大,而且大幅增加参数量,所以我个人不是很喜欢外积操作。 2. PRelu几乎是深度学习默认的激活函数,速度比较快,梯度消散问题比较小。如果有特殊需要可以测试其他激活函数,看实践。
2021-03-0326