Social Based Recommendations to Groups Lara Quijano-Sánchez, Juan A. Recio-García, and Belén Díaz-Agudo Department of Software Engineering and Artificial Intelligence, Universidad Complutense de Madrid, Spain [email protected], [email protected], [email protected] Abstract. In this paper we describe some new ideas to improve recommendations to groups. We use distributed CBR systems, where each node collaborates, arguments and counterarguments its local results with other nodes to improve the performance of the system's global response. We have performed a case of study based on the movie recommendation domain with heterogeneous groups according to the group personality composition and a group topology based on a social network. Keywords: Group Recommendation, Personality, Group Topology, Social Network. 1 Introduction Within in the CBR community there have been a number of sophisticated techniques for the elicitation of good queries from the user and efficiently assessing similarity between the current query and the available cases. It is straightforward to establish a correspondence between retrieval in CBR systems and the process of obtaining goals and preferences of a user in order to rank products, services or information sources in recommender systems. Actually, CBR has played a key role in the development of several classes of recommender system [1,2]. Although most of the most popular recommender systems are focused on recommending items for individual users, the need of systems capable of performing recommendations for groups of people is getting more interest as there are many activities that are carried out in groups, e.g., going to the cinema with friends, watching TV at home or listening music in the car. Existing works on group recommender systems [3] are typically based on the aggregation of the preferences of the members of the group where every person in the group is considered as equal to the others. A group recommender usually manages several subsets of preferences -one per person- that have to be managed independently and combined to create a global recommendation suitable for everyone in the group. According to this, it is natural to think in a distributed architecture where the preferences of every user are managed independently by an autonomous agent. This agent represents the user inside the global recommender system and is in charge of promoting his preferences when 2 Lara Quijano-Sánchez, Juan A. Recio-García, and Belén Díaz-Agudo making a recommendation process for the whole group. To allow this kind of distributed CBR systems, we have developed a set of extensions for the jCOLIBRI CBR framework. These extensions (ALADIN, SALADIN and D2ISCO[18]) enable the development of distributed CBR systems that includes the deliberative process required to build recommenders for groups. Our recent work [4] involves the improvement of current group recommendation techniques by introducing a novel factor: the personality of every individual. Intuitively, when a group of 2 or more friends choose a movie there are some members that are only happy if they impose their opinion, whereas other individuals don't care letting other people decide. Therefore, we have used a personality test to obtain different profiles that interact in different ways when joining a decision making process. Besides personality, there are other factors to consider regarding the structure of the group. In this paper we describe a preliminary work about making recommendations for groups of people connected through social network structures. We propose a distributed CBR architecture where each person in the group is represented by an agent and the final recommendation is influenced by the personality of each member of the group and the way they are interconnected through their social relations, basically friendship, defined in the social network. Therefore our method proposes making recommendations to groups using existing techniques of collaborative filtering [5], taking into account the group personality composition [4] and the social connections between the individuals of the group. We are testing our method in the movie recommendation domain. The paper runs as follows: Section 2 describes existing techniques to obtain recommendations for groups and gives some details of our “personality aware” recommendation process. Section 3 outlines our extension for building distributed CBR systems in jCOLIBRI, whereas Section 4 describes our proposal for including social network's topologies in the decision process. Section 5 depicts our preliminary results and Section 6 concludes and presents the main lines of future work. 2 Recommendations to Groups Recommender systems have traditionally recommended items to individual users, but there has recently been a body of work about recommenders that extend their recommendations to groups of users [3]. When moving from individuals to groups many new issues arises. For example, acquiring the preferences of the group, helping the group to decide the more convenient option, or explaining the recommendation to the group. Depending on the size and homogeneity of the group the recommender system has to choose the option that satisfies the biggest number of people taking into account the individual user preferences. As stated in [3] the main approaches to generate a preference aggregation based on the individual user preferences are (a) merging the recommendations made for individuals, (b) aggregation of ratings for individuals and (c) constructing a group preference model. Error! Use the Home tab to apply title to the text that you want to appear here. 3 Fig. 1. TKI personality modes The most common employed approaches in group recommenders are (b) and (c). They are used in many different fields like selecting the background music of a fitness center [6] recommendation of video clip sequences [7], movies [8] among others. The work described in [8] recommends movies for groups based on the inferred ratings by MovieLens and using the “least misery” strategy to generate the preference aggregation. This strategy supposes that a small group of people will be as happy as its least happy member. The work in [9] criticizes the aggregation strategies like the one employed in PolyLens because they claim that this strategies combine the ratings always in the same way without considering how the members in the group interact with each other. To alleviate this issue, they propose the use of genetic algorithms to learn about the interactions among the users that make up a group from the known group ratings. Although the results seem to be significant, they suppose that the groups are fixed and they have previously rated some items in group. Most of the previous works in group recommendation consider the preferences of every member of the group with the same degree of importance and try to satisfy the preferences of every group member. However, groups of people can have very different characteristics like size and can be made of people with similar or antagonistic personal preferences. It is a fact that when we face a situation in which the concerns of people appear to be incompatible conflict arises. The existing recommender systems for groups typically solve the conflict trying to maximize the preferences of the biggest number of group members. However, the general satisfaction of the group is not always the aggregation of the satisfaction of its members as different people have different expectations and behaviour in conflict situations that should be taken into account. In [4] we have presented a method for recommendation to groups where we distinguish between different types of individuals in a group. Our research characterizes people using the Thomas-Kilmann Conflict Mode Instrument (TKI) [17] that describes a person behavior in conflict situations along two basic dimensions: assertiveness and cooperativeness. These two 4 Lara Quijano-Sánchez, Juan A. Recio-García, and Belén Díaz-Agudo dimensions of behavior can be used to define five personality modes of dealing with conflicts: competing, collaborating, avoiding, accommodating and compromising (see Figure 1). Our method named Personality Aware Recommendation to Groups [4] takes into account these five personality modes. We study how the group personality composition influences the recommendation accuracy for the group, and how it is improved for certain types of groups compared with different simple group recommendation algorithms. We have experimentally evaluated the behavior of this method using the MovieLens data set with groups of users of different sizes and degrees of homogeneity. The novelty of our approach lies in the use of the member personalities to choose the most interesting movie that would better satisfy the whole group, using the type of personality trait of dealing with conflicts of each member to weight the influence of his/her ratings during the recommendation process. Our current work described in this paper proposes the use of real social networks topologies to reflect the real interactions of the users. Our proposal relates also with other works that have employed more social issues in order to include the group member interactions to perform the recommendations. For example, the work described in [7] uses individual satisfaction and the transmission of emotions in order to recommend a sequence of video clips for a group. They consider that a member changes the selection of her best clip according to the clip selected during the previous selection step. This change can be reflected in the recommendation algorithm as an individual satisfaction function that computes the individual affective state. This state influences on the affective state of the other members, getting carried by others emotional state should be taken into account during the group recommendation. Other interesting results from this work are that the most common strategies employed by individuals in real group recommendation are non-dominant strategies such as the average, least misery and average without misery. Additionally, they point out the existence of a tendency where the social status influences on the selection. 3 Distributed CBR Systems in jCOLIBRI jCOLIBRI is currently a reference platform in the CBR community for building CBR systems that includes facilities to design different types of CBR applications [10,11,12]. However its underlying architecture has taken the conventional so called single agent, single case base problem solving approach where one, usually wellmaintained, case base functions as the central knowledge resource. Research efforts in the area of distributed CBR concentrate on the distribution of resources within CBR architectures and study how it is beneficial in a variety of application contexts. In contrast to single-agent CBR systems, multi-agent systems distribute the case base itself and/or some aspects of the reasoning among several agents. In [13] the research efforts in the area of distributed CBR are categorized using two criteria: (1) how knowledge is organized/managed within the system (i.e. single vs. multiple case Error! Use the Home tab to apply title to the text that you want to appear here. 5 bases), and (2) how knowledge is processed by the system (i.e. single vs. multiple processing agents). Much of the work in distributed CBR assumes multi-case base architectures involving multiple processing agents that differ in their problem solving experiences [14]. One key point in distributed CBR systems is the “ensemble effect” described in [15] they state that a collection of agents with uncorrelated case bases improves the accuracy of any individual. With this idea we have extended jCOLIBRI to support distributed CBR applications, as it will improve the performance of standard (singleagent, single-case base) CBR applications. The extension to support distributed CBR applications in jCOLIBRI is called ALADIN (Abstract Layer for Distributed Infrastructures). This layer defines the main components of every distributed CBR system: agents, directory, messages, etc. and could be implemented using different alternatives: JADE 1, sockets, shared memory, ... It was defined after reviewing the existing literature on distributed CBR and tries to fit the IEEE FIPA standards for multiagent systems. Because ALADIN is only composed of interfaces that define the behavior of the system, we have developed an implementation of this abstract layer using standard network sockets. This extension in called SALADIN (Sockets implementation of ALADIN) and provides a fully functional muli-agent environment for building distributed CBR systems. Both extensions are available in the jCOLIBRI contributions web page2. Once the building blocks were defined, in [18] we have presented our work for including deliberative capabilities in the distributed CBR systems. This approach named D2ISCO3 is based on the AMAL protocol that is proposed in [15] as a casebased approach to groups of agents that coordinate, collaborate, and communicate in order to improve their collective and individual decisions by learning from communication and by the argumentation over debated outcomes [16]. This protocol consists on a series of rounds. In the initial round, each agent states which is its individual local solution for the problem. Then, at each round an agent can try to rebut the solution or prediction made by any of the other agents giving a counterexample. When an agent receives a counterargument or counterexample, it informs the other agents if it accepts the counterargument (and changes its solution) or not. Moreover, agents have also the opportunity to answer to counterarguments by trying to generate a counterargument to the counterargument. The work presented in this paper tries to reuse the collaborative and deliberative capabilities of D2ISCO by including two novel factors: the personality of every individual (detailed in following section) and their interconnections (explained in Section 5). 1 JADE is a framework for building multi-agent systems following the FIPA specifications. It is available at: http://jade.tilab.com/ 2 jCOLIBRI contributions: http://gaia.fdi.ucm.es/projects/jcolibri/jcolibri2/contributions.html 3 Deliberative, DIStributed and COlaborative extension for jCOLIBRI 6 Lara Quijano-Sánchez, Juan A. Recio-García, and Belén Díaz-Agudo 4 Including Social Networks in the Recommendation Process The novelty of our approach is to include the social network connections into our recommendation model. So our main goal of our ongoing work described in this paper is to improve the recommendations by to taking into account both, the network topology and the group personality composition. In order to achieve this, we are using the SALADIN platform for organizing the multi-agent system with a social network topology, where each agent represents a member of the group. Every agent will discuss his best interest with the other agents he is connected to, and the final recommendation will be, as we have been explaining, depending on the personality, this means that the preferences of each individual will have different weights depending on the way in which that particular member of the group would react in a conflict situation. To carry out this project we would like to improve the techniques that have been typically used when recommending items to groups [3]. One of the main approaches to generate a recommendation is based on aggregation of ratings for individuals. However, as we have explained in Section 2, this aggregation strategy has been criticized by some authors because the ratings are combined always in the same way, without considering how the members in the group interact with each other. We will like to fix that by including the group member interactions, that is, to perform the recommendation using personal information about the conflict mode behavior of every group member and how they will interact with each other. In this way we consider the recommendation process in a group taking into account a network topology based on a social network. Social networks have been one of the most important topics in the last few years, with nets like Facebook4, Twitter5, MySpace6...etc, and they represent a more realistic form of the structure and relations between group members. Therefore we think that these recommendations, that we obtain with this new method are more accurate and realistic than the ones we would get if we'd applied the topology "all connected", which is the default topology used in typical group recommendation approaches. Figure 2 shows the difference between the two different types of network topologies mentioned, where we can see how the agents are connected. In our particular case of study we are trying to imitate the real process of recommendations to groups when deciding which movie they will be watching. We will test how the group personality and its structure influence the recommendation accuracy for the group. That is, taking into account the closeness of each individual member of the group, who will listen to who, who is the center of the discussion, among others questions. And also considering their own personality, the way they're going to react if there is a proposal different than the one they wanted, if they are open minded and would not complain when a movie they're less keen on is the chosen one, and so on. 4 http://www.facebook.com/ http://www.twitter.com/ 6 http://www.myspace.com/ 5 Error! Use the Home tab to apply title to the text that you want to appear here. 7 Fig. 2. Comparison between "all connected" networks (left) and social networks (right) topologies These users interchange recommendations with other users that have a social link with them. To do this for groups is kind of a natural thing because people tend to do this kind of activities with their friends and family, i.e, following social links. Besides they usually go together in the same group. The reason why this new organization of the structure of the group will affect and improve the result of the recommendation is mainly because with the social network topology we give a more realistic structure and organization of the agents, which is closer to how the argumentations would take place in a real group when they argue on which movie to watch. For a given a group of friends, we draw a network where each node represents a person, and each connection represents that that particular person has a relation with the one he is connected to. Each node discusses his/her opinions with all her neighbors in the network. When two nodes are not connected, it means that the people they are representing don't know each other or that they're not close, this structure is reflecting a face to face discussion where they would have never argue or have to come to a solution between each other. For example if someone brings along his/her boy/girlfriend and the rest of the group doesn't know him, this new member will never start arguing or try convincing someone he has never met before, therefore when we represent this relations we only connect him with the ones that do know him. On the other hand in the all connected network topology every agent will debate with all the rest, no matter if the person he represents knows the other one or not. For the process of argumentation we are using a multiagent system, so each agent will represent one member of the group, and will argue for his best interest. For the implementation, we will use D2ISCO [18] and jCOLIBRI [3,19], in this way we use the structure of the collaborative nodes for the CBR system that D2ISCO uses, the network topology will be the social network type. The reasoning protocol will begin with an agent issuing a query to the agents that is linked to. Each agent will provide its individual local solution for the problem. At each round an agent can try to rebut the solution or the prediction made by any other of his neighbour agents. This different counterexamples will have different weights depending on the personality of the person that is being represented by that particular agent. 8 Lara Quijano-Sánchez, Juan A. Recio-García, and Belén Díaz-Agudo Fig. 3. Users organization in a real social network Next we summarize our approach: 1. Given: a set of users U={u1,u2,..., ui,...,un} (where uq is the user that launches the query), the set of relationships of an user rel(ui), and the personality weight per(ui). 2. Split U into several subsets S={S1,S2,...,Sj,...Sm} where Sj ⊆ U. 3. For every Sj ∈ S compute Ij = obtainSubRecommendation(Sj, rel(ui ∈ Sj), per(ui ∈ Sj)) 4. Being I={I1,I2,...,Ij,...Im} the set of items recommended by each subset, For every Ij ∊ I wj = ∑rel(ui ∈ Sj) · r + ∑per(ui ∈ Sj) · p 5. Return the item Ij with the maximum weight wj Error! Use the Home tab to apply title to the text that you want to appear here. 9 Note that this algorithm implies several processes that must be carefully addressed. Firstly we found the process of splitting the users according to the topology of the social network. In our preliminary experiments we are identifying the k users with more relationships as the “group leaders” and then assigning every remaining user to one of these leaders. Moreover, there is a second way to organize the users: some social networks allow to group users according to the different groups they have joined or by common interests. For example, Figure 3 shows the representation of a real social network in Facebook 7. This social network allows to classify the users into groups (represented using different areas in the figure, that we have intentionally highlighted). This feature enables us to split the U set into subsets Sj that reflect the relationships of the users in a very realistic manner. Furthermore, Figure 3 serves to confirm our premise that real interactions between users do not follow an all-with-all topology as was illustrated in Figure 1. After splitting the users, our algorithm applies the method in charge of obtaining the recommendation from every subset Sj. This method is based in the D2ISCO argumentation protocol (detailed in Section 3) that uses arguments and counterarguments in the deliberation process. Finally the global process that combines the partial results (step 4), takes into account the number of relationships inside every subset Sj (rel(ui ∈ Sj)) and their accumulated personality weight per(ui ∈ Sj). The number of relationships is directly obtained from the social network. However, the personality weight is much more difficult to measure. To obtain it, we are using the TKI tests detailed in Section 2. We are summarizing the 5 different modes in just one value. This value is high if the person has a competing and collaborative profile and is low if the person has an avoiding or accommodating personality. Informally, we are giving more importance to the subset that contains more related users and has the highest personality. Parameters r and p are weights for both factors (related users and personality). Parameter r defines how the number of relations of every subset determines the final recommendation. In addition, parameter p weights the impact of the accumulated personality in the recommendation. Both parameters will be measured in an experimental way. Although initial results cannot lead us to any conclusion, one of the goals of our experiments is to measure how their influence will affect the recommendations. Next section describes some preliminary results. 5 Preliminary Results From our ongoing work we have already obtained some preliminary results that we summarize in this section. However detailed results from a complete experimentation process will be performed as future work. The social network topology gives a more realistic structure and organization of the agents, which is closer to how the argumentations would take place in a real group 7 This figure has been obtained using the touch graph application in Facebook. http://apps.facebook.com/touchgraph/ 10 Lara Quijano-Sánchez, Juan A. Recio-García, and Belén Díaz-Agudo when they all argue on which movie to watch. We have informally tested our approach in the movie recommendation case of study and we have seen that our premises and new ideas are effective and produce better results than the Personality Aware Recommendation to Groups method using the all-connected network structure. We have informally question our users and obtained slightly better satisfaction results in the group (around 10% improvement). Besides known groups of people we also plan to make me tests using anonymous data from different users through an application for Facebook called MyPersonality8. It consists on personality self-ratings and friend ratings from users around the world. This includes demographic information such as age and the country they live in, personal information such as favorite films and also a list of their friends which provides an opportunity unique to social networks to examine and model network effects. 6 Conclusions and Future Work In this paper we have introduced a novel method of making recommendations for groups based on existing techniques of collaborative filtering and taking into account the group personality composition and the structure of the group. Once shown that personality profiles can improve a recommendation for a group of people [4], we are going to extend this approach by reflecting in a more realistic way the relationships between the users involved in the recommendation. To achieve this goal we are using the existing extensions of jCOLIBRI2 for building distributed and deliberative CBR systems. The SALADIN extension provides the infrastructure required to build the distributed system, whereas D2ISCO [18] offers deliberation capabilities through a modified version of the AMAL protocol. This ongoing work poses many open issues to be addressed: 1. Test the real improvement of this method using real data from social networks. 2. Study other types of personality and compare them with the TKI conflict modes. We have already done some tests studying how people's affective reactions to the cultural media (favorite songs, movies and classic art) may be an indicator of their own personality [20]. 3. Explore techniques for grouping the users into the subsets involved in the proposed recommendation process. 4. Explore different methods to combine the items proposed by every subset of users taking into account the relationships and personality factors. We think that creating a system with memory of the previous recommendations is a necessary step when providing a whole set of recommendations. We have been focusing on the situation in which a recommender will make recommendations to a 8 http://mypersonality.org/research/interested-in-collaborating/ Error! Use the Home tab to apply title to the text that you want to appear here. 11 group just once. But often the group will expect the system to make a larger set of decisions. We could treat each decision separately, however to avoid future group dissatisfaction, ensuring fairness could be taken into account. For example, there might be a situation when a given recommendation is very attractive for the group as a whole but one group member was especially dissatisfied. It would be desirable that the future recommendations favor that particular group member, so that he/she reaches an appropriate level of satisfaction. We are studying how we could take into account the history of the results that have been obtained. This means that it would be possible to create a system with memory of the previous recommendations for the group, so that if one member had to accept a proposal he wasn't very interested in, now he will have some kind of preference for the next recommendation, meaning that the weight of his opinion will be higher this time. These weights would also be adapted depending on the personality of each member. 7 References 1. D. Bridge, M. H. Göker, L. McGinty, and B.Smyth. Case-based Recommender systems. Knowledge Engineering Review, 20(3):315–320, 2006. 2. Smyth, B.: Case-base recommendation. In Brusilovsky, P., Kobsa, A., Nejdl, W., eds.: The Adaptive Web: Methods and Strategies of Web Personalization. Lecture Notes in Computer Science, Vol. 4321, Berlin Heidelberg New York, Springer-Verlag (2007) this volume. 3. A. Jameson and B. Smyth. Recommendation to groups. In P. Brusilovsky, A.Kobsa, and W. Nejdl, editors, The Adaptive Web, volume 4321 of Lecture Notes in Computer Science, pages 596-627. Springer, 2007. 4. Juan A. Recio-García, Guillermo Jiménez-Díaz, Antonio A.Sánchez-Ruiz and Belén Díaz-Agudo, Personality Aware Recommendations to Groups, in: 3rd ACM Conference on Recommender Systems, New York, USA, ACM Press, 2009 5. J. A. Recio-García, B. Díaz-Agudo, and P. A.González-Calero. Prototyping Recommender Systems in jCOLIBRI. In RecSys '08: Proceedings of the 2008 ACM conference on Recommender systems, pages243-250, New York, NY, USA, 2008. ACM. 6. McCarthy, Joseph F. and Anagnost, Theodore D. MusicFX: an arbiter of group preferences for computer supported collaborative workouts, CSCW '98: Proceedings of the 1998 ACM conference on Computer supported cooperative work, pages 363-372. NY, USA, 1998.ACM. 7. Masthoff, Judith and Gatt, Albert. In pursuit of satisfaction and the prevention of embarrassment: affective state in group recommender systems. User Modeling and User-Adapted Interaction, volume 16, pages 281-319, number 3-4. Hingham, MA, USA, 2006. 8. O'Connor, Mark and Cosley,Dan and Konstan, Joseph A. and Riedl,John. PolyLens: a recommender system for groups of users. ECSCW'01: Proceedings of 12 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. Lara Quijano-Sánchez, Juan A. Recio-García, and Belén Díaz-Agudo the seventh conference on European Conference on Computer Supported Cooperative Work, pages 199-218. Norwell, MA, USA, 2001. Kluwer Academic Publishers. Y.-L. Chen, L.-C. Cheng, and C.-N. Chuang. A group recommendation system with consideration of interactions among group members. Expert Syst.Appl., 34(3):2082-2090, 2008. Juan A. Recio-García, Belén Díaz-Agudo, Marco A. Gómez-Martín and Nirmalie Wiratunga, Extending jCOLIBRI for textual CBR, in: Proceedings of Case-Based Reasoning Research and Development, 6th International Conference on CaseBased Reasoning, ICCBR 2005, Springer, 2005. Belén Díaz-Agudo, Pedro A. González-Calero, Juan A. Recio-García and Antonio A. Sánchez-Ruiz, Building CBR systems with jCOLIBRI (2007), in: Special Issue on Experimental Software and Toolkits of the Journal Science of Computer Programming, 69:1-3 Juan A. Recio-García, Belén Díaz-Agudo, Pedro A. González-Calero and Antonio A. Sánchez-Ruiz, Ontology based CBR with jCOLIBRI, in: Applications and Innovations in Intelligent Systems XIV. Proceedings of AI-2006, the Twenty-sixth SGAI International Conference on Innovative Techniques and Applications of Artificial Intelligence, Springer, 2006 Enric Plaza and Lorraine McGinty. Distributed case-based reasoning. Knowledge Eng. Review, volume 20, number 3, pages 261-265,2005. McGinty, L., Smyth, B.: Collaborative case-based reasoning: Applications in personalised route planning. In: Procs. ICCBR 2001, Springer LNAI. (2001) 362376. Ontanon, S., Plaza, E.: Arguments and counterexamples in case-based joint deliberation. In: Argumentation in Multi-Agent Systems, ArgMAS 2006, Selected and Invited Papers. Volume 4766 of LNCS., Springer (2006) 36-53. Ontanon, S., Plaza, E.: An Argumentation-based Framework for Deliberation in Multi-Agent Systems. Argumentation in Multi-Agent Systems. LNCS, volume 4946, pages 178-196, 2008. K. Thomas and R. Kilmann. Thomas-Kilmann Conflict Mode Instrument. Tuxedo, N.Y., 1974. Sergio González-Sanz, Juan A. Recio-García and Belén Díaz-Agudo, DISCO: Distributed Deliberative CBR Systems with jColibri, in: 1st International Conference on Computational Collective Intelligence, Louisiana, USA, 2009 J. Recio-Garcia. jCOLIBRI: A multi-level platform for building and generating CBR systems. Phd Thesis,Universidad Complutense de Madrid, Spain, 2008. Michael A.Faber and John D.Mayer, Resonance to archetypes in media: There's some accounting for taste. Journal of Research in Personality, Volume 43, Issue 3, June 2009, Pages 307-322.
© Copyright 2026 Paperzz