<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>A Generalized Probabilistic Framework and its Variants for Training Top-k Recommender Systems</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Harald Steck</string-name>
          <email>Harald.Steck@alcatel-lucent.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Yu Xin</string-name>
          <email>YuXin@mit.edu</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="editor">
          <string-name>Recommender Systems</string-name>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Bell Labs</institution>
          ,
          <addr-line>Alcatel-Lucent, Murray Hill, NJ</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>CSAIL MIT</institution>
          ,
          <addr-line>Cambridge, MA</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Accounting for missing ratings in available training data was recently shown [3, 17] to lead to large improvements in the top-k hit rate of recommender systems, compared to state-of-the-art approaches optimizing the popular rootmean-square-error (RMSE) on the observed ratings. In this paper, we take a Bayesian approach, which lends itself naturally to incorporating background knowledge concerning the missing-data mechanism. The resulting log posterior distribution is very similar to the objective function in [17]. We conduct elaborate experiments with real-world data, testing several variants of our approach under dieffrent hypothetical scenarios concerning the missing ratings. In the second part of this paper, we provide a generalized probabilistic framework for dealing with possibly multiple observed rating values for a user-item pair. Several practical applications are subsumed by this generalization, including aggregate recommendations (e.g., recommending artists based on ratings concerning their songs) as well as collaborative lfitering of sequential data (e.g., recommendations based on TV consumption over time). We present promising preliminary experimental results on IP-TV data.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Categories and Subject Descriptors</title>
      <p>Algorithms
∗ This work was done while an intern at Bell Labs,
AlcatelLucent.</p>
      <p>Copyright is held by the author/owner(s). Workshop on the Practical Use of
Recommender Systems, Algorithms and Technologies (PRSAT 2010), held
in conjunction with RecSys 2010. September 30, 2010, Barcelona, Spain.
1.</p>
    </sec>
    <sec id="sec-2">
      <title>INTRODUCTION</title>
      <p>The idea of recommender systems is to automatically
suggest items to each user that s/he may nfid appealing. The
quality of recommender systems can be assessed with respect
to various criteria, including accuracy, diversity, surprise /
serendipity, and explainability of recommendations.</p>
      <p>
        This paper is concerned with accuracy. The root mean
squared error (RMSE) has become the most popular
accuracy measure in the literature of recommender systems–for
training and testing. Its computational ecffiiency is one of
its main advantages. Impressive progress has been made in
predicting rating values with small RMSE, and it is
impossible to name all approaches, e.g., [
        <xref ref-type="bibr" rid="ref11 ref13 ref4 ref6 ref7">4, 6, 7, 11, 13</xref>
        ]). There is,
however, also some work on optimizing the ranking of items,
e.g., measured in terms of normalized Discounted
Cumulative Gain (nDCG) [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. Despite their dieffrences, they have
in common that they were trained and tested on observed
ratings only. Obviously, these measures cannot immediately
be evaluated if some items have unobserved ratings.
      </p>
      <p>In this paper, we consider the top-k hit rate–based on all
(unrated) items–as the natural accuracy measure for
recommender systems, as only a few out of all unrated items
can be recommended to a user in practice (see Section 3
for exact denfiition of top- k hit rate). While this measure
is computationally tractable for testing the predictions of
recommender systems, unfortunately it is computationally
very costly for training recommender systems. For training,
we thus resort to appropriate surrogate objective functions
that are computationally ecffiient.</p>
      <p>
        In recent work [
        <xref ref-type="bibr" rid="ref17 ref3">3, 17</xref>
        ], it was shown that the top-k hit
rate can be signicfiantly improved on large real-world data
by accounting for the fact that the observed ratings provide
a skewed picture of the (unknown) distribution concerning
all (unrated) items and users.
      </p>
      <p>
        Motivated by the results of [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], as the rfist contribution of
this paper, in Section 2 we present a probabilistic approach
that allows us to naturally include background knowledge
concerning the (unknown) distribution of all items and users
into our training objective function, the posterior
probability of the model.
      </p>
      <p>
        In our second contribution, we conduct elaborate
experiments on the Netiflx Prize data [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] and test several models
under dieffrent hypothetical scenarios concerning the
missing ratings in Section 4. These dieffrent scenarios serve as a
sensitivity analysis, as the ground truth of the missing
datamechanism is unknown due to lack of data. These
experiments are based on our popularity-stratified recall measure,
which we denfie in Section 3.
      </p>
      <p>
        As the third contribution of this paper, we generalize this
probabilistic approach as to account for possibly multiple
observed rating values for a user-item pair in Section 5. This
general framework subsumes several applications in
addition to the one outlined in Section 2. Two of which are
outlined in Section 5: while the training objective function
for a recommender system concerning TV programs seems
motivated in an ad-hoc manner in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], we show that it can
be understood and improved naturally in a Bayesian
framework; apart from that, we also provide a Bayesian approach
for making aggregate recommendations, e.g., recommending
an artist or concert to a user based on the ratings given to
individual songs.
      </p>
    </sec>
    <sec id="sec-3">
      <title>MODEL TRAINING</title>
      <p>
        In this section, we outline a probabilistic framework that
allows us to incorporate background knowledge when
training recommender systems on available data. The use of
background knowledge in addition to the available training
data can signicfiantly improve the accuracy of recommender
systems on performance measures like top-k hit rate, recall,
precision, area under the ROC curve, etc. This was
demonstrated for implicit feedback data in [
        <xref ref-type="bibr" rid="ref10 ref5">5, 10</xref>
        ], and for explicit
feedback data in [
        <xref ref-type="bibr" rid="ref17 ref3">3, 17</xref>
        ]. Like in [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], we use background
knowledge that missing rating values tend to reflect negative
feedback, as experimentally observed in [
        <xref ref-type="bibr" rid="ref8 ref9">9, 8</xref>
        ]; i.e., negative
feedback tends to be missing from the available data with a
larger probability than positive feedback does.
      </p>
      <p>The Bayesian approach lends itself naturally to this task.
We consider the rating matrix R as a matrix of random
variables: each element Ri,u concerning item i = 1, ..., i0
and user u = 1, ..., u0 is a random variable with normal
distribution, where i0 denotes the number of items and u0
is the number of users.
2.1</p>
    </sec>
    <sec id="sec-4">
      <title>Model</title>
      <p>We take a collaborative lfitering approach, and use a
lowrank matrix-factorization model, which has proven
successful in many publications. Like the rating matrix, we consider
our model as a matrix of random variables, M . Each random
variable Mi,u corresponds to the rating of item i assigned by
user u. In matrix notation, it reads</p>
      <p>M = roffset + P Q&gt;
(1)
where roffset ∈ R is an offset value, and P , Q are low-rank
matrices of random variables with dimensions i0 × d0 and
u0 × d0, respectively, where rank d0 i0, u0. We use upper
case symbols to denote random variables (with a Gaussian
distribution), and lower case symbols to denote values.
2.2</p>
    </sec>
    <sec id="sec-5">
      <title>Prior over Matrix Elements</title>
      <p>
        In our Bayesian approach, we rfist denfie the usual prior
over model parameters, concerning each entry of the low
rank matrices P and Q (see also [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]):
p(M |σ P2 , σ Q2) =
      </p>
      <p>Y Y N (Pi,d|0, σ P2,i)
)
)
The vectors of variances σ Q2 = (σ Q2,u)u=1,...,u0 and σ P2 =
(σ P2,i)i=1,...,i0 for all users u = 1, ..., u0 and items i = 1, ..., i0
are free parameters of the zero-mean normal prior
distribution, denoted by N . There are several ways of denfiing the
standard deviations in Eq. 2, eventually resulting in
dieffrent kinds of regularization. The obvious choice is to assume
that σ P,i = σ Q,u = 1/√2λ 0 ∀ i, u, with λ 0 ∈ R. This results
in the regularization term</p>
      <p>log p(M |σ P2 , σ Q2) = − λ 0 `||P ||22 + ||Q||22´ + c1,
where || · || 2 denotes the Frobenius norm of a matrix, and c1
is an irrelevant constant when training our model.</p>
      <p>
        When optimizing root mean square error on observed data
(like in the Netiflx Prize competition [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]), however,
numerous experimental works reported signicfiant improvements
by using a dieffrent regularization. This is obtained by
choosing the standard deviations σ P and σ Q as follows: σ P,i =
1/p2λ 0 · u0(i) , σ Q,u = 1/p2λ 0 · i0(u), where i0(u)
denotes the number of items rated by user u, and u0(i) is the
number of users who rated item i. This results in the
popular regularization term
log p(M |σ P2 , σ Q2)
= − λ 0
0
      </p>
      <p>X u0(i) X Pi2,d + X i0(u) X Qu,d
2
i d u d</p>
      <p>!1</p>
      <p>X</p>
      <p>X Pi2,d + Qu,d A + c2,</p>
      <p>
        2
d
!
+ c2
(3)
where c2 denotes again an irrelevant constant when
training our model. Note that this choice increasingly regularizes
the model parameters related to the items and users with a
larger number of observed ratings. This may seem
counterintuitive at rfist glance. A theoretical explanation for this
empirical nfiding was recently provided in [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ].
2.3
      </p>
    </sec>
    <sec id="sec-6">
      <title>Informative Background Knowledge</title>
      <p>
        We now incorporate the following background knowledge
into our sequential Bayesian approach: absent rating
values tend to be lower than the observed ratings on average
(see [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]). We insert this knowledge into our approach by
means of a virtual data point for each pair (i, u): a virtual
rating value rip,ruior with small confidence (i.e., large variance
σ p2rior,i,u). Then the likelihood of our model in light of these
virtual data points reads (assuming i.i.d. data):
p(rprior|M, σ p2rior) = Y
      </p>
      <p>Y p(Ri,u = rip,ruior|Mi,u, σ p2rior,i,u),
all i all u
(4)
where rprior denotes the matrix of virtual data points rip,ruior,
and σ p2rior the matrix with elements σ p2rior,i,u. We assume
that the probabilities in this likelihood are determined by
normal distributions with mean Mi,u and variance σ p2rior,i,u.
The log likelihood then reads
log p(rprior|M, σ p2rior) = − X X wip,ruior “rip,ruior − Mi,u
”2
+c3
all i all u
(5)
where we denfied the weights of the virtual data points as
wip,ruior = 1/(2σ p2rior,i,u); c3 is again an irrelevant constant
when training our model.</p>
      <p>With Bayes rule, we obtain the posterior distribution of
(
·
(
i d
u d
Y Y N (Qu,d|0, σ Q2,u)
(2)
the model in light of these virtual data points:
p(M |rprior, wprior) =
p(rprior, wprior|M )p(M )
p(rprior, wprior)
This equation combines our prior concerning the elements
in the matrices P and Q (for regularization) with our
background knowledge on the expected rating values. This serves
as our prior when observing the actual rating values in the
training data.
p(Ri,u = rio,bus|Mi,u, σ o2bs,i,u)
Again assuming a normal distribution, the log likelihood
reads:
log p(robs|M, σ o2bs) = −
wio,bus(ri,u − Mi,u)2 + c4</p>
      <p>obs</p>
      <p>X
where we assumed in the denominator that the observed
ratings are independent of the chosen prior ratings, i.e.,
p(robs|rprior) = p(robs). Substituting Eqs. 3, 5, 6 and 7
into Eq. 8, we obtain the following log posterior:
log p(M |robs, rprior, wobs, wprior, λ ) =
)
)
(9)
prior weights to be identical: wprior = wip,ruior for all (i, u). In
summary, the three tuning parameters in Eq. 9 are wprior,
rprior and λ , which can be chosen as to optimize the
performance measure on cross-validation data.
2.6</p>
      <p>
        For computational ecffiiency, our training aims to nfid
the maximum-a-posteriori (MAP) parameter estimate of our
model, i.e., the MAP estimates Pˆ and Qˆ of the matrices P
and Q. We use the alternating least squares approach. The
idea is that one matrix can be optimized exactly while the
other one is assumed xfied. A local maximum of the log
posterior can be found by alternating between the matrices
Pˆ and Qˆ. While local optima exist [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], we did not nfid this
to cause major computational problems in our experiments.
The update equation for each row i of Pˆ is (for xfied Qˆ):
Pi,· = (r¯i,· − rprior)(W˜ (i) + wpriorI)Qˆ ·
ˆ
i− 1
hQˆ&gt;(W˜ (i) + wpriorI)Qˆ + λ (tr(W˜ (i)) + wprioru0)I (10)
where r¯i,u = (rio,buswio,bus +rpriorwip,ruior)/(wio,bus +wip,ruior) denotes
the average rating; we denfied wio,bus = 0 if rating at (i, u)
is missing; note that r¯i,· − rprior = 0 if rating is missing for
(i, u); W˜ (i) is a diagonal matrix containing the ith column of
the weight matrix wobs; the trace is tr(W˜ (i)) = Pu∈Si wio,bus,
where Si is the set of users who rated item i; I denotes
the identity matrix; and u0 is the number of users. This
equation can be re-written for ecffiient computations, e.g.,
see [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. The update equation for Qˆ is analogous.
3.
      </p>
    </sec>
    <sec id="sec-7">
      <title>MODEL TESTING</title>
      <p>
        A key challenge in testing recommender systems is that
the observed ratings in the available data typically provide a
skewed picture of the (unknown) true distribution
concerning all ratings [
        <xref ref-type="bibr" rid="ref8 ref9">9, 8</xref>
        ]. This may be caused by the fact that
users are free to choose what items to rate, and they tend
to not rate items that would otherwise receive a low rating.
If the ratings are missing not at random (MNAR), it is not
guaranteed that correct or meaningful results are obtained
from testing a recommender system on the observed ratings
only. The latter is, however, common practice in the
literature or recommender systems, using measures like root
mean square error or nDCG [
        <xref ref-type="bibr" rid="ref11 ref13 ref18 ref4 ref6 ref7">4, 6, 7, 11, 13, 18</xref>
        ].
      </p>
      <p>
        The top-k hit-rate / recall of relevant items is a
particularly useful performance measure for assessing the accuracy
of recommender systems [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. An item i is relevant to user
u if s/he nfids this item interesting or appealing [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. For
instance, in the Netiflx data [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] we consider items i with a
5-star rating, rio,bus = 5, as relevant to user u.
      </p>
      <p>Recall can be calculated for a user by ranking the items
according to their scores predicted by the recommender
system, and determining the fraction of relevant items that are
among the top-k items, i.e., the k items with the highest
scores. The value of k ∈ N has to be chosen, e.g., as the
number of items that can be recommended to a user. Only
small values of k are important in practice. The goal is to
maximize recall for the chosen value of k.</p>
      <p>
        Recall has two interesting properties in this context [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]:
it is proportional to precision on xfied data and xfied k when
comparing dieffrent recommender systems with each other.
In other words, the recommender system with the larger
(
(
wio,bus
(rio,bus − Mi,u)2 + λ
      </p>
      <p>X ˆPi2,d + Q2u,d˜
wip,ruior
(rip,ruior − Mi,u)2 + λ</p>
      <p>X ˆPi2,d + Q2u,d˜
d
d
−
−
+c5
We found that using a prior that involves also the
regularization term of P and Q in the third line in Eq. 9 leads
to a slight improvements in our experimental results. The
weights wio,bus and wip,ruior as well as λ 0 are absorbed in λ ; this
is a slight but straight-forward generalization of the prior in
Section 2.2; c5 is again an irrelevant constant for training.</p>
      <p>
        Eq. 9 serves as our training objective function. For
simplicity, we choose the same value for all virtual rating values
rprior. For computational efficiency, we choose our model
osffet to equal the prior rating values: roffset = rprior. Its
main eeffct is that this retains the sparsity of the observed
rating matrix. Apart from that, it also leads to the
simplicfiation: ( rip,ruior − Mi,u)2 = ((P Q&gt;)i,u)2. For simplicity, we
set wio,bus = 1 for all observed pairs (i, u), and also choose all
recall also has the larger precision. More interestingly,
however, recall can be calculated from the available MNAR data
and provides an unbiased estimate for the recall
concerning the (unknown) complete data (which comprises all
rating values of all users) under the following assumption: the
relevant ratings are missing at random, while an arbitrary
missing-data mechanism may apply to all other rating values
(as long as they are missing with a larger probability than
the relevant ones) [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. This assumption is much milder
than the one underlying the popular approach of ignoring
missing ratings, i.e., assuming that all ratings are missing
at random.
      </p>
      <p>The expected performance on the (unknown) complete
data is important because it is directly related to user
experience: the recommender system has to pick a few items
from among all items the user has not rated yet (and which
may hence be new to the user); one can expect the
distribution on all unrated items to be well-approximated by
the distribution on all (rated and unrated) items under the
(mild) assumption that only a small fraction of the relevant
ratings has been observed.</p>
      <p>
        Given that ground truth (i.e., the complete data) is
typically not available (at low cost), the validity of the
assumption in [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] cannot be veriefid in practice. For this reason,
we carry out a sensitivity analysis in the following. We
relax this assumption even further and determine its eeffct
on the recall test-results for dieffrent models. Note that
the assumption in [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] allows for an arbitrary missing-data
mechanism concerning all ratings, except for the relevant
ratings; only the latter are assumed to be missing at
random. For this reason, the following is concerned with the
relevant ratings only.
      </p>
      <p>We consider the case that the probability of observing
a relevant rating depends on the popularity of items. We
denfie the popularity of an item by the number Nc+omplete,i
of relevant ratings it obtained in the (unknown) complete
data. Let No+bs,i be the number of relevant ratings observed
in the available data; then the probability of observing a
relevant rating regarding item i is
pobs(i) =</p>
      <p>No+bs,i
Nc+omplete,i
.</p>
      <p>
        In the rfist scenario, pobs may take only two values: it is
small for unpopular items, and large for popular items. If
the ratio of these two values approaches innfiity, this results
in si → 0 for popular items. Removing the relevant
ratings of the most popular items from the test set is indeed
common practice, e.g., in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. In the second scenario, we
consider the case where pobs is a smooth function of the items’
popularities. We assume the polynomial relationship
pobs(i) ∝ `Nc+omplete,i´γ
(13)
with γ ∈ R. This is consistent with the power-law behavior
of the observed relevant ratings (see Figure 1 a) in the sense
that also the (unknown) complete data then follows a
powerlow distribution concerning the relevant ratings. This results
in the straticfiation weights
      </p>
      <p>si ∝ 1/(No+bs,i)γ/ (γ +1).</p>
      <p>Note that the unknown proportionality factor cancels out in
Eq. 12, so that it provides an unbiased estimate of the
recall concerning the complete data for the correct polynomial
degree γ (and assuming that there are no additional factors
underlying the missing data mechanism). If γ = 0, the
relevant ratings are missing at random; if γ = 1, the
probability of observing relevant ratings increases linearly with item
popularity (Nc+omplete,i). The extreme case when γ → ∞ has
several interesting properties: rfist, one observes in the
available data only relevant ratings of the item with the largest
popularity in the complete data, which does not agree with
empirical evidence. Second, as γ/ (γ + 1) → 1, the
stratification weights si are inversely proportional to the number
of observed relevant ratings No+bs,i; this means that every
item has the same weight in the recall-measure in Eq. 12,
independent of its number of observed relevant ratings. This
means that, once an item obtains its rfist relevant rating, it
is weighted the same as all other items that may have
obtained thousands of relevant ratings. This obviously entails
low robustness against statistical noise as well as against
manipulation and attacks. As this is the limiting case of
γ , we nevertheless provide experimental results for this
extreme scenario in Section 4. The (unknown) realistic case
can be expected to be less extreme.</p>
      <p>If the test set is a random subset of the observed data,
then No+bs,i can be determined from the test set. Given that
the training set is typically much larger than the test set,
it might be more robust to determine No+bs,i based on all
the available data, i.e., the training and test set combined.
We use the latter in our experiments reported in the next
section, but the former choice of No+bs,i leads to very similar
results.</p>
      <p>
        Finally, we denfie recall( k) = Pu wurecallu(k) as the
average recall over all users, with normalized weights, P
∝ P u wu =
1, like in [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. In our experiments, we choose wu i∈Su+ si,
as a generalization of the denfiition in [
        <xref ref-type="bibr" rid="ref17 ref7">7, 17</xref>
        ].
      </p>
      <p>
        Obviously, straticfiation like in Eq. 12 carries over
analogously to other measures, like ATOP [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] or the area under
the ROC curve.
      </p>
    </sec>
    <sec id="sec-8">
      <title>EXPERIMENTS</title>
      <p>
        This section summarizes our results on the Netflix Prize
data [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. These data contain 17,770 movies and almost half
a million users. About 100 million ratings are available.
Ratings are observed for about 1% of all possible
movieAssuming that there are no additional (possibly hidden)
factors underlying the missing data mechanism concerning the
relevant ratings, we obviously obtain an unbiased estimate
for recall on the (unknown) complete data by calculating the
popularity-stratified recall (for user u),
(11)
(12)
      </p>
      <p>Pi∈Su+,k si
recallu(k) = P
i∈Su+ si
on the available MNAR data; Su+ denotes the set of relevant
items of user u; Su+,k is the subset of relevant items ranked in
the top k items based on the predictions of the recommender
system; the popularity-straticfiation weight for each item i
is
si =</p>
      <p>1
pobs(i)
.</p>
      <p>If we choose the straticfiation weights si = 1 for all items
i, we obtain the usual recall measure. Given that complete
data is unavailable (at low cost), pobs in Eq. 11 cannot be
calculated in practice. For this reason, we now examine
different choices for pobs and their effects on recall in Eq. 12.
0.3
ll
ca0.2
e
r
0.1
user-pairs. The ratings take integer values from 1 (worst) to
5 (best). The provided data are already split into a
training and a probe set. We removed the probe set from the
provided data as to obtain our training set.</p>
      <p>
        We consider 5-star ratings as relevant to a user (as denfied
above), and use the popularity-stratiefid recall, as outlined
in Section 3, as our performance measures on the Netiflx
probe set. For all experiments, we chose rank d = 50 of our
low-rank matrix factorization (MF) model (Eq. 1). In the
following, we compared our MF model, trained with dieffrent
prior weights wprior &gt; 0, against the popular MF approach
that ignores the missing-data mechanism (i.e., wprior = 0 in
our notation). The latter achieved a root mean square error
on the observed ratings in the probe set of 0.922.
Additionally, we compared to singular value decomposition (SVD),
where we used the svds function of Matlab, which implicitly
imputes a zero value (with unit weight) for all missing
ratings; and to the bestseller list (BS), which ranks the items
according to the number of ratings in the training set. The
values of tuning parameters in our training objective
function (log posterior) in Eq. 9 are summarized in Figure 1 (b).
Like in [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], we chose the prior rating value rprior = 2 in Eq.
9.
      </p>
      <p>
        Figures 1 (c)-(f) shows the performance of these
models under dieffrent test scenarios, concerning our
popularitystratiefid recall measure for the practically important range
of small k values. For computational ecffiiency, we computed
recall by randomly sampling, for a user, 1,000 unrated items
for each relevant rating in the test set, like in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. The only
dieffrence to the test procedure used in [
        <xref ref-type="bibr" rid="ref17 ref7">7, 17</xref>
        ] is that we
sample from unrated items only, rather than from all items.
This is more realistic. It also results in slightly higher recall
values compared to the procedure used in [
        <xref ref-type="bibr" rid="ref17 ref7">7, 17</xref>
        ].
      </p>
      <p>When comparing the dieffrent graphs, it is obvious that
the performance of all the models depends on the (unknown)
missing-data mechanism concerning the relevant ratings. In
particular, when pobs of relevant ratings is assumed to
increase more rapidly with growing popularity (Nc+omplete,i),
the expected recall on the (unknown) complete data
decreases for all models, cf. Figures 1 (c)→(d)→(e), and
(c)→(f).</p>
      <p>
        As pobs of relevant ratings increases more rapidly with
item popularity (compare Figures 1 (c)→(d)→(e)), the
difference in recall among the various MF models decreases.
Training with smaller but positive weights wprior &gt; 0 results
in the best recall on the test set, even in the unrealistic
extreme limit in Figure 1 (e). This suggests that, compared
to the popular approach of ignoring the missing-data
mechanism when training MF models, recall can be improved
by using a small prior weight wprior &gt; 0; its value is
upper bounded by the value that optimizes the (usual) recall
measure on the test set, i.e., under the assumption that the
relevant ratings are missing at random, like in [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ].
      </p>
      <p>
        The bestseller list (BS) and SVD perform surprisingly well
if relevant ratings are missing at random, see Figure 1 (c),
while the popular MF model with wprior = 0 has low recall
in comparison. This was also found in [
        <xref ref-type="bibr" rid="ref17 ref3">17, 3</xref>
        ]. BS and SVD
perform rather poorly, however, if pobs increases rapidly with
item popularity, as shown in the extreme scenarios in Figure
1 (e) and (f). This suggests that not only BS, but also SVD
tend to recommend items that are popular in the available
training data. Their recommendations may hence result in
a relatively low degree of serendipity or surprise, relative to
our MF models trained with a small positive prior weight.
      </p>
    </sec>
    <sec id="sec-9">
      <title>GENERALIZED APPROACH</title>
      <p>This section outlines a generalization of the Bayesian
approach given above. In our probabilistic approach, we
consider the rating matrix R as a matrix of random variables.
As each entry Ri,u is a random variable (rather than a
value), this naturally allows for possibly multiple values
concerning each pair (i, u) in the data. This has several
advantages over a matrix of values, which has typically been
considered in the literature of recommender systems.
After developing our generalized probabilistic framework, we
outline three special cases / applications in Section 5.2.</p>
      <p>Let the given data set be D = {ri,u,j}i,u,j, where i =
1, ..., i0 is the index concerning items, u = 1, ..., u0 is the
index regarding users, and j = 1, ... is the index over
possibly multiple observed ratings for the same pair (i, u). The
likelihood of the model in light of i.i.d. data reads
p(D|M ) =</p>
      <p>Y p(Riu = ri,u,j|M ).
i,u,j
(14)
Assuming again a normal distribution of the ratings (with
standard deviations σ i,u,j, or equivalently weights wi,u,j =
1/(2σ i2,u,j)), the log likelihood of the model is
log p(D|M ) = − X X wi,u,j(ri,u,j −</p>
      <p>i,u j
= − X X wi,u,v(v −
i,u v</p>
      <p>Mi,u)2 + c5
Mi,u)2 + c5
(15)
where the second line is obtained by switching–for each pair
(i, u)–from index j (over multiple ratings in the data) to
the actual rating values v; the cumulative weight is wi,u,v =
Pj wi,u,jIri,u,j=v, where indicator function Iri,u,j=v = 1 if
ri,u,j = v and 0 otherwise.</p>
      <p>Combining this likelihood with the same kind of prior over
the model parameters as in Eq. 2, we obtain the log posterior
−
−
of our model:
log p(M |D) = − X X wi,u,v(v −
i,u v</p>
      <p>Mi,u)2
1
X</p>
      <p>X Pi,d −</p>
      <p>2
i 2σ P2,i d</p>
      <p>1
X</p>
      <p>X Qu,d + c6 (16)</p>
      <p>2
u 2σ Q2,i d
The standard deviations σ Q,i and σ P,i may be chosen as to
achieve the desired variant of regularization, as discussed in
Section 2.2.
5.1</p>
    </sec>
    <sec id="sec-10">
      <title>MAP Estimate of Model</title>
      <p>For computational efficiency, we focus on optimizing the
log posterior in Eq. 16. The maximum-a-posteriori (MAP)
parameter estimate of our model, i.e., the MAP estimates Pˆ
and Qˆ of the matrices P and Q, can be determined by
alternating least squares, which alternately optimizes one matrix
while the other one is assumed xfied. Using the usual
necessary condition for the optimum of Eq. 16, we equate its
partial derivative to zero, and obtain the following update
equation for each row i of Pˆ (for fixed Qˆ):</p>
      <p>"
Pi,· = (v¯i,· − roffset )W˜ (i)Qˆ · Qˆ&gt;W˜ (i)Qˆ +
ˆ
1
2σ P2,i I
#− 1
, (17)
where I denotes the identity matrix, and W˜ (i) is a diagonal
matrix containing the ith row of the aggregate weight matrix
with elements
and v¯i,u is the average rating value
wi,u =</p>
      <p>X wi,u,v,
v
v¯i,u =</p>
      <p>!
X vwi,u,v /wi,u.</p>
      <p>v
Analogously, the update equation for each row u of Qˆ is:
"
Qˆu,· = (v¯· ,u − roffset )W˜ (u)Pˆ Pˆ&gt;W˜ (u)Pˆ +
1
2σ Q2,u</p>
      <p>I
#− 1
(18)
where W˜u is the diagonal matrix containing the uth column
of the aggregate weight matrix.</p>
      <p>This derivation shows that optimizing Eq. 16 is equivalent
to optimizing
log p(M |D) = −</p>
      <p>X wi,u(v¯i,u −
i,u</p>
      <p>Mi,u)2
1
X</p>
      <p>X Pi,d −</p>
      <p>2
i 2σ P2,i d</p>
      <p>1
X</p>
      <p>X Qu,d + c6 (19)</p>
      <p>2
u 2σ Q2,i d
where multiple rating values for an item-user pair are
replaced by their mean value v¯i,u and their aggregate weight
wi,u.
5.2</p>
    </sec>
    <sec id="sec-11">
      <title>Applications</title>
      <p>This generalized probabilistic approach subsumes several
applications as special cases. In addition to the use of virtual
ratings in the prior, as outlined in Section 2, we present two
additional applications in the following.</p>
      <sec id="sec-11-1">
        <title>5.2.1 Aggregate Recommendations</title>
        <p>The universe of all items available for recommendation
may have a structure that goes beyond a aflt list. Items can
often be arranged in a hierarchical manner. For instance,
songs may be grouped by artist, album, genre, etc. Possibly,
there are several layers of hierarchy. Now let us consider
the problem that data are available where users have rated
individual songs, but the task is to recommend an artist to a
user. This problem arises in several situations. For instance,
the recommender system may want to suggest a concert to
the user, based on the data on individual songs. Another
scenario is the release of a new song by an artist: this cold
start problem may be overcome by recommending the new
song to users who like the artist.</p>
        <p>The ratings matrix concerning songs and users can be used
to construct a rating matrix regarding artists and users by
aggregating the songs of each artist. As a user may have
rated several songs of an artist, we now have possibly
multiple rating values for an entry in the artist-user matrix. This
is exactly the problem solved by our general approach in
Section 5. Our framework also shows that, for each user,
the rating of each artist can be determined as the weighted
average of the ratings of his/her songs, and the weight is the
sum of the weights of the songs, as one may have intuitively
expected.
5.2.2</p>
      </sec>
      <sec id="sec-11-2">
        <title>Recommendation of TV Shows</title>
        <p>IP-TV is much more interactive than traditional TV.
Concerning recommender systems, it allows one to collect
information on the users’ TV consumption. This can be used
to learn preferences of users to TV programs, as to make
accurate recommendations of TV shows. Unlike the
previous applications described in this paper, we now use
implicit feedback data (time spent watching a TV show) in
place of the ratings. Our approach carries over
immediately. This problem can be cast in our general probabilistic
framework as follows: we divide the length of each show
into nmax time intervals (of equal length), where nmax is the
same large integer for all shows. We consider each time
interval associated with a random experiment; a show hence
comprises nmax repetition of the experiment. The random
variable Ri,u takes the value 1 if user u watched show i
for a time-interval, and 0 otherwise. So, if user u watches
ni,u ∈ {1, ..., nmax} out of nmax intervals of show i, then
we have ni,u observations of value 1 for the random
variable Ri,u, and nmax − ni,u observations of value 0; as shown
in Section 5, these multiple observations can be substituted
equivalently in our least-squares objective function in Eq.
16 by the aggregate weight nmax and the averaged value
of the observations: r¯i,u = ni,u/nmax, i.e., the fraction of
the show watched. In addition, if a show comprises several
(e.g., weekly) episodes, then we assume that the above
applies to each episode; the total weight of the show is then
ti,unmax, where ti,u ∈ N is the number of episodes of show
i watched by user u. Then the averaged observed value is
r¯i,u = Ptji=,u1 r¯i,u,j/ti,u, where r¯i,u,j is the fraction of episode
j watched (analogous to above). This results in the log
likelihood (with an irrelevant constant c7 in our optimization
problem):
log p(D|M ) = − nmax X ti,u(r¯i,u − Mi,u)2 + c7,
(i,u)∈S
where the set S contains all pairs (i, u) with shows i that
have been watched at least partially by user u. Concerning
all shows, we additionally incorporate background
knowledge that users tend to not like shows with some small
condfience / weight. This weight is small, as it can also be
interpreted as the variance of our prior, which is large as
there are many reasons for not watching a show.
Analogously to Section 2, we use virtual observations of value 0,
with weight wprior. This results in the log likelihood in light
of the virtual data points Dprior:
log p(Dprior|M ) = − nmaxwprior</p>
        <p>X (0 − Mi,u)2 + c8
all (i,u)
Combining these two likelihoods, together with the prior
over the model parameters in Eq. 2 (rfist variant), we obtain
the log posterior
log p(M |D, Dprior) ∝
−</p>
        <p>X ti,u(r¯i,u − Mi,u)2 − wprior
X (0 − Mi,u)2
(i,u)∈S</p>
        <p>"
− λ X
d</p>
        <p>#
X Pi2,d + X Qu,d + c9,</p>
        <p>2
i u
all (i,u)
where we replaced the standard deviations in the prior by
λ ∈ R; the proportionality is due to omitting nmax, which is
an irrelevant constant when optimizing the posterior; c9 is
an irrelevant additive constant in our optimization problem.</p>
        <p>
          In [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ], the following objective function was experimentally
found to result in the best recommendation accuracy from
among several variants (re-written, but equivalent to Eq. 3
in [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]):
(20)
(21)
X (1 + αn it,u)(1 − Mi,u)2 +
X (0 − Mi,u)2
(i,u)∈S
+λ X
d
"
        </p>
        <p>#
X Pi2,d + X Qu,d ,</p>
        <p>2
i u
(i,u)6∈S
where nit,u = Pj ni,u,j is the total time spent by user u
watching show i (including all episodes j); S denotes again
the set of pairs (i, u) where show i is at least partially watched
by user u; α takes essentially the role of wprior.</p>
        <p>
          Interestingly, their objective function is similar to ours.
The main dieffrence, however, is in the least squares term,
where we fit our model to the fraction ¯ ri,u of the show
watched, while the indicator value 1 is used in [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]. We
attribute to this dieffrence the fact that our model performs
slightly better in our preliminary experiments on our
(proprietary) IP-TV data [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ], see below. Besides the
experimental improvement, our theoretical framework also provides a
clear understanding of the assumptions underlying our
approach, while the approach in [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ] appears to be found
experimentally in a somewhat ad-hoc manner.
        </p>
        <p>
          Preliminary Experiments: We used a (proprietary)
IP-TV data set [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ] concerning TV consumption of N =25,777
dieffrent shows by 14,731 users (living in 6,423 households)
in the UK over a 6 month period in 2008/2009 (see also
[
          <xref ref-type="bibr" rid="ref15">15</xref>
          ] for a more detailed description). In our collaborative
lfitering approach, we used only implicit feedback data
concerning TV consumption (user ID, program ID, the length of
the program and the time the user spent on this program),
and ignored the available explicit user prolfies and content
information for simplicity. We randomly split these data
into a training and a disjoint test set, with 10 shows per
user assigned to the test set. In the test set, we considered
shows interesting or relevant to users if they watched at least
0.671
0.624
0.547
80 % of them. We used these shows to evaluate the
recommender systems w.r.t. the performance measures recall (as
denfied in Section 3 with γ = 0). Table 1 summarizes our
preliminary results in terms of recall(k0), where k0 = k/N
is normalized regarding the number N of available shows.
Again, we used rank d = 50 for the matrix factorization
models. We nfid that our new approach (with λ = 0.005)
and the approach in [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ] (with λ = 0.02) give similar results,
compared to the neighborhood model (Nbr), sij = krirkirkj0rjk
and rˆiu = P sijruj, which was also used in [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ] for
comparison. Concerning recall, small values of k0 are particularly
important in practice, as only a small number of shows can
be recommended to a user; in this regime, our new approach
seems to perform better than the approach of [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]. We are
currently running more renfied experiments to confirm this
nfiding.
        </p>
      </sec>
    </sec>
    <sec id="sec-12">
      <title>CONCLUSIONS</title>
      <p>
        This paper provides three contributions. First, we
outlined a Bayesian framework that naturally allowed us to
insert background knowledge concerning the missing-data
mechanism underlying the observed rating data. The
obtained log posterior probability of the model is very similar
to the training objective function outlined in [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ].
      </p>
      <p>In our second contribution, we conducted experiments
where we considered several hypothetical missing-data
mechanisms underlying the observed real-world data. Given that
the true missing-data mechanism is unknown in the
absence of ground truth data, this sensitivity analysis
provided valuable information. Our key insight based on these
experiments is that the top-k hit-rate or recall can be
improved considerably by training recommender systems with
an appropriately chosen small positive prior weight
concerning background knowledge on the missing-data mechanism.
This is in contrast to the popular approach in the literature,
which only considers observed ratings.</p>
      <p>As third contribution, we provided a generalized
probabilistic framework for factorizing a user-item-matrix that
possibly has multiple observed rating values associated with
each user-item pair. We discussed three important special
cases / applications: besides training a top-k recommender
system by using virtual data points, we outlined how ratings
can be aggregated when items are grouped in a hierarchical
manner rather than in a aflt list, and how recommendations
can be made using this hierarchical structure.
Additionally, this framework enabled us to derive the training
objective function for a recommender system on sequential data
concerning TV consumption. This derivation not only
provides a clear understanding of the assumptions underlying
the training objective function, but also led to improvements
in the top-k hit rate over state-of-the-art approaches in our
preliminary experiments.</p>
    </sec>
    <sec id="sec-13">
      <title>Acknowledgements</title>
      <p>We are greatly indebted to Tin Ho for her encouragement
and support of this work. We are also very grateful to the
anonymous reviewers for their valuable feedback.
7.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>J.</given-names>
            <surname>Bennet</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Lanning</surname>
          </string-name>
          .
          <article-title>The Netiflx Prize</article-title>
          . In Workshop at SIGKDD-07
          <source>, ACM Conference on Knowledge Discovery and Data Mining</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>[2] BARB: Broadcaster Audience Research Board. http://www.barb.co.uk.</mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>P.</given-names>
            <surname>Cremonesi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Koren</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Turrin</surname>
          </string-name>
          .
          <article-title>Performance of recommender algorithms on top-N recommendation tasks</article-title>
          .
          <source>In ACM Conference on Recommender Systems</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>S.</given-names>
            <surname>Funk</surname>
          </string-name>
          .
          <source>Netiflx update: Try this at home</source>
          ,
          <year>2006</year>
          . http://sifter.org/ simon/journal/20061211.html.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Hu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Koren</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Volinsky</surname>
          </string-name>
          .
          <article-title>Collaborative lfitering for implicit feedback datasets</article-title>
          .
          <source>In ICDM</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>R.</given-names>
            <surname>Keshavan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Montanari</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Oh</surname>
          </string-name>
          .
          <source>Matrix completion from noisy entries</source>
          ,
          <year>2009</year>
          . arXiv:
          <fpage>0906</fpage>
          .
          <year>2027</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Koren</surname>
          </string-name>
          .
          <article-title>Factorization meets the neighborhood: a multifaceted collaborative lfitering model</article-title>
          .
          <source>In KDD</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>B.</given-names>
            <surname>Marlin</surname>
          </string-name>
          and
          <string-name>
            <given-names>R.</given-names>
            <surname>Zemel</surname>
          </string-name>
          .
          <article-title>Collaborative prediction and ranking with non-random missing data</article-title>
          .
          <source>In ACM Conference on Recommender Systems (RecSys)</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>B.</given-names>
            <surname>Marlin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Zemel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Roweis</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Slaney</surname>
          </string-name>
          .
          <article-title>Collaborative lfitering and the missing at random assumption</article-title>
          .
          <source>In Conference on Uncertainty in Artificial Intelligence (UAI)</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>R.</given-names>
            <surname>Pan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Zhou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Cao</surname>
          </string-name>
          , N. Liu,
          <string-name>
            <given-names>R.</given-names>
            <surname>Lukose</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Scholz</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Q.</given-names>
            <surname>Yang</surname>
          </string-name>
          .
          <article-title>One-class collaborative lfitering</article-title>
          .
          <source>In ICDM</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>A.</given-names>
            <surname>Paterek</surname>
          </string-name>
          .
          <article-title>Improving regularized singular value decomposition for collaborative lfitering</article-title>
          .
          <source>In KDDCup</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>R.</given-names>
            <surname>Salakhutdinov</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Mnih</surname>
          </string-name>
          .
          <article-title>Probabilistic matrix factorization</article-title>
          .
          <source>In NIPS</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>R.</given-names>
            <surname>Salakhutdinov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Mnih</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G.</given-names>
            <surname>Hinton</surname>
          </string-name>
          .
          <article-title>Restricted Boltzmann machines for collaborative lfitering</article-title>
          .
          <source>In ICML</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>R.</given-names>
            <surname>Salakhutdinov</surname>
          </string-name>
          and
          <string-name>
            <given-names>N.</given-names>
            <surname>Srebro</surname>
          </string-name>
          .
          <article-title>Collaborative lfitering in a non-uniform world: Learning with the weighted trace norm</article-title>
          ,
          <year>2010</year>
          . arXiv:
          <volume>1002</volume>
          .
          <fpage>2780</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>C.</given-names>
            <surname>Senot</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Kostadinov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Bouzid</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Picault</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Aghasaryan</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Bernier</surname>
          </string-name>
          .
          <article-title>Analysis of strategies for building group prolfies</article-title>
          .
          <source>In Conference on User Modeling, Adaption and Personalization (UMAP)</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>N.</given-names>
            <surname>Srebro</surname>
          </string-name>
          and
          <string-name>
            <given-names>T.</given-names>
            <surname>Jaakkola</surname>
          </string-name>
          .
          <article-title>Weighted low-rank approximations</article-title>
          .
          <source>In ICML</source>
          , pages
          <fpage>720</fpage>
          -
          <lpage>7</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>H.</given-names>
            <surname>Steck</surname>
          </string-name>
          .
          <article-title>Training and testing of recommender systems on data missing not at random</article-title>
          .
          <source>In KDD</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>M.</given-names>
            <surname>Weimer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Karatzoglou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Q.</given-names>
            <surname>Le</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Smola</surname>
          </string-name>
          .
          <article-title>Cofi rank - maximum margin matrix factorization for collaborative ranking</article-title>
          .
          <source>In Advances in Neural Information Processing Systems (NIPS)</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>