GithubHelp home page GithubHelp logo

stivalaa / estimnetdirected Goto Github PK

View Code? Open in Web Editor NEW
24.0 4.0 3.0 6.46 MB

Equilibrium Expectation for ERGM parameter estimation for large networks

License: MIT License

Makefile 0.84% Python 5.90% Shell 2.55% C 36.91% R 8.87% HTML 23.23% CSS 0.57% Perl 0.10% JavaScript 0.87% Batchfile 0.07% C++ 17.67% Cuda 0.87% Objective-C 1.56%
ergm research algorithm network-analysis mcmc statistics social-network-analysis network-science

estimnetdirected's Introduction

EstimNetDirected

EstimNetDirected implements the Equilibrium Expectation (EE) algorithm for estimating parameters of exponential random graph models (ERGMs) for large directed (or undirected, including bipartite) networks.

The source code is written in C and (optionally) uses MPI to run multiple estimations in parallel. It was written on a Linux cluster system with OpenMPI but should be portable to any system with a standard C compiler (it works on cygwin under Windows for example). It uses the Random123 library for random number generation.

Also included is a simple Python demonstration implementation. The Python implementation uses the NumPy library for vector and matrix data types and functions. In addition, there are R scripts for estimating standard errors and plotting results from the output.

As well as some simulated networks, as empirical examples, the political bloggers network from the paper:

Adamic, Lada A, & Glance, Natalie. (2005). The political blogosphere and the 2004 US election: divided they blog. Pages 36-43 of: Proceedings of the 3rd international workshop on link discovery. ACM.

and the network science coauthorship network from the paper:

Newman, M. E. (2006). Finding community structure in networks using the eigenvectors of matrices. Physical Review E, 74(3), 036104.

are included. These networks were downloaded from Mark Newman's network data page.

If you use this software (or any alternative implementation of the algorithms described in the references), please cite the papers below (specifically Stivala, Robins, & Lomi (2020) for the EstimNetDirected software, and Byshkin et al. (2018) for the EE algorithm) in any resulting publications.

The "citation ERGM" (cERGM) model variant, which can also be estimated with this software, is described by:

Schmid, C., Chen, T., & Desmarais, B. (2022). Generative Dynamics of Supreme Court Citations: Analysis with a New Statistical Network Model. Political Analysis, 30(4), 515-534. doi:10.1017/pan.2021.20

The original statnet (http://statnet.org/) R implementation of cERGM is available from https://github.com/schmid86/cERGM/.

Funding

Development of the EstimNetDirected software was funded by the Swiss National Science Foundation project numbers 167326 (NRP 75) and 200778.

References

Borisenko, A., Byshkin, M., & Lomi, A. (2019). A Simple Algorithm for Scalable Monte Carlo Inference. arXiv preprint arXiv:1901.00533. https://arxiv.org/abs/1901.00533

Byshkin, M., Stivala, A., Mira, A., Krause, R., Robins, G., & Lomi, A. (2016). Auxiliary parameter MCMC for exponential random graph models. Journal of Statistical Physics, 165(4), 740-754. https://doi.org/10.1007/s10955-016-1650-5

Byshkin, M., Stivala, A., Mira, A., Robins, G., & Lomi, A. (2018). Fast Maximum Likelihood Estimation via Equilibrium Expectation for Large Network Data. Scientific Reports 8:11509. https://doi.org/10.1038/s41598-018-29725-8

Stivala, A. & Lomi, A. (2022) A new scalable implementation of the citation exponential random graph model (cERGM) and its application to a large patent citation network. INSNA Sunbelt XLII, July 12-16, 2022, Cairns, Australia (hybrid online/in-person conference). doi: 10.5281/zenodo.7951927

Stivala, A., Robins, G., & Lomi, A. (2020). Exponential random graph model parameter estimation for very large directed networks. PloS ONE, 15(1), e0227804. https://arxiv.org/abs/1904.08063

estimnetdirected's People

Contributors

stivalaa avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.