Keywords

1 Introduction

The use of Recommender systems (RSs) is essential in online environments that concentrate on suggesting to users the items that most closely align with their preferences and requirements, given the overload of possible options in the product search space. Due to their functional principles, RSs have been extensively applied across a wide range of domains, including electronic commerce, e-learning, e-health, and e-tourism [14, 20].

RSs have traditionally been employed to suggest items to individual users. Nonetheless, in recent times, different types of items, known as social items, that are often consumed by groups have emerged within recommendation contexts. Examples of such items include movies and tourist routes [7]. Recommending this kind of item entails an additional effort compared to individual recommendations, as preferences must be managed at both the individual and group level. This necessity has sparked the growth of Group Recommender Systems (GRSs) [7] as a separate research branch in the field of RSs.

Primarily, GRSs concentrate on processing the data linked to the members of a group. Such processing can be achieved by utilizing recommendation aggregation [8], where individual recommendations are initially calculated for each group member, and then combined via a recommendation aggregation method. Alternatively, a preference aggregation approach can also be employed [8], wherein a pseudo-user is generated that globally represents the group’s preferences, and this pseudo-user profile is employed to compute the group recommendation. In both paradigms, aggregation is crucial in the recommendation process. Several authors such as De Pessemier et al. [8] have then incorporated different aggregation schemes such as Average (Avg), Least Misery (LM) or Most Pleasure (MP).

The current contribution concerns the automatic selection of the aggregation methods in group recommendation. The automatic selection of the most appropriate recommendation algorithm considering the nature of the data has been explored with some extent by the research community [6, 17]. However, unlike to these research works focused on algorithm selection, our current contribution is focused on the selection of a suitable aggregator for the recommendation method. In addition, in contrast to the previous approaches centered on individuals, it is focused on group recommendation. Finally, we explore the use of fuzzy classification trees for managing the uncertainty associated to this scenario [21].

In this way, the current contribution aims at providing the following novelties:

  • Developing a global methodology for performing an automatic selection of the aggregation function in group recommendation, based on the nature of the underlying group.

  • The development of a working scenario for the application of the global methodology in a content-based group recommendation scenario.

  • The execution of a experimental protocol for evaluating the impact of the proposed methodology in the working scenario.

The paper is structured as follows. Section 2 presents a background with an overview of the knowledge related to the proposal presentation, including group recommender systems, and automatic algorithm selection in recommender systems. Section 3 presents a general framework for automatic selection of aggregation functions in GRS. Section 4 illustrates a specific implementation of such framework, considering a fuzzy decision tree classifier and a content-based group recommendation approach. Section 5 evaluates such implementation, comparing it with associated baselines. Section 6 concludes the paper.

2 Preliminaries

The necessary background is provided here for the proposal discussion, focused on group recommendation and algorithm selection in RS.

2.1 Group Recommender Systems

RSs are AI-based systems used to provide users with the information that best fit their preferences and needs in overloaded search spaces [1]. The more spread taxonomy for identifying recommender systems, groups them into three main categories: 1) content-based recommender systems, 2) collaborative filtering-based recommender systems, and 3) hybrid recommender systems.

Herein, GRSs [8] have appeared as an emerging paradigm for scenarios in which recommended items are usually enjoyed by groups of users. Movies, touristic routes, or TV programs, are key examples of such kind of scenarios [14].

To perform item recommendations in such contexts by the content-based [16] or the collaborative filtering paradigm [8], the literature has identified two main recommendation techniques:

  • Rating aggregation: The rating aggregation approach is based on the creation of a pseudo-user profile that represents the group’s preferences [7, 8]. This profile then receives the recommendation, using individual recommendation algorithms, as if it were a typical individual profile. To construct pseudo-user profiles, several aggregation strategies are commonly used, as described in [8]. Three of the most frequently used strategies include: 1) Average, which involves building the pseudo-user profile based on the average rating given by each member of the group for the corresponding item; 2) Least Misery, which involves building the pseudo-user profile based on the lowest rating given by any member of the group for the corresponding item; and 3) Most Pleasure, which involves building the pseudo-user profile based on the highest rating given by any member of the group for the corresponding item. These aggregation strategies are used to combine the ratings provided by individual members of the group to form a single profile that represents the group’s preferences.

  • Recommendation aggregation: This approach aggregates individual recommendations of each member of the group, to obtain the group’s recommendation [8].

  • In this scenario, the final stage of aggregation is based on the individual predictions made for each member of the group. There are three commonly used aggregation schemes for this purpose, as described in [8]. The first scheme is the Average approach, which involves calculating the group’s prediction for a particular item as the average of the predicted ratings made by each individual user in the group for the same item. The second scheme is Least Misery, which determines the group’s rating as the minimum of the predicted ratings made by each individual user. The third scheme is Most Pleasure, which determines the group’s rating as the maximum of the predicted ratings made by each individual user. It is important to note that while these aggregation schemes are similar to the rating aggregation scheme, they have a different meaning in this context.

The current research work is focused on proposing a framework for facilitating the automatic selection of the aggregation measures, taking as base the content-based group recommender system approach (CB-GRS) [16]. In this way, while the previous works focused on content-based group recommendation [13, 16] incorporate the aggregation approaches based on a pre-defined viewpoint, the aim of our proposal is the automatic identification of the most appropriate aggregation approach tailored to the current group features.

2.2 Automatic Algorithm Selection in Recommender Systems

The automatic selection of the most suitable recommendation algorithm, based on the nature of the data, has been explored by the research community to some extent.

In an initial study, the problem of selecting the most appropriate Collaborative Filtering (CF) algorithm was explored by representing the data as a graph rather than a rating matrix [12]. The study derived metafeatures that are dependent on the graph to choose among nearest neighbor (NN) algorithms. Additionally, the selection process utilized a rules-based model that leveraged domain-specific knowledge.

Subsequent studies investigated the rating matrix by utilizing statistical and/or information-theoretical metafeatures to choose between nearest neighbor (NN) and matrix factorization (MF) algorithms [2]. In these studies, the task was approached as a regression problem, with the objective of improving the Root Mean Square Error (RMSE) performance.

A different technique, which involved a decision tree regression model, was later proposed to address the problem [9]. This method examined the connection between user ratings and neighborhood data, as well as the anticipated error in the recommendations provided by a nearest neighbor (NN) algorithm. Unlike previous approaches, this method concentrated on characterizing metafeatures for individual users instead of the entire dataset.

Furthermore, Cunha et al. [6] conducted an empirical study on algorithm selection for collaborative filtering, considering statistical features of the RS dataset and their impact on the performance of different CF approaches. More recently, Polatidis et al. [17] proposed a methodology for recommender system algorithm selection using a machine learning classifier, which indicated that tree-based approaches such as Decision Tree and Random Forest perform well and provide accurate and precise results.

Unlike previous works, our proposal focuses on selecting a specific aggregation operator of the recommendation method, rather than the algorithm as a whole. Moreover, it is focused on group recommendation, rather than individual recommendation as in previous studies.

3 A General Framework for Automatic Selection of the Aggregation Measure

A methodology for performing the automatic selection of the aggregation functions in group recommendation is presented here. Figure 1 depicts this methodology, which is composed of offline and online stages, and comprises the following steps:

Fig. 1.
figure 1

General methodology for automatic selection of the aggregation function in GRS.

  1. 1.

    Group’s features characterization: It is focused on exploring groups’ preferences values for extracting features that could be relevant for characterizing groups. Such features could be directly obtained from such values (e.g. rating averages, amount of ratings, the higher rating value), or depending of intermediate calculation such as the groups’ member correlation values.

  2. 2.

    Performance evaluation of the GRS aggregation functions: It explores the performance of a selected GRS method, for each specific group and considering different aggregation functions. Here, the goal is to identify for each mentioned group, the aggregation function that performs best. As mentioned in Sect. 2, some of the aggregation measures usually considered in GRS are Average, Least Misery, and Most pleasure [8]. Here it is important to point out that in the next future it will be explored further power means and OWA operators at this stage [5]; however it is necessary to characterize better their behavior in the GRS context, before their use a part of an automatic selection strategy.

  3. 3.

    Supervised classifier training: It trains a supervised classifier for linking the features identified at Step 1, with the best aggregation functions identified at Step 2. This approach assummes the hypothesis that the performance of each aggregation function depends on the value of some group’s features. Even though, these three stages have a low computational cost, they can be also executed in an offline phase, previously to the real-time recommendation generation process.

  4. 4.

    Identification of the most appropriate aggregation function: This step represents the online phase of the procedure. It is focused on the use of the classifier trained in the previous step, for identifying the most appropriate aggregation function that will be used for the active group, in the recommendation generation process.

The presented methodology can be implemented in different GRS and supervised classifiers scenarios, exploiting the benefits at each specific case. The following section will explore it, considering a content-based group recommendation approach and a fuzzy decision tree-based classifier.

4 Automatic Selection of the Aggregation Function in Content-Based Group Recommendation

This section illustrates the implementation of the methodology presented in the previous section, in a content-based group recommendation scenarios [16]

Group’s Features Characterization: This step characterizes groups by using features with a clear semantic meaning, to facilitate the understanding of the classification procedure that will be used in the following steps.

The following group features are used:

  • The minimum Pearson’s correlation coefficient value between any pair of group members (M) (Eq. 1).

    $$\begin{aligned} M(G)= min~~corr(u,v),~\forall u,v \in G \end{aligned}$$
    (1)
  • The amount of ratings linked to the group (A) (Eq. 2). \(|R_u|\) is the number of preferences of user u.

    $$\begin{aligned} A(G)= \sum _{u \in G}|R_u| \end{aligned}$$
    (2)
  • The amount of items that have been co-evaluated by all the current group users (C) (Eq. 3).

    $$\begin{aligned} C(G)= |I_c|,~where~I_c=\{i~:~\forall _{u \in G}r_{ui} \in R\} \end{aligned}$$
    (3)
  • The rating average of the group (AV), formalized through Eqs. 45.

    $$\begin{aligned} AV(G)= \frac{\sum _{r_{ui} \in R}r_{ui}}{|R|} \end{aligned}$$
    (4)
    $$\begin{aligned} R= \cup _{u \in G}R_u \end{aligned}$$
    (5)

The selection of these features is based on previous work that raises the relevance of such information in the GRS context [4, 8].

In the next step of the procedure, it will be assumed that the features are normalized into the interval [0, 1].

Performance Evaluation of the GRS Aggregation Functions: This step will use the hybrid CB-GRS approach recently presented by Pérez-Almaguer et al. [16], and that comprises the following components, not detailed here due to space reasons:

  1. 1.

    A content-based item and user profiling stage, facilitating the use of the approach in cold-start scenarios.

  2. 2.

    The use of a weighting scheme for calculating the user-item matching values.

  3. 3.

    The addition of a virtual user profile to the group for boosting clear tendencies across the member’s preferences.

  4. 4.

    The possibility of using the average or minimum aggregation, for aggregating the individual predicted preferences into the group preferences.

This method is executed over the groups considered across the whole process, using both the average and minimum aggregation approaches (Step 4). Taking into account a performance metric (in this case Precision [10]), the aggregation approach that performed best is stored for each group, using it as the class in the next supervised classifier building.

Supervised Classifier Training. Here we introduce the procedure to build the fuzzy decision tree, using the group features identified before.

Here the group G is represented by a membership value to the fuzzy set D, which is initially 1 for all the groups. In this context, G is identified through the corresponding values of the four attributes considered previously (\(A_i \in \{M, A, C, AV\}\)), as well as the value of the corresponding class (\(C_k \in \{Average, Minimum\}\)). \(D^{C_k}\) is a fuzzy subset of D, being \(\mu _{D^{C_k}}(G) = \mu _{D}(G)\) whether G class is \(C_k\), and \(\mu _{D^{C_k}}(G) = 0\) in other case. \(|D^{C_k}|\) is the cardinality of the fuzzy set \(D^{C_k}\). [19].

For sake of simplicity, the numerical attribute \(A_i\) is featured by using three triangular fuzzy sets low, medium, and high (Fig. 2). Table 1 illustrates the group profiling process according to this viewpoint.

Table 1. Group profiling using the fuzzy sets low, medium, and high.
Fig. 2.
figure 2

Membership functions

The approach for the fuzzy decision tree induction comprises then the subsequent steps:

  1. 1.

    Construct a root node, as a fuzzy set D having the groups with 1 as membership value.

  2. 2.

    If a candidate node t with a fuzzy set of data D verifies that \(\frac{|D^{C_k}|}{|D|}\ge \theta _r\), being \(C_k \in \{Average, Minimum\}\); or \(|D|\le \theta _n\); or that all the features have been already analyzed, then the current node is a leaf, and its weight for each \(C_k\) is \(|D^{C_k}|\). \(\theta _r\) and \(\theta _n\) are thresholds which values are empirically determined.

  3. 3.

    Otherwise, the new decision node is constructed as follows, by selecting the attribute that maximizes the information gain \(G(A_i,D)\). Therefore, for each attribute \(A_i \in \{M, A, C, AV\}\) not considered before, calculate the information gain \(G(A_i,D)\) (Eqs. 69) and select the attribute \(A_{max}\) that maximizes it: \(G(A_i,D)=I(D)-E(A_i,D)\) where,

    $$\begin{aligned} I(D)=-\sum _{k=1}^n(p_k * log_2p_k) \end{aligned}$$
    (6)
    $$\begin{aligned} E(A_i,D)=\sum _{j=1}^m(p_{ij} * I(D_{A_{i},j})) \end{aligned}$$
    (7)
    $$\begin{aligned} p_k=\frac{|D^{C_k}|}{|D|} \end{aligned}$$
    (8)
    $$\begin{aligned} p_{ij}=\frac{|D_{A_{i},j}|}{\sum _{l=1}^m|D_{A_{i},l}|} \end{aligned}$$
    (9)

    Here I(D) at Eq. (6) is the total entropy of certain dataset D, while \(E(A_i,D)\) at Eq. (7) is the fuzzy classification entropy of the attribute \(A_i\). \(p_k\) is the relative frequency of the class \(C_k\) in the dataset, and \(p_{ij}\) is the relative frequency of all objects within the branch associated to the corresponding linguistic label j and attribute \(A_i\), into each class. \(D_{A_{i},j}\) is the fuzzy subset which membership is represented by the linguistic term \(j \in \{low, medium, high\}\) linked to the group attribute \(A_i \in \{M, A, C, AV\}\).

  4. 4.

    Once \(A_{max}\) is chosen, the current D is divided into three fuzzy subsets \(D_{A_{max,low}}\), \(D_{A_{max,medium}}\), and \(D_{A_{max,high}}\), each subset for each linguistic label that characterizes such attribute. The membership value of each group g to \(D_{A_{max},j}\) (\(j \in \{low,medium,high\}\)), is then the product of the membership value of g to D, and the value \(\mu _{A_{max,j}}(g)\) associated to \(A_{max}\) in D.

  5. 5.

    Generate new nodes \(t_1, t_2, t_3\) for fuzzy subsets \(D_{A_{max,low}}\),\(D_{A_{max,medium}}\), and \(D_{A_{max,high}}\), labelling with each corresponding linguistic term \(j \in \{low,medium,high\}\), to each edge that connect them with D.

  6. 6.

    For each fuzzy subset \(D_{A_{max,low}},D_{A_{max,medium}},D_{A_{max,high}}\), repeat recursively this algorithm from step 2.

This induced fuzzy decision tree is used in the online phase of the proposal, for identifying the best aggregation function associated to a specific group.

Identification of the Most Appropriate Aggregation Function: The induced fuzzy decision tree is used for building classification rules, associated to each branch, with the format:

$$\begin{aligned} Rule~R=~~If~A_{i1}~is~j1~ and~...~and~If~A_{in}~is~jn~ then~Class= C_k ~with~ weight~ W_k \end{aligned}$$
(10)

Here \(A_{i1} \in \{M, A, C, AV\}\), \(j1 \in \{low, medium, high\}\), and \(C_k \in \{Average, Minimum\}\). The rule weight \(W_k\) is the sum of the membership of all objects of class k, at the associated leaf.

For a group g, the classification is performed as:

  1. 1.

    Matching degree: The following equation obtains the activation degree of the left part of the rule, for the current group:

    $$\begin{aligned} \mu _{R}(g)=T(\mu _{A_{i1,j1}}(g), \mu _{A_{i2,j2}}(g),..., \mu _{A_{in,jn}}(g)) \end{aligned}$$
    (11)

    where \(\mu _{A_{i,j}}(g)\) is the membership degree of the value of the \(A_i \in \{M, A, C, AV\}\) attribute for group g with the fuzzy set associated to the same attribute \(A_i\) and the linguistic term \(j\in \{low, medium, high\}\). T is a T-norm [15].

  2. 2.

    Association degree: The association degree of g with each rule R, considering the class k is calculated as:

    $$\begin{aligned} b_{Rk}(g)=T(\mu _{R}(g),W_{k}) \end{aligned}$$
    (12)

    T is a T-norm [15].

  3. 3.

    Confidence degree: At last, the confidence degree of each class, for a specific group g, is reached through the aggregation of the association degrees linked to all the analyzed rules. This final calculation is used through the use of a T-conorm \(T^*\) [15]:.

    $$\begin{aligned} conf_k(g)=T^*(b_{1k}(g),b_{2k}(g),b_{3k}(g),...,b_{Rk}(g)) \end{aligned}$$
    (13)

    The classification process assigns then to the group g, the class k that obtains the higher association degree.

5 Experiments

This section is focused on the evaluation of the approach discussed previously.

5.1 Experimental Protocol

This evaluation will use the following databases, previously employed in related works [16]:

  • Movielens 100K, with 943 users, 1682 movies, and 100000 preferences in the interval [1, 5] [11].

  • HetRec, containing heterogeneous information, with 2213 users, 10197 movies, and 855K+ ratings. The ratings are also in the range [1, 5] [3].

This evaluation process will be guided by the Precision metric (Eq. 14), frequently used in the RS evaluation [13]. For sake of space other evaluation criteria were not included here, but will be considered in the future research.

$$\begin{aligned} Precision=\frac{|recommended~items \cap preferred~items|}{|recommended~items|} \end{aligned}$$
(14)

Here it is used a preference threshold \(r_{ui} \ge 4\), that is a usual criteria for this parameter [18].

We use the subsequent stages for performing the evaluation [4, 10]:

  1. 1.

    Train and test sets are created following the random procedure commonly used in previous works [4, 10].

  2. 2.

    We build user groups of different sizes, and the groups creation process is executed considering users with common preferences.

  3. 3.

    The method presented across the current paper is developed, for choosing the suitable aggregation scheme for each group.

  4. 4.

    For each group, we apply the CB-GRS approach proposed by Pérez-Almaguer et al. [16], using the selected aggregation function in each case.

  5. 5.

    The top n recommendation performance is measured with the Precision, by matching the recommendation output with the preferences in the test set. At last, the average precision is calculated for all the groups.

5.2 Results

Using the previous protocol, the proposal is evaluated with \(\theta _r=0.9\) and \(\theta _n=0.01\) as parameters. This means that the fuzzy decision tree induction is stopped if the relative frequency of a certain class exceeds 0.9, or if the current node cardinality is less than 0.01. The used group size were 4 (Movielens) and 3 (HetRec), and several sizes of the recommendation sets were considered (see Table 2).

This evaluation considers as baseline the hybrid proposal presented at [16], considering both Average and the Minimum approaches (avg and min, in Table 2), which are the state-of-art existing approaches that will be compared with the current proposal. In the context of the experimental steps presented in the previous section, Step 3 is omitted for the baseline evaluation. This step introduces the execution of the procedure discussed across this paper (dyn, in Table 2).

The results demonstrate that for both datasets, the proposal effectively identifies the optimal aggregation scheme to be used in a hybrid CB-GRS. This is evidenced by its significant outperformance of two baselines that consistently employ average and minimum aggregation.

Table 2. Performance of the proposal, in relation to previous works. Precision metric.

6 Conclusions

The automatic selection of the aggregation functions in GRS presented in this contribution has been initially implemented over the content-based group recommendation context, but it can also be applied to other group recommender systems. It aims to provide an automatic building of the recommendation system, which can lead to an improvement in recommendation accuracy. It is worthy to mention that most of the proposed approach can be executed offline, facilitating its deployment in recommender context with a high volume of information.

Our future work includes the exploration of new features as well as feature extraction algorithms to enrich the group profiling process. In addition, other classifiers such as deep learning-based, will be studied for the selection of the suitable aggregation approach.