Anonymous Recommender Systems
TL;DR
I conducted two experiments using anonymized interaction data and synthetic data. These experiments aimed to investigate how network data can be used to create viable recommender systems as well as provide users with smart adaptive user interfaces. Part of this work was done in collaboration with another fellow (back then) PhD student. The first experiment explored how anonymized Mattermost data can be used to create a recommender system for Mattermost channels. The second experiment focused on the creation of a recommender system for an adaptive user interface using synthetic interaction data. As part of this setting, I also trained a neural network for recommendations.
1. Oct 2023
Mattermost Recommender System
This experiment aimed to explore how using a completely anonymized CERN Mattermost dataset we can create recommender systems for Mattermost channels.
Using NetworkX
and Pandas
I constructed multiple implicit social networks
from the CERN Mattermost dataset based on various signals. These signals were used to create weighted connections between users
. They included values such as the number of messages sent to particular channels, the number of mentions of a user in a channel and the number of shared units between users. I analyzed the network connections and created multiple custom recommender system measures
. These measures indicated the relevance of channels to users
and also the closeness between users
. These measures were evaluated in multiple existing recommender system architectures by my colleague and were shown to be more efficient than simple measures
such as message counts. Overall, it was a fascinating project that allowed me to explore the intersection of social network analysis and recommender systems. The full code can be seen on the GitHub page.
A network of very popular Mattermost users connected through their common organisational units and common Mattermost channels. While most users are connected in a large component it can also be seen there is a small isolated component of users which might have special properties.
Adaptive UI Recommender System
Despite providing a lot of flexibility the Collaboration Spotting X (CSX) schema has been shown to be quite complex and confusing for users. Therefore, as part of this experiment, I aimed to explore how (synthetic) schema interaction data could be used to enhance users’ experience while using the schema.
As the first step I generated synthetic user interaction data
which was comprised of multiple randomly generated sequences of network schemas which represented how a user might modify the schemas. I also generated a more granular view of these transitions by generating steps that might be needed to move from one schema to another. While the schema sequences were used to demonstrate how users might move from one network representation to another in a bigger picture the smaller step-by-step sequences represented the individual schema modification actions that users might take.
I used these sequences to train multiple long short-term memory (LSTM)
recommender systems using PyTorch. These systems were used to consume a sequence of schema actions or schema changes and suggest to users the next possible action or schema. Once trained I integrated the recommender systems into the Collaboration Spotting X schema and evaluated it using usability measurements such as the system usability scale
. These indicated that such adaptive user interfaces
(i.e. interfaces changing with users’ actions over time) improve users’ experience and understanding of complex UIs such as the network schema of CSX. Furthermore, they also act as an onboarding mechanism that shows users what the system can do and how they might interact with it.
Papers
The experiments discussed as part of this post resulted in the two papers listed below.
Bobic, A., Le Goff, J-M., & Gütl, C. (2023). Towards a smart network schema builder using anonymous and implicit interaction data. In OSSYM 2023