2021AAAI论文:Non-invasive Self-att

2021-04-26  本文已影响0人  python小白22

作者及单位

本文动机

近年来,BERT框架被用于处理顺序数据,其核心是它的attention机制。但原始BERT框架的一个限制是它只考虑一个输入源,限制了边信息的利用。例如在推荐系统中,除过物品ID,任何为推荐提供额外有用信息的内容都会影响推荐结果,比如项目相关的边信息,物品本身的价格、生产日期等,还有用户相关的边信息,评分等。现有的方法通常会以Invasive的方式利用边信息,但效果有限。本文将研究在BERT框架下如何有效利用边信息做出推荐。

解决问题

本文提出了在BERT框架下的Non-invasive Self-attention(NOVA)机制来有效利用边信息,它利用边信息改变attention metrics,产生更好的attention distribution,而不是用Invasive的方式直接改变item embedding从而导致信息过载问题。两种方式的对比如下图所示:

模型介绍

最初的BERT框架如图所示: 用Invasive方式利用边信息时,将边信息单独编码为向量,利用融合函数F将边信息的embedding向量和物品ID的embedding向量融合,也就是上图中的embedding层输入: 之后输入BERT框架使用self-attention机制逐层更新表示: 本文的Non-invasive融合方式如下图所示: NOVA的核心思想就是修改self-attention机制,控制Q,K,V。由上图可以看出,相比于Invasive,Non-invasive方式是将item embedding计算V,然后使用融合的embedding计算K和Q: 文章读到这的时候我在思考作者为什么这样修改。

虽然我们希望将side information加入到sequence model中,但是最终得到的依然是基于item的兴趣序列的表示,所以当你用fusion rep作为输入的时候就会导致模型side information会对于item sequence的序列建模带来噪声,那么side information的收益很可能因为对于item seqence带来噪声而被消减,甚至还不如不引入side information。
对于Noninvasive的方式,则是根据每个item的fusion rep对于其他item的fusion rep的相似性/相关性将pure item representation进行加权处理,这样就没有污染item rep。同时又考虑了side information带来的收益,这是值得琢磨的思路和想法。

NOVA-BERT的整体网络结构如图所示: 每个NOVA层都有两个输入,项目ID和边信息 文章中还研究了不同类型的融合函数及其性能,分别有: Add Concat Gating

结论

本文最后在实验部分,验证了NOVA模型稳定的优于其他方法;考察项目和行为两种边信息的贡献,证明了不同类型的边信息所带来的影响并不是独立的;还进行了NOVA层Attention Distribution的可视化,结果表明NOVA-BERT可以学到有目标的Attention Distribution,从而提高Attention Distribution的精度。

参考

https://blog.csdn.net/qq_40742298/article/details/115011641
https://zhuanlan.zhihu.com/p/355924803

上一篇下一篇

猜你喜欢

热点阅读