Exploring Community Structure of Software Call Graph and Its Applications in Class Cohesion Measurement

Total Page:16

File Type:pdf, Size:1020Kb

Exploring Community Structure of Software Call Graph and Its Applications in Class Cohesion Measurement The Journal of Systems and Software 108 (2015) 193–210 Contents lists available at ScienceDirect The Journal of Systems and Software journal homepage: www.elsevier.com/locate/jss Exploring community structure of software Call Graph and its applications in class cohesion measurement Yu Qu a, Xiaohong Guan a,∗, Qinghua Zheng a, Ting Liu a, Lidan Wang a, Yuqiao Hou a, Zijiang Yang b a Ministry of Education Key Lab for Intelligent Network and Network Security, Xi’an Jiaotong University, Xi’an, Shaanxi 710049, China b Department of Computer Science, Western Michigan University, Kalamazoo, MI 48167, USA article info abstract Article history: Many complex networked systems exhibit natural divisions of network nodes. Each division, or community, is Received 20 November 2014 a densely connected subgroup. Such community structure not only helps comprehension but also finds wide Revised 16 April 2015 applications in complex systems. Software networks, e.g., Class Dependency Networks, are such networks with Accepted 7 June 2015 community structures, but their characteristics at the function or method call granularity have not been in- Availableonline16June2015 vestigated, which are useful for evaluating and improving software intra-class structure. Moreover, existing Keywords: proposed applications of software community structure have not been directly compared or combined with Class cohesion metrics existing software engineering practices. Comparison with baseline practices is needed to convince practi- Complex network tioners to adopt the proposed approaches. In this paper, we show that networks formed by software methods Community structure and their calls exhibit relatively significant community structures. Based on our findings we propose two new class cohesion metrics to measure the cohesiveness of object-oriented programs. Our experiment on 10 large open-source Java programs validate the existence of community structures and the derived metrics give additional and useful measurement of class cohesion. As an application we show that the new metrics are able to predict software faults more effectively than existing metrics. © 2015 Elsevier Inc. All rights reserved. 1. Introduction the applications of community detection algorithms can be found in Fortunato (2010). Many natural and man-made complex networked systems, in- There are also research efforts to investigate community struc- cluding metabolic networks, computer networks and social net- tures in software, a very complex system (Concas et al., 2013; Pan works, exhibit divisions or clusters of network nodes (Flake et al., et al., 2011; Šubelj and Bajec, 2011; 2012; Šubelj et al., 2014). Most 2000; Fortunato, 2010; Girvan and Newman, 2002; Mucha et al., of them reported a significant community structure of a certain type 2010; Palla et al., 2005). Each division, or community (Girvan of software network such as Class Dependency Networks(Šubelj and and Newman, 2002), is a densely connected and highly correlated Bajec, 2011). Some pioneering applications of software community subgroup. Such community structure not only helps comprehension structure are proposed (for more details, please refer to Section 2). but also finds wide applications in complex systems. For example, However, there are still some unsolved problems. researchers in Biology and Bioinformatics have applied community Firstly, most of the measurements are performed on the net- detection algorithms to identifying functional groups of proteins in work of classes. Little results are reported on the granularity of Protein–Protein Interaction networks (Dunn et al., 2005; Jonsson et al., software method or function call, i.e., method/function Call Graphs 2006). For online auction sites such as ebay.com, community struc- (Graham et al., 1982). Such investigation is necessary from both ture is used to improve the effectiveness of the recommendation sys- theoretical and practical perspectives. In addition, measurements tems (Jin et al., 2007; Reichardt and Bornholdt, 2007). A survey on of the network of classes cannot be used in intra-class structure, which limits their applications in software quality evaluation and improvement. Secondly, these pioneering applications have not been directly ∗ Corresponding author. Tel.: +86 29 82663934. compared or combined with existing software engineering metrics E-mail addresses: [email protected] (Y. Qu), [email protected] (X. Guan), [email protected] (Q. Zheng), [email protected] (T. Liu), lidanwang@ and practices. Comparison with baseline practices is needed to con- stu.xjtu.edu.cn (L. Wang), [email protected] (Y. Hou), [email protected] vince people to adopt the proposed approaches. Only when the pro- (Z. Yang). posed approaches outperform or complement the existing method, http://dx.doi.org/10.1016/j.jss.2015.06.015 0164-1212/© 2015 Elsevier Inc. All rights reserved. 194 Y. Qu et al. / The Journal of Systems and Software 108 (2015) 193–210 ally reduces coupling between modules. However, employing object- oriented mechanism itself does not necessarily guarantee minimal coupling and maximal cohesion. Therefore, a quantitative measure- ment is valuable in both a posteriori analysis of a finished product to control software quality, and a priori analysis to guide coding in order to avoid undesirable results in the first place. The existence of community structures, as confirmed by our experiments on 10 large open-source Java programs using four widely-used community detection algorithms, sheds light on the co- hesiveness measurements of OO programs. Intuitively, community structures are able to indicate cohesion as nodes within a community are highly cohesive, and nodes in different communities are loosely coupled. In this paper, we propose two new class cohesion metrics— MCC (Method Community Cohesion)andMCEC (Method Community Entropy Cohesion) based on community structures. The basic idea of MCC is to quantify how many methods of a certain class reside in the same community. As for MCEC, it uses the standard notion of In- formation Entropy (Shannon, 2001) to quantify the distribution of all Fig. 1. Community structure of jEdit with 5979 nodes and 34 communities, detected the methods of a class among communities. Comparing with existing by Louvain algorithm (Blondel et al., 2008). metrics, these two metrics provide a new and more systematic point of view for class cohesion measurement. there can be a possibility that the approaches are adopted by soft- Fig. 2 gives the overview of our approach. Once a Call Graph is ware engineering practitioners. constructed, we apply widely-used community detection algorithms. Do software networks at other granularities also present signif- Fig. 2 shows the static Call Graph of JHotDraw, a Java GUI framework icant community structures? If so how can we make use of it in for technical and structured graphics. There are 5125 nodes divided software engineering practices? To answer these open questions and into 35 communities, as reported by Louvain algorithm (Blondel et al., solve the existing problems, we construct static Call Graphs, in which 2008). Based on the community structures, the metrics of MCC and nodes represent methods in an OO (Object-Oriented) program and MCEC are computed. edges represent methods invocation relations. We then apply exist- We validate the proposed metrics using the following processes. ing community detection algorithms to such graphs. Fig. 1 depicts Firstly, we show that MCC and MCEC theoretically satisfy expected the community structure of jEdit, an open-source text editor. There properties of class cohesion metrics (Briand et al., 1998). Secondly, are 5979 nodes that are divided into 34 communities shown in differ- we empirically compare MCC and MCEC with five widely-used class ent colors. The community structure is detected by Louvain algorithm cohesion metrics and our experiments indicate that the new met- (Blondel et al., 2008) that is implemented in a network analysis and rics are more reasonable than existing ones. Thirdly, Principle Com- visualization tool called Pajek.1 In Section 3, we show that such re- ponent Analysis (PCA; Pearson, 1901) is conducted to show that MCC sult presents typical community characteristics similar to those pre- and MCEC provide additional and useful information of class cohesion viously observed in other complex systems. that is not reflected by existing metrics. Finally, experiments are car- It is well known that high-quality software should exhibit “high ried out to show that MCC and MCEC usually perform equally or better cohesion and low coupling” nature. Software with such nature is than existing class cohesion metrics when they are used in software believed to be easy to understand, modify, and maintain (Briand fault prediction. et al., 2001; Pressman, 2010). Object-oriented design strives to In summary we make the following contributions in this paper: incorporate data and related functionality into modules, which usu- 1. We show through experiments on 10 large open-source Java programs that the static Call Graphs constructed from OO pro- 1 http://vlado.fmf.uni-lj.si/pub/networks/Pajek/ grams usually exhibit relatively significant community structures Fig. 2. The proposed approach of this paper, the static Call Graph and community structure of a Java GUI framework for technical and structured graphics—JHotDraw, is depicted in this figure. Y. Qu et al. / The Journal of Systems and Software 108 (2015) 193–210 195 as other networked complex systems (e.g., social
Recommended publications
  • A Network Approach to Define Modularity of Components In
    A Network Approach to Define Modularity of Components Manuel E. Sosa1 Technology and Operations Management Area, in Complex Products INSEAD, 77305 Fontainebleau, France Modularity has been defined at the product and system levels. However, little effort has e-mail: [email protected] gone into defining and quantifying modularity at the component level. We consider com- plex products as a network of components that share technical interfaces (or connections) Steven D. Eppinger in order to function as a whole and define component modularity based on the lack of Sloan School of Management, connectivity among them. Building upon previous work in graph theory and social net- Massachusetts Institute of Technology, work analysis, we define three measures of component modularity based on the notion of Cambridge, Massachusetts 02139 centrality. Our measures consider how components share direct interfaces with adjacent components, how design interfaces may propagate to nonadjacent components in the Craig M. Rowles product, and how components may act as bridges among other components through their Pratt & Whitney Aircraft, interfaces. We calculate and interpret all three measures of component modularity by East Hartford, Connecticut 06108 studying the product architecture of a large commercial aircraft engine. We illustrate the use of these measures to test the impact of modularity on component redesign. Our results show that the relationship between component modularity and component redesign de- pends on the type of interfaces connecting product components. We also discuss direc- tions for future work. ͓DOI: 10.1115/1.2771182͔ 1 Introduction The need to measure modularity has been highlighted implicitly by Saleh ͓12͔ in his recent invitation “to contribute to the growing Previous research on product architecture has defined modular- field of flexibility in system design” ͑p.
    [Show full text]
  • Practical Applications of Community Detection
    Volume 6, Issue 4, April 2016 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Practical Applications of Community Detection Mini Singh Ahuja1, Jatinder Singh2, Neha3 1 Research Scholar, Department of Computer Science, Punjab Technical University, Punjab, India 2 Professor, Department of Computer Science, KC Group of Institutes Nawashahr, Punjab, India 3 Student (M.Tech), Department of Computer Science, Regional Campus Gurdaspur, Punjab, India Abstract: Network is a collection of entities that are interconnected with links. The widespread use of social media applications like youtube, flicker, facebook is responsible for evolution of more complex networks. Online social networks like facebook and twitter are very large and dynamic complex networks. Community is a group of nodes that are more densely connected as compared to nodes outside the community. Within the community nodes are more likely to be connected but less likely to be connected with nodes of other communities. Community detection in such networks is one of the most challenging tasks. Community structures provide solutions to many real world problems. In this paper we have discussed about various applications areas of community structures in complex network. Keywords: complex network, community structures, applications of community structures, online social networks, community detection algorithms……. etc. I. INTRODUCTION Network is a collection of entities called nodes or vertices which are connected through edges or links. Computers that are connected, web pages that link to each other, group of friends are basic examples of network. Complex network is a group of interacting entities with some non trivial dynamical behavior [1].
    [Show full text]
  • Social Network Analysis with Content and Graphs
    SOCIAL NETWORK ANALYSIS WITH CONTENT AND GRAPHS Social Network Analysis with Content and Graphs William M. Campbell, Charlie K. Dagli, and Clifford J. Weinstein Social network analysis has undergone a As a consequence of changing economic renaissance with the ubiquity and quantity of » and social realities, the increased availability of large-scale, real-world sociographic data content from social media, web pages, and has ushered in a new era of research and sensors. This content is a rich data source for development in social network analysis. The quantity of constructing and analyzing social networks, but content-based data created every day by traditional and social media, sensors, and mobile devices provides great its enormity and unstructured nature also present opportunities and unique challenges for the automatic multiple challenges. Work at Lincoln Laboratory analysis, prediction, and summarization in the era of what is addressing the problems in constructing has been dubbed “Big Data.” Lincoln Laboratory has been networks from unstructured data, analyzing the investigating approaches for computational social network analysis that focus on three areas: constructing social net- community structure of a network, and inferring works, analyzing the structure and dynamics of a com- information from networks. Graph analytics munity, and developing inferences from social networks. have proven to be valuable tools in solving these Network construction from general, real-world data presents several unexpected challenges owing to the data challenges. Through the use of these tools, domains themselves, e.g., information extraction and pre- Laboratory researchers have achieved promising processing, and to the data structures used for knowledge results on real-world data.
    [Show full text]
  • Networks in Cognitive Science
    1 Networks in Cognitive Science Andrea Baronchelli1,*, Ramon Ferrer-i-Cancho2, Romualdo Pastor-Satorras3, Nick Chater4 and Morten H. Christiansen5,6 1 Laboratory for the Modeling of Biological and Socio-technical Systems, Northeastern University, Boston, MA 02115, USA 2 Complexity & Quantitative Linguistics Lab, TALP Research Center, Departament de Llenguatges i Sistemes Informàtics. Universitat Politècnica de Catalunya, Campus Nord, Edifici Omega, E-08034 Barcelona, Spain 3 Departament de Física i Enginyeria Nuclear, Universitat Politècnica de Catalunya, Campus Nord B4, E-08034 Barcelona, Spain 4Behavioural Science Group, Warwick Business School, University of Warwick, Coventry, CV4 7AL, UK 5 Department of Psychology, Cornell University, Uris Hall, Ithaca, NY 14853, USA 6 Santa Fe Institute, 1399 Hyde Park Road, Santa Fe, NM 87501, USA *Corresponding author: email [email protected] 2 Abstract Networks of interconnected nodes have long played a key role in cognitive science, from artificial neural networks to spreading activation models of semantic memory. Recently, however, a new Network Science has been developed, providing insights into the emergence of global, system-scale properties in contexts as diverse as the Internet, metabolic reactions or collaborations among scientists. Today, the inclusion of network theory into cognitive sciences, and the expansion of complex systems science, promises to significantly change the way in which the organization and dynamics of cognitive and behavioral processes are understood. In this paper, we review recent contributions of network theory at different levels and domains within the cognitive sciences. 3 Humans have more than 1010 neurons and between 1014 and 1015 synapses in their nervous system [1]. Together, neurons and synapses form neural networks, organized into structural and functional sub-networks at many scales [2].
    [Show full text]
  • Multi-Layered Network Embedding
    Multi-Layered Network Embedding Jundong Li∗y Chen Chen∗y Hanghang Tong∗ Huan Liu∗ Abstract tasks. To mitigate this problem, recent studies show Network embedding has gained more attentions in re- that through learning general network embedding rep- cent years. It has been shown that the learned low- resentations, many subsequent learning tasks could be dimensional node vector representations could advance greatly enhanced [17, 34, 39]. The basic idea is to learn a a myriad of graph mining tasks such as node classifi- low-dimensional node vector representation by leverag- cation, community detection, and link prediction. A ing the node proximity manifested in the network topo- vast majority of the existing efforts are overwhelmingly logical structure. devoted to single-layered networks or homogeneous net- The vast majority of existing efforts predomi- works with a single type of nodes and node interactions. nately focus on single-layered or homogeneous net- 1 However, in many real-world applications, a variety of works . However, real-world networks are much more networks could be abstracted and presented in a multi- complicated as cross-domain interactions between dif- layered fashion. Typical multi-layered networks include ferent networks are widely observed, which naturally critical infrastructure systems, collaboration platforms, form a type of multi-layered networks [12, 16, 35]. Crit- social recommender systems, to name a few. Despite the ical infrastructure systems are a typical example of widespread use of multi-layered networks, it remains a multi-layered networks (left part of Figure 1). In this daunting task to learn vector representations of different system, the power stations in the power grid are used types of nodes due to the bewildering combination of to provide electricity to routers in the autonomous sys- both within-layer connections and cross-layer network tem network (AS network) and vehicles in the trans- dependencies.
    [Show full text]
  • An Ecological Approach to Software Supply Chain Risk Management
    130 PROC. OF THE 15th PYTHON IN SCIENCE CONF. (SCIPY 2016) An Ecological Approach to Software Supply Chain Risk Management Sebastian Benthall‡§∗, Travis Pinney‡¶, JC Herz∗∗‡, Kit Plummerk‡ https://youtu.be/6UnuPhTPdnM F Abstract—We approach the problem of software assurance in a novel way With a small number of analytic assumptions about the inspired by an analytic framework used in natural hazard risk mitigation. Exist- propagation of vulnerability and exposure through the software ing approaches to software assurance focus on evaluating individual software dependency network, we have developed a model of ecosystem projects in isolation. We demonstrate a technique that evaluates an entire risk that predicts "hot spots" in need of more investment. In this ecosystem of software projects, taking into account the dependencey structure paper, we demonstrate this model using real software dependency between packages. Our model analytically separates vulnerability and exposure data extracted from PyPI using Ion Channel [IonChannel]. as elements of software risk, then makes minimal assumptions about the prop- agation of these values through a software supply chain. Combined with data collected from package management systems, our model indicates "hot spots" Prior work in the ecosystem of higher expected risk. We demonstrate this model using data collected from the Python Package Index (PyPI). Our results suggest that Zope [Verdon2004] outline the diversity of methods used for risk and Plone related projects carry the highest risk of all PyPI packages because analysis in software design. Their emphasis is on architecture- they are widely used and their core libraries are no longer maintained. level analysis and its iterative role in software development.
    [Show full text]
  • Exponential Random Graph Models An
    UNIVERSITY OF CALIFORNIA LOS ANGELES Network Statistics and Modeling the World Trade Network: Exponential Random Graph Models and Latent Space Models A thesis submitted in partial satisfaction of the requirements for the degree Master of Science in Statistics by Anthony James Howell 2012 © Copyright by Anthony James Howell 2012 i ABSTRACT OF THE THESIS Network Statistics and Modeling the Global Trade Economy: Exponential Random Graph Models and Latent Space Models: Is Geography Dead? by Anthony James Howell Master of Science in Statistics University of California, Los Angeles, 2012 Professor David Rigby, Chair Due to advancements in physics and computer science, networks have becoming increasingly applied to study a diverse set of interactions, including P2P, neural mapping, transportation, migration and global trade. Recent literature on the world trade network relies only on descriptive network statistics, and few attempts are made to statistically analyze the trade network using stochastic models. To fill this gap, I specify several models using international trade data and apply network statistics to determine the likelihood that a trade tie between two countries is established. I also use latent space models to test the ‘geography is dead’ thesis. There are two main findings of the paper. First, the “rich club phenomenon” identified in previous works using descriptive statistics no longer holds true when controlling for homophily and transitivity. Second, results from the latent space model refute the ‘geography is dead’ thesis. ii The thesis of Anthony James Howell is approved. Nicolas Christou Mark Handcock David Rigby, Committee Chair University of California, Los Angeles 2012 iii DEDICATION This work is dedicated to my loving family who has been instrumental in the completion of this thesis through their unconditional love and support.
    [Show full text]
  • Networktoolbox
    NetworkToolbox: Methods and Measures for Brain, Cognitive, and Psychometric Network Analysis in R This manuscript is accepted pending a minor revision to the R Journal. Alexander P. Christensen University of North Carolina at Greensboro Department of Psychology P.O. Box 26170 University of North Carolina at Greensboro Greensboro, NC, 27402-6170, USA E-mail: [email protected] ORCiD: 0000-0002-9798-7037 October 8, 2018 This article introduces the NetworkToolbox package for R. Network analysis offers an intuitive perspective on complex phenomena via models depicted by nodes (variables) and edges (correlations). The ability of net- works to model complexity has made them the standard approach for mod- eling the intricate interactions in the brain. Similarly, networks have become an increasingly attractive model for studying the complexity of psychologi- cal and psychopathological phenomena. NetworkToolbox aims to provide researchers with state-of-the-art methods and measures for estimating and analyzing brain, cognitive, and psychometric networks. In this article, I introduce NetworkToolbox and provide a tutorial for applying some the package’s functions to personality data. Keywords: psychology, network analysis, graph theory, R 1 1 Introduction Open science is ushering in a new era of psychology where multi-site collaborations are common and big data are readily available. Often, in these data, noise is mixed in with relevant information. Thus, researchers are faced with a challenge: deciphering informa- tion from the noise and maintaining the inherent structure of the data while reducing its complexity. Other areas of science have tackled this challenge with the use of network science and graph theory methods.
    [Show full text]
  • Patterns in Syntactic Dependency Networks
    PHYSICAL REVIEW E 69, 051915 (2004) Patterns in syntactic dependency networks Ramon Ferrer i Cancho,1,* Ricard V. Solé,1,2 and Reinhard Köhler3 1ICREA-Complex Systems Lab, Universitat Pompeu Fabra, Dr. Aiguader 80, 08003 Barcelona, Spain 2Santa Fe Institute, 1399 Hyde Park Road, Santa Fe, New Mexico 87501, USA 3Universität Trier, FB2/LDV, D-54268 Trier, Germany (Received 19 June 2003; revised manuscript received 19 September 2003; published 26 May 2004) Many languages are spoken on Earth. Despite their diversity, many robust language universals are known to exist. All languages share syntax, i.e., the ability of combining words for forming sentences. The origin of such traits is an issue of open debate. By using recent developments from the statistical physics of complex networks, we show that different syntactic dependency networks (from Czech, German, and Romanian) share many nontrivial statistical patterns such as the small world phenomenon, scaling in the distribution of degrees, and disassortative mixing. Such previously unreported features of syntax organization are not a trivial conse- quence of the structure of sentences, but an emergent trait at the global scale. DOI: 10.1103/PhysRevE.69.051915 PACS number(s): 87.10.ϩe, 89.75.Ϫk, 89.20.Ϫa I. INTRODUCTION p + p ⑀ 1 2 2 =1− . There is no agreement on the number of languages spoken 2 on Earth, but estimates are in the range from 3000 to 10 000 Knowing p1 =0.70 and p2 =0.17 [16] we get [1]. World languages exhibit a vast array of structural simi- ⑀ larities and differences. Syntax is a trait common to all hu- 2 = 0.56.
    [Show full text]
  • Evaluating Network Analysis and Agent Based Modeling for Investigating the Stability of Commercial Air Carrier Schedules
    Old Dominion University ODU Digital Commons Engineering Management & Systems Engineering Management & Systems Engineering Theses & Dissertations Engineering Spring 2012 Evaluating Network Analysis and Agent Based Modeling for Investigating the Stability of Commercial Air Carrier Schedules Sheila Ruth Conway Old Dominion University Follow this and additional works at: https://digitalcommons.odu.edu/emse_etds Part of the Aerospace Engineering Commons, Systems Engineering Commons, and the Transportation Commons Recommended Citation Conway, Sheila R.. "Evaluating Network Analysis and Agent Based Modeling for Investigating the Stability of Commercial Air Carrier Schedules" (2012). Doctor of Philosophy (PhD), Dissertation, Engineering Management & Systems Engineering, Old Dominion University, DOI: 10.25777/fnr1-7j24 https://digitalcommons.odu.edu/emse_etds/58 This Dissertation is brought to you for free and open access by the Engineering Management & Systems Engineering at ODU Digital Commons. It has been accepted for inclusion in Engineering Management & Systems Engineering Theses & Dissertations by an authorized administrator of ODU Digital Commons. For more information, please contact [email protected]. EVALUATING NETWORK ANALYSIS AND AGENT BASED MODELING FOR INVESTIGATING THE STABILITY OF COMMERCIAL AIR CARRIER SCHEDULES Sheila Ruth Conway B.S. May 1989, Massachusetts Institute of Technology M.S. May 1989, Massachusetts Institute of Technology A Dissertation Submitted to the Faculty of Old Dominion University in Partial Fulfillment of the Requirements for the Degree of DOCTOR OF PHILOSOPHY ENGINEERING MANAGEMENT OLD DOMINION UNIVERSITY May 2012 Approved by: Dr. Charles Keat :or Dr. Resit Unal, Member Dr. Ghaith Rabadi, Member Dr. J, MemberA ABSTRACT EVALUATING NETWORK ANALYSIS AND AGENT BASED MODELING FOR INVESTIGATING THE STABILITY OF COMMERCIAL AIR CARRIER SCHEDULES Sheila R.
    [Show full text]
  • Fast Cross-Layer Dependency Inference on Multi-Layered Networks
    FASCINATE: Fast Cross-Layer Dependency Inference on Multi-layered Networks Chen Chen†, Hanghang Tong†, Lei Xie‡, Lei Ying†, and Qing He§ †Arizona State University, {chen_chen, hanghang.tong, lei.ying.2}@asu.edu ‡City University of New York, [email protected] §University at Buffalo, [email protected] ABSTRACT Multi-layered networks have recently emerged as a new network model, which naturally finds itself in many high-impact applica- tion domains, ranging from critical inter-dependent infrastructure networks, biological systems, organization-level collaborations, to cross-platform e-commerce, etc. Cross-layer dependency, which describes the dependencies or the associations between nodes across different layers/networks, often plays a central role in many data mining tasks on such multi-layered networks. Yet, it remains a daunting task to accurately know the cross-layer dependency a prior. In this paper, we address the problem of inferring the missing cross- layer dependencies on multi-layered networks. The key idea behind our method is to view it as a collective collaborative filtering prob- lem. By formulating the problem into a regularized optimization model, we propose an effective algorithm to find the local optima with linear complexity. Furthermore, we derive an online algo- rithm to accommodate newly arrived nodes, whose complexity is Figure 1: An illustrative example of multi-layered networks. Each just linear wrt the size of the neighborhood of the new node. We gray ellipse is a critical infrastructure network (e.g., Telecom net- perform extensive empirical evaluations to demonstrate the effec- work, power grid, transportation network, etc). A thick arrow be- tiveness and the efficiency of the proposed methods.
    [Show full text]
  • Mining Social Dependencies in Dynamic Interaction Networks
    Mining Social Dependencies in Dynamic Interaction Networks Freddy Chong Tat Chua∗ Hady W. Lauw∗ Ee-Peng Lim∗ Abstract links also allows us to determine the cohesiveness of User-to-user interactions have become ubiquitous in users, which can be used to divide users into smaller Web 2.0. Users exchange emails, post on newsgroups, communities [14, 22, 28]. tag web pages, co-author papers, etc. Through these interactions, users co-produce or co-adopt content items 1.2 Social Dependency Modeling in User Inter- (e.g., words in emails, tags in social bookmarking action Networks User Interaction Network. A sites). We model such dynamic interactions as a user user interaction network consists of interactions that interaction network, which relates users, interactions, produce new content items over time. We consider and content items over time. After some interactions, a general approach of defining an interaction d (e.g., a user may produce content that is more similar to an email exchange, a published paper) as a tuple those produced by other users previously. We term Ad, Wd, τd where Ad, Wd and τd denote the set of this effect social dependency, and we seek to mine users, content items (e.g., words in an email or pa- from such networks the degree to which a user may per), and time point of the interaction respectively. We be socially dependent on another user over time. We represent a set of interactions over a time period as propose a Decay Topic Model to model the evolution of a graph called user interaction network, as shown in a user’s preferences for content items at the topic level, Figure 1.
    [Show full text]