Directed Graph Convolutional Network

Total Page:16

File Type:pdf, Size:1020Kb

Directed Graph Convolutional Network Directed Graph Convolutional Network Zekun Tong Yuxuan Liang Changsheng Sun National University of Singapore National University of Singapore National University of Singapore [email protected] [email protected] [email protected] David S. Rosenblum Andrew Lim∗ National University of Singapore National University of Singapore [email protected] [email protected] ABSTRACT One of the main reasons that a GCN can achieve such good Graph Convolutional Networks (GCNs) have been widely used due results on a graph is that makes full use of the structure of the to their outstanding performance in processing graph-structured graph. It captures rich information from the neighborhood of ob- data. However, the undirected graphs limit their application scope. ject nodes through the links, instead of being limited to a specific In this paper, we extend spectral-based graph convolution to di- distance range. General GCN models provide a neighborhood ag- rected graphs by using first- and second-order proximity, which can gregation scheme for each node to gain a representation vector, and not only retain the connection properties of the directed graph, but then learn a mapping function to predict the node attributes [9]. also expand the receptive field of the convolution operation. Anew Since spatial-based methods need to traverse surrounding nodes GCN model, called DGCN, is then designed to learn representations when aggregating features, they usually add significant overhead on the directed graph, leveraging both the first- and second-order to computation and memory usage [31]. On the contrary, spectral- proximity information. We empirically show the fact that GCNs based methods use matrix multiplication instead of traversal search, working only with DGCNs can encode more useful information which greatly improves the training speed. Thus, in this paper, we from graph and help achieve better performance when generalized focus mainly on the spectral-based method. to other models. Moreover, extensive experiments on citation net- Although the above methods have achieved improvement in works and co-purchase datasets demonstrate the superiority of our many aspects, there are two major shortcomings with existing model against the state-of-the-art methods. spectral-based GCN methods. First, spectral-based GCNs are limited to apply to undirected KEYWORDS graphs [32]. For directed graphs, the only way is to relax the graph structure from a directed to an undirected graph by symmetrizing Graph Neural Networks; Semi-Supervised Learning; Proximity the adjacency matrix. In this way we can get the semi-definite Laplacian matrix, but at the same time we also lose the unique 1 INTRODUCTION structure of the directed graph. For example, in a citation graph, Graph structure is a common form of data. Graphs have a very later published articles can cite former published articles, but the strong ability to represent complex structures and can easily ex- reverse is not true. This is a unique time series relationship. If press entities and their relationships. Graph Convolutional Net- we transform it into an undirected graph, we lose this part of the works (GCNs) [4, 7, 8, 11, 27, 33] are a CNNs variant on graphs and information. Although we can represent the original directed graph effectively learns underlying pairwise relations among data vertices. in another form, such a temporal graph learned by combination of We can divide GCNs into two categories: spectral-based [4, 11, 15] Recurrent Neural Networks (RNNs) and GCNs [20], we still want and spatial-based [7, 27]. A representative structure of spectral- to dig more structural features from the original without adding based GCNs [11] has multiple layers that stack first-order spec- extra components. tral filters and learn graph representations using a nonlinear ac- Second, in most existing spectral-based GCN models, during tivation function, while spatial-based approaches design neigh- each convolution operation, only 1-hop node features are taken into arXiv:2004.13970v1 [cs.LG] 29 Apr 2020 borhood features aggregating schemes to achieve graph convo- account (using the same adjacency matrix), which means they only lutions [32, 35]. Various GCNs have significant improvements in capture the first-order information between vertices. It is natural to benchmark datasets [7, 11, 27]. Such breakthroughs have promoted consider direct links when extracting local features, but this is not the exploration of variant networks: the Attention-based Graph always the case. In some real-world graph data, many legitimate Neural Network(AGNN) [26] uses the attention mechanism to re- relationships may not be encoded via first-order links [25]. For place the propagation layers in order to learn dynamic neighbor- instance, people in social networking communities share common hood information; the FastGCN [3] interprets graph convolutions interests, but they don not necessarily contact each other. In other as integral transforms of embedding functions while using batch words, the features we get by first-order proximity are likely to be training to speed up. The positive effects of different GCN vari- insufficient. Although we can obtain more information by stacking ants greatly promote their use in various task fields, including but multiple layers of GCNs, multi-layer networks will introduce more not limited to social networks [3], quantum chemistry [16], text trainable parameters, making them prone to overfitting when the classification [34] and image recognition [30]. label rate is small or needing extra labeled information, which is not label efficient [14]. Therefore, we need a more efficient feature ∗Corresponding author extraction method. Conference’17, July 2017, Washington, DC, USA Zekun Tong, Yuxuan Liang, Changsheng Sun, David S. Rosenblum, and Andrew Lim 4 7 (3) We experiment with semi-supervised classification tasks on various real-world datasets, which validates the effectiveness 1 of first- and second-order proximity and the improvements ob- 5 3 8 tained by DGCNs over other models. We will release our code 2 for public use soon. 6 9 2 PRELIMINARIES In this section, we first clarify the terminology and preliminary Figure 1: A simple weighted directed graph example. Line knowledge of our study, and then present our task in detail. Par- v width indicates the weight of the edges. The node 1 ticularly, we use bold capital letters (e.g., X) and bold lowercase first-order v second-order has proximity with 3. It also has letters (e.g., x) to denote matrices and vectors, respectively. We use v proximity with 2, because they have shared neighbors non-bold letters (e.g., x) to represent scalars and Greek letters (e.g., fv ;v ;v g v v 4 5 6 . Both 2 and 3’s features should be considered λ) as parameters. when aggregating v1’s feature. To address these issues, we leverage second-order proximity be- 2.1 Formulation tween vertices as a complement to existing methods, which inspire Definition 1. Directed Graph [21]. A general graph has n ver- from the hub and authority web model [12, 37]. By using second- tices or nodes is define as G = ¹V; Eº, where V = ¹v1; :::;vnº is order proximity, the directional features of the directed graph can be vertex set and E ⊂ f1; ::;ng × f1; :::;ng is edge set. Each edge e 2 E retained. Additionally, the receptive field of the graph convolution is an ordered pair e = ¹i; jº between vertex vi and vj . If any of its can be expanded to extract more features. Different from first-order edges e is associated with a weight Wi; j > 0, the graph is weighted. proximity, judging whether two nodes have second-order proximity When pair ¹i; jº < E, we set Wi; j = 0. A graph is directed when has does not require nodes to have paths between them, as long as ¹u;vº . ¹v;uº and wi; j . wj;i . they share common neighbors, which can be considered as second- Here, we consider the undirected graph as a directed graph has order proximity. In other words, nodes with more shared neighbors two directed edges with opposite directions and equal weights, and have stronger second-order proximity in the graph. This general binary graph as a weighted graph which edge weight values only notion also appears in sociology [6], psychology [22] and daily life: take from 0 or 1. Besides, we only consider non-negative weights. people who have a lot of common friends are more likely to be Furthermore, to measure our model’s ability to extract surround- friends. A simple example is shown in Figure 1. When considering ing information, we define two indicators[9, 29] on the directed the neighborhood feature aggregation of v in the layer , we need 1 1 graph: , which is used to evaluate how much to consider v , because it has a first-order connection with v , but Feature Smoothness 3 1 surrounding information we can obtain and we also need to aggregate v ’s features, due to the high second-order Label Smoothness 2 for evaluating how useful the obtained information is. similarity with v1 in sharing three common neighbors. In this paper, we present a new spectral-based model on directed Definition 2. First & second-order edges in directed graph. graphs, Directed Graph Convolutional Networks (DGCN), which Given a directed graph G = ¹V; Eº. For an order pair ¹i; jº, where i utilizes first & second-order proximity to extract graph information. and j 2 V. If ¹i; jº 2 E, we say that order pair ¹i; jº is first-order edge. We not only consider basic first-order proximity to obtain neigh- If it exists any vertex k 2 V that satisfies order pairs ¹k;iº and ¹k; jº 2 borhood information, but also take second-order proximity into E or ¹i;kº and ¹j;kº 2 E, we define order pair ¹i; jº as second-order account, which is a complement for sparsity of first-order infor- edge.
Recommended publications
  • Directed Graph Algorithms
    Directed Graph Algorithms CSE 373 Data Structures Readings • Reading Chapter 13 › Sections 13.3 and 13.4 Digraphs 2 Topological Sort 142 322 143 321 Problem: Find an order in which all these courses can 326 be taken. 370 341 Example: 142 Æ 143 Æ 378 Æ 370 Æ 321 Æ 341 Æ 322 Æ 326 Æ 421 Æ 401 378 421 In order to take a course, you must 401 take all of its prerequisites first Digraphs 3 Topological Sort Given a digraph G = (V, E), find a linear ordering of its vertices such that: for any edge (v, w) in E, v precedes w in the ordering B C A F D E Digraphs 4 Topo sort – valid solution B C Any linear ordering in which A all the arrows go to the right F is a valid solution D E A B F C D E Note that F can go anywhere in this list because it is not connected. Also the solution is not unique. Digraphs 5 Topo sort – invalid solution B C A Any linear ordering in which an arrow goes to the left F is not a valid solution D E A B F C E D NO! Digraphs 6 Paths and Cycles • Given a digraph G = (V,E), a path is a sequence of vertices v1,v2, …,vk such that: ›(vi,vi+1) in E for 1 < i < k › path length = number of edges in the path › path cost = sum of costs of each edge • A path is a cycle if : › k > 1; v1 = vk •G is acyclic if it has no cycles.
    [Show full text]
  • Graph Varieties Axiomatized by Semimedial, Medial, and Some Other Groupoid Identities
    Discussiones Mathematicae General Algebra and Applications 40 (2020) 143–157 doi:10.7151/dmgaa.1344 GRAPH VARIETIES AXIOMATIZED BY SEMIMEDIAL, MEDIAL, AND SOME OTHER GROUPOID IDENTITIES Erkko Lehtonen Technische Universit¨at Dresden Institut f¨ur Algebra 01062 Dresden, Germany e-mail: [email protected] and Chaowat Manyuen Department of Mathematics, Faculty of Science Khon Kaen University Khon Kaen 40002, Thailand e-mail: [email protected] Abstract Directed graphs without multiple edges can be represented as algebras of type (2, 0), so-called graph algebras. A graph is said to satisfy an identity if the corresponding graph algebra does, and the set of all graphs satisfying a set of identities is called a graph variety. We describe the graph varieties axiomatized by certain groupoid identities (medial, semimedial, autodis- tributive, commutative, idempotent, unipotent, zeropotent, alternative). Keywords: graph algebra, groupoid, identities, semimediality, mediality. 2010 Mathematics Subject Classification: 05C25, 03C05. 1. Introduction Graph algebras were introduced by Shallon [10] in 1979 with the purpose of providing examples of nonfinitely based finite algebras. Let us briefly recall this concept. Given a directed graph G = (V, E) without multiple edges, the graph algebra associated with G is the algebra A(G) = (V ∪ {∞}, ◦, ∞) of type (2, 0), 144 E. Lehtonen and C. Manyuen where ∞ is an element not belonging to V and the binary operation ◦ is defined by the rule u, if (u, v) ∈ E, u ◦ v := (∞, otherwise, for all u, v ∈ V ∪ {∞}. We will denote the product u ◦ v simply by juxtaposition uv. Using this representation, we may view any algebraic property of a graph algebra as a property of the graph with which it is associated.
    [Show full text]
  • Networkx: Network Analysis with Python
    NetworkX: Network Analysis with Python Salvatore Scellato Full tutorial presented at the XXX SunBelt Conference “NetworkX introduction: Hacking social networks using the Python programming language” by Aric Hagberg & Drew Conway Outline 1. Introduction to NetworkX 2. Getting started with Python and NetworkX 3. Basic network analysis 4. Writing your own code 5. You are ready for your project! 1. Introduction to NetworkX. Introduction to NetworkX - network analysis Vast amounts of network data are being generated and collected • Sociology: web pages, mobile phones, social networks • Technology: Internet routers, vehicular flows, power grids How can we analyze this networks? Introduction to NetworkX - Python awesomeness Introduction to NetworkX “Python package for the creation, manipulation and study of the structure, dynamics and functions of complex networks.” • Data structures for representing many types of networks, or graphs • Nodes can be any (hashable) Python object, edges can contain arbitrary data • Flexibility ideal for representing networks found in many different fields • Easy to install on multiple platforms • Online up-to-date documentation • First public release in April 2005 Introduction to NetworkX - design requirements • Tool to study the structure and dynamics of social, biological, and infrastructure networks • Ease-of-use and rapid development in a collaborative, multidisciplinary environment • Easy to learn, easy to teach • Open-source tool base that can easily grow in a multidisciplinary environment with non-expert users
    [Show full text]
  • Structural Graph Theory Meets Algorithms: Covering And
    Structural Graph Theory Meets Algorithms: Covering and Connectivity Problems in Graphs Saeed Akhoondian Amiri Fakult¨atIV { Elektrotechnik und Informatik der Technischen Universit¨atBerlin zur Erlangung des akademischen Grades Doktor der Naturwissenschaften Dr. rer. nat. genehmigte Dissertation Promotionsausschuss: Vorsitzender: Prof. Dr. Rolf Niedermeier Gutachter: Prof. Dr. Stephan Kreutzer Gutachter: Prof. Dr. Marcin Pilipczuk Gutachter: Prof. Dr. Dimitrios Thilikos Tag der wissenschaftlichen Aussprache: 13. October 2017 Berlin 2017 2 This thesis is dedicated to my family, especially to my beautiful wife Atefe and my lovely son Shervin. 3 Contents Abstract iii Acknowledgementsv I. Introduction and Preliminaries1 1. Introduction2 1.0.1. General Techniques and Models......................3 1.1. Covering Problems.................................6 1.1.1. Covering Problems in Distributed Models: Case of Dominating Sets.6 1.1.2. Covering Problems in Directed Graphs: Finding Similar Patterns, the Case of Erd}os-P´osaproperty.......................9 1.2. Routing Problems in Directed Graphs...................... 11 1.2.1. Routing Problems............................. 11 1.2.2. Rerouting Problems............................ 12 1.3. Structure of the Thesis and Declaration of Authorship............. 14 2. Preliminaries and Notations 16 2.1. Basic Notations and Defnitions.......................... 16 2.1.1. Sets..................................... 16 2.1.2. Graphs................................... 16 2.2. Complexity Classes................................
    [Show full text]
  • Katz Centrality for Directed Graphs • Understand How Katz Centrality Is an Extension of Eigenvector Centrality to Learning Directed Graphs
    Prof. Ralucca Gera, [email protected] Applied Mathematics Department, ExcellenceNaval Postgraduate Through Knowledge School MA4404 Complex Networks Katz Centrality for directed graphs • Understand how Katz centrality is an extension of Eigenvector Centrality to Learning directed graphs. Outcomes • Compute Katz centrality per node. • Interpret the meaning of the values of Katz centrality. Recall: Centralities Quality: what makes a node Mathematical Description Appropriate Usage Identification important (central) Lots of one-hop connections The number of vertices that Local influence Degree from influences directly matters deg Small diameter Lots of one-hop connections The proportion of the vertices Local influence Degree centrality from relative to the size of that influences directly matters deg C the graph Small diameter |V(G)| Lots of one-hop connections A weighted degree centrality For example when the Eigenvector centrality to high centrality vertices based on the weight of the people you are (recursive formula): neighbors (instead of a weight connected to matter. ∝ of 1 as in degree centrality) Recall: Strongly connected Definition: A directed graph D = (V, E) is strongly connected if and only if, for each pair of nodes u, v ∈ V, there is a path from u to v. • The Web graph is not strongly connected since • there are pairs of nodes u and v, there is no path from u to v and from v to u. • This presents a challenge for nodes that have an in‐degree of zero Add a link from each page to v every page and give each link a small transition probability controlled by a parameter β. u Source: http://en.wikipedia.org/wiki/Directed_acyclic_graph 4 Katz Centrality • Recall that the eigenvector centrality is a weighted degree obtained from the leading eigenvector of A: A x =λx , so its entries are 1 λ Thoughts on how to adapt the above formula for directed graphs? • Katz centrality: ∑ + β, Where β is a constant initial weight given to each vertex so that vertices with zero in degree (or out degree) are included in calculations.
    [Show full text]
  • A Gentle Introduction to Deep Learning for Graphs
    A Gentle Introduction to Deep Learning for Graphs Davide Bacciua, Federico Erricaa, Alessio Michelia, Marco Poddaa aDepartment of Computer Science, University of Pisa, Italy. Abstract The adaptive processing of graph data is a long-standing research topic that has been lately consolidated as a theme of major interest in the deep learning community. The snap increase in the amount and breadth of related research has come at the price of little systematization of knowledge and attention to earlier literature. This work is a tutorial introduction to the field of deep learn- ing for graphs. It favors a consistent and progressive presentation of the main concepts and architectural aspects over an exposition of the most recent liter- ature, for which the reader is referred to available surveys. The paper takes a top-down view of the problem, introducing a generalized formulation of graph representation learning based on a local and iterative approach to structured in- formation processing. Moreover, it introduces the basic building blocks that can be combined to design novel and effective neural models for graphs. We com- plement the methodological exposition with a discussion of interesting research challenges and applications in the field. Keywords: deep learning for graphs, graph neural networks, learning for structured data arXiv:1912.12693v2 [cs.LG] 15 Jun 2020 1. Introduction Graphs are a powerful tool to represent data that is produced by a variety of artificial and natural processes. A graph has a compositional nature, being a compound of atomic information pieces, and a relational nature, as the links defining its structure denote relationships between the linked entities.
    [Show full text]
  • Graph Mining: Social Network Analysis and Information Diffusion
    Graph Mining: Social network analysis and Information Diffusion Davide Mottin, Konstantina Lazaridou Hasso Plattner Institute Graph Mining course Winter Semester 2016 Lecture road Introduction to social networks Real word networks’ characteristics Information diffusion GRAPH MINING WS 2016 2 Paper presentations ▪ Link to form: https://goo.gl/ivRhKO ▪ Choose the date(s) you are available ▪ Choose three papers according to preference (there are three lists) ▪ Choose at least one paper for each course part ▪ Register to the mailing list: https://lists.hpi.uni-potsdam.de/listinfo/graphmining-ws1617 GRAPH MINING WS 2016 3 What is a social network? ▪Oxford dictionary A social network is a network of social interactions and personal relationships GRAPH MINING WS 2016 4 What is an online social network? ▪ Oxford dictionary An online social network (OSN) is a dedicated website or other application, which enables users to communicate with each other by posting information, comments, messages, images, etc. ▪ Computer science : A network that consists of a finite number of users (nodes) that interact with each other (edges) by sharing information (labels, signs, edge directions etc.) GRAPH MINING WS 2016 5 Definitions ▪Vertex/Node : a user of the social network (Twitter user, an author in a co-authorship network, an actor etc.) ▪Edge/Link/Tie : the connection between two vertices referring to their relationship or interaction (friend-of relationship, re-tweeting activity, etc.) Graph G=(V,E) symbols meaning V users E connections deg(u) node degree:
    [Show full text]
  • A Faster Parameterized Algorithm for PSEUDOFOREST DELETION
    A faster parameterized algorithm for PSEUDOFOREST DELETION Citation for published version (APA): Bodlaender, H. L., Ono, H., & Otachi, Y. (2018). A faster parameterized algorithm for PSEUDOFOREST DELETION. Discrete Applied Mathematics, 236, 42-56. https://doi.org/10.1016/j.dam.2017.10.018 Document license: Unspecified DOI: 10.1016/j.dam.2017.10.018 Document status and date: Published: 19/02/2018 Document Version: Accepted manuscript including changes made at the peer-review stage Please check the document version of this publication: • A submitted manuscript is the version of the article upon submission and before peer-review. There can be important differences between the submitted version and the official published version of record. People interested in the research are advised to contact the author for the final version of the publication, or visit the DOI to the publisher's website. • The final author version and the galley proof are versions of the publication after peer review. • The final published version features the final layout of the paper including the volume, issue and page numbers. Link to publication General rights Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain • You may freely distribute the URL identifying the publication in the public portal.
    [Show full text]
  • Quick Notes on Nodexl
    Quick notes on NodeXL Programme organisation, 3 components: • NodeXL command ‘ribbon’ – access with menu-like item at top of the screen, contains all network data functions • Data sheets – 5 separate sheets for edges, vertices, metrics etc, switching between them using tabs on the bottom. NB because the screen gets quite crowded the sheet titles sometimes disappear off to one side so use the small arrows (bottom left) to scroll across the tabs if something seems to have gone missing. • Graph viewer – separate window pane labelled ‘Document Actions’ with graphical layout functions. Can be closed while working with data – to open it again click the ‘Show Graph’ button near the left-hand side of the ribbon. Working with data, basic process: 1. Start in ‘Edges’ data sheet (leftmost tab at the bottom); each row represents one connection of the form A links to B (directed graph) OR A and B are linked (undirected). (Directed/Undirected changed in ‘Type’ option on ribbon. In directed graph this sheet might include one row for A->B and one for B->A; in an undirected graph this would be tautologous.) No other data in this sheet is required, although optionally: • Could include text under ‘label’ if the visible label on graphs should be different from the name used in columns A or B. NB These might be overwritten when using ‘autofill columns’. • Could add an extra column at column L to identify weight of links if (as is the case with IssueCrawler data) each connection might represent more than 1 actually existing link between two vertices, hence inclusion of ‘Edge Weight’ in blogs data.
    [Show full text]
  • NODEXL for Beginners Nasri Messarra, 2013‐2014
    NODEXL for Beginners Nasri Messarra, 2013‐2014 http://nasri.messarra.com Why do we study social networks? Definition from: http://en.wikipedia.org/wiki/Social_network: A social network is a social structure made up of a set of social actors (such as individuals or organizations) and a set of the dyadic ties between these actors. Social networks and the analysis of them is an inherently interdisciplinary academic field which emerged from social psychology, sociology, statistics, and graph theory. From http://en.wikipedia.org/wiki/Sociometry: "Sociometric explorations reveal the hidden structures that give a group its form: the alliances, the subgroups, the hidden beliefs, the forbidden agendas, the ideological agreements, the ‘stars’ of the show". In social networks (like Facebook and Twitter), sociometry can help us understand the diffusion of information and how word‐of‐mouth works (virality). Installing NODEXL (Microsoft Excel required) NodeXL Template 2014 ‐ Visit http://nodexl.codeplex.com ‐ Download the latest version of NodeXL ‐ Double‐click, follow the instructions The SocialNetImporter extends the capabilities of NodeXL mainly with extracting data from the Facebook network. To install: ‐ Download the latest version of the social importer plugins from http://socialnetimporter.codeplex.com ‐ Open the Zip file and save the files into a directory you choose, e.g. c:\social ‐ Open the NodeXL template (you can click on the Windows Start button and type its name to search for it) ‐ Open the NodeXL tab, Import, Import Options (see screenshot below) 1 | Page ‐ In the import dialog, type or browse for the directory where you saved your social importer files (screenshot below): ‐ Close and open NodeXL again For older Versions: ‐ Visit http://nodexl.codeplex.com ‐ Download the latest version of NodeXL ‐ Unzip the files to a temporary folder ‐ Close Excel if it’s open ‐ Run setup.exe ‐ Visit http://socialnetimporter.codeplex.com ‐ Download the latest version of the socialnetimporter plug in 2 | Page ‐ Extract the files and copy them to the NodeXL plugin direction.
    [Show full text]
  • Graph and Network Analysis
    Graph and Network Analysis Dr. Derek Greene Clique Research Cluster, University College Dublin Web Science Doctoral Summer School 2011 Tutorial Overview • Practical Network Analysis • Basic concepts • Network types and structural properties • Identifying central nodes in a network • Communities in Networks • Clustering and graph partitioning • Finding communities in static networks • Finding communities in dynamic networks • Applications of Network Analysis Web Science Summer School 2011 2 Tutorial Resources • NetworkX: Python software for network analysis (v1.5) http://networkx.lanl.gov • Python 2.6.x / 2.7.x http://www.python.org • Gephi: Java interactive visualisation platform and toolkit. http://gephi.org • Slides, full resource list, sample networks, sample code snippets online here: http://mlg.ucd.ie/summer Web Science Summer School 2011 3 Introduction • Social network analysis - an old field, rediscovered... [Moreno,1934] Web Science Summer School 2011 4 Introduction • We now have the computational resources to perform network analysis on large-scale data... http://www.facebook.com/note.php?note_id=469716398919 Web Science Summer School 2011 5 Basic Concepts • Graph: a way of representing the relationships among a collection of objects. • Consists of a set of objects, called nodes, with certain pairs of these objects connected by links called edges. A B A B C D C D Undirected Graph Directed Graph • Two nodes are neighbours if they are connected by an edge. • Degree of a node is the number of edges ending at that node. • For a directed graph, the in-degree and out-degree of a node refer to numbers of edges incoming to or outgoing from the node.
    [Show full text]
  • Graph Theory for Network Science
    Graph Theory for Network Science Dr. Natarajan Meghanathan Professor Department of Computer Science Jackson State University, Jackson, MS E-mail: [email protected] Networks or Graphs • We typically use the terms interchangeably. • Networks – refers to real systems – WWW : network of web pages connected by URLs – Society : network of individuals connected by family, friendship or professional ties – Metabolic network : sum of all chemical reactions that take place in a cell • Graphs: Mathematical representation of the networks – Web graph, Social graph, Metabolic graph Real systems of quite different nature can have the same network representation • Even though these real systems have different nature, appearance or scope, they can be represented as the same network (graph) • Internet – connected using routers • Actor network – network of actors who acted together in at least one movie • Protein-Protein Interaction (PPI) network – two proteins are connected if there is experimental evidence that they can bind each other in the cell Internet Actor Network Graph PPI Network Fig. 2.3: Barabasi Networks: Terminologies • Node – Components in the system • Link – Interactions between the nodes • Directed link – nodes that interact in a specific direction (A calling B, not vice-versa; URL A is linked to URL B; A likes B) • Undirected link – Transmission lines on the power grid (two people who are friends to each other in Facebook; electric current flowing in both directions; A and B are siblings; A and B are co-authors) • Degree of a node – Number of links incident on it • In-degree - # incoming links; Out-degree - # outgoing links • Directed network – contains all directed links • Undirected network – contains all undirected links • Some networks can have both directed and undirected links – Metabolic network with certain reactions being reversible and certain reactions proceeding in only one direction • It is important to make proper choices in the selection of links to apply the network science theory.
    [Show full text]