Reliable graph-based collaborative ranking
RReliable Graph-based Collaborative Ranking
Bita Shams a and Saman Haratizadeh a a Faculty of New Sciences and Technologies, University of Tehran, Tehran, Iran .
Abstract
GRank is a recent graph-based recommendation approach the uses a novel heterogeneous information network to model users’ priorities and analyze it to directly infer a recommendation list. Unfortunately, GRank neglects the semantics behind different types of paths in the network and during the process, it may use unreliable paths that are inconsistent with the general idea of similarity in neighborhood collaborative ranking. That negligence undermines the reliability of the recommendation list generated by GRank.
This paper seeks to present a novel framework for reliable graph-based collaborative ranking, called ReGRank, that ranks items based on reliable recommendation paths that are in harmony with the semantics behind different approaches in neighborhood collaborative ranking. To our knowledge, ReGRank is the first unified framework for neighborhood collaborative ranking that in addition to traditional user-based collaborative ranking, can also be adapted for preference-based and representative-based collaborative ranking as well. Experimental results show that ReGRank significantly improves the state-of-the art neighborhood and graph-based collaborative ranking algorithms.
Keywords:
Collaborative ranking, Pairwise preferences, Heterogeneous networks, meta-path analysis, neighborhood recommendation Introduction
Recommender systems are sort of information filtering systems that help people through filtering the items that are in interest of the users. Although recommender systems can be designed to make recommendations based on distributed knowledge in peer-to-peer architectures [4,6], here we focus on the standard centralized recommendation service architecture that analyzes a centralized knowledge base for making recommendations. Collaborative filtering is the main class of recommendation algorithms which exploits users’ historical feedbacks to predict and recommend what users will require more in the future. Traditional collaborative filtering algorithms, collaborative rating methods, generate a model that correctly predict how users will rate the items. Recently, collaborative filtering algorithms are directed to learn the users’ ranking over items. The latter approach, called collaborative ranking, has gained more attention as recommendation algorithms should improve quality of Top-N recommendation that is inherently a ranking task[13,26]. Neighborhood collaborative ranking algorithms, also called NC-Rank methods, typically calculate users’ similarities through Kendall correlation and its variants that take into account the number of agreements/disagreements of users over common pairwise comparisons of items, and ind the most similar users to the target user. Then they analyze the pairwise comparisons of those similar users to predict the ranking of items for the target user [1,13,18,30]. NC-Rank algorithms generally get in trouble in sparse datasets where information is not rich enough to calculate reliable similarities and to find useful neighborhoods for estimating the preferences of users. More clearly, in sparse datasets users rarely have common pairwise preferences and so, most of estimated similarity values, obtained by Kendall and its variants[12,30], will be equal to zero[18]. Even if there exists a set of common pairwise preferences between two users, it is not large enough to ensure that similarity values are reliable [18,19]. In such a situations, NC-Rank algorithms form the neighborhood randomly and so, they fail to infer the true ranking of items for the target user [18]. Graph-based collaborative ranking (GRank) [19] resolves this sparsity issue by calculating extended similarities among entities in a heterogeneous information network, called Tripartite preference graph (TPG) that reflects priorities of users over items. TPG reflects the relations between entities of neighborhood collaborative ranking that are users, pairwise comparisons and items’ representatives (that refer to the winner or loser sides of items). It uses the personalized PageRank algorithm on the graph to propagate the rank from a target node to other nodes in the graph via existing paths in the network. The amount of rank propagated from a target user node to a an item node is then used to estimate the closeness of that item to the target user, which in turn determines the position of that item in the sorted recommendation list of items for that user. Heterogeneous information networks, such as TPG, are comprised of different types of entities resulting in different types of paths each reflecting a specific semantic. For instance, from the rating-oriented perspective, a certain type of path may connect the target user to items that are similar to his favorite items, while another kind of path connects a user to items that his friends like them. These types of relations are in harmony with different classes of neighborhood collaborative filtering; the former one follows the idea of item-based recommendation approach, while, the latter one follows the idea of user-based recommendation approach. Therefore, it is important for a graph-based recommendation algorithm to take into account the semantics behind different types of paths in heterogeneous networks [8,9,27]. Otherwise, it might score items based on unreliable paths that are inconsistent with the semantic behind the desired approach of neighborhood recommendation. Unfortunately, GRank neglects these semantics and interprets each existing type of path between any two nodes of the graph, as an evidences for closeness of those nodes. Therefore, it needs to be investigated whether GRank scores items through reliable paths (i.e. paths that are in harmony with the desired concept of similarity) or not, and if it does not, then we need a way to identify the reliable paths in TPG, before using them for making recommendations. To handle these issues we first formalize different perspectives to neighborhood collaborative ranking, that are user-based, preference-based, and items’ representative-based collaborative ranking. Thereafter, we determine which paths of TPG are in harmony with each perspective, and call them reliable recommendation meta-paths for that perspective. Once the reliable recommendation meta-paths are extracted, we show that GRank score items through paths that are not reliable in any classes of neighborhood collaborative ranking. Finally, we present a framework for graph-based collaborative ranking, called ReGRank, which guarantees to score items only ased on reliable paths. ReGRank is adapted to follow the semantic behinds user-based, pairwise preference-based and representative-based neighborhood collaborative ranking. The main contributions of this paper can be summarized as follows: We present a novel approach to describe a large set of paths on heterogeneous information with a short string, called string description of meta-paths. That enables us to define and analyze reliable recommendation paths from different perspectives in neighbor-based collaborative ranking. We formalize the user-based, representative-based, and preference-based recommendation approaches in a graph-based collaborative ranking framework called ReGRank. To our knowledge, this is the first comprehensive research on different classes of neighbor-based collaborative ranking algorithms. We systematically show how each approach in neighborhood collaborative ranking can be modeled through a particular set of paths in TPG. Also, we show that TPG contains some paths that are not reliable for calculating similarity in any class of NC-Rank methods. We introduce three novel network structures , , and whose all paths are reliable from different perspectives of NC-Rank and we show how to construct and use those network structures to make reliable recommendations in ReGRank. We provide a comprehensive set of experiments to evaluate different classes of ReGRank. The results show that user-based and representative-based ReGRank improve current state-of-the art neighborhood and graph-based collaborative ranking methods. The rest of this paper is organized as follows. Section 2, we discuss the current collaborative ranking methods especially those that follows neighborhood recommendation approach which covers the scope of this paper. Then, we summarize the preliminaries in graph-based collaborative ranking in section 3. Next, in section 4, we show how to briefly describe recommendation meta-paths of recommendation algorithms by a string descriptions. The concept of string description enable us to formally define reliable recommendation meta-paths of neighborhood collaborative ranking in section 5. Thereafter, we present a novel framework for reliable graph-based collaborative ranking in section 6. Finally, we present experimental evaluations of our approach in section 7, and conclude the whole paper with directions to future works in section 8. Related work
As the scope of this paper lies in the category of neighborhood collaborative ranking here we will briefly review the alternative approach to collaborative ranking, called latent factor model, and then we will discuss the neighborhood collaborative ranking algorithms in more details. We also mention that current neighborhood collaborative ranking responds to the queries using a client/server architecture in which there is a centralized data center that encompass all available information. .1. Latent factor models
Latent factor model (LFM) approach of collaborative ranking transforms users and items to a latent common feature space in which we can correctly estimate interest of users to items through calculating inner product of their corresponding feature vectors. Cofi-Rank-NDCG [31] directly optimize the convex upper bound of a ranking loss function, called normalized discounted cumulative gain NDCG. Shi. et al [25] presented a LFM approach that lead to correct prediction of top-1 probabilities of each item for user. URM[34] aggregates ranking and rating-oriented loss functions to improve the quality of total ranking. ListPMF[11] adapts probabilistic matrix factorization approach to maximize the log- posterior of the predicted and observed preference orders of users. BoostMF[2] aggregates boosting and matrix factorization models to improve the quality of top-N recommendation. Another group of LFM algorithms maps users and items to a latent feature space which results in correct prediction of users’ pairwise preferences. CofiRank-ordinal is one of pioneers in this category which minimizes the number of dis-concordant comparisons among items[32] when rating data is available. Bayesian personalized Ranking (BPR) is a pairwise collaborative ranking framework for users’ implicit feedbacks. ABPR[17] adapts Bayesian personalized ranking for heterogeneous implicit feedbacks. CofiSet[16] learns the pairwise preferences among item sets rather than single items. PushAtTop [3] is another LFM approach that weighs the pairwise comparisons corresponding to items that are highly preferred by each user. CLIMF[23] and xCLIMF[24] optimizes the mean reciprocal rank (MRR) of the recommendation list. UOCCF[10] is one of the recent collaborative ranking framework which aggregates CLIMF and probabilistic matrix factorization to improve top-n recommendation quality in case of implicit feedbacks. We note that this paper focus on neighborhood collaborative ranking, and so, our algorithm is totally different from LFM techniques as it does not map users and items to any other feature space. Instead, it explores the concept of similarities between entities like users and items to estimate a target user’s priorities.
Neighborhood class of collaborative ranking methods, which covers the current research, explores opinions of similar users to predict the total ranking of items for the target user. Although some researchers have investigated list-wise[29] or point-wise[7] approach to calculate users’ similarity, most of current NC-Rank algorithms follow the pairwise approach in which takes into account users’ pairwise preferences over items[1,12,14,30,33]. More clearly, most of current NC-Rank algorithms follow a three step framework. The first step is to calculate users’ similarities according to their agreement/disagreement over common pairwise preferences. The second step, is to estimate a preference matrix for the target user based on the pairwise preferences of k-most similar users to him. Finally, the third step is to aggregate the estimated pairwise preferences to infer the total ranking of items for the target user. This framework is originally introduced by EigenRank [13] which uses Kendall correlation to estimate users’ similarities, and a random walk pproach for ranking inference. Wang et al. [30] has slightly modified Kendall correlation in order to weigh different pairwise preferences according to their popularity and their strength in a rating dataset. Kalloori et al.[5] have suggested to calculate the similarities using EDRC metric, that models each user u as a preference graph of items whose link indicates the preference of item i over item j for user u. Then, it calculates the similarities between preferences graphs of users to estimate the similarities of users. The main flaw of the mentioned algorithms is their inefficiency in sparse data when users rarely have common pairwise preferences. SibRank[18] exploits a signed bipartite network to calculate extended similarities even among users that do not have any common pairwise preferences. Although SibRank is able to calculate users’ similarities in sparse data, it can’t estimate the preferences for the target user when no information is available in his neighborhood. GRank[19] is another network-oriented collaborative ranking framework which applies personalized PageRank over the so called Tripartite Preference Graph (TPG) to directly estimate the interest of users to the items. This approach enables GRank to assign higher scores to items that are popular in the neighborhood while it is still capable of using information that is available outside of the neighborhood. However, GRank only takes into account the length and number of existing paths between a target user and item representatives without considering the semantics behind different types of paths in TPG. This ignorance affects GRank’s reliability as it might score items based on the paths that do not reflect a reasonable sense of relevance between a target user and an item representative, or even are in contrast to the concept of similarity in the desired neighborhood recommendation approach. Our suggested framework, called ReGRank, is different from current NC-Rank algorithms from different perspectives. First, it does not rely on common pairwise comparisons to calculate users’ similarities as in [13] [30]. Instead, it exploits a graph-based proximity measure that is able to calculate transitive similarities even when users have no common pairwise preferences. Moreover, ReGRank directly estimates interests of users to items base on all available information in the system while most of NC-Rank algorithms define a neighborhood around the target user and only explore opinion of users in that neighborhood for scoring items[1,13,18,30,33]. Also it should be noted that unlike GRank, ReGRank takes into account the semantics behind each type of path in TPG and only uses reliable paths which follow the concept of similarity in a neighborhood collaborative ranking approach. Finally, note that while traditional NC-Rank algorithms lie in the category of user-based collaborative ranking methods [1,13,18,30,33], GRank[19] can’t be placed in any category, not user based nor item based methods. On the other hand, ReGRank is a unified framework that can be adapted for user-based, preference-based and representative-based neighborhood collaborative ranking as well. Preliminaries
A rating-oriented system can be modeled as a bipartite network with adjacency matrix B whose element , indicates the opinion of a user to an item . However, this approach is not applicable in ranking-oriented systems in which users’ feedbacks to items are not absolute values and the choices of the users should be analyzed with regard to the choice context. More clearly, anking-oriented data set can be represented in the form of set = { =< , , > , ∈ , ∈ ∈ } where =< , , > denotes that user u has preferred item i over item j . Such a dataset might contain a record indicating that user prefers item A over item B while some other item like C may be preferred over A by user u . That means that there are two sides for each item i , the desirable side, , that refers to when a user prefers i over another item, and the undesirable side, i , that refers to when a user prefers another item to i . Formally, given a set of users = { , … , } , and a set of items = { , … , } , we use a set V to represent the main entities of a ranking-oriented recommender systems and define it as =< , , > where U is the set of users, = {( , )| ∈ } is the set of representatives denoting desirable and undesirable sides of items, and = {< , >, ∈ , ∈ } is the set of pairwise preferences. Note that each =< , > indicates preference of i over j . For legibility, we call the first item as p ’s desirable item, denoted by , and the second one as p’ s undesirable item denoted by . The agreement function and support function sup define the relation between different entities of ranking-oriented recommender systems. Definition 1.
Given a user ∈ , and a preference ∈ , the agreement function : × → {0,1} indicates the relations between users and pairwise preferences: a , = 1, < , , > ∈ 0, ℎ where O is the observation set of preferences. Definition 2.
Given a preference = ( , ) and a representative r , the support function : × → {0,1} indicates whether a preference p supports the representative r or not. ( , ) = 1, = =
1, = =
0, ℎ
Using agreement and support functions, we can construct the tripartite preference graph (TPG) of a pairwise preference dataset as in Definition 3 [20]. Fig.1 shows the network schema of TPG. Users are connected to preferences which they agree, and, representatives are connected to those preferences that supports them.
Definition 3. A tripartite preference graph is a tripartite graph =< ( , , ), ( , ) > where U, is the set of users, P is the set of possible pairwise preferences, and R is the set of items’ representatives. = {( , )| ( , ) = 1, ∈ , ∈ } , is the set of edges that connect a user to a preference if there is an agreement relation between that user and preference. Also, ={( , )| ( , ) = 1, ∈ , ∈ } , is the set of edges linking each pairwise preference to the representatives that it supports. Fig.1. Network schema of tripartite preference graph (TPG)
More clearly, TPG is a tripartite graph which models the subjective relations between users and items’ representatives through intermediate nodes of pairwise preferences. This intermediate layer provides an ability to model the choice context in which a user has preferred/not preferred an item (See Fig.2c). Moreover, the items’ representatives layer enables TPG to model different sides of an item i: when reflects the situation in which i is preferred over another item, and refers to the situation in which another item is preferred over i . Fig.2 illustrates a schematic example of TPG and its difference with tradition bipartite graph (BG) representation of recommender systems. As illustrated in Fig.2b, BG only represents the interaction between users and items, and so, Martin and Lee both are connected to B in a similar way while they have picked item B in different contexts. On the other hand, TPG can clearly reflect that these users do not agree over any pairwise comparison. Fig.2. BG and TPG representation of a pairwise preference dataset.
Given the graph representation of a recommender system, graph-based recommendation algorithm should define a function score : × → ℝ in order to reply queries in form of query Q = ( , ) where is the object type of query nodes and is the object type of target nodes. More clearly, the score function calculates scores for objects with type based on the degree of closeness of those objects to some particular objects with type through paths that we call recommendation paths, as in Definition 4. efinition 4. Given a network G and a query format Q = ( , ), any path connecting a node ∈ to another node ∈ , is called a recommendation path over G with respect to Q. Graph-based collaborative ranking algorithms seek to reply the query in forms of = ( , ) and score representatives according to their closeness to the target user. Therefore, ranking –oriented recommendation paths are those paths that connect a user node to a desirable or undesirable representative in graph representation of ranking-oriented recommender systems. As this paper focuses on graph-based collaborative ranking frameworks, we simply refer ranking-oriented recommendation paths as recommendation paths over G . As stated earlier, a main challenge that a graph-based recommendation algorithm faces is to determine which recommendation paths should be taken into account by the scoring function. In the following sections, we will follow a systematic approach to determine reliable recommendation paths for different classes of neighbor based collaborative ranking and we will show how to use these reliable recommendation paths to score items more precisely. String description of recommendation meta-paths
In this paper we seek to determine which recommendation paths in TPG are reliable. Clearly, it is not feasible or useful to individually analyze the reliability of each recommendation path between any pair of user and representative nodes. So, we use a high-level description of recommendation paths, called recommendation meta-paths. Let =< , > be a heterogeneous network and = ( , ) be its network schema [27] in which = { ( )| ∈ } contains the object types of G’s vertices, and = ( ), ( ) ( , ) ∈ . The set of network meta-paths are defined as the whole set of paths in the network and are denoted by as Ψ = { = ( , .., )| ∀ ( , ) ∈ } on the graph of network schema . We note that each meta-path provides a high level description of one possible type of paths over G as a heterogeneous network. For instance, the UPR meta-path is a path over TPG’s schema that starts at U, passes its outgoing edge to P and then passes an edge to reach R. This meta-path describes all paths over TPG that connect a user to a representative node through a preference node. The UPR meta-path describes paths such as < − < − > and < − < − > as illustrated in Fig2.c. The concept of meta-paths in heterogeneous networks enables us to describe the semantics behind different relations among entities of recommender systems [8,9,21,22,27,35]. Motivated by the concept of meta-path, we define the concept of recommendation meta-paths with regards to the query format = ( , ) over the network in Definition 5. Definition 5. A recommendation meta-path in a graph G with respect to a query = ( , ) is a path defined on G 's network schema = ( , ) from to where and are the node types corresponding to the query and the target objects of recommendation. Also, = { = , .., )| = , = , ∀ ( , ) ∈ } is the set of all recommendation meta–paths existing in G . Different recommendation meta-paths can model different approaches for recommendation. For instance, in a heterogeneous networks comprised of users, movies, actors and relations between them, the < − − > meta-path can be used to recommend a movie to a user because his friend has watched it. This approach is exactly what is used in user-based recommendation. On the other hand, the < − − > meta-path can help us to relate a target user to a movie in which his favorite actor has played a role. This latter approach is an example of content-based class of recommendation methods. Typically, there are a large number of recommendation meta-paths that exist in a graph and some of them are reliable when using a certain NC-Rank approach. Here we define the string description of the recommendation meta-path set , denoted by , to shortly demonstrate the patterns appearing in meta-paths that belong to . The string description of meta-paths in a graph G are obtained from a finite alphabet ={ … } where { , … , } represents the set of node types in G . Each member of Σ describes a meta-path in G that is a meta-path with length zero from a node type to that is conceptually equivalent to starting from node with type and staying there and not moving anywhere. Also a meta-path = ( , , … , ) is described by a string = … that represents starting from a node with type , following the meta-path that end in a node with type . For instance, the meta-path = ( , , , , ) over TPG is described by string while string U describes the meta-path = ( ) . We define a set of operations that are needed to systematically obtain complicated string descriptions from simple ones. Given two string descriptions of meta-paths = { … . } and β = { ′ … . ′ } . Select operation denoted " | ", is used to describe different meta-path options between nodes. For example if = ′ then = ( | ), is a string description that represents that one of meta-paths α or β may be selected to be followed from a node with type (= ). For example, if = and = , α|β would be represented by the string description = | and describes one of UPU or UPRPU paths can be selected for connecting two user nodes (that are nodes with type U). Join Operation , denoted by "." , is used to describe concatenating two meta-paths. For example if = ′ , then α.β is string description for a meta-path that connects nodes of type to nodes of type ′ through following a meta-path that is described by β just after finishing a meta-path described by α . Formally, we have α.β = [ … ].[ … ]=( … . … . ) . For instance, if we have = and = , then α.β would be equal to UPR . Repeat Operation , denoted by "∗ " , is used to describe meta-paths that are generated by repeatedly following some meta-path α , for zero or more times. It is applicable to the string description of a meta-path only if the starting and ending node types of that meta-path are the same. For example if = , then α ∗ describes a meta-path that starts from and ends at a certain object type , by following meta-path described by α , zero or more times. Formally, α ∗ = {α , α , … , α , … } , and since α is a string description for a meta-path starting at a node type , then α , that means following α for zero times, denotes not moving from to anywhere. Also string α is generated by applying join operation over α for − 1 times. In other words, α ∗ refers to the strings that belongs to the set ={ , … , … … , … } . For example, if = then γ ∗ = [ ] ∗ ={ , , , ..} . To make the whole concept clear, let us define the string description of recommendation meta-paths of GRank denoted by . GRank seeks to answer the query = ( , ) as it seeks to determine the closeness of representatives to a given target user. For this purpose, it applies personalized PageRank over TPG, and so it considers all recommendation meta-paths in TPG. The set of TPG’s recommendation meta-paths can be obtained through Breadth-first search on network schema starting at user node U . These meta-paths first pass edges that are described by = to reach a preference node. Then, it leaves P and returns to it passing edges in the form of = PU and = UP or = PR and = RP . These paths are described by string in form of [ . | . ]= [ | ] .This pattern can be repeated for arbitrary number of times which is expressed by [ | ] ∗ . Finally, these paths will end through passing the meta-path α = PR to reach a representative node R. Therefore, = . [ | ] ∗ . = . [ | ] ∗ . . Lemma. 1 . Given two string descriptions = { … . } and = { … . } where = = , we have [ ∗ ].[ ]= ( … ) ∗ … Proof:
From the definition of the repeat operation, we know that [ ∗ ] ends either with a or a that are the same and both are equal to ′ . So, [ ∗ ]= ( … ) ∗ = [… ] [ ]= … , and according to the definition of the join operation, we have [ ∗ ].[ ]=( … ) ∗ … . Lemma.2.
Given two string dsescriptions of meta-paths = { … . } and = { … . } where = = , we have .[ ].[ ∗ ]= … ( … ) ∗ Proof:
The proof is similar to that of Lemma.1. s we showed that = . [ | ] ∗ . . Using Lemma.1 and Lemma.2 we can further simplify the string description to see that = [ | ] ∗ . Using string description of meta-paths, we can shortly describe the reliable recommendation meta-paths of NC-Rank algorithms and also check whether the recommendation paths of an algorithm, like GRank, are consistent to string description of reliable recommendation meta-paths of a particular class of NC-Rank algorithms or not. Discovering reliable meta-paths for neighborhood collaborative ranking
Graph-based collaborative ranking algorithms should define a ranking function : × →ℝ , which scores each item based on the degree of closeness of its corresponding representatives to the target user. More formally, a graph-based collaborative ranking algorithm, , needs to define a ranking score function as: ( , ) = ( ( , ), ( , )) (1) Where and are desirable and undesirable representatives for an item i, and ( , ) is a function that measures the degree of closeness between a user u and a representative based on recommendation meta-paths that are considered reliable in the recommendation algorithm alg. In this setting, function f must be defined to aggregate the scores of representatives of each item i in order to estimate the overall desirability of i for user u. The first step for defining such a scoring function is to find the reliable recommendation meta-paths for an algorithm alg . In this section we are going to first define the concept of similarity or closeness that is used in a neighborhood collaborative ranking method alg . We will also show how to describe all recommendation meta-paths that are in harmony with that concept of similarity, using a string description . Here, we will do that for user-based, preference-based and representative based approaches to the neighborhood collaborative ranking. Finally, we show that GRank uses some recommendation meta-paths that are not in harmony with the rules of any of the three mentioned approaches, and can be considered as unreliable meta-paths. Like neighborhood collaborative rating algorithms, user-based neighborhood collaborative ranking (UNC-Rank) algorithms estimate ( , ) using opinions of u’ s neighbors about r . More clearly, UNC-Rank algorithms define the scoring function according to the following rules: - Rule U-1:
A representative is close to the target user if it is voted directly by him or his similar users. A user u votes to a representative r if he agrees with some pairwise preference that supports r. - Rule U-2:
A user is similar to the target user if he is directly similar to him or is similar to users that are similar to the target user. ow, the question is how to calculate direct users’ similarities using TPG. TPG reflects the similarity over pairwise preferences as well as the similarity over representatives[20]. The first one that we call type-1 user-user similarity, indicates that two users are similar if they agrees over some pairwise preferences. For instance, Jack and John are similar as they both have preferred B over A, and, D over A (See Fig.3a). This similarity can be determined through < ℎ , <