A motif in a network is a connected graph that occurs significantly more frequently as an induced subgraph than would be expected in a similar randomized network. By virtue of being atypical, it is thought that motifs might play a more important role than arbitrary subgraphs. Recently, a flurry of advances in the study of network motifs has created demand for faster computational means for identifying motifs in increasingly larger networks. Motif detection is typically performed by enumerating subgraphs in an input network and in an ensemble of comparison networks; this poses a significant computational problem. Classifying the subgraphs encountered, for instance, is typically performed using a graph canonical labeling package, such as Nauty, and will typically be called billions of times. In this article, we describe an implementation of a network motif detection package, which we call NetMODE. NetMODE can only perform motif detection for [Formula: see text]-node subgraphs when [Formula: see text], but does so without the use of Nauty. To avoid using Nauty, NetMODE has an initial pretreatment phase, where [Formula: see text]-node graph data is stored in memory ([Formula: see text]). For [Formula: see text] we take a novel approach, which relates to the Reconstruction Conjecture for directed graphs. We find that NetMODE can perform up to around [Formula: see text] times faster than its predecessors when [Formula: see text] and up to around [Formula: see text] times faster when [Formula: see text] (the exact improvement varies considerably). NetMODE also (a) includes a method for generating comparison graphs uniformly at random, (b) can interface with external packages (e.g. R), and (c) can utilize multi-core architectures. NetMODE is available from netmode.sf.net.
Li, X., Stones, D. S., Wang, H., Deng, H., Liu, X., & Wang, G. (2012). NetMODE: Network Motif Detection without Nauty. PLoS ONE, 7(12). https://doi.org/10.1371/journal.pone.0050093