Groups Identification and Individual Recommendations in Group Recommendation Algorithms ∗ † Ludovico Boratto Salvatore Carta Michele Satta Dipartimento di Matematica e Dipartimento di Matematica e Dipartimento di Matematica e Informatica, Università di Informatica, Università di Informatica, Università di Cagliari Cagliari Cagliari Via Ospedale 72 Via Ospedale 72 Via Ospedale 72 09124 Cagliari, Italy 09124 Cagliari, Italy 09124 Cagliari, Italy ludovico.boratto@unica.it salvatore@unica.it michele_satta@hotmail.com ABSTRACT Group Recommendation, Collaborative Filtering, Cluster- Recommender systems usually deal with preferences previ- ing ously expressed by users, in order to predict new ratings and recommend items. To support recommendation in so- cial activities, group recommender systems were developed. 1. INTRODUCTION Group recommender systems usually consider predefined/a With the development of Web 2.0, the use of the web has be- priori known groups and just a few existing approaches are come increasingly widespread and users have had the chance able to automatically identify groups. to express opinions about shared content updated daily. This generates an incredible amount of data that can’t be han- When groups are not already formed, another key aspect dled directly by the users. So finding relevant information of group recommendation is related to groups identification. over the Internet nowadays is becoming more and more dif- In this paper a novel algorithm able to identify groups of ficult [18]. users and produce recommendations for each group is pre- sented. The algorithm uses individual recommendations and Recommender systems have been developed to deal with in- a classic clustering algorithm to identify and model groups. formation overload and produce personalized content for the Experimental results show how this approach substantially users by exploiting context-awareness in a domain. This is improves the quality of group recommendations with respect done by computing a set of previously expressed preferences, to the state-of-the-art. in order to recommend items that are likely of interest to a user. Collaborative Filtering (CF) [11, 15, 19] is by far the most successful recommendation technique. The main idea Categories and Subject Descriptors of CF systems is to use the opinions of a community, in order H.3.3 [Information Search and Retrieval]: Information to provide item recommendations. filtering; H.4 [Information Systems Applications]: Mis- cellaneous; M.4 [Knowledge Modeling]: Miscellaneous There are context and domains where classic recommenda- tion cannot be used, because the recommendation process General Terms involves more than a person and preferences have to be com- Algorithms, Experimentation, Performance bined in order to produce a single recommendation that sat- isfies everyone (e.g., people traveling together or going to a Keywords restaurant/museum together). Therefore, in order to sup- port recommendations in social activities, algorithms able ∗This work is partially funded by Regione Sardegna un- to provide group recommendations were developed. Group der project CGM (Coarse Grain Recommendation) through recommendations are provided according to the way a group Pacchetto Integrato di Agevolazione (PIA) 2008 “Industria is modeled. Group modeling is the combination of the pref- Artigianato e Servizi”. †Copyright is held by the author/owner(s). Workshop on erences expressed by single users into a common group pref- erence. the Practical Use of Recommender Systems, Algorithms and Technologies (PRSAT 2010), held in conjunction with Rec- Sys 2010. September 30, 2010, Barcelona, Spain. A special type of group recommendation is needed when technological constraints limit the bandwidth available for the recommendation. This is for example the case of Satel- lite Systems, in which the number of channels is limited and a personalized TV schedule cannot be produced. Another useful application scenario in which limitations are imposed in the recommendation process is the printing of recommendation flyers that contain suggested items. Even if a company has all the data to produce a flyer with individual recommendations for each customer, the process of printing a different flyer for everyone would be technically too hard mental aspects of this kind of group recommendation: homo- to achieve and costs would be too high. A possible solution geneity of group size and homogeneity of recommendations would be to print n different flyers that can be affordable in quality. terms of costs and that can satisfy users by recommending interesting items to the recipients of the same flyer. Considering the size of groups, it is evident that it should be sufficiently homogeneous. In simple words, if the rec- In both the scenarios described the first result that the al- ommendation process involves 70000 users and 10 available gorithm has to compute is a proper identification of groups, channels, it would not be acceptable to have a group with in order to produce a recommendation that maximizes users 61000 users and 9 groups with 1000 users. In fact it would be satisfaction. This preliminary phase of the group recom- a waste of bandwidth to produce recommendations for small mendation process is not performed by the great part of groups and, at the same time, it would be hard for a system algorithms in literature, because they consider only how to to produce recommendations that gather the preferences of model already existing groups. a large group. In this paper a novel approach for group recommendation Considering the quality of the predicted results, it should not with automatic identification of groups is proposed. vary too much between the groups. In other terms, the sys- tem should try to keep a sufficient quality of the predictions To enhance the readability of the paper and the properties for every group. Providing inadequate recommendations to of the proposed approach, a baseline version of the algo- any group should always be avoided. rithm is preliminarily presented (BaseGRA, Baseline Group Recommendation Algorithm). BaseGRA uses a classic clus- The rest of the paper is organized in the following way: sec- tering algorithm to identify groups, by exploiting past pref- tion 2 presents related work, considering both group recom- erences expressed by each user of the system. To model the mender systems able to automatically identify groups and group, BaseGRA combines the preferences of each user with group recommender systems that build individual recom- the ratings predicted using a CF algorithm for the unrated mendations; section 3 contains a detailed description of the items. baseline group recommendation algorithm, BaseGRA; sec- tion 4 will do the same for the improved algorithm Improved- Since the number of items evaluated by a user in a system is GRA; section 5 describes the experiments we conducted to usually much lower than the number of the items that can evaluate the proposed algorithm and outlines main results; be evaluated, we considered the fact that the clustering step section 6 contains comments, conclusions and future devel- may be affected by the well-known problem of sparsity of opments. the available data. The algorithm presented in this paper, named Improved- 2. RELATED WORK GRA (Improved Group Recommendation Algorithm), has As mentioned in the Introduction, group recommender sys- been developed to overcome this potential problem and im- tems were developed to support the recommendation process prove the quality of clustering. This is done by using the in activities that involve more than a person. predictions of the missing ratings to complete the matrix of the preferences already expressed by users. The algorithm In [13] and [5] the state-of-the-art in group recommendation predicts individual recommendations, combines them with is presented. The existing systems were developed for differ- the preferences explicitly expressed by users, and uses both ent domains like web/news pages, tourist attractions, music of them as input for a classic clustering algorithm. As high- tracks, television programs and movies. A classification of lighted by the experiments, this leads to an identification of those approaches can be made from two perspectives: groups of users with similar preferences with a high quality of the predicted results. Individual recommendations and - the type of group considered; explicitly provided preferences are also used to model the - the way group recommendations are built. groups. Considering the first classification of the existing systems, The proposed approach is the first that combines clustering which is based on the type of groups considered, we can of the users with an aggregation of individual recommen- identify four different types of groups, described below. dations. In fact none of the existing recommender systems that automatically identify groups merges individual rec- - Established group: a number of persons who explic- ommendations and the approaches that merge individual itly choose to be part of a group, because of shared, recommendations deal with groups that have a predefined long-term interests; structure. - Occasional group: a number of persons who do some- thing occasionally together, like visiting a museum. Its Another scientific contribution of the approach relies in the members have a common aim in a particular moment; algorithm used to automatically identify groups, which mixes - Random group: a number of persons who share an recommendation and clustering algorithms, leading to a sub- environment in a particular moment, without explicit stantial improvement of the quality of the group recommen- interests that link them; dations with respect to the state-of-the-art. - Automatically identified group: groups that are automatically detected considering the preferences of Moreover the paper presents an analysis of two more funda- the users and/or the resources available. The second classification of the existing approaches can be PolyLens [17] is a system built to produce recommendations done considering the way group recommendations are built. for groups of users who want to see a movie. There are two ways to build group recommendations, de- scribed in the list below. To produce recommendations for each user of the group a CF algorithm is used. In order to model the group, a “least - Merge of individual recommendations into a group rec- misery” (LM) strategy is used: the rating used to recom- ommendation. mended a movie to a group is the lowest predicted rating - Merge of the individual preferences to build a group for that movie, to ensure that every member is satisfied. profile and predict specific recommendations for the group. In contrast with the LM strategy used by PolyLens, in our approach group preferences are built combining individual The approach described in this paper automatically iden- recommendations in a single value that averages the prefer- tifies groups and merges individual recommendations. The ences of the single users. existing approaches for those two categories of group recom- mender systems will now be described and differences with We considered the use of a group modeling technique based our approach will be highlighted. on the average of users ratings instead of using a LM strat- egy because it seems more suited for an approach where As a general consideration, please note that none of the ap- large groups are considered. A LM strategy is useful for proaches that automatically identify groups merges individ- small groups and in fact Polylens handles groups with two ual recommendations. or three users. Even if groups are composed by people with homogeneous preferences, using a LM strategy a low rating 2.1 Approaches that automatically identify expressed by a user for a movie would be enough to have a low rating for that movie for the whole group. With large groups groups such an approach would probably lead to extremely The approach proposed in [8] aims to automatically discover low ratings for almost all the movies. Communities of Interest (CoI) (i.e., a group of individuals who share and exchange ideas about a given interest) and INTRIGUE (INteractive TouRist Information GUidE) [2, 3] produce recommendations for them. is a system that recommends sightseeing destinations using the preferences of the group members. The approach merges CoI are identified considering the preferences expressed by individual recommendations and, in order to build group users in personal ontology-based profiles. Each profile mea- recommendations, some subgroups are considered more in- sures the interest of a user in concepts of the ontology. Users fluential (e.g., disabled people). interest is exploited in order to cluster the concepts. In our approach we don’t consider a specific domain of ap- User profiles are then split into subsets of interests, to link plication and every individual recommendation is weighted the preferences of each user with a specific cluster of con- equally, so that group recommendations reflect all the users cepts. Hence it is possible to define relations among users preferences. at different levels, obtaining a multi-layered interest network that allows to find multiple CoI. Recommendations are built The approach presented in [1] computes group recommen- using a content-based CF approach. dations by combining individual recommendations built for every user and considering a consensus function, which com- The difference with our approach is that preferences of users bines relevance of the items for a user and disagreement be- are not expressed through an ontology. Moreover, our rec- tween members. ommendation technique is based on a CF user-based ap- proach. Since our approach automatically builds groups of users with similar preferences, we don’t expect disagreement to be a The system proposed in [6] generates group recommenda- characterizing feature when computing group recommenda- tions and automatically detects intrinsic communities of users tions. Therefore this aspect was not considered in our ap- whose preferences are similar. Communities of users with proach. similar preferences are identified using a Modularity-based Community Detection algorithm [4] and group recommen- The system proposed in [9, 10] presents a group recommen- dations are predicted for each community. See 5.2 for a more dation approach based on Bayesian Networks (BN). To rep- detailed description of the approach. resent users and their preferences a BN is built. The authors assume that the composition of the groups is a priori known This approach, although it achieves exactly the same pur- and model the group as a new node in the network that poses, differs from the one presented in this paper both in has the group members as parents. A collaborative recom- the way group predictions are built and in the way groups mender system is used to predict the votes of the group are identified. The approach was chosen for comparison with members. A posteriori probabilities are calculated to com- the algorithm presented in this paper because of the men- bine the predicted votes and build the group recommenda- tioned similarities in several aspects. tion. 2.2 Approaches that merge individual recom- The main difference with our approach is that, in order to combine preferences and build group recommendations, we mendations don’t rely on a Bayesian Network and a posteriori probabil- recommendations predicted for each user. The result is a ities. Predicted Ratings Matrix P R that associates each user u with an item i either through an explicitly expressed rating 3. BASELINE GROUP rui or through a predicted rating pui . RECOMMENDATION ALGORITHM A predicted rating pui is calculated using a classic User- (BASEGRA) Based Nearest Neighbor CF Algorithm, proposed in [20]. The baseline version of our algorithm identifies groups of The algorithm predicts a rating pui for each item i that was similar users considering the preferences expressed by each not evaluated by a user u, considering the rating rni of each user and models each group using individual recommenda- similar user n for the item i. A user n similar to u is called a tions built for each user of a group. neighbor of u. Equation 1 gives the formula used to predict the ratings: 3.1 Overview of BaseGRA The algorithm works in two steps: P n⊂neighbors(u) sim(u, n) · (rni − r n ) pui = ru + P (1) 1. Using a Ratings Matrix that contains the preferences of n⊂neighbors(u) sim(u, n) each user, groups of similar users are detected through the k-means clustering algorithm [14]. Values ru and rn represent, respectively, the mean of the 2. Once the groups have been detected, a group prefer- ratings expressed by user u and user n. Similarity sim() be- ence is produced by aggregating the preferences of the tween two users is calculated using the Pearson correlation, individual users. a coefficient that compares the ratings of all the items rated by both the target user and the neighbor (corated items). 3.2 Groups Identification Pearson correlation between a user u and a neighbor n is The input of the algorithm is a Ratings Matrix M that as- given in Equation 2. CRu,n is the set of corated items be- sociates a set of users to a set of items through a rating. tween u and n. A rating indicates the level of satisfaction of a user for a considered item. So each value mui of the Ratings Matrix is: P i⊂CRu,n (rui − r u )(rni − r n )  rui if user u expressed a preference for item i sim(u, n) = qP qP i⊂CRu,n (rui − r u ) 2 i⊂CRu,n (rni − r n ) 2 mui = ∅ if user u didn’t express a preference for item i (2) A rating rui is always such that rmin ≤ rui ≤ rmax and rui > 0. In other words, a rating value is always inside a fixed range and its value is always positive. 4. IMPROVED GROUP RECOMMENDATION ALGORITHM The Ratings Matrix is used as input for the k-means clus- (IMPROVEDGRA) tering algorithm [14]. Since the algorithm’s input are the BaseGRA identifies groups of similar users using a Ratings preferences expressed by each user, the output is a partition Matrix, i.e., a matrix that contains all the preferences ex- in groups of users with similar preferences. pressed by users for the evaluated items. 3.3 Groups Modeling However, the number of items rated by users is much lower The objective of group modeling is to calculate, for each than the number of available items. This leads to the spar- item, a group rating which will be evaluated in order to sity problem that is common in clustering. decide which items should be recommended to the group. In order to model a group, the preferences of each user that ImprovedGRA was conceived to improve the quality of the belongs to the group have to be combined. clustering step of BaseGRA. ImprovedGRA identifies groups giving as input to the k-means algorithm not the original An average is a single value that is meant to typify a list of Ratings Matrix M , that contains the ratings already ex- values. The most common method to calculate such a value pressed by users, but the complete Predicted Ratings Matrix is the arithmetic mean, which also seems an effective way P R previously presented, where the predicted values of the to put together the preferences of each user in a group, in unrated items for each user are added. order to reach our objective. In order to do so, the individual recommendations are pre- Combining just the preferences expressed by the users would dicted by ImprovedGRA at the beginning of the computa- lead to a poor modeling of the group, since each user usually tion. Using more values as input for the clustering, the algo- gives an explicit preference to a small set of item. This is rithm should be able to identify better groups, i.e., groups especially true when modeling small groups. In fact group composed by users having more correlated preferences. This preferences have to be extracted considering a small set of should lead to a higher overall quality of the group recom- preferences expressed by a small set of users. mendations. In order to improve the efficiency of group modeling, our In conclusion, ImprovedGRA performs the same steps per- algorithm completes the Ratings Matrix, adding individual formed by BaseGRA but computes individual recommen- dations before clustering the users. This allows to cluster In fact a group recommender system should be able to dis- the users using more preferences and identify better groups. tribute the quality of the predicted results in a sufficiently The preferences expressed by users and the individual rec- equal way, in order to satisfy the recommendation demand ommendations are also used to model the group. for all the users of the system. To analyze how RMSE is distributed between the groups 5. EXPERIMENTS produced by ImprovedGRA, a table that contains the mean In this section we first describe the strategy and aims which value of RMSE for each partition and how many groups have drove our experiments. a RMSE value close/far to the mean is presented. Then a state-of-the-art group recommender system that au- To compare the different algorithms, we measured the stan- tomatically identifies groups, chosen for comparison with the dard deviation of the RMSE values obtained for every group proposed approach, is described. of a partition. Experiments setup and metrics used are then described and, at the end of the section, results are shown and commented. 5.1.3 Distribution of size between the groups evalu- ation 5.1 Experimental Methodology The last aspect we evaluated is how homogeneous are the In order to evaluate the quality of the system, three aspects groups in terms of size. Indeed, it is not acceptable to have were considered: quality of the predicted ratings, distribu- too large or too small groups. At the same time the clus- tion of the quality between the groups and homogeneity of tering step cannot create an homogeneity which is not in- the groups size. The details of each experiment will be de- trinsically existent in users. To evaluate this trade-off we scribed next. measured the standard deviation of the size of the groups present in a partition. 5.1.1 Quality of the predicted ratings evaluation The main objective of a recommender system is to produce 5.2 Benchmark algorithm: high quality predictions. The algorithm presented in this pa- ModularityBasedGRA per produces group recommendations adapting to the band- The technique selected for comparison with ImprovedGRA, width available for the recommendation process. is the one proposed in [6]. From now on, the algorithm will be called ModularityBasedGRA, because of the approach In order to evaluate the quality of the predicted ratings for used to identify groups (based on the Modularity function). different bandwidths, i.e., for different numbers of channels that can be dedicated to the recommendation, we built three ModularityBasedGRA is an algorithm that generates group different partitions of the users in groups. A partition is a recommendations and automatically detects intrinsic com- set of n groups in which users are subdivided. Of course, munities of users whose preferences are similar. The input if groups are homogeneous, the larger is n, the smaller are is a Ratings Matrix that associates a set of users to a set the groups and the system can predict better ratings, be- of items through a rating. Based on the ratings expressed cause the preferences of a small amount of users have to be by each user, the algorithm evaluates the level of similar- combined. ity between users and generates a network that contains the similarities. In order to properly evaluate the performances of the pro- posed algorithms, we compared them with the results ob- A modularity-based Community Detection algorithm pro- tained considering a single group with all the users (predic- posed in [4] is run on the network in order to find partitions tions are calculated considering all the preferences expressed of users in communities. For each community, ratings for all for an item), and the results obtained using no partition of the items are predicted using an item-based CF algorithm. the users (i.e., quality of the individual recommendations is calculated). Since the Community Detection algorithm is able to produce a dendrogram, i.e. a tree that contains hierarchical parti- To measure the quality of the predicted ratings, we used the tions of the users in communities of increasing granularity, Root Mean Squared Error (RMSE). This metric was chosen the quality of the recommendations can be evaluated for the because it is the most common in literature. different partitions. In order to analyze the quality of the predictions produced To achieve the objectives previously outlined, i.e., detect by each algorithm for different partitions, we produced a the communities and produce group recommendations for plot that shows the trend of RMSE for each partition in n them, ModularityBasedGRA computes four steps, described groups. below. 5.1.2 Distribution of quality between the groups eval- Users similarity evaluation In order to create commu- uation nities of users, the algorithm takes as input a Ratings A second important aspect that has to be evaluated is how Matrix and evaluates through a standard metric (co- the quality of the predicted results is distributed between sine similarity) how similar the preferences of two users the groups of a partition. are. The result is a weighted network where nodes rep- resent users and each weighted edge represents the sim- 5.4.1 Root Mean Squared Error (RMSE) ilarity value of the users it connects. A post-processing The quality of the predicted ratings was measured through technique is then introduced to remove noise from the the Root Mean Squared Error (RMSE). The metric com- network and reduce its complexity. pares the test set with the predicted ratings: each rating rui expressed by a user u for an item i is compared with the Communities detection In order to identify intrinsic com- rating pgi predicted for the item i for the group in which munities of users, a Community Detection algorithm user u is. The formula is shown below: proposed by [4] is applied to the users similarity net- r Pn work and partitions of different granularities are gen- i=0 (rui − pgi ) 2 erated. RM SE = n Ratings prediction for the items rated by the group where n is the number of ratings available in the test set. A group’s ratings are evaluated by calculating, for each item, the mean of the ratings expressed by the users of the group. In order to predict meaningful ratings, the 5.4.2 Standard deviation algorithm calculates a rating only if an item was eval- The homogeneity of the groups size and the distribution of uated by a minimum percentage of users in the group. RMSE between the groups was measured with the standard With this step it is not possible to predict a rating for deviation (considering respectively the size of the groups and each item, so another step was created to predict the the RMSE values of the groups). remaining ratings. The metric evaluates how much variation there is from the Ratings prediction for the remaining items For some “average” value. A low standard deviation indicates that the of the items, ratings could not be calculated by the size of the groups/the RMSE obtained for the groups tend to previous step. In order to estimate such ratings, simi- be close to the mean, while high values of standard deviation larity between items is evaluated, and the rating of an indicate that the obtained values are scattered over a large item is predicted with a CF item-based algorithm that range of values. considers the items most similar to it. v u u1 X N The choice to compare ImprovedGRA with this approach is σ=t (xi − x̄)2 N i=1 motivated by the fact that both approaches produce group recommendations and automatically identify groups of users. Moreover, both can be evaluated for different partitions of 5.5 Experimental results users in groups. This allows a direct comparison between The first experiment, presented in 5.1.1, aims to evaluate the the two approaches. quality of the predicted values for a partition of the users in groups. Figure 1 shows the trend of the RMSE values for Let us also note that even if the aim of the two algorithms the different partitions of the users in groups. is the same, the two techniques work in completely different ways: ImprovedGRA clusters users with a classic algorithm (k-means) after building individual recommendations and then models the groups preferences, while ModularityBased- GRA clusters users with a Community Detection algorithm and then builds group recommendations. 5.3 Experiments Setup The experimentation was made using the MovieLens-1M dataset, which is composed of 1 million ratings, expressed by 6040 users for 3900 movies. In order to evaluate the quality of the ratings predicted by each of the algorithms, around 20% of the ratings was extracted as a test set and the rest of the dataset was used as a training set for the algorithm. Each group recommendation algorithm was run with the training set and, for each partition of the users in groups, ratings were predicted. Figure 1: RMSE values for each partition The obtained values were used to conduct the experiments previously described. For all the algorithms, we can notice that as the number of groups grows, the quality of the recommendations improves, 5.4 Evaluation metrics since groups get smaller and the algorithms can predict more This section will introduce the two metrics used to evaluate precise ratings. We can see that the values of RMSE notably different characteristics of our algorithm, the Root Mean decrease when the algorithms start grouping the users (i.e., Squared Error (RMSE) and the Standard deviation. Both there is a big difference of RMSE between 1 and 4 groups). metrics compare the obtained results with a comparison The RMSE values continue to decrease for the other parti- value, in order to evaluate the quality of the system. tions, but the improvement in quality is lower. Comparing the algorithms, we can see that BaseGRA and RMSE is distributed less equally between the groups but ImprovedGRA outperform the benchmark algorithm Modu- the quality of the predictions compared with the other ap- larityBasedGRA. Moreover, the performances of Improved- proaches is much higher. GRA are much better than the performances of BaseGRA: this proves that enhancing the Ratings Matrix with indi- The third experiment, presented in 5.1.3 was conducted to vidual recommendations leads to great improvements in the evaluate how the size of the groups is distributed in each quality of the predicted results. partition (i.e., how homogeneous are the groups in terms of size). To do so we measured the standard deviation of the The second experiment, presented in 5.1.2, was conducted size of all the groups in each partition. to evaluate how the quality of the predicted values is dis- tributed between the groups. To do so we measured the Partition Number of groups with size s standard deviation of RMSE of the groups in each parti- 4 groups s = 633 s = 1334 s = 1807 s = 2266 tion. x̄ = 1510 1 1 1 1 13 groups s < 300 300 ≤ s ≤ 540 s > 540 Partition Number of groups with RMSE r x̄ = 464, 62 3 7 3 4 groups r = 0, 85 r = 0, 89 r = 0, 95 r = 1, 04 40 groups s < 80 80 ≤ s ≤ 250 s > 250 x̄ = 0, 93 1 1 1 1 x̄ = 151 9 26 5 13 groups r < 0, 87 0, 87 ≤ r ≤ 1, 00 r > 1, 00 x̄ = 0, 93 3 7 3 40 groups r < 0, 90 0, 90 ≤ r ≤ 1, 00 r > 1, 00 Table 2: Distribution of size of the groups x̄ = 0, 96 15 15 10 Table 2 shows, for each partition, the mean of the size ob- Table 1: Distribution of RMSE between the groups tained for every group with ImprovedGRA and how the size is distributed between the groups. As the table shows, most of the groups have size values close to the mean. This means Table 1 shows, for each partition, the mean of the RMSE that the size is distributed in a sufficiently equal way be- obtained for every group with ImprovedGRA and how the tween the groups and our algorithm is able to produce rec- RMSE is distributed between the groups. As we can see, ommendations properly, i.e., without handling the prefer- the majority of the groups in each partition has a RMSE ences of too small/large groups. value sufficiently close to the mean. This means that RMSE is distributed quite equally between the groups and our ap- proach is able to satisfy the recommendation demand for all the users. Figure 3: Standard deviation of size of the groups Figure 3 compares the standard deviation of the size of the Figure 2: Standard deviation of RMSE of the groups groups for the different approaches. It is important to notice how the enhancement of the Ratings Matrix made for Im- Figure 2 compares the standard deviation of RMSE of the provedGRA leads to more homogeneous partitions in groups groups for the different approaches. ImprovedGRA values compared with BaseGRA. are slightly higher if compared to the other approaches. However, it is important to remember that in this case there The values obtained by ImprovedGRA are slightly higher is a trade-off between an equal distribution in terms of RMSE than ModularityBasedGRA but also in this case there is a and the similarity between the users in a group. In fact the trade of between homogeneity of the groups size and simi- groups have to be intrinsic in order to improve the quality larity between the users. In fact it is important to find par- of the predicted results. So it seems reasonable to loose a titions of intrinsic groups with similar preferences that can bit of homogeneity in distribution of the quality in order lead to a high quality of the predicted results. So, a little to improve the overall quality of the results predicted by loss in homogeneity of the size leads to great improvements the system. This is the case of ImprovedGRA in which the in the quality of the results. 6. CONCLUSIONS AND FUTURE WORK [8] I. Cantador, P. Castells, and E. P. Superior. In this paper we presented an algorithm that combines user Extracting multilayered semantic communities of clustering with individual recommendations in order to iden- interest from ontology-based user profiles: Application tify and model groups of users with similar preferences and to group modelling and hybrid recommendations. In improve the quality of group recommendations in systems Computers in Human Behavior, special issue on that automatically identify groups. In fact, BaseGRA and Advances of Knowledge Management and the ImprovedGRA outperform the benchmark algorithm Mod- Semantic. Elsevier. In press, 2010. ularityBasedGRA. [9] L. M. de Campos, J. M. Fernández-Luna, J. F. Huete, and M. A. Rueda-Morales. Group recommending: A Moreover, we can notice that ImprovedGRA, using an en- methodological approach based on bayesian networks. hanced Ratings Matrix to identify and model the groups, In ICDE Workshops, pages 835–844. IEEE Computer is able to produce sufficiently homogeneous groups in terms Society, 2007. of size and distribution of RMSE. Therefore, all the three [10] L. M. de Campos, J. M. Fernández-Luna, J. F. Huete, important objectives that should be achieved by a group rec- and M. A. Rueda-Morales. Managing uncertainty in ommender systems are reached by the proposed algorithm group recommending processes. User Model. ImproveGRA. User-Adapt. Interact., 19(3):207–242, 2009. [11] D. Goldberg, D. Nichols, B. M. Oki, and D. Terry. Future developments of the algorithm have been planned for Using collaborative filtering to weave an information different steps performed by the algorithm. In [16] several tapestry. Communication of the ACM, 35(12):61–70, strategies for group modeling were presented. We are cur- 1992. rently studying how different strategies affect the quality of [12] A. Gunawardana and G. Shani. A survey of accuracy group recommendation with groups that are automatically evaluation metrics of recommendation tasks. J. Mach. identified. Learn. Res., 10:2935–2962, 2009. [13] A. Jameson and B. Smyth. Recommendation to Recently [7, 12] highlighted how different metrics to evaluate groups. In P. Brusilovsky, A. Kobsa, and W. Nejdl, the quality of recommendation lead to completely different editors, The Adaptive Web: Methods and Strategies of results. As a future work we plan to evaluate our systems Web Personalization. Springer, 2007. with such metrics, in order to catch different aspects of our [14] J. B. MacQueen. Some methods for classification and system. analysis of multivariate observations. In L. M. L. Cam and J. Neyman, editors, Proc. of the fifth Berkeley 7. REFERENCES Symposium on Mathematical Statistics and [1] S. Amer-Yahia, S. B. Roy, A. Chawla, G. Das, and Probability, volume 1, pages 281–297. University of C. Yu. Group recommendation: Semantics and California Press, 1967. efficiency. PVLDB, 2(1):754–765, 2009. [15] T. W. Malone, K. R. Grant, F. A. Turbak, S. A. [2] L. Ardissono, A. Goy, G. Petrone, and M. Segnan. A Brobst, and M. D. Cohen. Intelligent multi-agent infrastructure for developing personalized information-sharing systems. Communication of the web-based systems. ACM Trans. Internet Technol., ACM, 30(5):390–402, 1987. 5(1):47–69, 2005. [16] J. Masthoff. Group modeling: Selecting a sequence of [3] L. Ardissono, A. Goy, G. Petrone, M. Segnan, and television items to suit a group of viewers. User P. Torasso. Intrigue: Personalized recommendation of Modeling and User-Adapted Interaction, 14(1):37–85, tourist attractions for desktop and handset devices. 2004. Applied Artificial Intelligence, 17(8):687–714, 2003. [17] M. O’Connor, D. Cosley, J. A. Konstan, and J. Riedl. [4] V. D. Blondel, J.-L. Guillaume, R. Lambiotte, and Polylens: a recommender system for groups of users. E. Lefebvre. Fast unfolding of communities in large In ECSCW’01: Proceedings of the seventh conference networks. J. Stat. Mech., 2008(10):P10008+, October on European Conference on Computer Supported 2008. Cooperative Work, pages 199–218, Norwell, MA, USA, [5] L. Boratto and S. Carta. State-of-the-art in group 2001. Kluwer Academic Publishers. recommendation and new approaches for automatic [18] S. Ram. Intelligent agents and the world wide web: identification of groups. In G. A. Alessandro Soro, Fact or fiction? Journal of Database Management, Eloisa Vargiu and G. Paddeu, editors, Information 12(1):46–49, 2001. Retrieval and Mining in Distributed Environments. [19] P. Resnick, N. Iacovou, M. Suchak, P. Bergstorm, and Springer Verlag. In press, 2010. J. Riedl. Grouplens: An open architecture for [6] L. Boratto, S. Carta, A. Chessa, M. Agelli, and M. L. collaborative filtering of netnews. In Proceedings of Clemente. Group recommendation with automatic ACM 1994 Conference on Computer Supported identification of users communities. In Web Cooperative Work, pages 175–186, Chapel Hill, North Intelligence/IAT Workshops, pages 547–550. IEEE, Carolina, 1994. ACM. 2009. [20] J. B. Schafer, D. Frankowski, J. Herlocker, and S. Sen. [7] E. Campochiaro, R. Casatta, P. Cremonesi, and Collaborative filtering recommender systems. In The R. Turrin. Do metrics make recommender algorithms? Adaptive Web: Methods and Strategies of Web International Conference on Advanced Information Personalization, volume 4321 of Lecture Notes in Networking and Applications Workshops, 0:648–653, Computer Science, chapter 9, pages 291–324. Springer, 2009. 2007.