今天带来的两篇论文是关于Sequential/Session推荐的,2015年的神作《GRU4REC:Session-based Recommendations with Recurrent Neural Networks》开启了基于用户历史行为的序列化建模的热潮,将用户历史行为通过RNN进行建模。但是这种自左向右的序列推荐算法限制了用户历史信息的发挥,RNN有顺序的,而这种顺序性的假设,对于实际生活中的用户行为并不适用。
举个例子,我们今天可能会买笔记本电脑、耳机、机械键盘,但这三样东西的购买顺序完全可以颠倒,并不影响系统后续的推荐。所以,用户的购买行为其实与顺序并非强相关。所以如何对这种情况进行建模,是本次所介绍论文探讨的内容。
《BERT4Rec: Sequential Recommendation with Bidirectional Encoder Representations from Transformer》2019年CIKM,阿里巴巴
本文借鉴了BERT中mask的思想(不了解bert的读者可以看该篇文章),通过以下的方式来预测被mask掉的项。
但是我们在训练过程和最终的序列推荐任务之间是不匹配的。因为该方法的目的是预测当前的masked,而序列推荐的目的是预测下一项。为了解决这个问题,我们将masked附加到用户行为序列的末尾,然后根据该masked的最终隐藏表示来预测下