Relevance Feedback Models for Recommendation
Masao Utiyama
National Institute of Information and Communications Technology
3-5 Hikari-dai, Soraku-gun, Kyoto 619-0289 Japanmutiyama@nict.go.jp
Mikio Yamamoto
University of Tsukuba, 1-1-1 Tennodai, Tsukuba, 305-8573 Japan
myama@cs.tsukuba.ac.jp
Abstract
We extended language modeling approaches in information retrieval (IR) to
combine collaborative filtering (CF) andcontent-based filtering (CBF). Our approach is based on the analogy between
IR and CF, especially between CF and relevance feedback (RF). Both CF and RF
exploit users’ preference/relevance judgments to recommend items. We first introduce a multinomial model that combines CF and CBF in a language modelingframework. We then generalize the modelto another multinomial model that approximates the Polya distribution. This generalized model outperforms the multinomial
model by 3.4% for CBF and 17.4% for
CF in recommending English Wikipedia
articles. The performance of the generalized model for three different datasets
was comparable to that of a state-of-theart item-based CF method.

1

Introduction

Recommender systems (Resnick and Varian,1997) help users select particular items (e.g,movies, books, music, and TV programs) thatmatch their taste from a large number of choices
by providing recommendations. The systems either recommend a set of N items that will be ofinterest to users (top-N recommendation problem)
or predict the degree of users’ preference for items(prediction problem).
For those systems to work, they first have toaggregate users’ evaluations of items explicitly or
implicitly. Users may explicitly evaluate certain
movies as rating five stars to express their preference. These evaluations are used by the systems

as explicit ratings (votes) of items or the systems
infer the evaluations of items from the behavior ofusers and use these inferred evaluations as implicit
ratings. For example, systems can infer that users
may like certain items if the systems learn whichbooks they buy, which articles they read, or which
TV programs they watch.
Collaborative filtering (CF) (Resnick et al.,
1994; Breese et al., 1998) and content-based (oradaptive) filtering (CBF) (Allan, 1996; Schapire
et al., 1998) are two of the most popular typesof algorithms used in recommender systems. A
CF system makes recommendations to current(active) users by exploiting their ratings in the
database. User-based CF (Resnick et al., 1994;
Herlocker et al., 1999) and item-based CF (Sarwar
et al., 2001; Karypis, 2001), among other CF algorithms, have been studied extensively. User-based
CF first identifies a set of users (neighbors) thatare similar to the active user in terms of their rating patterns in the database. It then uses the neighbors’ rating patterns to produce recommendations
for the active user. On the other hand, item-based
CF calculates the similarity between items beforehand and then recommends items that are similar
to those preferred by the active user. The performance of item-based CF has been shown to becomparable to or better than that of user-based CF(Sarwar et al., 2001; Karypis, 2001). In contrast
to CF, CBF uses the contents (e.g., texts, genres,
authors, images, and audio) of items to make recommendations for the active user. Because CF
and CBF are complementary, much work has been
done to combine them (Basu et al., 1998; Yu etal., 2003; Si and Jin, 2004; Basilico and Hofmann,
2004).
The approach we took in this study is designed
to solve top-N recommendation problems with im-plicit ratings by using an item-based combinationof CF and CBF. The methods described in thispaper will be applied to recommending English
Wikipedia1 articles based on those articles editedby active users. (This is discussed in Section 3.)
We use their editing histories and the contents of
their articles to make top-N recommendations. We
regard users’ editing histories as implicit ratings.
That is, if users have edited articles, we consider
that they have positive attitudes toward the articles. Those implicit ratings are regarded as positive examples. We do not have negative examples
for learning their negative attitudes toward articles. Consequently, handling our application withstandard machine learning algorithms that require
both positive and negative examples for classification (e.g., support vector machines) is awkward.
Our approach is based on the advancement inlanguage modeling approaches to information retrieval (IR) (Croft and Lafferty, 2003) and extends
these to incorporate CF. The motivation behind ourapproach is the analogy between CF and IR, especially between CF and relevance feedback (RF).
Both CF and RF recommend items based on user
preference/relevance judgments. Indeed, RF techniques have been applied to CBF, or adaptive filtering, successfully (Allan, 1996; Schapire et al.,1998). Thus, it is likely that RF can also be applied
to CF.
To apply RF, we first extend the representationof items to combine CF and CBF under the models
developed in Section 2. In Section 3, we report
our experiments with the models. Future work andconclusion are in Sections 4 and 5.

2

Relevance feedback models

The analogy between IR and CF that will be exploited in this paper is as follows.2 First, a document in IR corresponds to an item in CF. Both are
represented as vectors. A document is represented
as a vector of words (bag-of-words) and an item
is represented as a vector of user ratings (bag-ofuser ratings). In RF, a user specifies documentsthat are relevant to his information need. These
documents are used by the system to retrieve new1

http://en.wikipedia.org/wiki/Main Page
The analogy between IR and CF has been recognized.
For example, Breese et al. (1998) used the vector spacemodel to measure the similarity between users in a user-based
CF framework. Wang et al. (2005) used a language modelingapproach different from ours. These works, however, treated
only CF. In contrast with these, our model extends language
modeling approaches to incorporate both CF and CBF.
2

relevant documents. In CF, an active user (implicitly) specifies items that he likes. These items areused to search new items that will be preferred by
the active user.
We use relevance models (Lavrenko and Croft,
2001; Lavrenko, 2004) as the basic frameworkof our relevance feedback models because (1)they perform relevance feedback well (Lavrenko,
2004) and (2) they can simultaneously handle different kinds of features (e.g., different language
texts (Lavrenko et al., 2002), such as texts and images (Leon et al., 2003). These two points are essential in our application.
We first introduce a multinomial model following the work of Lavrenko (2004). This model isa novel one that extends relevance feedback approaches to incorporate CF. It is like a combination of relevance feedback (Lavrenko, 2004) andcross-language information retrieval (Lavrenko etal., 2002). We then generalize that model to an approximated Polya distribution model that is better
suited to CF and CBF. This generalized model isthe main technical contribution of this work.
2.1

Preparation

Lavrenko (2004) adopts the method of kernels toestimate probabilities: Let d be an item in the
database or training data, the probability of item x
1 P
is estimated as p(x) = M
d p(x|θd ), where M
is the number of items in the training data, θd is theparameter vector estimated from d, and p(x|θd ) is
the conditional probability of x given θd .3 Thismeans that once we have defined a probability distribution p(x|θ) and the method of estimating θdfrom d, then we can assign probability p(x) to x
and apply language modeling approaches to CF
and CBF.
To begin with, we define the representationof item x as the concatenation of two vectors{wx , ux }, where wx = wx1 wx2 . . . is the sequence of words (contents) contained in x andux = ux1 ux2 . . . is the sequence of users who
have rated x implicitly. We use Vw and Vu to denote the set of words and users in the database.
The parameter vector θ is also the concatenationof two vectors {ω, µ}, where ω and µ are the parameter vectors for Vw and Vu , respectively. The
probability of x given θ is defined as p(x|θ) =pω (wx |ω)pµ (ux |µ).
3

P

P

Q

Item d in summation d and word w in w and w
go over every distinct item d and word w in the training data,
unless otherwise stated.

2.2 Multinomial model
Our first model regards that both pω and pµ follow
multinomial distributions. In this case, ω(w) andµ(u) are the probabilities of word w and user u.
Then, pω (wx |ω) is defined as|wx |pω (wx |ω) =Y

ω(wxi ) =i=1

Y

ω(w)n(w,wx )

w∈Vw

(1)
where n(w, wx ) is the number of occurrences of w
in wx . In this model, we use a linear interpolation
method to estimate probability ωd (w).
ωd (w) = λω Pl (w|wd ) + (1 − λω )Pg (w)(2)d), Pg (w) =where Pl (w|wd ) = P n(w,wn(w0 ,w )Pn(w,wd )
d
P P
0
d

w0

n(w ,wd )w0dand λω (0 ≤ λω ≤ 1) isa smoothing parameter. The estimation of userprobabilities goes similarly: Let n(u, ux ) be thenumber of times user u implicitly rated item x,
we define or estimate pµ , λµ and µd in the sameway. In summary, we have defined a probability
distribution p(x|θ) and the method of estimatingθd = {ωd , µd } from d.
To recommend top-N items, we have to rank
items in the database in response to the implicit
ratings of active users. We call those implicit ratings query q. It is a set of items and is represented
as q = {q1 . . . qk }, where qi is an item implicitly rated by an active user and k is the size of q.
We next estimate θq = {ωq , µq }. Then, we compare θq and θd to rank items by using KullbackLeibler divergence D(θq ||θd ) (Lafferty and Zhai,
2001; Lavrenko, 2004).
ωq (w) can be approximated asωq (w) =

k
1X

k i=1

ωqi (w)(3)

where ωqi (w) is obtained by Eq. 2 (Lavrenko,
2004). However, we found in preliminary experiments that smoothing query probabilities hurt performance in our application. Thus, we usen(w, wqi )ωqi (w) = Pl (w|wqi ) = P0w0 n(w , wqi )of d given q. Sq (d) is derived as follows. (Weignore terms that are irrelevant to ranking items.)−D(θq ||θd )=−D(ωq ||ωd )

rank

k
1X
S(ωqi ||ωd )
k i=1

=

where
S(ωqi ||ωd ) =XµPl (w|wqi )×log

w

(5)
¶

λω Pl (w|wd )+1 .
(1 − λω )Pg (w)(6)

The summation goes over every word w thatis shared by both wqi and wd . We defineS(µqi ||µd ) similarly.4 Then, the score of d given
qi , Sqi (d) is defined as
Sqi (d) = λs S(µqi ||µd ) + (1 − λs )S(ωqi ||ωd )(7)
where λs (0 ≤ λs ≤ 1) is a free parameter. Finally, the score of d given q is
Sq (d) =k
1X
Sq (d).
k i=1 i

(8)

The calculation of Sq (d) can be very efficientbecause once we cache Sqi (d) for each item pairof qi and d in the database, we can reuse it to calculate Sq (d) for any query q. We further optimize
the calculation of top-N recommendations by storing only the top 100 items (neighbors) in decreasing order of Sqi (·) for each item qi and setting
the scores of lower ranked items as 0. (Note that
Sqi (d) >= 0 holds.) Consequently, we only haveto search small part of the search space without
affecting the performance very much. These two
types of optimization are common in item-based
CF (Sarwar et al., 2001; Karypis, 2001).
2.3 Polya model
Our second model is based on the Polya distribution. We first introduce (hyper) parameter Θ ={αω , αµ } and denote the probability of x given
Θ as p(x|Θ) = pω (wx |αω )pµ (ux |αµ ). αω andαµ are the parameter vectors for words and users.
pω (wx |αω ) is defined as follows.
Ppω (wx |αω ) =(4)instead of Eq. 2 when qi is in a query.
Because KL-divergence is a distance measure,
we use a score function derived from −D(θq ||θd )to rank items. We use Sq (d) to denote the score−D(ωq ||ωd ) − D(µq ||µd )Γ(

4³S(µqi ||µd )λµ Pl (u|ud )+1(1−λµ )Pg (u)logPn(u,µqi )n(u0 ,µqi ),ωY Γ(nx + αω )w
w
w αw )
x + αω )
ω)
n
Γ(α
w w
w
w w

Γ(

P

d

u

Pl (u|uqi )

,

where

Pl (u|uqi )Pl (u|ud )=P n(u,ud0 )Pn(u,ud )dPg (u) = P P
0
u0

P

´ =

u0

n(u ,ud )u0.

n(u ,ud )

×
=

,

and

(9)

10

10
alpha=1e+5alpha=38.8
alpha=16.4
alpha=9.0
alpha=5.4
alpha=3.3
alpha=2.0
alpha=1.1
alpha=0.4
alpha=1e-598nu(n,alpha)

7
6

9
8
7
6

5

5

4

4

3

3

2

2

1

1

0

0
0

2

4

6

8

10

n

Figure 1: Relationship between original count n
and dumped count ν(n, α)ω is awhere Γ is known as the gamma function, αw
xparameter for word w and nw = n(w, wx ). Thiscan be approximated as follows (Minka, 2003).

pω (wx |αω ) ∼Y

ω(w)ñ(w,wx )

(10)

w

where
ω
ω
ω
ñ(w, wx ) = αw
(Ψ(nxw + αw
) − Ψ(αw))ω≡ ν(nxw , αw)

(11)

Ψ is known as the digamma function and is similar to the natural logarithm. We call Eq. 10 the
approximated Polya model or simply the Polyamodel in this paper.
Eq. 10 indicates that the Polya distribution
can be interpreted as a multinomial distribution
over a modified set of counts ñ(·) (Minka, 2003).
These modified counts are dumped as shown inω → ∞, ν(nx , αω ) approaches
Fig. 1. When αwww
xωω ) = 0 if nx = 0
nw . When αw → 0, ν(nxw , αww
ω,otherwise it is 1. For intermediate values of αw
the mapping ν dumps the original counts.
Under the approximation of Eq. 10, the estimation of parameters can be understood as the
maximum-likelihood estimate of a multinomial
distribution from dumped counts ñ(·) (Minka,
2003). Indeed, all we have to do to estimate theparameters for ranking items is replace Pl and Pgd),from Section 2.2 with Pl (w|wd ) = P ñ(w,wñ(w0 ,w )dw0Pñ(w,wd )dPg (w) = P P ñ(w0 ,w ) , and Pl (w|wqi ) =ddw0
P ñ(w,w0qi ) . Then, as in the multinomial model,w0ñ(w ,wqi )we can define S(ωqi ||ωd ) with these probabilities.
This argument also applies to S(µqi ||µd ).

The approximated Polya model is a generalization of the multinomial model described in Secω and αµ very large then thetion 2.2. If we set αwuPolya model is identical to the multinomial model.
By comparing Eqs. 1 and 10, we can see why the
Polya model is superior to the multinomial model
for modeling the occurrences of words (and users).
In the multinomial model, if a word with probability p occurs twice, its probability becomes p2 . In
the Polya model, the word’s probability becomesω = 1. Clearly,
p1.5 , for example, if we set αw
21.5
p < p ; therefore, the Polya model assigns
higher probability. In this example, the Polyamodel assigns probability p to the first occurrence
and p0.5 (> p) to the second. Since words that occur once are likely to occur again (Church, 2000),the Polya model is better suited to model the occurrences of words and users. See Yamamoto andSadamitsu (2005) for further discussion on applying the Polya distribution to text modeling.
Zaragoza et al.(2003) applied the Polya distribution to ad hoc IR. They introduced the exact
Polya distribution (see Eq. 9) as an extension
to the Dirichlet prior method (Zhai and Lafferty,2001). However, we have introduced a multinomial approximation of the Polya distribution. Thisapproximation allows us to use the linear interpolation method to mix the approximated Polya distributions. Thus, our model is similar to two-stage
language models (Zhai and Lafferty, 2002) thatcombine the Dirichlet prior method and the linear interpolation method. In contrast to our model,
Zaragoza et al.(2003) had difficulty in mixing thePolya distributions and did not treat that in theirpaper.

3 Experiments
We first examined the behavior of the Polya modelω for every
by varying the parameters. We tied αw
ω = αw and αuµ for every u; for any w and u, αwωµand αu = αµ . We then compared the Polya modelto an item-based CF method.
3.1 Behavior of Polya model
3.1.1

DatasetWe made a dataset of articles from English
Wikipedia5 to evaluate the Polya model. English
Wikipedia is an online encyclopedia that anyone
5

We downloaded 20050713 pages full.xml.gz
and20050713 pages current.xml.gz
from
http://download.wikimedia.org/wikipedia/en/.

can edit, and it has many registered users. Our
aim is to recommend a set of articles to each userthat is likely to be of interest to that user. If we
can successfully recommend interesting articles,
this could be very useful to a wide audience because Wikipedia is very popular. In addition, because wikis are popular media for sharing knowledge, developing effective recommender systems
for wikis is important.
In our Wikipedia dataset, each item (article) x
consisted of wx and ux . ux was the sequence ofusers who had edited x. If users had edited x multiple times, then those users occurred in ux multiple times. wx was the sequence of words that weretypical in x. To make wx , we removed stop words
and stemmed the remaining words with a Porter
stemmer. Next, we identified 100 typical words
in each article and extracted only those words(|wx | ≥ 100 because some of them occurredmultiple times). Typicality was measured using
the log-likelihood ratio test (Dunning, 1993). We
needed to reduce the number of words to speed up
our recommender system.
To make our dataset, we first extracted 302,606
articles, which had more than 100 tokens after thestop words were removed. We then selected typical words in each article. The implicit rating data
were obtained from the histories of users editingthese articles. Each rating consisted of {user, article, number of edits}. The size of this original
rating data was 3,325,746. From this data, we extracted a dense subset that consisted of users andarticles included in at least 25 units of the originaldata. We discarded the users who had edited morethan 999 articles because they were often softwarerobots or system operators, not casual users. The
resulting 430,096 ratings consisted of 4,193 users
and 9,726 articles. Each user rated (edited) 103
articles on average (the median was 57). The average number of ratings per item was 44 and the
median was 36.
3.1.2 Evaluation of Polya model
We conducted a four-fold cross validation ofthis rating dataset to evaluate the Polya model. We
used three-fourth of the dataset to train the modeland one-fourth to test it.6 All users who existed in
6

We needed to estimate probabilities of users and words.
We used only training data to estimate the probabilities ofusers. However, we used all 9,726 articles to estimate theprobabilities of words because the articles are usually available even when editing histories of users are not.

both training and test data were used for evaluation. For each user, we regarded the articles in the
training data that had been edited by the user as aquery and ranked articles in response to it. These
ranked top-N articles were then compared to thearticles in the test data that were edited by thesame user to measure the precisions for the user.
We used P@N (precision at rank N = the ratio of
the articles edited by the user in the top-N articles),S@N (success at rank N = 1 if some top-N articles
were edited by the user, else 0), and R-precision (=P@N, where N is the number of articles edited by
the user in the test data). These measures for eachuser were averaged over all users to get the mean
precision of each measure. Then, these mean precisions were averaged over the cross validation repeats.
Here, we report the averaged mean precisions with standard deviations.
We first
report how R-precision varied depending on α (αω or αµ ). α was varied over
10−5 , 0.4, 1.1, 2, 3.3, 5.4, 9, 16.4, 38.8, and 105 .
The values of ν(10, α) were approximately 1, 2,
3, 4, 5, 6, 7, 8, 9, and 10, respectively, as shownin Fig. 1. When α = 105 , the Polya model
represents the multinomial model as discussed in
Section 2.3. For each value of α, we varied λ (λωor λµ ) over 0.01, 0.05, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6,
0.7, 0.8, 0.9, 0.95, and 0.99 to obtain the optimum
R-precision. These optimum R-precisions areshown in Fig. 2. In this figure, CBF and CF
represent the R-precisions for the content-basedand collaborative filtering part of the Polya model.
The values of CBF and CF were obtained by
setting λs = 0 and λs = 1 in Eq. 7 (which
is applied to the Polya model instead of themultinomial model), respectively. The error bars
represent standard deviations.
At once, we noticed that CBF outperformed
CF. This is reasonable because the contents of
Wikipedia articles should strongly reflect the users(authors) interest. In addition, each article had
about 100 typical words, and this was richer than
the average number of users per article (44). Thisobservation contrasts with other work where CBF
performed poorly compared with CF, e.g., (Ali andvan Stam, 2004).
Another important observation is that bothcurves in Fig. 2 are concave. The best Rprecisions were obtained at intermediate values of
α for both CF and CBF as shown in Table 1.

0.0950.1
CBF
CF

CBF+CF
CBF
CF

0.095

0.09
0.09
0.085
R-precision

R-precision

0.085

0.08

0.075

0.08
0.075
0.07
0.065

0.07
0.06
0.065

0.055
1

2

3

4

5
6
nu(10,alpha)

7

8

9

10

0

0.1

0.2

0.3

0.4

0.5
0.6
lambda

0.7

0.8

0.9

Figure 2: R-precision for Polya model

Figure 3: Combination of CBF and CF.

Table 1: Improvement in R-precision (RP)

Table 2: Precision and Success at top-N

CBF
CF

best RP (ν(·)/α)0.091 (7/9.0)
0.081 (2/0.4)

RP (ν(·)/α)
0.088 (10/105 )0.069 (10/105 )%change+3.4%+17.4%

When α = 105 or ν(10, α) ∼ 10, the Polyamodel represents the multinomial model as discussed in Section 2.3. Thus, Fig. 2 and Table 1
show that the best R-precisions achieved by the
Polya model were better than those obtained by
the multinomial model. The improvement was
3.4% for CBF and 17.4% for CF as shown in Table 1. The improvement of CF was larger thanthat of CBF. This implies that the occurrences ofusers are more clustered than those of words. In
other words, the degree of repetition in the editing
histories of users is greater than that in word sequences. A user who edits an article are likely toedit the article again.
From Fig. 2 and Table 1, we concluded that thegeneralization of a multinomial model achieved by
the Polya model is effective in improving recommendation performance.
3.1.3 Combination of CBF and CF
Next, we show how the combination of CBF
and CF improves recommendation performance.
We set α (αω and αµ ) to the optimum values inTable 1 and varied λ (λs , λω and λµ ) to obtain the
R-precisions for CBF+CF, CBF and CF in Fig. 3.
The values of CBF were obtained as follows. We
first set λs = 0 in Eq. 7 to use only CBF scoresand then varied λω , which is the smoothing parameter for word probabilities, in Eq. 2. To get
the values of CF, we set λs = 1 in Eq. 7 and thenvaried λµ , which is the smoothing parameter for
user probabilities. The values of CBF+CF wereobtained by varying λs in Eq. 7 while setting λω
and λµ to the optimum values obtained from CBF

N
5
10
15
20
R-precision
optimum λCBF+CF
P@N
S@N
0.166
0.470
0.135
0.585
0.117
0.650
0.105
0.694
0.099
λs = 0.2

CBF
P@N
S@N
0.149
0.444
0.123
0.562
0.107
0.628
0.096
0.671
0.091
λω = 0.01

1

CF
P@N
S@N
0.137
0.408
0.112
0.516
0.098
0.582
0.089
0.627
0.081
λµ = 0.2

and CF (see Table 2). These parameters (λs , λωand λµ ) were defined in the context of the multinomial model in Section 2.2 and used similarly in
the Polya model in this experiment.
We can see that the combination was quite effective as CBF+CF outperformed both CBF and
CF. Table 2 shows R-precision, P@N and S@N
for N = 5, 10, 15, 20. These values were obtainedby using the optimum values of λ in Fig. 3.
Table 2 shows the same tendency as Fig. 3. For
all values of N , CBF+CF outperformed both CBF
and CF. We attribute this effectiveness of the combination to the feature independence of CBF and
CF. CBF used words as features and CF used user
ratings as features. They are very different kindsof features and thus can provide complementary
information. Consequently, CBF+CF can exploit
the benefits of both methods. We need to do further work to confirm this conjecture.
3.2 Comparison with a baseline method
We compared the Polya model to an implementation of a state-of-the-art item-based CF method,
CProb (Karypis, 2001). CProb has been tested
with various datasets and found to be effective in
top-N recommendation problems. CProb has also
been used in recent work as a baseline method(Ziegler et al., 2005; Wang et al., 2005).
In addition to the Wikipedia dataset, we used
two other datasets for comparison. The first wasPolya-CF
CProb%change

WP
0.081
0.082
-1.2%

R-precision
ML
BX
0.272
0.066
0.258
0.071
+5.4%
-7.0%

WP
0.112
0.113
-0.9%

P@10
ML
0.384
0.373
+2.9%

BX
0.054
0.057
-5.3%

Table 3: Comparison of Polya-CF and CProb
the 1 million MovieLens dataset.7 This data consists of 1,000,209 ratings of 3,706 movies by 6,040
users. Each user rated an average of 166 movies(the median was 96). The average number of ratings per movie was 270 and the median was 124.
The second was the BookCrossing dataset (Ziegler
et al., 2005). This data consists of 1,149,780 ratings of 340,532 books by 105,283 users. From
this data, we removed books rated by less than 20
users. We also removed users who rated less than
5 books. The resulting 296,471 ratings consistedof 10,345 users and 5,943 books. Each user rated
29 books on average (the median was 10). The average number of ratings per book was 50 and the
median was 33. Note that in our experiments, we
regarded the ratings of these two datasets as implicit ratings. We regarded the number of occurrence of each rating as one.
We conducted a four-fold cross validation foreach dataset to compare CProb and Polya-CF,
which is the collaborative filtering part of the
Polya model as described in the previous section.
For each cross validation repeat, we tuned the parameters of CProb and Polya-CF on the test data to
get the optimum R-precisions, in order to compare
best results for these models.8 P@N and S@N
were calculated with the same parameters. These
measures were averaged as described above. Rprecision and P@10 are in Table 3. The maximum standard deviation of these measures was
0.001. We omitted reporting other measures because they had similar tendencies. In Table 3, WP,
ML and BX represent the Wikipedia, MovieLens,
and BookCrossing datasets.
In Table 3, we can see that the variation of performance among datasets was greater than that between Polya-CF and CProb. Both methods per7

http://www.grouplens.org/
8
CProb has two free parameters. Polya-CF also has two
free parameters (αµ and λµ ). However, for MovieLens and
BookCrossing datasets, Polya-CF has only one free parameter λµ , because we regarded the number of occurrence of eachrating as one, which means ν(1, αµ ) = 1 for all αµ > 0 (SeeFig. 1). Consequently, we don’t have to tune αµ . Since thenumber of free parameters is small, the comparison of performance shown in Table 3 is likely to be reproduced when wetune the parameters on separate development data instead oftest data.

formed best against ML. We think that this is because ML had the densest ratings. The average
number of ratings per item was 270 for ML whilethat for WP was 44 and that for BX was 50.
Table 3 also shows that Polya-CF outperformed
CProb when the dataset was ML and CProb was
better than Polya-CF in the other cases. However,the differences in precision were small. Overall,
we can say that the performance of Polya-CF iscomparable to that of CProb.
An important advantage of the Polya modelover CProb is that the Polya model can unify CBF
and CF in a single language modeling framework
while CProb handles only CF. Another advantageof the Polya model is that we can expect to improve its performance by incorporating techniquesdeveloped in IR because the Polya model is basedon language modeling approaches in IR.

4 Future work
We want to investigate two areas in our future
work. One is the parameter estimation and theother is the refinement of the query model.
We tuned the parameters of the Polya model by
exhaustively searching the parameter space guided
by R-precision. We actually tried to learn αω
and αµ from the training data by using an EM
method (Minka, 2003; Yamamoto and Sadamitsu,
2005). However, the estimated parameters wereabout 0.05, too small for better recommendations.
We need further study to understand the relation
between the probabilistic quality (perplexity) of
the Polya model and its recommendation quality.
We approximate the query model as Eq. 3. This
allows us to optimize score calculation considerably. However, this does not consider the interaction among items, which may deteriorate the quality of probability estimation. We want to investigate more efficient query models in our futurework.

5 Conclusion
Recommender systems help users select particular
items from a large number of choices by providing recommendations. Much work has been done
to combine content-based filtering (CBF) and collaborative filtering (CF) to provide better recommendations. The contributions reported in this paper are twofold: (1) we extended relevance feedback approaches to incorporate CF and (2) we introduced the approximated Polya model as a gen-eralization of the multinomial model and showedthat it is better suited to CF and CBF. The performance of the Polya model is comparable to that ofa state-of-the-art item-based CF method.
Our work shows that language modeling approaches in information retrieval can be extended
to CF. This implies that a large amount of workin the field of IR could be imported into CF. This
would be interesting to investigate in future work.

References
Kamal Ali and Wijnand van Stam. 2004. TiVo: Making show recommendations using a distributed collaborative filtering architecture. In KDD’04.
James Allan. 1996. Incremental relevance feedbackfor information filtering. In SIGIR’96.
Justin Basilico and Thomas Hofmann. 2004. Unifying collaborative and content-based filtering. In
ICML’04.
Chumki Basu, Haym Hirsh, and William Cohen. 1998.
Recommendation as classification: Using social andcontent-based information in recommendation. In
AAAI-98.
John S. Breese, David Heckerman, and Carl Kadie.
1998. Empirical analysis of predictive algorithms
for collaborative filtering. Technical report, MSRTR-98-12.
Kenneth W. Church. 2000. Empirical estimates ofadaptation: The chance of two Noriegas is closer to
p/2 than p2 . In COLING-2000, pages 180–186.
W. Bruce Croft and John Lafferty, editors. 2003. Language Modeling for Information Retrieval. Kluwer
Academic Publishers.
Ted Dunning. 1993. Accurate methods for the statistics of surprise and coincidence. Computational
Linguistics, 19(1):61–74.
Jonathan L. Herlocker, Joseph A. Konstan,
Al Borchers, and John Riedl. 1999. An algorithmic framework for performing collaborative
filtering. In SIGIR’99, pages 230–237.
George Karypis. 2001. Evaluation of item-based topN recommendation algorithms. In CIKM’01.
John Lafferty and ChengXiang Zhai. 2001. Document
language models, query models and risk minimization for information retrieval. In SIGIR’01.
Victor Lavrenko and W. Bruce Croft.
2001.
Relevance-based language models. In SIGIR’01.
Victor Lavrenko, Martin Choquette, and W. Bruce
Croft. 2002. Cross-lingual relevance models. In
SIGIR’02, pages 175–182.

Victor Lavrenko. 2004. A Generative Theory of Relevance. Ph.D. thesis, University of Massachusetts.
J. Leon, V. Lavrenko, and R. Manmatha. 2003. Automatic image annotation and retrieval using crossmedia relevance models. In SIGIR’03.
Thomas P. Minka.
2003.
Estimatinga
Dirichlet
distribution.
http://research.microsoft.com/˜minka/papers/dirichlet/.
Paul Resnick and Hal R. Varian. 1997. Recommendersystems. Communications of the ACM, 40(3):56–
58.
Paul Resnick, Neophytos Iacovou, Mitesh Suchak, Peter Bergstrom, and John Riedl. 1994. GroupLens:
An open architecture for collaborative filtering of
netnews. In CSCW’94, pages 175–186.
Badrul Sarwar, George Karypis, Joseph Konstan, andJohn Riedl. 2001. Item-based collaborative filtering
recommendation algorithms. In WWW10.
Robert E. Schapire, Yoram Singer, and Amit Singhal.
1998. Boosting and Rocchio applied to text filtering.
In SIGIR’98, pages 215–223.
Luo Si and Rong Jin. 2004. Unified filtering by combining collaborative filtering and content-based filtering via mixture model and exponential model. In
CIKM-04, pages 156–157.
Jun Wang, Marcel J.T. Reinders, Reginald L. Lagendijk, and Johan Pouwelse.
2005.
Selforganizing distributed collaborative filtering. In SIGIR’05, pages 659–660.
Mikio Yamamoto and Kugatsu Sadamitsu. 2005.
Dirichlet mixtures in text modeling. Technical report, University of Tsukuba, CS-TR-05-1.
Kai Yu, Anton Schwaighofer, Volker Tresp, Wei-Ying
Ma, and HongJiang Zhang. 2003. Collaborative
ensemble learning: Combining collaborative andcontent-based information filtering via hierarchical
Bayes. In UAI-2003.
Hugo Zaragoza, Djoerd Hiemstra, and Michael Tipping. 2003. Bayesian extension to the language
model for ad hoc information retrieval. In SIGIR’03.
ChengXiang Zhai and John Lafferty. 2001. A study ofsmoothing methods for language models applied toad hoc information retrieval. In SIGIR’01.
ChengXiang Zhai and John Lafferty. 2002. Two-stage
language models for information retrieval. In SIGIR’02, pages 49–56.
Cai-Nicolas Ziegler, Sean M. McNee, Joseph A. Konstan, and Georg Lausen. 2005. Improving recommendation lists through topic diversification. In
WWW’05, pages 22–32.