[go: up one dir, main page]
More Web Proxy on the site http://driver.im/Jump to content

Link prediction

From Wikipedia, the free encyclopedia

In network theory, link prediction is the problem of predicting the existence of a link between two entities in a network. Examples of link prediction include predicting friendship links among users in a social network, predicting co-authorship links in a citation network, and predicting interactions between genes and proteins in a biological network. Link prediction can also have a temporal aspect, where, given a snapshot of the set of links at time , the goal is to predict the links at time . Link prediction is widely applicable. In e-commerce, link prediction is often a subtask for recommending items to users. In the curation of citation databases, it can be used for record deduplication. In bioinformatics, it has been used to predict protein-protein interactions (PPI). It is also used to identify hidden groups of terrorists and criminals in security related applications.[1]

Problem definition

[edit]

Consider a network , where represents the entity nodes in the network and x represents the set of "true" links across entities in the network. We are given the set of entities and a subset of true links which are referred to as observed links. The goal of link prediction is to identify the unobserved true links. In the temporal formulation of link prediction the observed links correspond to true links at a time , and the goal is to infer the set of true links at time Usually, we are also given a subset of unobserved links called potential links , and we need to identify true links among these potential links.

In the binary classification formulation of the link prediction task the potential links are classified as either true links or false links. Link prediction approaches for this setting learn a classifier that maps links in to positive and negative labels i.e. . In the probability estimation formulation, potential links are associated with existence probabilities. Link prediction approaches for this setting learn a model that maps links in to a probability i.e. .

Single link approaches learn a model that classifies each link independently. Structured prediction approaches capture the correlation between potential links by formulating the task as a collective link prediction task. Collective link prediction approaches learn a model that jointly identify all the true links among the set of potential links.

Link prediction task can also be formulated as an instance of missing value estimation task. Here, the graph is represented as an adjacency matrix with missing values. The task is to complete the matrix by identifying the missing values. Matrix factorization based methods commonly use this formulation.

History

[edit]

The task of link prediction has attracted attention from several research communities ranging from statistics and network science to machine learning and data mining. In statistics, generative random graph models such as stochastic block models propose an approach to generate links between nodes in a random graph. For social networks, Liben-Nowell and Kleinberg proposed a link prediction models based on different graph proximity measures.[2] Several statistical models have been proposed for link prediction by the machine learning and data mining community. For example, Popescul et al. proposed a structured logistic regression model that can make use of relational features.[3] Local conditional probability models based on attribute and structural features were proposed by O’Madadhain et al.[4] Several models based on directed graphical models for collective link prediction have been proposed by Getoor.[5] Other approached based on random walks.[6] and matrix factorization have also been proposed [7] With the advent of deep learning, several graph embedding based approaches for link prediction have also been proposed.[8] For more information on link prediction refer to the survey by Getoor et al.[9] and Yu et al.[10]

Approaches and methods

[edit]

Several link predication approaches have been proposed including unsupervised approaches such as similarity measures computed on the entity attributes, random walk and matrix factorization based approaches, and supervised approaches based on graphical models and deep learning. Link prediction approaches can be divided into two broad categories based on the type of the underlying network: (1) link prediction approaches for homogeneous networks (2) link prediction approaches for heterogeneous networks. Based on the type of information used to predict links, approaches can be categorized as topology-based approaches, content-based approaches, and mixed methods.[11]

Topology-based methods

[edit]

Topology-based methods broadly make the assumption that nodes with similar network structure are more likely to form a link.

Common neighbors

[edit]

This is a common approach to link prediction that computes the number of common neighbors. Entities with more neighbors in common are more likely to have a link. It is computed as follows:

A weakness of this approach is that it does not take into account the relative number of common neighbors.

Jaccard measure

[edit]

The Jaccard Measure addresses the problem of Common Neighbors by computing the relative number of neighbors in common:

Adamic–Adar measure

[edit]

The Adamic–Adar measure[12] is the sum of the log of the intersection of the neighbors of two nodes. This captures a two-hop similarity, which can yield better results than simple one-hop methods. It is computed as follows:

where is the set of nodes adjacent to .

Katz measure

[edit]

Neighbor based methods can be effective when the number of neighbors is large, but this is not the case in sparse graphs. In these situations it is appropriate to use methods that account for longer walks. The Katz Measure[13] is one metric that captures this. It is computed by searching the graph for paths of length in the graph and adding the counts of each path length weighted by user specified weights.

Let A be the adjacency matrix of a network under consideration. Elements of A are variables that take a value 1 if a node i is connected to node j and 0 otherwise. The powers of A indicate the presence (or absence) of links between two nodes through intermediaries. For instance, in matrix , if element , it indicates that node 2 and node 12 are connected through some walk of length 3. If denotes Katz centrality of a node i, then mathematically:

Note that the above definition uses the fact that the element at location of reflects the total number of degree connections between nodes and .

Node attribute-based methods

[edit]

Node-similarity methods predict the existence of a link based on the similarity of the node attributes.

Euclidean distance

[edit]

The attribute values are represented as normalized vector and the distance between the vectors used to measure similarity. Small distances indicate higher similarity.

Cosine similarity

[edit]

After normalizing the attribute values, computing the cosine between the two vectors is a good measure of similarity, with higher values indicating higher similarity.

Mixed methods

[edit]

Mixed methods combine attribute and topology based methods.

Graph embeddings

[edit]

Graph embeddings also offer a convenient way to predict links.[8] Graph embedding algorithms, such as Node2vec, learn an embedding space in which neighboring nodes are represented by vectors so that vector similarity measures, such as dot product similarity, or euclidean distance, hold in the embedding space. These similarities are functions of both topological features and attribute-based similarity. One can then use other machine learning techniques to predict edges on the basis of vector similarity.

Probabilistic relationship models

[edit]

A probabilistic relational model (PRM) specifies a template for a probability distribution over a databases. The template describes the relational schema for the domain, and the probabilistic dependencies between attributes in the domain. A PRM, together with a particular database of entities and unobserved links, defines a probability distribution over the unobserved links.[5]

Probabilistic soft logic (PSL)

[edit]

Probabilistic soft logic (PSL) is a probabilistic graphical model over hinge-loss Markov random field (HL-MRF). HL-MRFs are created by a set of templated first-order logic-like rules, which are then grounded over the data. PSL can combine attribute, or local, information with topological, or relational, information. While PSL can incorporate local predictors, such as cosine similarity, it also supports relational rules, such as triangle completion in a network.[14]

Markov logic networks (MLNs)

[edit]

Markov logic networks (MLNs) is a probabilistic graphical model defined over Markov networks. These networks are defined by templated first-order logic-like rules, which is then grounded over the training data. MLNs are able to incorporate both local and relational rules for the purpose of link prediction.[15]

R-Model (RMLs)

[edit]

R-Models (RMLs) is a neural network model created to provide a deep learning approach to the link weight prediction problem. This model uses a node embedding technique that extracts node embeddings (knowledge of nodes) from the known links’ weights (relations between nodes) and uses this knowledge to predict the unknown links’ weights.[16]

Applications

[edit]

Link prediction has found varied uses, but any domain in which entities interact in a structures way can benefit from link prediction.[17] A common applications of link prediction is improving similarity measures for collaborative filtering approaches to recommendation. Link prediction is also frequently used in social networks to suggest friends to users. It has also been used to predict criminal associations.

In biology, link prediction has been used to predict interactions between proteins in protein-protein interaction networks.[18] Link prediction has also been used to infer interactions between drugs and targets using link prediction [19] Another application is found in collaboration prediction in scientific co-authorship networks.

Entity resolution, also known as deduplication, commonly uses link prediction to predict whether two entities in a network are references to the same physical entity. Some authors have used context information in network structured domains to improve entity resolution.[20]

See also

[edit]

References

[edit]
  1. ^ Hasan, Mohammad Al; Zaki, Mohammed J. (2011). "A Survey of Link Prediction in Social Networks" (PDF). In Aggarwal, Charu C. (ed.). Social Network Data Analytics. Springer. pp. 243–275. doi:10.1007/978-1-4419-8462-3_9. ISBN 978-1-4419-8461-6.
  2. ^ Liben-Nowell, David; Kleinberg, Jon (2007). "The Link-Prediction Problem for Social Networks". Journal of the American Society for Information Science and Technology. 58 (7): 1019–1031. CiteSeerX 10.1.1.58.689. doi:10.1002/asi.20591.
  3. ^ Popescul, Alexandrin; Ungar, Lyle (2002). "Statistical Relational Learning for Link Prediction" (PDF). Workshop on Learning Statistical Models from Relational Data.
  4. ^ O’Madadhain, Joshua; Hutchins, Jon; Smyth, Padhraic (2005). "Prediction and Ranking Algorithms forEvent-Based Network Data" (PDF). Journal of the American Society for Information Science and Technology.
  5. ^ a b Getoor, Lise; Friedman, Nir; Koller, Daphne; Taskar, Benjamin (2002). "Learning Probabilistic Models of Link Structure". J. Mach. Learn. Res. 3: 679–707.
  6. ^ Backstrom, Lars; Leskovec, Jure (2011). "Supervised random walks: predicting and recommending links in social networks". In King, Irwin; Nejdl, Wolfgang; Li, Hang (eds.). Proceedings of the Fourth International Conference on Web Search and Web Data Mining, WSDM 2011, Hong Kong, China, February 9-12, 2011. ACM. pp. 635–644. arXiv:1011.4071. doi:10.1145/1935826.1935914.
  7. ^ Menon, Aditya; Elkan, Charles (2011). "Link prediction via matrix factorization" (PDF). Machine Learning and Knowledge Discovery in Databases. Lecture Notes in Computer Science. Vol. 6912. pp. 437–452. doi:10.1007/978-3-642-23783-6_28. ISBN 978-3-642-23782-9. S2CID 13892350.
  8. ^ a b Xiao, Han; al., et. (2015). "From One Point to A Manifold: Knowledge Graph Embedding For Precise Link Prediction". SIGMOD. arXiv:1512.04792.
  9. ^ Getoor, Lise; Diehl, Christopher P. (2005). "Link mining: a survey". SIGKDD Explor. 7 (2): 3–12. doi:10.1145/1117454.1117456.
  10. ^ Yu, Philip S.; Han, Jiawei; Faloutsos, Christos (2010). Link Mining: Models, Algorithms, and Applications. Springer. doi:10.1007/978-1-4419-6515-8. ISBN 978-1-4419-6514-1.
  11. ^ Aggarwal, Charu (2015). Data Mining. Springer. pp. 665–670.
  12. ^ Adamic, Luda; Adar, Etyan (2003). "Friends and neighbors on the web". Social Networks. 25 (3): 211–230. doi:10.1016/S0378-8733(03)00009-1. S2CID 2262951.
  13. ^ Katz, L. (1953). "A New Status Index Derived from Sociometric Analysis". Psychometrika. 18: 39–43. doi:10.1007/BF02289026. S2CID 121768822.
  14. ^ Bach, Stephen; Broecheler, Matthias; Huang, Bert; Getoor, Lise (2017). "Hinge-Loss Markov Random Fields and Probabilistic Soft Logic". Journal of Machine Learning Research. 18: 1–67. arXiv:1505.04406.
  15. ^ Richardson, Matthew; Domingos, Pedro M. (2006). "Markov logic networks". Mach. Learn. 62 (1–2): 107–136. doi:10.1007/S10994-006-5833-1.
  16. ^ Hou, Yuchen; Holder, Lawrence B. (2019). "On Graph Mining With Deep Learning: Introducing Model R for Link Weight Prediction" (PDF). J. Artif. Intell. Soft Comput. Res. 9 (1): 21–40. doi:10.2478/JAISCR-2018-0022.
  17. ^ Martinez, Victor (2016). "A Survey of Link Prediction in Complex Networks". ACM Computing Surveys. 49 (4): 1–33. doi:10.1145/3012704. S2CID 14193467.
  18. ^ Qi, Yanjun (2006). "Evaluation of different biological dataand computational classification methods for use in protein interaction prediction". Proteins: Structure, Function, and Bioinformatics. 63 (3): 490–500. doi:10.1002/prot.20865. PMC 3250929. PMID 16450363.
  19. ^ Shridar, Dhanya; Fakhraei, Shobeir; Getoor, Lise (2016). "A Probabilistic Approach for CollectiveSimilarity-based Drug-Drug Interaction Prediction" (PDF). Bioinformatics. 32 (20): 3175–3182. doi:10.1093/bioinformatics/btw342. PMID 27354693.
  20. ^ Bhattacharya, Indrajit; Getoor, Lise (2007). "Collective entity resolution in relational data". ACM Transactions on Knowledge Discovery from Data. 1: 5. doi:10.1145/1217299.1217304. hdl:1903/4241. S2CID 488972.