Git Product home page Git Product logo

blockmodel's Introduction

blockmodel

Fitting stochastic blockmodels to empirical networks

Author: Tamas Nepusz
Version: 0.1
License:GPL

This repository contains block-fit, block-gen and block-pred, a suite of three programs to work with stochastic blockmodels (both degree-corrected and standard ones). block-fit fits a standard or degree-corrected blockmodel to a given graph, block-gen generates graphs from a fitted model and block-pred calculates the probability of existence for each possible edge in a grpah from a fitted stochastic blockmodel. More details about the usage of each program are to be found in the doc subfolder. Please also read the references [1] [2] [3] [4] if you are interested in how these models work.

Precompiled binaries

Sorry, we do not provide precompiled binaries yet - you have to compile the tools on your own.

Compiling from source code

Requirements

  • igraph 0.7.1 or later. This is the library that we use to work with graphs.
  • CMake to generate the makefiles (or the project file if you are using Visual Studio).

Compiling using cmake and make

These instructions are for Linux or Mac OS X and assume that igraph is installed in a way that CMake can figure out automatically where it is. (This usually involves using pkg-config; if you run pkg-config --cflags igraph and it works, then it should work with CMake as well):

$ git submodule update --init
$ mkdir build
$ cd build
$ cmake ..
$ make

The first command is required only after you have checked out the source code from GitHub for the first time. The command fetches the source code of the C++ interface of igraph from GitHub and adds it to the source tree.

Bugs, questions?

Have you found a bug in the code? Do you have questions? Let me know. I think you are smart enough to figure out my email address by googling for my name. Or just drop me a message on GitHub.

References

[1]Snijders TAB, Nowicki K (1997) Estimation and prediction for stochastic blockmodels for graphs with latent block structure. J Classif 14:75-100.
[2]Nepusz T, Négyessy L, Tusnády G, Bazsó F (2008) Reconstructing cortical networks: case of directed graphs with high level of reciprocity. In: Bollobás B, Kozma R, Miklós D, editors, Handbook of Large-Scale Random Networks, Springer, volume 18 of Bolyai Society Mathematical Studies, pp. 325-368.
[3]Karrer B, Newman MEJ (2011) Stochastic blockmodels and community structure in networks. Phys Rev E 83:016107.
[4]Nepusz T, Paccanaro A (2013) De-noising protein-protein interaction networks with random graph models. In preparation.

blockmodel's People

Contributors

gaborcsardi avatar ntamas avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar

blockmodel's Issues

Stickinesses and rates

I have some questions.

  1. Do stickinesses and rates in the output correspond to theta and omega in the original paper of degree-corrected SBM?
  2. What kind of Markov chain is needed for degree-corrected SBM in this implementation? The original degree-corrected SBM does not do MC I suppose.

Thank you.

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.