Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create a graphlet.null_model module for heterogeneous networks #6

Open
rjurney opened this issue Aug 9, 2022 · 0 comments
Open

Create a graphlet.null_model module for heterogeneous networks #6

rjurney opened this issue Aug 9, 2022 · 0 comments
Assignees
Labels
enhancement New feature or request motifs

Comments

@rjurney
Copy link
Contributor

rjurney commented Aug 9, 2022

In order to determine whether a graphlet is a network motif, we need to compare its frequency versus a null model to determine if it is statistically significant. This means we need heterogeneous null models... and I can't find any libraries such as networkx that contain null models for heterogeneous networks.

Create a graphlet.null_model Module

We should create a module graphlet.null_model with networkx style generators that accept properties such as:

  • Total number of nodes of each node type
  • Summary of degrees of each edge type

Or whatever we find in the literature for various heterogeneous null models.

NetworkX Generators

While networkx Generators cover a range of randomly generated networks, they do not handle multiple types of nodes found in a property graph, also known as a heterogeneous network.

Literature Review

The null model of the heterogeneous networks refers to those network models that has the same set of types of nodes T, number of homogeneous nodes N, number of heterogeneous U, distribution of homogeneous node degree P(k) and distribution of heterogeneous node degree P(u) with the original network, while otherwise is taken to be an instance of the random network.

For each two types of the nodes, there is a distribution of heterogeneous node degree. Therefore, there are |T|2 − |T| distribution of heterogeneous node degree in a heterogeneous network, where T refers to the set of types of nodes.

Uses random walks - a Markov process - that considers the odds of walking across different edge types (source_type, dest_type) - reaches a steady state that incorporates homogeneous and heterogeneous degrees. Also includes modularity function using this null model.

@rjurney rjurney added enhancement New feature or request motifs labels Aug 9, 2022
@rjurney rjurney changed the title Create null model module for heterogeneous networks Create a graphlet.null_model module for heterogeneous networks Aug 9, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request motifs
Projects
None yet
Development

No branches or pull requests

2 participants