## 3 Scenario and Problem Statement  
In this section, we illustrate the application scenario we are considering, in order to define the problem we address in the rest of the paper. Suppose a user of a micro-blog platform wants to look for other users to follow, in order to receive their posts. How to find them? Currently, both micro-blog apps and the web sites provide a search functionality to search for users on the basis of a keyword-based search. So, the activity a user has to perform to find out interesting users to follow, that is depicted in the right-hand side of Figure 1 (the block titled _Current Scenario_), can be summarized as follows. * User \(\overline{u}\) performs a keyword-based search, hoping that the specified keywords find out actually interesting users. The search provides the list of users denoted as \(R=\langle u_{1},\ldots,u_{n}\rangle\). * For each user \(u_{i}\in R\) (or for many of them), user \(\overline{u}\) opens \(u_{i}\)'s profile and looks at it and at messages posted by \(u_{i}\); if \(\overline{u}\) finds that \(u_{i}\) is interesting, \(\overline{u}\) asks to follow \(u_{i}\). Such a process is quite tedious and boring, so probably user \(\overline{u}\) could miss interesting users to follow. In contrast, we envision a novel functionality for micro-blog apps and web sites: suggesting users based on similar interests. Let us clarify our vision:  
* User \(\overline{u}\) starts posting some messages, possibly re-posting messages received from followed users. * At a given time, the application suggests \(\overline{u}\) with a list \(S=\langle s_{1},\dots,\ s_{m}\rangle\) of users potentially having the same interests. * User \(\overline{u}\) looks at the profile of some user \(s_{j}\in S\) and, if \(\overline{u}\) finds that \(s_{j}\) is interesting, decides to start following \(s_{j}\). Clearly, it is necessary to devise a technique able to learn about user interests. This must necessarily be a multi-label classification technique, that based on the analysis of features extracted from posted messages, builds a model of user interests on the basis of these features. So, the application scenario we envision, that is illustrated in the left-hand side of Figure 1 (the block titled _Proposed Scenario_), can be described as follows. * Mobile app and web site of a micro-blog should be extended, in order to provide two new functionalities: _Associating Topics to Posted Messages_ and _Suggesting Users with Similar Interests_. * The functionality named _Associating Topics to Posted Messages_ should allow users to associate topics to each single post, at the moment they are posting it. A topic will play the role of classification label for the post. This functionality should be not mandatory, and could be appreciated by influencers, i.e., users that are able to (or would like to) influence other users. * A classification model for topics should be built by analyzing posts that are labeled with topics, on the basis of features extracted from within posted messages. * The functionality named _Suggesting Users with Similar Interests_ applies the classification model to unlabeled messages posted by a user, in order to automatically associate topics to unlabeled  
Figure 1: Application scenario. messages. Once the most frequent topics in unlabeled messages posted by user \(\overline{u}\) are collected, the application suggests the list \(S=\langle s_{1},\ldots,s_{m}\rangle\) of users possibly posting messages concerning the same topics of interest for \(\overline{u}\). * User \(\overline{u}\) can inspect the profiles of users in \(S\) and choose the ones to follow, if any. In order to avoid misunderstandings, we clearly state that we do not consider two different types of users, i.e., influencers and regular users: any user is equal to other users. However, if a users wishes to be recognized as an influencer, she/he can better succeed if the micro-blog platform provides a tool that helps achieve this aim.