Gravity Effects on Information Filtering and Network Evolving

In this paper, based on the gravity principle of classical physics, we propose a tunable gravity-based model, which considers tag usage pattern to weigh both the mass and distance of network nodes. We then apply this model in solving the problems of information filtering and network evolving. Experimental results on two real-world data sets, Del.icio.us and MovieLens, show that it can not only enhance the algorithmic performance, but can also better characterize the properties of real networks. This work may shed some light on the in-depth understanding of the effect of gravity model.


Introduction
As one of the four fundamental interactions of nature, the Gravity law was discovered from the well-known Galilei's dropping ball experiment at the Leaning Tower of Pisa [1]. In the next four centuries, it has proved a great success in explaining the basic mechanisms governing the revolution of the heavenly bodies in macroscopic space [2]. In addition to understanding the natural rules, the Gravity model has also been used in a wide rage of domains in discovering a universal mechanism driving the dynamics of various phenomena, such as population migration [3,4], transportation flows [5][6][7][8], trade [9][10][11][12] and trip [13][14][15] distributions. However, research on gravity-based interaction in online social systems is lacking attention. Recently, many pioneering works in this field focus on complex network based evolution and prediction, where nodes represent individuals, and edges denote the relations between them [16][17][18][19][20]. In network evolutionary studies, the main objective is to uncover the strategy of how to connect two nodes [16]. There is a vast class of studies trying to understand both the static features and dynamic properties of evolving networks [21,22]. Some classical models, such as ER network [23], WS network [24], BA network [25], have been proposed to open the new horizons for the theoretical study of random graphs. After that, many extensive variants considering different factors (e.g. the aging effect [26,27] and social impact [18,28,29]) have been presented to complete such a popular field. Analogously, the Information Filtering technique aims at mining missing links via estimating the indirect similarities of the two observed nodes [30]. Recommender Systems (RS) [31] is one of the most promising information filtering techniques to solve the problem of Information Overload. The RS aims at finding objects (e.g. books, movies etc.) that are most likely to be collected by online users based on their historical behaviors and the attributes of nodes. Unlike the classical information retrieval strategy which can be viewed as recommending documents with given words [32], RS can be classified into two categories: (i) estimation of similarity based on the historical records of user activities, such as user-based and object-based similarity [33][34][35][36][37][38][39][40]; (ii) incorporating accessorial information, such as object attributes and descriptions, to extensively assist the corresponding prediction algorithms [41,42].
Therefore, the essential problem of both network evolution and recommender systems is to evaluate the similarity of each unconnected node pair, which is the core function that gravity model can provide. However, to the best of our knowledge, examples are relatively rare in adopting gravity model in online systems. In this paper, we apply gravity model in a particular scenario, Social Tagging Networks, [41][42][43][44][45][46], and take the tag usage pattern to weigh the nodes' mass and distance, and then verify this definition in a tunable classical gravity model. Experimental results on two representative datasets, Del.icio.us and MovieLens, show that the proposed gravity model can significantly enhance the recommendation performance. Further numerical observation on an evolutionary network model demonstrates that the gravity-based mechanism can better characterize the properties of real networks than the other two baseline models.

Gravity Based Recommender Systems
We begin our study with introducing gravity law based recommendation algorithms, as well as two baseline algorithms to evaluate its performance on tag-based information filtering. Conventionally, a tag-aware recommender system can be represented in a triple form [42]: G(U,O,T), where U~fU 1 ,U 2 , . . . ,U n g, O~fO 1 ,O 2 , . . . ,O q g, and Tf T 1 ,T 2 , . . . ,T r g are respectively the sets of users, objects and tags. As a complete tagging action, F, normally consists an arbitrary number of tags, e.g. F~fU 1 ,O 1 ,T 1 ,T 2 ,T 3 g, which indicates that user U 1 has assigned object O 1 with a tag set T~fT 1 ,T 2 ,T 3 g. Therefore, T can be regarded as attributes for both U 1 and O 1 . Consequently, we use two matrices, A uo and A ot , to describe the user-object and object-tag relations, respectively. For A uo , if user U i has selected object O j , a uo ij~1 , otherwise a uo ij~0 . Analogously, a ot jk~1 , if O j has been assigned with tag T k , and a ot jk~0 , otherwise. In addition, we also use two weighted matrices, B u and B o , to represent tagging preference of users and objects, respectively. We denote b u ik as the number of tag T k assigned by user U i , and b o jk as the number of tag T k assigned with object O j .
In this section, we introduce two baseline tag-aware algorithms based on the concept of mass diffusion [33], as well as the proposed gravity law based algorithm. Given a target user U i , the final resource of an object O j , f oj , is calculated based on following methods. Finally, objects that U i hasn't selected will be recommended according to their respective final resources.

(I)
Suppose the initial resource averagely located on objects U i has selected (resource for every selected object is initially set to 1) and each object equally distributes its resource to all neighbouring tags, and then each tag redistributes the received resource averagely to all its neighbouring objects. Therefore, after diffusion, the resource located on O j finally is [41] where k(T l )~P q j~1 a ot jl is the number of neighboring objects of tag T l , and k(O s )~P r l~1 a ot sl is the number of neighbouring tags of object O s . (II) With considering the weighted matrix B u , the initial resources are located on tags and the resource T j received is proportional to b u ij . Then each tag equally distributes the initial resource to all its neighbouring objects. Therefore, after diffusion, the resource located on O j finally is [42] where k(T l )~P q j~1 a ot jl is the number of neighboring objects of tag T l . (III) Different from (I) and (II), this algorithm dose not only consider the network structure, but also take into account the common features of both users and objects. In this paper, we adopt the gravity model to estimate the likelihood of each user-object pair. Based on the classical gravity model, the resource located on O j finally is where m u i~P otherwise, indicating the number of common properties that user U i and object O j both hold, and a[½0,?) is a tunable parameter. C u i o j only counts how many common tag attributes that user U i and object O j simultaneously have, neglecting the accumulated times each tag has been used neither by U i nor O j .
For one typical personalized recommendation process, it aims at optimizing the utility of each individual. That is to say, once the target user U i is fixed, the sole purpose of a recommendation algorithm is to estimate the score of every object, which is defined by on of the three objective functions Eq. (1)-Eq. (3). Therefore, the vector element of f j does not contain U i due to that the inial influence of U i is the same for every object. Once the object score function is defined, the recommendation process will be performed on each target individual U i , and all the objects that s/he has not collected are ranked in a descending order according to f oj Figure 1. AUC vs. a for algorithm (III) on the two observed datasets. The result is obtained by averaging over 50 independent realizations of random data division, and yellow lines represent the error intervals. It can be clearly seen that, for both datasets, AUC decreases monotonously with a, and reaches saturation for both large and small a.  (generated by any one of the three algorithms (I)-(III)). Eventually, the top L objects will be recommended to this user. Generally, algorithm (I) only considers the tags effect on objects, neglecting the users' interest in tags, algorithm (II) only considers the user-tag weights, neglecting the weights of object-tag relations, while algorithm (III) takes both of them into account. The advantages of algorithm (III) are clear. On one hand, algorithm (III) not only considers the popularity (reflected by mass) of users and objects, but also directly takes into account the common features between them. Hence it might be a promising way to mine the potential preference of users. On the other hand, algorithm (III) alternatively compares the tag attributes vector statistically, while both algorithms (I) and (II) focus on studying the diffusion process on tripartite networks. Therefore, it can clearly save computational cost by avoiding multi-step iterations.

Experimental Results
The empirical data we use in this paper include (datasets are free to download as Supporting Information): (a) MovieLens: one representative website, provided by GroupLens project (http://www.grouplens.org/), where users can vote movies in five discrete ratings 1-5; (b) Del.icio.us (http://www.delicious.com/): obtained by downloading publicly available data from the social bookmarking website, which allows users to store, organize and retrieve personal bookmarks via social tags. To eliminate the data sparsity effect, in both datasets, we purify the data to guarantee that [47] (a) each user has collected at least one object; (b) each object has been collected by at least two users, and assigned by at least two tags; (c) each tag is used by at least two users. Table 1 shows the basic statistics of the observed data sets.
To test the algorithm performance, we randomly remove 10% of the data as testing set and apply the algorithms in the remaining data to produce recommendations. In addition, to give a solid and comprehensive evaluation of the proposed algorithm, we employ three representative metrics to characterize the recommendations performance. (a) AUC [48], defined as the probability that the score of an examined link in the testing set is larger than those in the training set; (b) Precision [49], defined as the successful ratio of the number of top L recommended links divided by the recommendation length L; (c) Inter Similarity [50], defined as, InnerS~1 n where s runs over all users, is the similarity of object O i and O j appearing in the recommendation list for U l . Fig. 1-Fig. 4 show the experimental results of those three metrics. In Fig. 1, it can be seen that AUC will decrease as a increases for both MovieLens and Del.icio.us. In addition, there are two stationary states of AUC for large or small a, which respectively correspond to the best and worst AUC. In fact, Eq.  . In addition, as for a given recommendation process, once the target user U i is fixed, the value of m u i will be the same for all examined objects. Consequently, the competition of C u i o j and m 1=2 would finally determine whether object O j will be highly ranked and eventually recommended. For large a&C u i o j , algorithm (III) degenerates to the object popularity priority first algorithm (so-called GRM in [51]). For a??, algorithm (III) degenerates to random recommendation. For small a?0, the final result is determined by the resultant force of C u i o j and m 1=2 , which we subsequently investigate in Fig. 2. It shows a clearly positive relationship between them. It means that the heavier (corresponds to large m o ) an object is, the more chance it will be attracted by users with more common interests (corresponds to large C uo ), hence is more likely to be recommended by the proposed algorithm. In addition, Table 2 shows the pure AUC values of mass (m o ), common interest (C uo ) and algorithm (III). Indeed, it shows that C uo can significantly enhance the recommendation accuracy comparing with that based on pure object popularity. Furthermore, with incorporating the object popularity, the gravity law based method can achieve even better performance. Fig. 3 and Fig. 4 show the results of Precision and InnerS as the function of the length of recommendation list, respectively. In both figures, algorithm (III) performs better than the other two baselines, especially for small L. Note that, in real applications, the number of recommended objects pushed to users could be very small (normally L[½1,5 in real applications) due to the page limitation, the proposed algorithm might be very promising and useful in online applications.

Gravity Based Evolving Model
In this section, we propose an evolving model to better understand the gravity effect on networks. Among various mechanisms driving the corresponding emergent properties, preferential attachment (PA) [25], which considers rich-get-richer, is one of the most attractive models. However, the PA model only takes into account the mass of target nodes, while neglecting the underlying relationship between the two considering nodes. Consequently, we coherently present the gravity model to unify   Table 2. Comparisons of AUC results of respectively considering the effects of mass (m o ), common interest (C u o), and as well as three algorithms (algorithm I, II and III). The result is obtained by averaging over 50 independent realizations of random data division, and the three digital numbers behind the signs are the corresponding error intervals. The parameter a for algorithm (III) is set to 0.001. doi:10.1371/journal.pone.0091070.t002 both node mass and common features, and compare it with two baseline models, ER model [23] and PA model.

Model Description
Using the divided training set extracted in the previous recommendation experiment, we build a static network (ST) as the baseline for comparison. In the ST network, nodes represent users, and one link will be created if the corresponding two users have collected at least one common object. Besides, each user has a weighted tag attribute vector. The final initialized network contains 648 vertices, 20,956 edges, and 1,382 tags. Compara-tively, the other three observed evolving mechanisms at each step as following: (I) ER model. Select two nodes randomly and connect them if there is no link between them; (II) PA model. Select two nodes and connect them if there is no link between them. Each node i is chosen according to its own degree k i P k i . Initially, the degree of each node is set to one; (III) GR model. Select one node randomly, and link it to another node that is chosen based on the probability defined by Eq. (3).

Results & Analysis
To give a solid and comprehensive evaluation of the GR model, we employ five different metrics to characterize the properties of the resulting networks. The observed properties include (a) size of giant component [52]; (b) assortativity [53]; (c) clustering coefficient [24]; (d) average distance [54]; (e) degree heterogeneity [16]. Table 3 shows the evolutionary results of corresponding models. In general, as ST network is extracted from the real user-object bipartite network, it would naturally keep the original relationship of users' common interests. Therefore, it could be used as the baseline to compare the proposed models. That is to say, the model can better characterize the real-world evolutionary dynamics if its resulting properties are more similar with ST. In Table 3, it apparently shows that GR performs much better than both ER and PA for all observed properties. Since GR also  considers users' interests by taking into account their preferences on assigning common tags, it would have a high probability to generate a more connected (corresponds to large N c ) and more clossness (corresponds to large C) network. Comparatively, the diverse topics (e.g. tags about different subjects) would make closer connections within the same community of similar topics, however, simultaneously increase the distance between nodes affiliated with different communities of different subjects, hence result in a larger network distance. In addition, the high degree heterogeneity (H) indicates that the network tends to be more disassortative (corresponds to negative r) [55]. Furthermore, the dynamic link adding process (see Fig. 5) also shows the advantages of GR in the five corresponding properties. In a word, GR evolving mechanism indeed can result in a more real network with large clustering coefficient and network distance, high degree heterogeneity and a strongly disassortative linking pattern.

Conclusions and Discussion
In this paper, we applied the classical gravity model in designing a new recommendation algorithm, considering the effects of both masses and common interests of two observed nodes. Experimental results on two real-world networks, MovieLens and Del.ico.us, demonstrated that the proposed algorithm outperformed the previous two baseline algorithms. Furthermore, we adopted the gravity principle to build an evolving network to understand its advantage in information recommendation. Numerical analyses of five corresponding network properties proved the gravity mech-anism can characterize the structure of real networks better than two baseline stochastic methods, ER and PA models. Therefore, the gravity-based algorithm can naturally provide more suitable results that can be recommended to appropriate users.
In brief, this work innovatively applies the gravity principle in information filtering and network evolving of online system. The results provide preliminary evidence of gravity effect on directly mining the hidden interests of users, and picking up relevant information. However, the underlying mechanism of the gravity effect on network-based algorithms and models still need further exploration.

Supporting Information
Data S1 The data sets are available as attachment. (ZIP)