MaTrust: An Effective Multi-Aspect Trust Inference Model
Trust is a fundamental concept in many real-world applications such as e-commerce and peer-to-peer networks. In these applications, users can generate local opinions about the counterparts based on direct experiences, and these opinions can then be aggregated to build trust among unknown users. The mechanism to build new trust relationships based on existing ones is referred to as trust inference. State-of-the-art trust inference approaches employ the transitivity property of trust by propagating trust along connected users. In this paper, we propose a novel trust inference model (MaTrust) by exploring an equally important property of trust, i.e., the multi-aspect property. MaTrust directly characterizes multiple latent factors for each trustor and trustee from the locally-generated trust relationships. Furthermore, it can naturally incorporate prior knowledge as specified factors. These factors in turn serve as the basis to infer the unseen trustworthiness scores. Experimental evaluations on real data sets show that the proposed MaTrust significantly outperforms several benchmark trust inference models in both effectiveness and efficiency.
MaTrust: An Effective Multi-Aspect Trust Inference Model
|State Key Laboratory for Novel Software Technology, China|
|IBM T.J. Watson Research|
|University of California at Santa Barbara, USA|
|State Key Laboratory for Novel Software Technology, China|
|State Key Laboratory for Novel Software Technology, China|
H.2.8 [Database Management]: Database applications—Data mining
Trust inference, transitivity property, multi-aspect property, latent factors, prior knowledge
Trust is essential to reduce uncertainty and boost collaborations in many real-world applications including e-commerce [?], peer-to-peer networks [?], semantic Web [?], etc. In these applications, trust inference is widely used as the mechanism to build trust among unknown users. Typically, trust inference takes as input the existing trust ratings locally generated through direct interactions, and outputs an estimated trustworthiness score from a trustor to an unknown trustee. This trustworthiness score indicates to what degree the trustor could expect the trustee to perform a given action.
The basic assumption behind most of the existing trust inference methods is the transitivity property of trust [?], which basically means that if Alice trusts Bob and Bob trusts Carol, Alice might also trust Carol to some extent. These methods (see Section MaTrust: An Effective Multi-Aspect Trust Inference Model for a review), referred to as trust propagation models as a whole, have been widely studied and successfully applied in many real-world settings [?, ?, ?, ?, ?, ?].
In addition to transitivity, a few trust inference models explore another equally important property, the multi-aspect of trust [?, ?]. The basic assumption behind the multi-aspect methods is that trust is the composition of multiple factors, and different users may have different preferences for these factors. For example, in e-commerce, some users might care more about the factor of delivering time, whereas others give more weight to the factor of product price. However, the existing multi-aspect trust inference methods [?, ?, ?, ?] require as input more information (e.g., the delivering time as well as user’s preference for it) in addition to locally-generated trust ratings, and therefore become infeasible in many trust networks where such information is not available.
Another limitation in existing trust inference models is that they tend to ignore some important prior knowledge during the inference procedure. In social science community, it is commonly known that trust bias is an integrated part in the final trust decision [?]. Therefore, it would be helpful if we can incorporate such prior knowledge into the trust inference model. In computer science community, researchers begin to realize the importance of trust bias, and a recent work [?] models trustor bias as the propensity of a trustor to trust others.
In this paper, we focus on improving the trust inference accuracy by integrating the multi-aspect property and trust bias together, and the result is the proposed trust inference model MaTrust. Different from the existing multi-aspect trust inference methods, MaTrust directly characterizes multiple latent factors for each trustor and trustee from existing trust ratings. In addition, MaTrust can naturally incorporate the priori knowledge (e.g., trust bias) as several specified factors. In particular, we consider three types of trust bias, i.e., global bias, trustor bias, and trustee bias. We will refer to the characterized latent and specified factors as stereotypes in the following. Finally, the characterized stereotypes are in turn used to estimate the trust ratings between unknown users. Compared with the existing multi-aspect methods, the proposed method is more general since it does not require any information as input other than the locally-generated trust ratings. Compared with the trust propagation methods, our experimental evaluations on real data sets indicate that the proposed MaTrust is significantly better in both effectiveness and efficiency.
The rest of the paper is organized as follows. Section 2 reviews related work. Section 3 presents the definition of the trust inference problem. Section 4 describes our optimization formulation for the problem defined in the previous section and shows how to incorporate the priori knowledge. Section 5 presents the inference algorithm to solve the formulation. Section 6 provides experimental results. Section 7 concludes the paper.
In this section, we introduce related trust inference models including trust propagation models, multi-aspect trust inference models, and other related methods.
To date, a large body of trust inference models are based on trust propagation where trust is propagated along connected users in the trust network, i.e., the web of locally-generated trust ratings. Based on the interpretation of trust propagation, we further categorize these models into two classes: path interpretation and component interpretation.
In the first category of path interpretation, trust is propagated along a path from the trustor to the trustee, and the propagated trust from multiple paths can be combined to form a final trustworthiness score. For example, Wang and Singh [?, ?] as well as Hang et al. [?] propose operators to concatenate trust along a path and aggregate trust from multiple paths. Liu et al. [?] argue that not only trust values but social relationships and recommendation role are important for trust inference. In contrast, there is no explicit concept of paths in the second category of component interpretation. Instead, trust is treated as random walks on a graph or on a Markov chain [?]. Examples of this category include [?, ?, ?, ?, ?].
Different from these existing trust propagation models, the proposed MaTrust focuses on the multi-aspect of trust and directly characterizes several factors/aspects from the existing trust ratings. Compared with trust propagation models, our MaTrust has several unique advantages, including (1) multi-aspect property of trust can be captured; and (2) various types of prior knowledge can be naturally incorporated. In addition, one known problem about these propagation models is the slow on-line response speed [?], while MaTrust enjoys the constant on-line response time and the linear scalability for pre-computation.
Researchers in social science have explored the multi-aspect property of trust for several years [?]. In computer science, there also exist a few trust inference models that explicitly explore the multi-aspect property of trust. For example, Xiong and Liu [?] model the value of the transaction in trust inference; Wang and Wu [?] take competence and honesty into consideration; Tang et al. [?] model aspect as a set of products that are similar to each other under product review sites; Sabater and Sierra [?] divide trust in e-commerce environment into three aspects: price, delivering time, and quality.
However, all these existing multi-aspect trust inference methods require more information (e.g., value of transaction as well as user’s preference for it, product and its category, etc.) and therefore become infeasible when such information is not available. In contrast, MaTrust does not require any information other than the locally-generated trust ratings, and could therefore be used in more general scenarios.
In terms of trust bias, Mishra et al. [?] propose an iterative algorithm to compute trustor bias. In contrast, our focus is to incorporate various types of trust bias as specified factors/aspects to increase the accuracy of trust inference.
Recently, researchers begin to apply machine learning models for trust inference. Nguyen et al. [?] learn the importance of several trust-related features derived from a social trust framework. Our method takes a further step here by simultaneously learning the latent factors and the importance of bias. Seemingly similar concept of stereotype for trust inference is also used by Liu et al. [?] and Burnett et al. [?]. These methods learn the stereotypes from the user profiles of the trustees that the trustor has interacted with, and then use these stereotypes to reflect the trustor’s first impression about unknown trustees. In contrast, MaTrust builds its stereotypes based on the existing trust ratings to capture multiple aspects for trust inference. There are also some recent work on using link prediction approaches to predict the binary trust/distrust relationship [?, ?, ?]. In this paper, we focus on the more general case where we want to infer a continuous trustworthiness score from the trustor to the trustee.
Finally, multi-aspect methods have been extensively studied in recommender systems [?, ?, ?]. In terms of methodology, the closest related work is the collaborative filtering algorithm in [?], which can be viewed as a special case of the proposed MaTrust. As mentioned before, our MaTrust is more general by learning the optimal weights for the prior knowledge and it leads to further performance improvement. On the application side, the goal of recommender systems is to predict users’ flavors of items. It is interesting to point out that (1) on one hand, trust between users could help to predict the flavors as we may give more weight to the recommendations provided by trusted users; (2) on the other hand, trust itself might be affected by the similarity of flavors since users usually trust others with a similar taste [?]. Although out of the scope of this paper, using recommendation to further improve trust inference accuracy might be an interesting topic for future work.
In this section, we formally define our multi-aspect trust inference problem. Table MaTrust: An Effective Multi-Aspect Trust Inference Model lists the main symbols we use throughout the paper.
Symbol Definition and Description T the partially observed trust matrix F the characterized trustor matrix G the characterized trustee matrix the sub-matrix of F for latent factors the sub-matrix of G for latent factors the transpose of matrix T the element at the row and column of matrix T the row of matrix T the transpose of vector the set of observed trustor-trustee pairs in T the global bias x the vector of trustor bias y the vector of trustee bias the element of vector x the number of users the number of specified factors the number of latent factors the number of all factors, the coefficients for specified factors the trustor the trustee the maximum iteration number the threshold to stop the iteration Table \thetable: Symbols.
Following conventions, we use bold capital letters for matrices, and bold lower case letters for vectors. For example, we use a partially observed matrix T to model the locally-generated trust relationships, where the existing/observed trust relationships are represented as non-zero trust ratings and non-existing/unobserved relationships are represented as ‘?’. As for the observed trust rating, we represent it as a real number between 0 and 1 (a higher rating means more trustworthiness). We use calligraphic font to denote the set of observed trustor-trustee indices in T. Similar to Matlab, we also denote the row of matrix T as , and the transpose of a matrix with a prime. In addition, we denote the number of users as and the number of characterized factors as . Without loss of generality, we assume that the goal of our trust model is to infer the unseen trust relationship from the user to another user , where is the trustor and is the unknown trustee to .
Based on these notations, we first define the basic trust inference problem as follows:
The Basic Trust Inference Problem
an partially observed trust matrix T, a trustor , and a trustee , where () and = ‘?’;
the estimated trustworthiness score .
In the above problem definition, given a trustor-trustee pair, the only information we need as input is the locally-generated trust ratings (i.e., the partially observed matrix T). The goal of trust inference is to infer the new trust ratings (i.e., unseen/unobserved trustworthiness scores in the partially observed matrix T) by collecting the knowledge from existing trust relationships. In this paper, we assume that we can access such existing trust relationships. For instance, these relationships could be collected by central servers in a centralized environment like eBay, or by individuals in a distributed environment like EigenTrust [?]. How to collect these trust relationships is out of the scope of this work.
In this paper, we propose a multi-aspect model for such trust inference in Problem 1. That is, we want to infer an trustor matrix whose element indicates to what extent the corresponding person trusts others wrt a specific aspect/factor. Similarly, we want to infer another trustee matrix whose element indicates to what extent the corresponding person is trusted by others wrt a specific aspect/factor. Such trustor and trustee matrices are in turn used to infer the unseen trustworthiness scores. Based on the basic trust inference problem, we define the multi-aspect trust inference problem under MaTrust as follows:
The MaTrust Trust Inference Problem
an partially observed trust matrix T, the number of factors , a trustor , and a trustee , where () and = ‘?’;
(1) an trustor matrix and an trustee matrix ; (2) the estimated trustworthiness score .
To further illustrate our MaTrust trust inference problem (Problem 2), we give an intuitive example as shown in Fig. MaTrust: An Effective Multi-Aspect Trust Inference Model.
Figure \thefigure: An illustrative example for MaTrust.
In this example, we observe several locally-generated pair-wise trust relationships between five users (e.g., ‘Alice’, ‘Bob’, ‘Carol’, ‘David’, and ‘Elva’) as shown in Fig. (a). Each observation contains a trustor, a trustee, and a numerical trust rating from the trustor to the trustee. We then model these observations as a partially observed matrix T (see Fig. (b)) where is the trust rating from the user to the user if the rating is observed and = ‘?’ otherwise. Notice that we do not consider self-ratings and thus represent the diagonal elements of T as ‘’. By setting the number of factors , our goal is to infer two matrices F and G (see Fig. (c)) from the input matrix T. Each row of the two matrices is the stereotype for the corresponding user, and each column of the matrices represents a certain aspect/factor in trust inference (e.g., ‘delivering time’, ‘product price’, etc). For example, we can see that Alice trusts others strongly wrt both ‘delivering time’ and ‘product price’ (based on matrix ), and she is in turn moderately trusted by others wrt these two factors (based on matrix ). On the other hand, both Bob and Carol put more emphasis on the delivering time, while David and Elva care more about the product price.
Once F and G are inferred, we can use these two matrices to estimate the unseen trustworthiness scores (i.e., the ‘?’ elements in T). For instance, the trustworthiness from Carol to Alice can be estimated as . This estimation is reasonable because Carol has the same stereotype as Bob and the trustworthiness score from Bob to Alice is also . As another example, David and Elva have similar preferences (i.e., the same stereotypes), and thus we conjecture that they would trust each other (i.e., = ). In the rest of the paper, we will mainly focus on how to characterize F and G from the partially observed input matrix .
In this section, we present our optimization formulation for the problem defined in the previous section. We start with the basic form, and then show how to incorporate the trust bias as specified factors followed by its equivalent formulation. Finally, we discuss some generalizations of our formulation.
Formally, Problem 2 can be formulated as the following optimization problem:
where is a regularization parameter; and are the Frobenious norm of the trustor and trustee matrices, respectively.
By this formulation, MaTrust aims to minimize the squared error on the set of observed trust ratings. Notice that in Eq. (MaTrust: An Effective Multi-Aspect Trust Inference Model), we have two additional regularization terms ( and ) to improve the solution stability. The parameter controls the amount of such regularizations. Based on the resulting F and G of the above equation, the unseen trustworthiness score can then be estimated by the corresponding stereotypes and as:
The above formulation can naturally incorporate some prior knowledge such as trust bias into the inference procedure. In this paper, we explicitly consider the following three types of trust bias: global bias, trustor bias, and trustee bias, although other types of bias can be incorporated in a similar way.
The global bias represents the average level of trust in the community. The intuition behind this is that users tend to rate optimistically in some reciprocal environments (e.g., e-Commerce [?]) while they are more conservative in others (e.g., security-related applications). As a result, it might be useful to take such global bias into account and we model it as a scalar .
The trustor bias is based on the observation that some trustors tend to generously give higher trust ratings than others. This bias reflects the propensity of a given trustor to trust others, and it may vary a lot among different trustors. Accordingly, we can model the trustor bias as vector x with indicating the trust propensity of the trustor.
The third type of bias (trustee bias) aims to characterize the fact that some trustees might have relatively higher capability in terms of being trusted than others. Similar to the second type of bias, we model this type of bias as vector y, where indicates the overall capability of the trustee compared to the average.
Each of these three types of bias can be represented as a specified factor for our MaTrust model, respectively. By incorporating such bias into Eq. (MaTrust: An Effective Multi-Aspect Trust Inference Model), we have the following formulation:
Subject to: (3)
where and are the weights of bias that we need to estimate based on the existing trust ratings.
In addition to these three specified factors, we refer to the remaining factors in the trustor and trustee matrices as latent factors. To this end, we define two sub-matrices of and for the latent factors. That is, we define and , where each column of and corresponds to one latent factor and is the number of latent factors. With this notation, we have the following equivalent form of Eq. (MaTrust: An Effective Multi-Aspect Trust Inference Model):
Notice that there is no coefficient before as it will be automatically absorbed into and . Once we have inferred all the parameters (i.e., , , , , and ) of Eq. (4), the unseen trustworthiness score can be immediately estimated as:
In the above formulations, we need to specify the three types of bias, i.e., to compute , x, and y. Remember that the only information we need for MaTrust is the existing trust ratings. Therefore, we simply estimate the bias information from T as follows:
where is the number of the observed elements in the row of T, and is the number of the observed elements in the column of T.
We further present some discussions and generalizations of our optimization formulation.
First, it is worth pointing out that our formulation in Eq. (MaTrust: An Effective Multi-Aspect Trust Inference Model) differs from the standard matrix factorization (e.g., SVD) as in the objective function, we try to minimize the square loss only on those observed trust pairs. This is because the majority of trust pairs are missing from the input trust matrix . In this sense, our problem setting is conceptually similar to the standard collaborative filtering, as in both cases, we aim to fill in missing values in a partially observed matrix (trustor-trustee matrix vs. user-item matrix). Indeed, if we fix the coefficients in Eq. (MaTrust: An Effective Multi-Aspect Trust Inference Model), it is reduced to the collaborative filtering algorithm in [?]. Our formulation in Eq. (MaTrust: An Effective Multi-Aspect Trust Inference Model) is more general as it also allows to learn the optimal coefficients from the input trust matrix . Our experimental evaluations show that such subtle treatment is crucial and it leads to further performance improvement over these existing techniques.
Second, although our MaTrust is a subjective trust inference metric where different trustors may form different opinions on the same trustee [?], as a side product, the proposed MaTrust can also be used to infer an objective, unique trustworthiness score for each trustee. For example, this objective trustworthiness score can be computed based on the trustee matrix G. We will compare this feature of MaTrust with a well studied objective trust inference metric EigenTrust [?] in the experimental evaluation section.
Finally, we would like to point out that our formulation is flexible and can be generalized to other settings. For instance, our current formulation adopts the square loss function in the objective function. In other words, we implicitly assume that the residuals of the pair-wise trustworthiness scores follow a Gaussian distribution, and in our experimental evaluations, we found it works well. Nonetheless, our upcoming proposed MaTrust algorithm can be generalized to any Bregman divergence in the objective function. Also, we can naturally incorporate some additional constraints (e.g., non-negativity, sparseness, etc) in the trustor and trustee matrices. After we infer all the parameters (e.g., the coefficients for the bias, and the trustor and trustee matrices, etc), we use a linear combination (i.e., inner product) of the trustor stereotype (i.e., ) and trustee stereotype (i.e., ) to compute the trustworthiness score . We can also generalize this linear form to other non-linear combinations, such as the logistic function. For the sake of clarity, we skip the details of such generalizations in the paper.
In this section, we present the proposed algorithm to solve the MaTrust trust inference problem (i.e., Eq. (4)), followed by some effectiveness and efficiency analysis.
Unfortunately, the optimization problem in Eq. (4) is not jointly convex wrt the coefficients (, , and ) and the trustor/trustee matrices ( and ) due to the coupling between them. Therefore, instead of seeking for a global optimal solution, we try to find a local minima by alternatively updating the coefficients and the trustor/trustee matrices while fixing the other. The alternating procedure will lead to a local optima when the convergence criteria are met, i.e., either the norm between successive estimates of both F and G (which are equivalent to , , , , and ) is below our threshold or the maximum iteration step is reached.
First, let us consider how to update the trustor/trustee matrices ( and ) when we fix the coefficients (, , and ). For clarity, we define an matrix P as follows:
where , , and are some fixed constants.
Based on the above definition, Eq. (4) can be simplified (by ignoring some constant terms) as:
Therefore, updating the trustor/trustee matrices when we fix the coefficients unchanged becomes a standard matrix factorization problem for missing values. Many existing algorithms (e.g., [?, ?, ?]) can be plugged in to solve Eq.(8). In our experiment, we found the so-called alternating strategy, where we recursively update one of the two trustee/trustor matrices while keeping the other matrix fixed, works best and thus recommend it in practice. A brief skeleton of the algorithm is shown in Algorithm 1, and the detailed algorithms are presented in the appendix for completeness.
Here, we consider how to update the coefficients (, , and ) when we fix the trustor/trustee matrices.
If we fix the trustor and trustee matrices ( and ) and let:
Eq. (4) can then be simplified (by dropping constant terms) as:
To simplify the description, let us introduce another scalar to index each pair in the observed trustor-trustee pairs , that is, . Let denote a vector of length with . We also define a matrix as: , , ; and a vector . Then, Eq. (10) can be formulated as the ridge regression problem wrt the vector :
In practice, we shrink the regularization parameter in the above equation from to to strengthen the importance of bias. Therefore, we can update the coefficients as:
Putting everything together, we propose Algorithm 2 for our MaTrust trust inference problem. The algorithm first uses Eq. (6) to compute the global bias, trustor bias, and trustee bias (Step 1), and initializes the coefficients (Step 2). Then the algorithm begins the alternating procedure (Step 3-12). First, it fixes , , and , and applies Eq. (7) to incorporate bias. After that, the algorithm invokes Algorithm 1 to update the trustor matrix and trustee matrix . Next, the algorithm fixes and , and uses ridge regression in Eq. (12) to update , , and . The alternating procedure ends when the stopping criteria of Eq. (4) are met. Finally, the algorithm outputs the estimated trustworthiness from the given trustor to the trustee using Eq. (5) (Step 13).
It is worth pointing out that Step 1-12 in the algorithm can be pre-computed and their results (, , , , and ) can be stored in the off-line/pre-computational stage. When an on-line trust inference request arrives, MaTrust only needs to apply Step 13 to return the inference result, which only requires a constant time.
Here, we briefly analyze the effectiveness and efficiency of our MaTrust algorithm and provide detailed proofs in the appendix.
The effectiveness of the proposed MaTrust algorithm can be summarized in Lemma 1, which says that overall, it finds a local minima solution. Given that the original optimization problem in Eq. (4) is not jointly convex wrt the coefficients (, , and ) and the trustor/trustee matrices ( and ), such a local minima is acceptable in practice.
See the Appendix
The time complexity of the proposed MaTrust is summarized in Lemma missing2, which says that MaTrust scales linearly wrt the number of users and the number of the observed trustor-trustee pairs.