include [4], [27]. Fab [27] is the first hybrid recommender
system which calculate user similarities based on content
analysis and user profiles. Personality diagnosis (PD) [28] is
a special kind of hybrid approach which combines memory
based and model based CF methods and retains some
advantages of both algorithms.
2.2 Clustering Collaborative Filtering Models
The most related model to this paper is the clustering collab-
orative filtering model. A cluster is a collection of data sam-
ples having similar features or close relationships. For the
collaborative filtering task, clustering is often an intermedi-
ate process and the resulting clusters are used for further
analysis [2].
In general, the clustering models can be classified into
several different types. We draw the sketch maps in Fig. 2.
The most straightforward way is to partition the users into
distinct groups. Sarwar et al. [6] cluster the complete user
set based on user-user similarity and use the cluster as the
neighborhood. In contrast, O’Connor et al. [7] use clustering
algorithms to partition the set of items based on user rating
data. Unger et al. [21] propose to cluster users and items
separately by variants of k-means and Gibbs sampling.
Users can then be re-clustered based on the number of items
in each item cluster they rated, and items can similarly be
re-clustered based on the number of user in each user clus-
ter that rated them. The above three algorithms are all one-
sided cluttering, either for users or items. See Figs. 2a and 2b,
after some row (column) exchanges, we get the hard parti-
tions of users (items).
Some other works consider of the two-sided clustering
model. Typical works are [8]. We could see these methods
as co-clustering based CF models, since their clustering
strategies are traditional co-clustering, e.g., the key idea of
[8] is to simultaneously obtain user and item neighborhoods
via co-clustering and generate predictions based on the
average ratings of the co-clusters while taking the biases of
the users and items into account. See Fig. 2c, after some row
and column exchanges, we can get the distinct co-clusters
with both users and items (we call them user-item sub-
groups in this paper).
One big limitation of the co-clustering approaches as well
as the above one-sided clustering approaches is that, each
user or item can be clustered into one single cluster only,
whereas some recommender systems may benefit from the
ability of clustering users and items into several clusters at
the same time [3]. For example, in a movie web site, a user
may be interested in multiple topics of movies and a movie
can be liked by different groups of users from different
aspects. So the Multiclass Co-Clustering model, which is
shown in Fig. 2e, is more reasonable. It allows each user and
item to be in multiple subgroups at the same time, i.e., sub-
groups have overlaps.
The last clustering type is the biclustering model (see
Fig. 2d) which is well studied in gene expression data analy-
sis [29]. It seems similar to MCoC – a bicluster is a subgroup
of genes (users) and conditions (items). But they are differ-
ent for that biclustering usually finds some maximum
biclusters with low residue scores [29], i.e., biclusters always
can not cover all rows and columns.
In this paper, we pay our most attention to the model of
Multiclass Co-Clustering.
There are many works try to cluster t he sample and
feature (in recommendation tasks, users and items)
jointly, for example, [30]. All these works assume there
exist hidden concepts. Each concept involves different
users and different items. The central goal in a r ecommen-
dation task is effectively identify such hidden concepts.
This assumption has been widely used in many informa-
tion processin g tasks , e. g. Topic modeling, Matrix factori-
zation. We also use this assumption. The clusters we
obtained (with users and items be clustered jointly) are
just this kind of hidden concepts.
3OUR ALGORITHM
Our primary goal is to find potential user-item interest sub-
groups flooded in the large user-item matrix, and then use
them to improve the performance of collaborative recom-
mender systems. There are two main questions:
1) How to find meaningful user-item subgroups from
limited information? The only information we have
is the user-item matrix, such as ratings for movies
and listening logs for music.
2) How to combine user-item subgroups with existing
collaborative filtering methods and improve their
performance? We need a strategy to handle the cases
that one user and one item can both belong to one,
two (or more), or zero subgroups.
The proposed algorithm is to answer these two questions –
we find user-item subgroups by solving an extended Multi-
class Co-Clustering problem and propose a unified strategy
to combine subgroups with existing collaborative filtering
methods. Considering that this paper is to explore a new
improving space for collaborative recommender systems, we
pay our all attention to the pure CF situation, i.e., we only use
the user-item interaction data.
3.1 Problem Formulation of MCoC
Suppose there are n users and m items, and the only infor-
mation we have is the user-item matrix T 2 R
nm
where
Fig. 2. Comparison of five clustering models for collaborative filtering.
BU ET AL.: IMPROVING COLLABORATIVE RECOMMENDATION VIA USER-ITEM SUBGROUPS 2365