Академический Документы
Профессиональный Документы
Культура Документы
a r t i c l e i n f o a b s t r a c t
Article history: Recommendation Systems (RS) are gaining popularity and they are widely used for dealing with infor-
Received 11 November 2016 mation on education, e-commerce, travel planning, entertainment etc. Recommender Systems are used to
Revised 9 March 2017
recommend items to user(s) based on the ratings provided by the other users as well as the past prefer-
Accepted 29 March 2017
ences of the user(s) under consideration. Given a set of items from a group of users, Group Recommender
Available online 5 April 2017
Systems generate a subset of those items within a given group budget (i.e. the number of items to have
Keywords: in the final recommendation). Recommending to a group of users based on the ordered preferences pro-
Recommender systems vided by each user is an open problem. By order, we mean that the user provides a set of items that he
Order in recommendation would like to see in the generated recommendation along with the order in which he would like those
Group recommendation items to appear. We design and implement algorithms for computing such group recommendations effi-
Hungarian method ciently. Our system will recommend items based on modified versions of two popular Recommendation
Least Misery
strategies– Aggregated Voting and Least Misery. Although the existing versions of Aggregated Voting (i.e.
Greedy Aggregated Method) and Least Misery perform fairly well in satisfying individuals in a group, they
fail to gain significant group satisfaction. Our proposed Hungarian Aggregated Method and Least Misery
with Priority improves the overall group satisfaction at the cost of a marginal increase in time complex-
ity. We evaluated the scalability of our algorithms using a real-world dataset. Our experimental results
evaluated using a self-established metric substantiates that our approach is significantly efficient.
© 2017 Elsevier Ltd. All rights reserved.
http://dx.doi.org/10.1016/j.eswa.2017.03.069
0957-4174/© 2017 Elsevier Ltd. All rights reserved.
116 A. Agarwal et al. / Expert Systems With Applications 82 (2017) 115–127
Table 1 with “Goblet of Fire” but then a Harry Potter purist may stress
Example of schedule choices.
on watching the series chronologically starting with “Philosopher’s
Student Choice of schedule Stone”. Certainly, this is a conundrum and picking the right order
Student 1 Computer Science → Mathematics → Physics → Chemistry that satisfies everybody’s mood is a tough choice. Herein, lies the
Student 2 Mathematics → Geography → Computer Science → English possibility of a recommender system’s inclusion of order to accom-
Student 3 Physics → Chemistry → Computer Science → Mathematics modate such variance in choices.
:: :::
(previously) obtained for each group member into a list of rec- highest aggregate ratings. The choice of method to use depends on
ommendations for the group. Each user is represented by a per- the kind of application and the extent to which the users are able
sonal agent that works on her behalf. The agents carry out a co- to modify their choices or view the other person’s choices during
operative negotiation process based on the multilateral Monotonic the recommendation process. The authors also examine the various
Concession Protocol (MCP). The authors claim that this negotiation existing recommender systems and depict the different ways in
process can generate recommendations that satisfy the different which the users’ preferences are analyzed and used for the group
group members more evenly than traditional group recommenda- preference model. Our work adopts the recommendation aggrega-
tion approaches since it mirrors the way in which human negotia- tion consensus because of its flexibility.
tion seems to work. There are four basic stages in the collaborative filtering algo-
To achieve high-quality initial personalization, recommender rithms where the group’s users’ data can be aggregated to the data
systems must provide an efficient and effective process for new of the group of users: similarity metric, establishing the neigh-
users to express their preferences. Chang, Harper, and Terveen borhood, prediction phase, determination of recommended items.
(2015) propose that this goal is best served not by the classical Our approach varies from this paper in two respects viz. (a) we do
method where users begin by expressing preferences for individual not employ collaborative filtering and (b) preference of users are
items but instead new users can begin by expressing their prefer- captured implicitly in our approach, as we simply consider those
ences for groups of items. The authors test this idea by designing movies in which the user is interested in. Ortega, Bobadilla, Her-
and evaluating an interactive process where users express prefer- nando, and Gutirrez (2013) perform aggregation experiments in
ences across groups of items that are automatically generated by each of the four stages and present two fundamental conclusions:
clustering algorithms. The paper contributes a strategy for recom-
1. The system accuracy does not vary significantly according to
mending items based on these preferences that is generalizable to
the stage where the aggregation is performed.
any collaborative filtering-based system.
2. The system performance improves notably when the aggrega-
Ortega, Hernando, Bobadilla, and Kang (2016) introduces Ma-
tion is performed in an earlier stage of the collaborative filter-
trix Factorization (MF) based Collaborative Filtering (CF) for group
ing process.
recommendations. The authors propose three original approaches
to map the group of users to the latent factor space and compare The authors also provide a group recommendation similarity
the proposed methods in three different scenarios: when the group metric and demonstrates the convenience of tackling the aggre-
size is small, medium and large. They also compare the precision gation of the group’s users in the actual similarity metric of the
of the proposed methods with state-of-the-art group recommen- collaborative filtering process.
dation systems using KNN based Collaborative Filtering. The au- Conventional solutions to Group Decision Making (GDM) prob-
thors further analyze group movie ratings on MovieLens and Net- lems do not regard the disagreement of few of the partici-
flix datasets. pants. Castro, Quesada, Palomares, and Martínez (2015) provides a
Kaššák, Kompan, and Bieliková (2016) focus on the improve- method of seeking group recommendation that ensures a certain
ment of the quality of the very Top-N recommendations and the level of agreement among the group members. For this Consensus
recommendation list order in group recommendations. The authors Reaching Processes (CRPs) have been proposed wherein the prefer-
achieve this by generating content-based and collaborative candi- ences are brought iteratively closer to one another until a sufficient
dates for group members. Next, these candidates (content-based level of agreement is achieved. The task of recommendation here
and collaborative separately) are aggregated to resolve conflict has been divided into two major phases– Recommendation phase
preferences of group members. Finally, the hybrid recommender is and Consensus phase. In the Recommendation phase, the k-nearest
applied to merge content-based and collaborative group candidates neighbor Collaborative Filtering algorithm is applied to obtain indi-
and to generate final recommendations. vidual recommendations and the top-n commonly predicted items
are presented as preferences. Finally, in the consensus phase, a CRP
2.2. Consensus functions is applied by using automatic consensus model, wherein automatic
changes in preferences are made, for the decision making using the
Amer-Yahia et al. (2009) introduces the semantics of group rec- fuzzy preference relations. The proposed method was tested on the
ommendation algorithms by means of a Consensus Function. The Movie Lens-100K dataset (MovieLens, 1998) and the improvement
authors also introduce disagreement among group members as a over the baseline group recommending techniques has been estab-
factor that greatly influences the efficiency and effectiveness of the lished.
generated recommendation. The disagreement among the users on In most of the works mentioned above, a consensus has been
a particular item is taken into account by taking the consensus drawn with or without collaborative filtering that reflects the over-
function that computes the recommendation score for an item as all commonality of users based on their past preferences, but none
a weighted summation of the item relevance and the group dis- of them account for the dissimilarity between the order of items
agreement for that item. Amer-Yahia et al. (2009) utilizes the con- that are recommended. Thus, we hypothesize that order is impor-
cept of user similarity to break ties by giving priority to the user tant and in later sections that follow we establish the same.
having maximum similarity with other members of the group. Two Roy, Thirumuruganathan, Amer-Yahia, Das, and Yu (2014) intro-
disagreement models are proposed and top-k threshold algorithms duces the concept of a feedback box in group recommendation.
are given for two popular recommendation strategies– Aggregated The feedback box is used by a user when he is updating his prefer-
Voting and Least Misery. The proposed algorithms were analyzed ences. Given the updated user’s preference, the feedback box gen-
for quality and efficiency by performing experiments on the Movie erates a recommendation for the user that maximizes the satisfac-
Lens dataset (MovieLens, 2009) and the utility of the disagreement tion of the user in the henceforth generated recommendation. The
models for obtaining effective and efficient results is established. use of the feedback box is examined for the two recommendation
Jameson and Smyth (2007) put forward two methods of gen- strategies– Aggregated Voting and Least Misery in the presence of
erating group recommendation viz. Virtual User and Recommen- two different consensus functions– Overlap Similarity and Ham-
dation Aggregation. The first method combines the highest rated ming Distance. The various proposed recommendation algorithms
items by the individual users into a list that is recommended to and feedback boxes are analyzed for efficiency using the Movie
the group, while the second aggregates the predicted ratings of Lens dataset. The feedback box generates optimal results for the
the items for all the users and returns the set of items having the Least Misery case using Overlap Similarity as the consensus func-
118 A. Agarwal et al. / Expert Systems With Applications 82 (2017) 115–127
3. Model
Table 2
User preference matrix U.
Item_ID
Position 1 2 3 4 5 6 7 8 9
1 0 2 0 0 2 0 1 2 1
2 0 1 1 1 1 1 1 2 0
3 0 1 2 0 1 1 2 1 0
4 1 0 1 1 1 0 3 1 0
5 0 2 1 2 0 1 0 1 1
Table 3
Fig. 2. Effect on order on recommendation for k=5. Score vector s for k = 5.
Index 0 1 2 3 4
4. Algorithms
Fig. 3. Effect on order on recommendation for k=100.
Table 4
User satisfaction matrix S.
Item_ID
Position 1 2 3 4 5 6 7 8 9
item no. 2 at position 1 will entail adding their corresponding sat- isfaction of the group in the present state (that is having the max-
isfaction component (s) to the group satisfaction. Users 1 and 5 are imum value in matrix S). According to this logic, for the given ex-
optimally satisfied when item no. 2 is selected for position 1 since ample, S4,7 has the highest value, so, for the 4th position, 7th item
there is no deviation in expected position. Hence, corresponding to will be selected. By greedy approach (Black & Pieterse, 2005), we
these two users, we will add s0 = 6 to the group satisfaction score will not visit item no. 7 again. In the following iterations the 8th
S1,2 . User 3 will add s1 = 4.5355 to S1,2 , since there is a deviation item is selected for the 2nd position, 2nd item is selected for 1st
of one position from her expectation and so on. Hence, Si, j is the position and so on. Finally, this method generates the output:
sum of all these satisfaction component values added by each user
for a particular item and a particular position. 2 8 3 7 4
k
with the total group satisfaction = 139.339. The total group satis-
Si, j = s| p−i| × U p, j
faction is obtained by adding up the individual user satisfaction
p=1
generated by the procedure Compute_Satisfaction presented as
So, for the example under consideration: Algorithm 4. GRAM is presented in Algorithm 5. Time complexity
S1,2 = s0 × U1,2 + s1 × U2,2 + s2 × U3,2 + s3 × U4,2 + s4 × U5,2 of GRAM (including the cost of computing S) = O (k2 m + kn ).
= 6 × 2 + 4.53 × 1 + 3.89 × 1 + 3.50 × 0 + 3.23 × 2 Clearly, the introduction of greedy approach makes it an intel-
= 26.89 ligent one as it avoids selection of an item visited once. Once the
Similarly, the other values of S are calculated and the final ma- item has been visited for a particular position, GRAM avoids visit-
trix is presented as Table 4. The above explained generalized pro-
cedure to generate U and S are formalized as Algorithms 2 and
3 respectively.
Algorithm 4: Computing satisfaction of individual user.
Algorithm 8: Computing similarity between two users. Algorithm 9: Procedure for computing priority.
Data: u, vu , k, vw Data: n, vu , k, s, u
Result: val Result: Priority of user u as sum
1 val ← Compute_Satisfaction(u, vu , k, vw ); 1 r ← vu ;
2 return val; 2 sum ← 0;
3 for 1 ≤ i ≤ n do
4 if i = j then
Table 5 5 sum ← sum
Similarity values for User 1 with other users. + Compute_Satisfaction(i, vu , k, r );
User Overlap with User 1 6 end
7 end
2 12.5711
3 13.7716
4 12.4721
Table 6
5 14.4223
Priority values for the users in Example 4.
6 21.3782
7 14.7735 User Priority
8 7.7735
1 97.1623
2 101.711
3 96.9522
4 103.855
4.4. Least Misery Method with Priority (LMMP) 5 61.5836
6 97.6902
This algorithm is an extension of Least Misery method. It fol- 7 99.3427
8 85.2987
lows the same principle as described in the Section 4.3. However,
to resolve the ties that may occur, for instance, when initially all
the users have the same satisfaction score of zero, we take the
similarity between the users into consideration. The principal idea Example 4, LMMP generates the following output:
behind this concept is that if there is a set of users having the 5 8 2 7 3
same value of current satisfaction, we must satisfy the user, who
can add maximum possible satisfaction to the group. To imple- with the total group satisfaction = 139.265 and the minimum sat-
ment this, we assign a Priority value for each user based on her isfaction of the group = 11.2735.
similarity with all the other users in the group. The priority value The above scores depict that including priority in the Least
for a user is computed once for a recommendation where prior- Misery approach increases the overall satisfaction of the group by
ity[i] denotes the similarity of user i with all other users in the 0.015% while ensuring that the least satisfaction is not reduced be-
group. Overlap similarity (i.e. the similarity between two users) is yond 0.05%. This approach is particularly useful when the number
calculated on the basis of similarity between two users’ preference of users and items is large as compared to the group budget.
vectors. The underlying philosophy of Compute_Satisfaction and LMMP is presented in Algorithm 10. Time complexity of LMMP
Compute_Overlap is same, the difference being the type of list be- is O (k3 n + k2 n2 ).
ing passed as arguments to them. For, Compute_Satisfaction, one
list is the preference vector and the other is the generated rec- 5. Experimental setup
ommendation. While for Compute_Overlap, both the lists are user
preferences. Higher the priority value, greater is the similarity of We conducted a series of performance and quality experiments
the user with other members of the group. Hence, satisfying such using a real world dataset extracted from MovieLens (GroupLens,
a user will most definitely add greater satisfaction to the group. For 2015). Our prototype system has been implemented in C++. All
instance, let us compute priority score for User 1 from Example 4. experiments were conducted on an Intel machine equipped with
For this, we will calculate the similarity or overlap of preference quad-core 2.20 GHz CPU, 8GB RAM, 1TB HDD and running Ubuntu
vector v1 with the vectors v2 , v3 , ... , v8 . The overlap values cal- 14.04. All the results presented in the next sections were obtained
culated using the Compute_Overlap procedure (Algorithm 8) are as the average of five runs.
presented in Table 5.
Summing up the above values we get the priority for user 5.1. Data preparation
1 as pr ior ity[1] = 97.1623. Similarly, priority values are calculated
for other users as well. In this way, we ensure that the Least The Movie Lens dataset (GroupLens, 2015) contained
Misery user is chosen optimally, that is, we satisfy this user as 20,0 0 0,263 movie ratings provided by 7200 users over 27,278
well as maximize the overall group satisfaction. Breaking ties with movies. We adopted a simple boolean procedure to convert these
the help of priority instigate the property of aggregation into ratings to our required model. For each user, if a particular movie
the Least Misery method. For the case under consideration, the has been rated greater than 2 (on a scale of 1–5), was selected
priority values are generated using Compute_Priority procedure and appended to the preference vector of that user in the order in
(Algorithm 9) as shown in Table 6. which it appeared in the input rating file. If the movie acquired
At first, all the users have a satisfaction score of 0. So, user 4 a rating less than or equal to 2, it was simply discarded. So
with the highest priority value is selected with the current least in effect, we had 7200 user preference vectors. We considered
satisfaction. Now from his set of items, i.e. {8, 4, 3, 7, 2} we look order of movies, as suggested by the input order of ratings of
for the item that will be able to generate maximum satisfaction movies by users. Since the number of movies is quite large as
for the group. So the 7th item is selected for the 4th position. The compared to the number of users, the chances of having exactly
satisfaction values of the users are recomputed and now user 5 has the same order set is minimal. Hence, we assumed that the order
the least satisfaction. The same procedure is repeated for this user in which the rating of movies appear in the dataset is the order of
and the 2nd item is chosen for the 3rd position and so on. For recommendation the user prefers.
A. Agarwal et al. / Expert Systems With Applications 82 (2017) 115–127 123
ities apriori and then breaking ties with priority adds to the com-
putation time.
Since no explicit groups were provided in the dataset, we had
assumed groups of users based on their similarity as explained in
6.1.2. Varying the number of users n
Section 4.4 using Algorithm 8.
In this experiment we wanted to study the effect of number of
users on the running time of the proposed algorithms. For this we
6. Results and Analysis set the group budget k = 100 and m = 2000 and vary the group
size n. The resulting plot is depicted in Fig. 5.
We report the efficiency results for the five proposed algo- From this, we observe that the GRAM gives the performance as
rithms. Performance is measured mainly by varying 3 parameters– it produces no noticeable changes with respect to the number of
Group size(n), Total number of items(m) and the Group budget(k). users.
Fig. 7. Comparison of HAM and GRAM over satisfaction. Fig. 9. Comparison of Least Misery vs. Least Misery with Priority over least satis-
faction.
Fig. 8. Comparison of Least Misery vs. Least Misery with Priority over user satis-
faction. Fig. 10. Comparison of Least Misery vs. Least Misery with Priority over average user
satisfaction.
26 go to 16 in Hungarian();
Chakraborty, M., Agrawal, H., Shekhar, H., & Chowdary, C. R. (2015). Contextual MovieLens (2009). GroupLens at University of Minnesota. http://grouplens.org/
suggestion using tag-description similarity. In Proceedings of the twenty-fourth datasets/movielens/10m/.
text retrieval conference, TREC 2015, gaithersburg, maryland, usa, november 17–20, O’connor, M., Cosley, D., Konstan, J. A., & Riedl, J. (2001). PolyLens: a recommender
2015. system for groups of users. In Ecscw 2001 (pp. 199–218). Springer.
Chang, S., Harper, F. M., & Terveen, L. (2015). Using groups of items for preference Ortega, F., Bobadilla, J., Hernando, A., & Gutirrez, A. (2013). Incorporating group
elicitation in recommender systems. In Proceedings of the 18th acm conference on recommendations to recommender systems: Alternatives and performance. In-
computer supported cooperative work social computing. In CSCW ’15 (pp. 1258– formation Processing & Management, 49(4), 895–901. http://dx.doi.org/10.1016/j.
1269). New York, NY, USA: ACM. doi:10.1145/2675133.2675210. ipm.2013.02.003.
Christensen, I. A., & Schiaffino, S. (2011). Entertainment recommender systems for Ortega, F., Hernando, A., Bobadilla, J., & Kang, J. H. (2016). Recommending items to
group of users. Expert Systems with Applications, 38(11), 14127–14135. http://dx. group of users using matrix factorization based collaborative filtering. Informa-
doi.org/10.1016/j.eswa.2011.04.221. tion Sciences, 345, 313–324. http://dx.doi.org/10.1016/j.ins.2016.01.083.
Gartrell, M., Xing, X., Lv, Q., Beach, A., Han, R., Mishra, S., & Seada, K. (2010). Enhanc- Pazzani, M. (1999). A framework for collaborative, content-based and demo-
ing group recommendation by incorporating social relationship interactions. In graphic filtering. Artificial Intelligence Review, 13(5–6), 393–408. doi:10.1023/A:
Proceedings of the 16th acm international conference on supporting group work 1006544522159.
(pp. 97–106). ACM. Pera, M. S., & Ng, Y.-K. (2013). A group recommender for movies based on content
Ghazarian, S., & Nematbakhsh, M. A. (2015). Enhancing memory-based collabora- similarity and popularity. Information Processing & Management, 49(3), 673–687.
tive filtering for group recommender systems. Expert Systems with Applications, Personalization and Recommendation in Information Access http://dx.doi.org/
42(7), 3801–3812. http://dx.doi.org/10.1016/j.eswa.2014.11.042. 10.1016/j.ipm.2012.07.007
GroupLens (2015). MovieLens 20M dataset. http://grouplens.org/datasets/movielens/ Pilgrim, R. A. (2017). Munkres’ assignment algorithm, course notes. http://
20m/. csclab.murraystate.edu/∼bob.pilgrim/445/munkres.html. [Online; accessed 08-
Jameson, A., & Smyth, B. (2007). The adaptive web (pp. 596–627). Berlin, Heidelberg: Mar-2017].
Springer-Verlag. Resnick, P., & Varian, H. R. (1997). Recommender systems. Communications of the
Kagita, V. R., Pujari, A. K., & Padmanabhan, V. (2015). Virtual user approach for ACM, 40(3), 56–58.
group recommender systems using precedence relations. Information Sciences, Ricci, F., Rokach, L., & Shapira, B. (2011). Introduction to recommender systems hand-
294, 15–30. book. Springer.
Kaššák, O., Kompan, M., & Bieliková, M. (2016). Personalized hybrid recommenda- Roy, S. B., Thirumuruganathan, S., Amer-Yahia, S., Das, G., & Yu, C. (2014). Exploiting
tion for group of users: Top-n multimedia recommender. Information Processing group recommendation functions for flexible preferences. In IEEE 30th interna-
& Management, 52(3), 459–477. http://dx.doi.org/10.1016/j.ipm.2015.10.001. tional conference on data engineering, chicago, ICDE 2014, il, usa, march 31 – april
Kompan, M., & Bieliková, M. (2014). Voting Based Group Recommendation: How 4, 2014 (pp. 412–423). doi:10.1109/ICDE.2014.6816669.
Users Vote. In Proc. of 1st international workshop on social personalization in con- Sarwar, B., Karypis, G., Konstan, J., & Riedl, J. (20 0 0). Analysis of recommendation al-
junction with 25th acm conference on hypertext and social media. gorithms for e-commerce. In Proceedings of the 2nd acm conference on electronic
Kuhn, H. W. (1955). The hungarian method for the assignment problem. Naval Re- commerce (pp. 158–167). ACM.
search Logistics Quarterly, 2, 83–97. Schafer, J. B., Konstan, J. A., & Riedl, J. (2001). E-commerce recommendation ap-
Lops, P., De Gemmis, M., & Semeraro, G. (2011). Content-based recommender plications. In Applications of data mining to electronic commerce (pp. 115–153).
systems: State of the art and trends. In Recommender systems handbook Springer.
(pp. 73–105). Springer. Trewin, S. (20 0 0). Knowledge-based recommender systems. Encyclopedia of Library
Masthoff, J. (2011). Group recommender systems: Combining individual models. In and Information Science, 69(32), 180.
Recommender systems handbook (pp. 677–702). Springer. Villavicencio, C., Schiaffino, S., Diaz-Pace, J. A., & Monteserin, A. (2016). Advances
McCarthy, K., Salamó, M., Coyle, L., McGinty, L., Smyth, B., & Nixon, P. (2006). Group in practical applications of scalable multi-agent systems. The PAAMS collection:
Recommender Systems: A Critiquing Based Approach. In Proceedings of the 11th 14th international conference, PAAMS 2016, sevilla, spain, june 1–3, 2016, pro-
international conference on intelligent user interfaces. In IUI ’06 (pp. 267–269). ceedings (pp. 294–298). Cham:Springer International Publishing. doi:10.1007/
New York, NY, USA: ACM. doi:10.1145/1111449.1111506. 978- 3- 319- 39324- 7_34.
MovieLens (1998). GroupLens at University of Minnesota. http://grouplens.org/
datasets/movielens/100k/.