Improving Recommender System's Efficiency Using Time Context and Group Preferences Mohammad Julashokri, Mohammad Fathian, Mohammad Reza Gholamian, Ahmad Mehrbod Advances in Information Sciences and Service Sciences. Volume 3, Number 4, May 2011 Improving Recommender System's Efficiency Using Time Context and Group Preferences 1 Mohammad Julashokri, 2Mohammad Fathian, Mohammad Reza Gholamian, 4Ahmad Mehrbod 1, First Author Iran University of science and technology, julashokri@ind.iust.ac.ir 2, Iran University of science and technology, fathian@iust.ac.ir 3, Iran University of science and technology, gholamian@iust.ac.ir 4, Isfahan University of technology, mehrbod@cc.iut.ac.ir 3 doi:10.4156/aiss.vol3.issue4.20 Abstract By the expanse of internet stores and products, recommender systems have emerged to increase store attractiveness and develop online customers. Recommender systems are systems which help customers to find product that they want. These systems recommend product to individual customer according to their preferences and interests. Recommender systems use several ways such as collaborative filtering and content-based filtering to create recommendation. In this study we proposed a recommender system based on collaborative filtering. In proposed model we endeavored to improve the customer profile in collaborative systems to enhance the recommender system efficiency. We do this improvement using time context and group preferences. Keywords: Recommender System, Collaborative Filtering, Customer Profile 1. Introduction Since old days, there were different kinds of marketing including mass marketing, segmentation marketing, one to one marketing, etc. One to one marketing is an effort to find customer individual needs and respond to them. This individualization can be in products or in the way of offering products. Recommender systems have emerged in e-commerce applications to support product recommendation, which provide one to one marketing (Schafer et al., 2001; Liu & Shih, 2005). Indeed, recommender systems individualized the way of recommending products. These systems try to recommend different products to each customer with collecting data of customer preferences and data mining techniques. The recent commercial success of recommender systems has been appeared in many online stores such as Amazon.com, CDNow.com, Barnes&Noble.com, and MovieFinder.com. Based on how recommendations are generated, recommender systems are usually classified in to content-based filtering (CBF) (Cheung, Kwok, & Law, 2003; Weng & Liu, 2004; Cho & Kim, 2004; Hung, 2005; Adomavi-cius & Tuzhilin, 2005; Leung, Chan, & Chung, 2006; Shih & Liu, 2008), collaborative filtering (CF) (Karypis, 2001; Sarwar et al., 2001; Cheung et al., 2003; Weng & Liu, 2004; Cho & Kim, 2004; Liua et al., 2005; Adomavicius & Tuzhilin, 2005; Boucher-Ryan & Bridge, 2006; Leung et al., 2006; Shih & Liu, 2008) and hybrid approaches (Burke, 2002; Cho & Kim, 2004; Semeraro et al., 2005; Adomavicius & Tuzhilin, 2005; Choi et al., 2006; Kim, Li, Park, Kim, & Kim, 2006; Shih & Liu, 2008; Albadvi and Shahbazi, 2009). The rest of this study is organized as follows. Section 2 outlines the background and reviews related work on customer profile and recommendation methods. Section 3 illustrates the proposed methods. Finally, Section 4 draws conclusions and summarizes the contributions of this work. 2. Research background In this section we review previous recommendation methods and customer profile. - 162 - Improving Recommender System's Efficiency Using Time Context and Group Preferences Mohammad Julashokri, Mohammad Fathian, Mohammad Reza Gholamian, Ahmad Mehrbod Advances in Information Sciences and Service Sciences. Volume 3, Number 4, May 2011 2.1. Customer lifetime value and RFM evaluation Customer lifetime value is typically used to identify the customers' value for a business and show profitable customers. Businesses can develop marketing strategies for target customer with measuring customer lifetime value because different kind of marketing must be executed for customers with different customer lifetime value. Some studies like Liu and Shih (2005) employed customer life time value for product recommendation. Measuring RFM variables is a proper way to assess customer lifetime value (Liu & Shih, 2005). Bult and Wansbeek (1995) described the RFM terms as follows: (1) R (Recency): time period since last purchase occurred. A lower value of recency means a higher probability of purchase repetition; (2) F (Frequency): number of purchases occurred during defined period. A higher value of frequency means a higher loyalty; (3) M (Monetary): the amount of money spent by customer during the last defined period. A higher value of monetary means a higher profitability. This metrics usually were not ready at first and must be extracted from raw data for data mining process. Some studies employed RFM metrics in recommendation process. Liu and Shih (2005) proposed an approach that clustered the customer with RFM metrics and mined association rules in each cluster for recommendation generation. 2.2. Recommendation methods In the literature, two types of recommendation methods, content-based filtering and collaborative filtering, and a hybrid of them have been more suggested (Resnick & Varian, 1997; Wang, Chuang, Hsu, & Keh, 2004). Content-based filtering is based on a comparison between content of items and a user profile (Wang & Shao, 2004). In content-based filtering method characteristics of user interesting items are extracted and other items with these characteristics are recommended. Systems analyze the content of items and create customer profiles that are a representation of a user’s interest in terms of keywords, phrases, and features. Then, the systems with a comparison between user profile and content of items unknown to the user, estimate which of items could be interesting to the user (Min & Han, 2005; Park and Chang, 2009). Collaborative filtering has been more used in ecommerce applications. Content-based filtering computes similarities between data items and user profiles, but collaborative filtering considers similarities between user profiles. In collaborative filtering a user’s profile consists of user specified ratings to items. These ratings are compared to other users to find similarities between users. Ratings of new items are predicted using a combination of the ratings of the nearest neighbors to those new items. Nearest neighbors of a user are defined using the correlation between past ratings (Montaner, Lopez, & De La Rosa, 2003; Park and Chang, 2009). We would more explain item-based collaborative filtering because our proposed model is based on this method. 2.2.1. Item-based collaborative filtering Collaborative filtering is powerful recommendation method which has been widely used in retail marketing applications. An item-based collaborative filtering recommends products to target customer u based on similarities between items (Sarwar et al., 2001). Item-based collaborative filtering finds products similar to products purchased by target customer then computes the interest level of target customer on those products and finally recommends the top N (N most similar) products to target user. The item-based collaborative filtering algorithm is detailed as follows. At first, customer profile matrix (R) must be prepared. This matrix shows the customer preferences or customer purchasing history. rij represents the interest level of ith customer in jth item. In different cases elements of profile matrix are different; in some case such as study of Sarwar et al.(2000), matrix elements were numbers between 1 to 5 which rij show the interest level of ith user in jth movie and, zero if ith user has not rated jth movie. In Liu and Shih (2005) study elements were binary that rij is one if the ith customer purchased the jth product, and otherwise is zero. Next step in item-based collaborative filtering is to measure similarity between items that can be computed in several ways. One common method to - 163 - Improving Recommender System's Efficiency Using Time Context and Group Preferences Mohammad Julashokri, Mohammad Fathian, Mohammad Reza Gholamian, Ahmad Mehrbod Advances in Information Sciences and Service Sciences. Volume 3, Number 4, May 2011 compute similarity between items i and j is adjusted cosine which is defined as follows (Sarwar et al., 2001): (, ) = ∑∈, , ∑∈, ∑∈, (1) Here, Ru, i and Ru, j are elements of profile matrix showing the interest level of uth customer in ith and jth products respectively. is the average of the uth user's ratings. Only users who have rated both items i and j are participated in similarity computation (figure 1). Figure 1. Isolation of the co-rated items and similarity computation (Sarwar et al., 2001) Next step is prediction of interest level of target customer in products which were obtained from last step. This method predicts the interest level of uth user in ith item by computing the sum of the ratings given by user on the items similar to i. Each ratings should be multiplied to similarity between items i and j. The method predicts interest level of user u in product i (Pu, i) as follows (Sarwar et al., 2001). , = ∑ ,, ∗, ∑ ,, (2) Here, si, N is similarity between items i and N (N means each item which is similar to i) and Ru, N is interest level of user u in item N. 2.3. Customer profile Usually, in collaborative filtering method, similarities between user profiles are computed for recommendation generation. Thus, a proper profile increases the precision of recommender system. Lee and Yang (2003) suggested that important factor in personalization of researches is created the computational model for each user to predict his preferences. Park and Chang (2009) noted that "The development of efficient customer profile models is crucial for improving the recommendation quality of the recommendation system ". In most recommender systems user profile is a matrix that explicitly indicates the users' interest or preference in items (products). Albadvi and Shahbazi (2009) created the user profile structure in their recommender system called HRPCA that is matrix of matrixes. Their user profile contained users ratings on attributes of each grain category. Elements of user profile matrix represent the level of interest of a user in an item. User ratings can be appointed directly from customer or constructed from shopping steps (Cho & Kim, 2004; Albadvi & Shahbazi, 2009; Park & Chang, 2009): = + + - 164 - (3) Improving Recommender System's Efficiency Using Time Context and Group Preferences Mohammad Julashokri, Mohammad Fathian, Mohammad Reza Gholamian, Ahmad Mehrbod Advances in Information Sciences and Service Sciences. Volume 3, Number 4, May 2011 is the total number of clicks of user i across product j and is the total number of clicks of a user i. and are respectively defined as the total number of occurrences of basket placements and purchases of user i across product j. In the cases that ratings are directly appointed by user, usually, the precision is low and numbers must be improved. There are several methods to normalize the ratings. Park and Chang (2009) suggested that group behavior of customers is as important as their individual behavior. 3. Proposed model In this study we propose a five-phase recommendation technique including data preparation, clustering, profile creation, profile improvement, and recommendation generation. In our proposed model for recommending the products, a hybrid approach based on collaborative filtering is used. Figure 2 shows the proposed approach generally. Data Preparation Clustering Profile Creation Profile Improvement Recommendation Generation Figure 2. Proposed model 3.1. Phase 1: data preparation In the first step data would be prepared. There are vast amount of data in real world that must be cleaned, reorganized, reformatted, etc for using in data mining applications. In this phase, data must be transformed in new format appropriate for application. RFM variables must be extracted in this phase. 3.2. Phase 2: clustering In this phase data would be clustered with SOM algorithm. Input fields of algorithm are age, gender, and occupation. SOM clustering would determine the number of clusters; then with that specified number k-means clustering would be executed. The cluster number of each customer would be used as her/his class label. 3.3. Phase 3: Profile creation In this step user profiles would be created. In collaborative filtering user profile usually is matrix that its rows show users and its columns show items. - 165 - Improving Recommender System's Efficiency Using Time Context and Group Preferences Mohammad Julashokri, Mohammad Fathian, Mohammad Reza Gholamian, Ahmad Mehrbod Advances in Information Sciences and Service Sciences. Volume 3, Number 4, May 2011 3.4. Phase 4: Profile improvement The novelty of our work lies in this phase. In literature, there are several ways to improve customer profile. Park and Chang (2009) proposed that in addition to individual behavior, group behavior must be participated in customer profile. In our proposed model groups of users are clusters that were created in phase 2. Group preferences would be used to improving the customer profile at this way: = ∗ + ∗ ̅ (4) Where, represents the element of profile matrix that shows the interest level of customer i in product j and represents the element of improved profile matrix. ̅ is average of interest levels of group of customer i in product j. Weighting values α and β represent relative importance between individual and group preferences. For new customers α = 0 and β = 1; but for other customers these coefficients must be appointed. In our proposed model, according to this theory that whatever customer life time value is higher its preferences are more important, RFM variables are exploited to determine the α and β: α+β=1 = 0.33 ∗ + 0.33 ∗ (5) {, } + 0.33 ∗ } {, (6) R is number of days since last purchase. If R is greater than or equal to 30 the fraction would be changed to this: (7) At this way if R is greater than or equal to 60, 90, and ... the fraction would be changed accordingly. F is number of products purchased by customer in the last month and is average of Fs. Finally, M is is average of Ms. number of products purchased by user in last session and The other way to improve the customer profile is using context. According to theory that customer preferences may be changed during time, we used time context to improve the customer profile in our proposed model. At first products must be divided into k groups. For example in movie store we can divide movies in groups using genre and a movie can be member of more than one group. For participation the time in profile we used this formula: = ∗ = ( ∑∈ ) (8) (9) ∑∈ ∑∈ Where, T ij is the time that customer i rated product j and Tnow is the last session time. k is index of product groups that product j is member of them and customer i has interest level of product j in both period of times Tij and Tnow. Here, r ij represents the element of profile matrix that shows the interest level of customer i in product j and represents the element of improved profile matrix. represents the average of interest levels of customer i in group of products k at time T ij and represents the average of interest levels of customer i in represents the average of average interest levels group of products k at time Tnow. Finally, of customer i at time T ij and represents the average of average interest levels of customer i at time Tnow. - 166 - Improving Recommender System's Efficiency Using Time Context and Group Preferences Mohammad Julashokri, Mohammad Fathian, Mohammad Reza Gholamian, Ahmad Mehrbod Advances in Information Sciences and Service Sciences. Volume 3, Number 4, May 2011 In our proposed model we used both group preferences and time context to improve customer's profile that never have been used together and we changed the way of improving customer's profile by group preferences. 3.5. Phase 5: Recommendation generation Product recommendation for customer i is executed as follows. First, similarity between products preferred by customer i and unseen products is computed. This similarity is computed with adjusted cosine formula illustrated in section II. Then, for products that are most similar to preferred products, the interest level of customer i in them is computed. Then, the products are sorted based on calculated interest level. Finally, the top N products would be recommended. 4. Conclusion Recommender systems are powerful tools that help customers to find products they want to buy from a business. This new technology creates additional value for a business using its purchasing data sets. Recommender systems help customers to find what they really want and save their time and money and help businesses by generating more sales. In this work, we proposed a new approach for product recommendation based on collaborative filtering. In proposed model with attention to customer profile that is one of the important part of a recommender system, we endeavored to improve the customer profile and recommender system efficiency. In proposed model profile was improved using time context and group preferences. We smoothed the elements of customer profile matrix and realized them. There are some limitations in our study. In future, we must evaluate the proposed model with several data sets and compare with other recommender systems based on collaborative filtering. 5. References [1] Adomavicius, G., Tuzhilin, A., "Toward the next generation of recommender systems: A survey of the state-of-the-art and possible extensions", IEEE Transactions on Knowledge and Data Engineering, Vol. 17, No. 6, pp. 734 ~ 749, 2005. [2] Albadvi, A., Shahbazi, M., "A hybrid recommendation technique based on product category attributes", Expert Systems with Applications, Vol. 36, pp. 11480 ~ 11488, 2009. [3] Boucher-Ryan, P. D., Bridge, D., "Collaborative recommending using formal concept analysis", Knowledge-based Systems, Vol. 19, pp. 309 ~ 315, 2006. [4] Bult, J. R., Wansbeek, T. J., "Optimal selection for direct mail", Marketing Science, Vol. 14, No. 4, pp. 378 ~ 394, 1995. [5] Burke, R., "Hybrid recommender systems: Survey and experiments", User Modeling and Useradapted Interaction, Vol. 12, No. 4, pp. 331 ~ 370, 2002. [6] Cheung, K.-W., Kwok, J. T., Law, M. H., "Mining customer product ratings for personalized marketing", Decision Support Systems, Vol. 35, pp. 231 ~ 243, 2003. [7] Cho, Y. H., Kim, J. K., "Application of Web usage mining and product taxonomy to collaborative recommendations in e-commerce", Expert Systems with Applications, Vol. 26, pp. 233 ~ 246, 2004. [8] Choi, S. H., Kang, S., Jeon, J. Y., "Personalized recommendation system based on product specification values", Expert Systems with Applications, Vol. 31, pp. 607 ~ 616, 2006. [9] Hung, L. P., "A personalized recommendation system based on product taxonomy for one-to-one marketing online", Expert Systems with Applications, Vol. 29, pp. 383 ~ 392, 2005. [10] Hwang, Ch.-Sh., "Genetic Algorithms for Feature Weighting in Multi-criteria Recommender Systems", JCIT, Vol. 5, No. 8, pp. 126 ~ 136, 2010. [11] Karypis, G., "Evaluation of item-based top-n recommendation algorithms", In Proceedings of the ACM CIKM conference, pp. 247 ~ 254, 2001. - 167 - Improving Recommender System's Efficiency Using Time Context and Group Preferences Mohammad Julashokri, Mohammad Fathian, Mohammad Reza Gholamian, Ahmad Mehrbod Advances in Information Sciences and Service Sciences. Volume 3, Number 4, May 2011 [12] Kim, B. M., Li, Q., Park, C. S., Kim, S. G., Kim, J. Y., "A new approach for combining contentbased and collaborative filters", Journal of Intelligent Information Systems, Vol. 27, No. 1, pp. 79 ~ 91, 2006. [13] Lee, C. H., Kim, Y. H., Rhee, P. K., "Web personalization expert with combining collaborative filtering and association rule mining technique", Journal of Expert Systems with Application, Vol. 21, No. 3, pp. 131 ~ 137, 2001. [14] Lee, W. P., Yang, T. H., "Personalizing information appliances: A multi-agent framework for TV programme recommendation", Expert Systems with Applications, Vol. 25, No. 3, pp. 331 ~ 341, 2003. [15] Leung, C. W.-K., Chan, S.C.-F., Chung, F.-L., "A collaborative filtering framework based on fuzzy association rules and multiple-level similarity", Knowledge and Information Systems, Vol. 10, No. 3, pp. 357 ~ 381, 2006. [16] Lihua, W., Lu, L., Jing, L., Zongyong, L., "Modeling user multiple interests by an improved GCS approach", Expert Systems with Applications, Vol. 29, pp. 757 ~ 767, 2005. [17] Liu, D.-R., Shih, Y.-Y., "Hybrid approaches to product recommendation based on customer life time value and purchase preferences", The Journal of Systems and Software, Vol. 77, pp. 181 ~ 191, 2005. [18] Liu, D.-R., Shih, Y.-Y., "Integrating AHP and data mining for product recommendation based on customer lifetime value", Information & Management, Vol. 42, pp. 387 ~ 400, 2005. [19] Liua, D. R., Shiha, Y. Y., "Integrating AHP and data mining for product recommendation based on customer life time value", In formation and Management, Vol. 42, pp. 387 ~ 400, 2005. [20] Min, S. H., Han, I., "Detection of the customer time-variant pattern for improving recommender systems", Expert Systems with Application, Vol. 28, No. 2, pp. 189 ~ 199, 2005. [21] Montaner, M., Lopez, B., De La Rosa, J. L., "A taxonomy of recommender agents on the Internet", Artificial Intelligence Review, Vol. 19, No. 4, pp. 285 ~ 330, 2003. [22] Park, Y.-J., Chang, K.-N, "Individual and group behavior-based customer profile model for personalized product recommendation", Expert Systems with Applications, Vol. 36, pp. 1932 ~ 1939, 2009. [23] Resnick, P., Varian, H. R., "Recommender systems", Communication soft he ACM, Vol. 40, No. 3, pp. 56 ~ 60, 1997. [24] Sarwar, B., Karypis, G., Konstan, J., Riedl, J., "Item-based collaborative filtering recommendation algorithms", In Proceedings of the international world wide web conference (WWW10), Hong Kong, pp. 285 ~ 295, 2001. [25] Sarwar, B., Karypis, G., Konstan, J., Riedl, J., "Analysis of recommendation algorithms for ecommerce", In Proceedings of the ACM Conference (ElectronicCommerce), pp. 158 ~ 167, 2000. [26] Schafer, J. B., Konstan, J. A., Riedl, J., "E-commerce recommendation applications", Journal of Data Mining and Knowledge Discovery, Vol. 5, No. 1/2, pp. 115 ~ 152, 2001. [27] Semeraro, G., Lops, P., Degemmis, M., "Word Net-based user profiles for neighborhood formation in hybrid recommender systems", In Proceedings of the 5th international conference on hybrid intelligent systems (HIS’05), pp.291 ~ 296, 2005. [28] Shih, Y. Y., Liu, D. R., "Product recommendation approaches: Collaborative filtering via customer life time value and customer demands", Expert Systems with Applications, Vol. 35, No. 1–2, pp. 350 ~ 360, 2008. [29] Wang, F. H., Shao, H. M., "Effective personalized recommendation based on time-framed navigation clustering and association mining", Expert Systems with Application, Vol. 27, No. 3, pp. 365 ~ 377, 2004. [30] Wang, Y. F., Chuang, Y. L., Hsu, M. H., Keh, H. C., "A personalized recommender system for the cosmetic business", Expert Systems with Applications, Vol. 26, No. 3, pp. 427 ~ 434, 2004. [31] Weng, S. S., Liu, M. j., "Feature-based recommendations for one-to-one marketing", Expert Systems with Applications, Vol. 26, pp. 493 ~ 508, 2004. [32] Yang, H.-L., Yang, H.-F., "Recommendation Mechanism Based on Multi-attribute Utility Theory", JDCTA, Vol. 5, No. 3, pp. 373 ~ 382, 2011. - 168 -