Probabilistic Model Estimation for Collaborative Filtering ... - CiteSeerX

1 downloads 0 Views 142KB Size Report
recommendations based on those ratings to a given user. ..... similarity between an object and center of cluster k . ... of users, who rated on both item k and l ; u.
Probabilistic Model Estimation for Collaborative Filtering Based on Items Attributes Byeong Man Kim, Qing Li Kumoh National Institute of Technology Dept. of Computer Sciences Kumi, kyungpook, 730-701, South Korea bmkim, [email protected] Abstract With the development of e-commerce and the proliferation of easily accessible information, recommender systems have become a popular technique to prune large information spaces so that users are directed toward those items that best meet their needs and preferences. While many collaborative recommender systems (CRS) have succeeded in capturing the similarity among users or items based on ratings to provide good recommendation, there are still some challenges for them to be a more efficient RS. In this paper, we address three problems in CRS (user bias, non-transitive association, and new item problem) and provide a new item-based probabilistic model approach in order to solve the addressed problems in hopes of achieving better performance. In this probabilistic model, items are classified into groups and predictions are made for users considering the Gaussian distribution of user ratings. Experiments on a real-word data set illustrate that our proposed approach is comparable with others.

1. Introduction Recommender systems, which apply filtering techniques, produce individualized recommendations as output or have the effect of guiding the user in a personalized way to interesting or useful objects, such as books, music, and movie etc., in a large space of possible options. Such systems have an obvious appeal in an environment where the amount of on-line information vastly outstrips any individual's capability to survey it. A growing number of companies, including Amazon.com, CDNow.com, and Levis.com, employ or provide recommender system solutions. Recommender systems are characterized with “individualized” that separate them from search engines that focus on the “match”. The search engine is supposed to return all those items that match the query ranked by degree of “match”. At the initial state, many recommender systems were fairly simple query-based information retrieval systems, which were based on the content-based filtering technique. Later, GroupLens [15]

and Ringo [19] developed independently were the first to automate prediction. Collaborative recommender systems collect ratings of items from many individuals and make recommendations based on those ratings to a given user. These include MovieLens system, which recommends movies and GAB system, which recommends web pages based on the bookmarks [20]. Collaborative filtering is a technology wherein peer opinions are employed to predict the interests of others. A target user is matched against the database to discover neighbors, which are other users who have similar historical tastes. Items that neighbors like are then recommended to the target user. Most collaborative filtering techniques falls into one of two categories: memory-based and model-based methods. Memory-based methods are deployed widely at many commercial websites, because not only they are simple and intuitive on a conceptual level, but also they are deemed sufficiently accurate for many real-word applications. Memory-based methods store historic user ratings in a database and identify users with the similar preferences with an active user for whom a recommendation has to be made. In the predicting phase, they would predict the active user’s ratings based on the corresponding ratings of these similar or like-minded users. In contrast, model-based algorithms build models that can explain the records of historic ratings well and predict the ratings of active users using estimated models. Both types of approaches have been shown to be effective for collaborative filtering. In general, all collaborative filtering approaches assume that users with similar “tastes” would rate items alike, and the idea of clustering is exploited in all approaches either explicitly or implicitly. Compared with memory-based approaches, model-based approaches provide a more principled way of performing clustering. Several approaches have been proposed and studied in the previous work [2, 7, 8, 16, 18]. These promising models have succeeded in capturing user/item similarities through probabilistic clustering. In this paper, we suggest a method of probabilistic model estimation for collaborative filtering, where item are partitioned into groups and predictions for users are

This work was supported by grant No. R05-2004-000-10190-0 from the Korea Science and Engineering Foundation.

Proceedings of the IEEE/WIC/ACM International Conference on Web Intelligence (WI’04) 0-7695-2100-2/04 $ 20.00 IEEE

made by considering the Gaussian distribution of user ratings in each group. It is simple and intuitive on a conceptual level, as other clustering methods do. In addition, we apply the information of item attributes to complement the user ratings for capturing the item similarity to solve the three following problems - user bias, non-transitive association, and new item problem. Our experimental works indicate that the correct application of item attributes can improve the recommendation performance. The remainder of the paper is organized as follows. The next section provides a brief description of related work. The proposed method is presented in Section 3. Section 4 describes the contribution of item attributes. Section 5 presents our experiment results. The final section provides some concluding remarks.

2. Related Works The viewpoint of clustering is represented in both memory-based and model-based collaborative filtering techniques. For most collaborative filtering techniques including the most popular collaborative filtering, namely Pearson correlation coefficient method, and the latest and promising probabilistic collaborative filtering model, the ultimate goal is to partition users or items into groups of similar tastes or attributes, and then make recommendations. The idea of clustering is implemented explicitly or implicitly in most collaborative filtering techniques by various ways. The original collaborative filtering, Pearson correlation coefficient method, aims at grouping the like-minded users for an active user. It first calculates the similarities between the active user and others, and then classifies users into groups with similar tastes. There are a series of works based on this idea with somewhat adjustments. For example, a variety of similarity metrics are adopted instead of the original Pearson correlation, such as meansquared difference [19], vector similarity [6] or the probability that users are of the same type [12]. Based on the similar idea, Sarwar [17] suggested an item-based collaborative filtering where the clustering objects are items instead of users. As for probabilistic models, they generally exploit the idea of clustering explicitly, which construct a model of underlying user preferences, from which predictions are inferred. Examples include the Bayesian clustering (BC) model [6], the Bayesian network (BN) model [6], and the Aspect model [15]. The basic idea of the BC model is to assume ratings are observations of the multinomial mixture model with parameters, and the model is estimated by using EM. The BN model aims at capturing item dependency, where each item is a node and dependency structure is learned from observables. Whereas, the aspect model is based on a latent cause

model that introduces the notion of user communities or groups of items. With the successful application of the aspect model, various probabilistic models have been developed by researchers to complement its shortcomings. The flexible mixture model [7] extends clustering algorithms for collaborative filtering by clustering both users and items together simultaneously without assuming that each user and item should only belong to a single cluster. The preference-based graphic model [16] addresses the distinction between users, that is to say, users with similar interests in items can have very different rating patterns; some users tend to assign a higher rating to all items than other users. Alexandrine [2] extends the aspect model by incorporating the content information of items in order to improve quality of recommendation and overcome sparsity. Hofmann [18] further extends the aspect model to the PLSA, which supports the numerical ratings instead of categorical ratings (e.g., binary ratings). Besides the above methods where the idea of clustering is integrated into some probabilistic or memory-based techniques, some researchers also apply data clustering algorithm to rating data in collaborative filtering as an isolated step. Mark [8] uses existing data clustering algorithms to partition a set of items based on user rating data, then predictions are calculated independently within each partition. SWAMI [1] applies the meta-user mechanism for recommendation by first grouping users to create the profile for each cluster as a meta-user, and then predictions are calculated using Pearson correlation method where only meta-users are considered as potential neighbors. Li and Kim [13,14] suggest applying clustering method to include content information for collaborative filtering. Either the memory–based or model-based method, they have to face the following challenges when capturing the user or item similarities. The first challenge is the non-transitive association [21]. In the user-based CF, if two users have both read and liked similar items, but not the same ones, the relationship between them is lost. Such a problem is called user-based non-transitive association problem. By using the item similarity instead of user similarity, the item-based framework avoids the user-based non-transitive association problem. However, it brings the item-based non-transitive association. For example, if two similar items have never been read or liked by the same user, the relationship between them is lost. Therefore those two items can not be classified into the same community by a pure item-based CF. Similar items in different groups will definitely affect the quality of recommendation service negatively.

Proceedings of the IEEE/WIC/ACM International Conference on Web Intelligence (WI’04) 0-7695-2100-2/04 $ 20.00 IEEE

Table 1 User bias problem Item ID Item 1 Item 2 Item 3 Item 4 Item 5

Jack 5 4

Oliver 4 4 4 4

Peter 3 3 3 3

Rock 98% 90% 98% 2% 98%

Country 2% 10% 2% 98% 2%

The second challenge is user bias from historical ratings. For instance, the item-based recommender cannot distinguish two items which have the same historical ratings of users but different content attributes. As Table 1 shows, music 3 and 4 have the same historical ratings as music 1 and 2 rated by Oliver and Peter. According to the item-based CF, music 3 and 4 have the same opportunity to be recommended to Jack by the system. However, if music 1, 2 and 3 belong to rock music and music 4 belongs to country music, it is obvious that music 3 should have the privilege to be delivered to Jack, because Jack prefers rock music which can be inferred from historical ratings. With regard to capturing the user similarities, the same problem occurs. The third one is the cold start problem. It is hard for pure CF to recommend new items, because no user made any ratings on them, and thereby it is difficult to determine their own communities. The same to new users, however, it can be partially solved by the gauge set as Jeter RS did.

3. Our approach

1 ED (Vy ,Vz )

p( z | y)

¦

k

(1)

1 ED(Vy ,Vz c )

zc 1

where Vy is the rating vector of item y , Vz is the centre vector of item community z , ED(.) is the function of Euclidean distance between two vectors. We assume that the ratings for a certain item in item community z satisfy Gaussian distribution. 1 (v  P ) 2 exp[ ] 2V 2 2S V

p (v; P ,V )

(2)

where P denotes mean rating, V denotes the spread of the ratings. So, the average user rating of item community z on a particular user u is defined as the weighted average of user ratings on item y .

¦ ¦

yU z

Pu , z

vu , y p ( z | y )

yU z

(3)

p( z | y )

where, U z is the domain of items which belong to item community z , and vu , y is user u ’s rating on item y . The spread of ratings V y. z is calculated as follows V u2, z

¦

yU z

(vu , y  Pu , z ) 2 p ( z | y )

¦

yU z

(4)

p( z | y)

Finally, the expected response of users is easily computed as

3.1 Class Z – Item community

p (v | u , y )

¦ p ( z | y ) p (v | z , u ) z



Y1

¦ p( z | y) p(v; P

Yk

u, z

(5)

,V u , z )

z

Z1



Zk

E[ v | u , y ]

³ vp(v | u, y) dv ¦ p( z | y) P v

V1

U1



u, z

z

Vn

where u , y , z and v denote a user, an item, an item community and a rating, respectively. P u , z is the mean

Uk

rating of user u in item community z , and V u. z is the spread of the ratings of user u in item community z . Our approach seems quite similar to the PLSA model [18], while the PLSA model assumes that the ratings for a certain user in latent class z satisfy Gaussian distribution instead of items, furthermore the meaning of z is very different. In our approach, a latent variable is only associated with items, whereas the PLSA model associates a latent variable with every observation triplet (u, v, y ) . Although the viewpoint of the PLSA model seems more reasonable than our suggested approach, we believe our approach is more flexible and complements the PLSA model with acceptable recommendation performance.

Figure1. Dependency Relationship In our approach, we introduce a hidden variable z , which can be treated as the similar group of items or item community. We assume that the dependency relationship between the hidden variable z and the other variables, namely user u , rating v and item y ˈ is shown in Figure 1. We can explicitly create this latent variable z by a data clustering algorithm and estimate p( z | y ) as the membership degree to class z , which can be calculated by the following equation.

Proceedings of the IEEE/WIC/ACM International Conference on Web Intelligence (WI’04) 0-7695-2100-2/04 $ 20.00 IEEE

3.2 Data Clustering In our approach, the data clustering method plays an important role, because all the following statistic probabilities are calculated based on the clustering result, item community z . When calculating the item similarities for creating item community z , the three mentioned challenges have to be paid more attention. Since our suggested method is based on the item similarities, we address our solution to those three challenges relevant to the item similarities. Each item has its own attributes. For example, movie items contain such attributes as actor, actress, director, genre, and synopsis. Thus, we can group the items based on those attributes into similar attribute item cliques using the K-means clustering algorithm with a little adjustment. Instead of being assigned to only one group, an item is assigned to every group with the following probability. Pro(j,k)=1-

are computing the extent to which two items are similar by both ratings and item attributes. In addition, we do not consider the effect of negative correlations, because the clustering algorithm considered is not designed to handle negative similarities. The detail of our clustering algorithm is as follows. 1. Select k items at random to serve as initial cluster centers. 2. Assign all items to the “best” cluster. An item’s best cluster is defined to be the cluster center with which the item is best correlated. The new center is the item that has the best overall correlation with all the other items in the cluster. The Pearson correlation between an item and all of its other cluster members is applied as our measure of “best”. COR z (k) =

CS(j,k) MaxCS(i,k)

¦

Oliver 4

Peter 1

Clique 1 98% 96% 98%

Clique 2 4% 5% 4%

After getting this new matrix, we are able to group our data to build class z (item community) not only based on the user ratings but also on the item attributes. Similar to grouping the items into item attribute cliques, our clustering method for building class z is derived from the well-known k-Medoids clustering algorithm [4]. Informally, our algorithm creates a fixed number k, which is the number of item clusters, and then creates a composite item profile for each cluster from its members as the representative of item community. After clustering, a representative is created for each cluster. The representative is a composite item where the user vote is the average of corresponding user ratings from the members of the item community. The measure we use to calculate similarity between items is the Pearson correlation coefficient. In effect, we

m u 1

m

(9)

u=1

(R u,k  Ru )(R u,l  Ru )

(R u,k  Ru )2

¦

m u 1

(10)

(R u,l  Ru ) 2

where COR z (k) denotes the correlation between the item k and its cluster z ; sim(k,l) is the similarity between item k and l ; m denotes the total number of users, who rated on both item k and l ; Ru is the average ratings of user u ; Ru ,k , Ru ,l denote the rating of user u on item k and l , respectively. 3. Repeat steps 2 and 3 until the cluster have stabilized, i.e. no items are assigned to new clusters. 4. Create a representative of each cluster.

Table 2 Item non-transitive problem Jack 5

sim(k,l)

¦

sim(k,l) =

where Pro(j,k) is the possibility of object j belonging to cluster k ; The CS(j,k) denotes the function to calculate the counter-similarity between object j and center of cluster k ; Max CS(i,k) denotes the maximum countersimilarity between an object and center of cluster k . The counter similarity CS(j,k) is calculated by Euclidean distance in our approach. Thus the original item-user matrix is extended to the one such that item attribute cliques are regarded as new users as shown in table 2.

Item ID Item 1 Item 2 Item 3

¦

lz š k zl

(8)

However, regardless of which clustering algorithm is employed, the method of choosing the initial cluster center is a critical issue. In this regard, we recommend the refinement algorithm suggested by Bradley [3].

4. Contribution of item attributes As noted earlier, there are three challenges for capturing the user or item similarity in CF. The following part explains how the item attributes are able to be used to alleviate those problems. As for item-based non-transitive association, as shown in Table 2, we are not able to find the relationship among item 1, 2 and 3 due to the lacking of the ratings, if the user ratings are solely considered. However, with the help of item attribute clusters, the inner association of items can be mined, which in turn contributes to the participation of class z.

Proceedings of the IEEE/WIC/ACM International Conference on Web Intelligence (WI’04) 0-7695-2100-2/04 $ 20.00 IEEE

5. Experiments Evaluation Currently, we carry out experiments based on the MovieLens data set. There are 1,682 movies (items) in this data set and 943 users with a total of over 100,000 ratings. The ratings in the MovieLens data were explicitly entered by users and are integers ranging from 1 to 5. Allbut1 [2] protocol is applied to evaluate the obtained prediction accuracies. That is to say, we randomly leave out exactly one rating for every user who at least posses two ratings. MAE (Mean Absolute Error) [2] is used as metrics in our experiments.

Probabilistic

i. Fill the missing data with 0, then use classic kmedoids algorithm to create item communities.

Filling zero

Filling average

Figure 2. Clustering Methods Number of item communities: The item community is the representative of items with the similar pattern. In our clustering phase, we classify the items into k groups. In the case that k equals to 1, it means that all items are treated as one community. In figure 3, it is observed that the number of communities does affect the quality of prediction, and the optimal performance is achieved with k =70. Comparison: We have implemented a baseline method to calibrate the achieved results where items are randomly grouped into classes instead of using clustering method. In addition, we have implemented a standard memorybased method – Simple Pearson method [5]. As shown in Table 3, our approach has a better performance than both the baseline and simple Pearson method.

1.21

Model

Clustering Method: In our suggested probabilistic model estimation for CF, the class z is obtained by clustering algorithm. One of the biggest challenges for clustering the recommendation data is the missing data. For example, in the MovieLens data, only about 6.3% of data are filled in and the remainder is missing. It is unreasonable for us to ignore the missing data, if we do. Hence, we apply two variant pre-processing methods to observe the effect of missing data.

1 0.98 0.96 0.94 0.92 0.9 0.88 Pearson correlation

1.16

MAE

4.1 Evaluation of the Estimation for CF

Please note that, in our adopted clustering method, we only consider pair ratings of two items to calculate their similarity instead of filling in any value for the missing data. From our experiments, as shown in Figure 2, our adopted clustering method illustrates a favorable performance than the others.

MAE

With regard to the user bias problem, as shown in Table 1, if item 1 and 2 consist one item clique, item 3 and 4 have the same relationship to this item clique based on the historical user ratings. Whereas, if we not only considered the information from user ratings but also from similar item attribute cliques - rock and country, item 3 has a stronger association with that clique than item 4, which is reasonable because item 1, 2 and 3 all belong to the same rock genre,. In addition, if item 5 is added into the database as shown in Table 1, with the information from similar item attribute cliques, we are able to build the relationship between this new one and cliques, and thus the prediction for this new one is accessible. So to speak, the new item problem is also done. With the help of the similar item attribute cliques, it seems to deal well with those challenges. However, it depends on the assumption that the information from similar item cliques is accurate. The following experimental evaluation section examines whether the similar item cliques are able to provide useful information and how they affect the recommendation in our suggested probabilistic model for CF.

1.11 1.06 1.01 0.96 0.91

1

10

30

50

70

90

150

200

Figure 3. No. of l item communities Table 3. Comparison Method

MAE

Baseline (k=70)

1.311

0%

Simple Pearson

0.985

33.1%

Our approach (k=70)

0.921

42.3%

ii. Fill the missing ratings of each item with the average user ratings on it, then apply classic kmedoids algorithm to create item communities.

Proceedings of the IEEE/WIC/ACM International Conference on Web Intelligence (WI’04) 0-7695-2100-2/04 $ 20.00 IEEE

Relative improvement

As noted earlier, we have suggested applying item attributes to face the three challenges relevant to the item similarity. The similarity for building the item communities consists of the sub-similarity calculated from user ratings and the sub-similarity calculated from similar item attribute cliques. Although the weights of two sub-similarities depend on the dataset, to be simple, the total similarity is just the average of two subsimilarities in our experiments. In addition, there is another uncertain factor, that is, No. of similar attribute cliques which is also sensitive to the retrieval data. In our experiments, we also find that the recommendation performance is not very sensitive to the No. of similar attribute cliques as shown in Figure 4. In our experiments, we set it to 30.

MAE

0.94

0.93

the genre attribute makes the most contribution if each attribute is applied individually. However, the combination of all the attributes is able to provide a more ideal recommendation.

0.95

MAE

5.2 Item Attributes

0.9 0.85 0.8 Genre

Actor+Actress

Director

All

Figure 6. Comparison New item Problem: As for the new item problem, we randomly selected the number of items from 5 to 25 with the step of 5, and delete all the ratings of those items and treat them as new items. It can be observed from Figure 7 that with the help of item attributes our approach deals reasonably with the new movies. 0.9

0.92

5

10

15

20

25

30

40

50

100

0.89

Figure 4. No. of similar attribute cliques Is the information obtained from item attributes valuable? In order to observe the contribution of item attributes, we use the genre information provided by the MovieLens data to create the similar item attribute cliques. From Figure 5, it can be observed that with the help of item genre information, our suggested method shows a more favorable performance, that is to say, we can get useful information from item attributes.

0.94

MAE

0.92 0.9 0.88 0.86 0.84 No Genre

Genre

Figure 5. Comparison How do the item attributes affect performance? Since the movie may have many attributes, such as genre, director, actor, and actress. In order to observe the performance and relative importance of those attributes, we construct the similar item attribute cliques by different attributes and their combination. As shown in Figure 6,

MAE

No. of similar communities

0.88

0.87

0.86 5

10

15

all excluding new ones

20

25

new movies

Figure 7. New movies

6. Conclusions In this paper, we suggest an efficient probabilistic model estimation for CF. Here, we partition the items into groups and making prediction for users considering the Gaussian distribution of user ratings. We also address the three challenges in CF - user bias, non-transitive association, and new item problem. Our work indicates that our probabilistic model shows a favourable performance and the correct application of the item attributes information can improve the recommendation service. Our current work only focuses on the numerical ratings, however, binary ratings as clickstreams is widely used on the internet and studied by many researchers [9,10] , we will extend our approach to the binary ratings based on the Bernoulli or Poisson models, which are more accurate than Gaussian model for binary data.

Proceedings of the IEEE/WIC/ACM International Conference on Web Intelligence (WI’04) 0-7695-2100-2/04 $ 20.00 IEEE

7.

References

[1] http://guir.cs.berkeley.edu/projects/swami/ [2] Alexandrin Popescul, Lyle H. Ungar, David M. Pennock, and Steve Lawrence. “ Probabilistic Models for Unified Collaborative and Content-Based Recommendation in Sparse-Data Environments.” In Proceedings of the 17'th Conference on Uncertainty in Artificial Intelligence (UAI 2001), Seatle, WA, 2001. [3] Bradley, P. S. and Fayyad U.M. “Refining Initial Points for K-Means Clustering”. ICML '98. San Francisco, USA. pp. 91- 99, 1998. [4] Han, J., and Kamber, M.. “Data mining: Concepts and Techniques”. New York: Morgan-Kaufman, 2000. [5] Herlocker, J., Konstan, J., Borchers A., and Riedl, J.. “An algorithmic framework for performing collaborative Filtering”, In Proc. ACM-SIGIR Conf., pp. 230-237 , 1999. [6] J. S. Breese, D. Heckerman, and C. Kardie. “Empirical Analysis of Predictive Algorithms for Collaborative Filtering”. In Proc. Of the 14th Conference on Uncertainty in Artificial Intelligence, pp.43-52, 1998. [7] Luo Si, Rong Jin. “Flexible Mixture Model for Collaborative Filtering”. In Proc. of ICML 2003, pp.704-711, 2003. [8] O'Conner, M. and Herlocker, J.. “Clustering items for collaborative filtering”, In Proc. ACM-SIGIR Workshop on Recommender Systems, 1999. [9] O. Nasraoui and M. Pavuluri, “Accurate Web Recommendations Based on Profile-Specific URLPredictor Neural Networks”. In Proc. of WWW, NY, 2004. [10] O. Nasraoui and M. Pavuluri, “A Context UltraSensitive Approach to High Quality Web Recommendations based on Web Usage Mining and Neural Network Committees”. In Proc. of “International Web Dynamics Workshop”, WWW NY, 2004. [11] Popescul, A., Ungar, L. H., Pennock, D. M. and Lawrence, S.. “Clustering and Identifying Temporal Trends in Document Databases”, In Proceedings of

the IEEE Advances in Digital Libraries 2000 (ADL 2000), Washington, D.C. 2000. [12] Pennock D.M., Horvitz E., Lawrence S., Giles C. L.. “Collaborative Filtering by Personality Diagnosis: A Hybrid Memory- and Model-Based Approach”, Proceedings of the Sixteenth Conference on Uncertainty in Artificial Intelligence (UAI-2000), pp. 473-480, San Francisco, 2000. [13] Qing Li, B.M. Kim. "Clustering Approach for Hybrid Recommender System", Proceedings of IEEE/Web Intelligence-2003, Halifax, Canada, 2003. [14] Qing Li, B.M. Kim, G. D. Hai,D.H Oh. "A Collaborative Music Recommender based on Audio Features", In Pro. Of SIGIR-04, Sheffield, UK ,2004. [15] Resnick, P., Iacovou, N., Suchak, M., Bergstorm, P. and Riedl, J.. “GroupLens: An open architecture for collaborative filtering of Netnews”, In Proc. ACM Conf. on Computer-Supported Cooperative Work. pp.175-186 , 1994. [16] Rong Jin, Luo Si, Chengxiang Zhai, James P. Callan. “Collaborative filtering with decoupled models for preferences and ratings”. CIKM 2003, pp.309-316, 2003. [17] Sarwar, B. M., Karypis, G., Konstan, J. A. and Riedl, J. “Item-based Collaborative Filtering Recommendation Algorithms”, In Proc. Tenth Int. WWW Conf. 2001, pp. 285-295 , 2001. [18] T. Hofmann. “Collaborative Filtering via Gaussian Probabilistic Latent Semantic Analysis”. In Proc. SIGIR’03, pp.259-266, 2003. [19] Upendra, S. and Patti, M.. “Social Information Filtering: Algorithms for Automating "Word of Mouth"”, In Proc. ACM CHI'95 Conf. on Human Factors in Computing Systems. pp.210—217, 1995. [20] Wittenburg, K., Das, D., Hill, W. and Stead, L. “Group Asynchronous Browsing on the World Wide Web”. In Proc. of Fourth International World Wide Web Conference, pp.51-62, 1995. [21] Zan Huang, Hsinchun Chen and Daniel Zeng. 2004. “Applying associative retrieval techniques to alleviate the sparsity problem in collaborative filtering”. ACM TOIS archive Volume 22, Issue 1.

Proceedings of the IEEE/WIC/ACM International Conference on Web Intelligence (WI’04) 0-7695-2100-2/04 $ 20.00 IEEE