Inter-Session Temporal Modeling in Session-Based Recommendation using Hierarchical Recurrent Neural Networks
Abstract
Recommendation has been a highly relevant and lucrative field of expertise for quite some time. Since the end of the last millennium, session-based recommendation has emerged as an increasingly applicable branch of recommendation. One of the main contributions to this is the ever increasing level of competition in e-commerce and web-services. The increased competition both leads to smaller user-bases and more sparse user histories, because user information is being spread between competing service providers. Furthermore, streaming services and e-commerce services tend to operate on very large and sparse amounts of recommendable entities. Thus, modern recommendation environments are often very sparse, both with regards to consumables and consumers. Over the last few years, the use of Recurrent Neural Networks (RNNs) has shown great promise in the field of session-based recommendation. Different additions have been proposed for extending such models in order to handle specific problems or data properties. Two of such extensions, are modeling of inter-session relations and modeling temporal aspects of the recommendation. The former can allow the session-based recommendation to utilize extended session history and inter-session information when providing recommendations for the current session. The latter has been used to both provide state-of-the-art return-time prediction and also for improving the recommendation itself. In this thesis we propose a model that combines these two extensions through joint modeling of inter-session relations and inter-session temporal relations. In an effort to improve the quality of the inter-session modeling, some effort was also put into improving the personalization of the model. The model is shown to improve the recommendation on two datasets over strong recommendation baselines. At the same time, it is shown to provide state-of-the-art predictions for when users will initialize their next sessions, and the performance is compared with strong time prediction baselines. We also introduce a novel tuning parameter for tuning the model's focus on short-/long-term time-modeling, which can be used for adjusting to different datasets and/or use-cases. Through experimenting with synthetic time distributions, that are loosely based on the users they generate data for, we show that the model is robust with regards to different time-models and is able to capture user behaviour. Finally, the model provides an initial recommendation for the first action in the next session, before said session is initialized, to accompany the time-prediction and providing the user an initial suggestion. This recommendation is shown to be comparable, or better, than the first (regular) recommendation after being provided the initial selection of the new session.