Abstract

Session-based recommendation (SBR) is a practical task that predicts the next item based on an anonymous behavior sequence. Most of current methods employ graph neural network to model neighboring item transition information from global and local contexts (i.e, other and current sessions). However, they treat neighbors from other sessions equally without considering its items, which may have different contributions with the target item on varied aspects. In other words, they have not explored finer-granularity transition information in the global context, leading to sub-optimal performance. This paper fills this gap by proposing a novel method called Transition Information Enhanced Disentangled Graph Neural Network (TIE-DGNN) to capture finer-granular transition information between items and try to interpret the transition reason by modeling various factors of items. Specifically, we first propose a position-aware global graph to model neighboring item transition in the global context. Then, we slice item embeddings into blocks, each of which represents a factor, and use global-level disentangling layers to separately learn factor embeddings. Meanwhile, we train local-level item embeddings by using attention mechanisms to capture transition information from the current session. Further, inter-session and intra-session embeddings are generated by two types of item embeddings, respectively. Finally, we use contrastive learning techniques to enhance the robustness of two session embeddings. To this end, our model considers two levels of transition information. Especially in global context, it not only consider finer-granularity transition information between items but also take user intents at factor-level into account to interpret the key reason for the transition. Extensive experiments on three benchmark datasets demonstrate its superiority over state-of-the-art methods.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call