I'm currently trying to find over-represented network motifs in a (relatively) large graph. I've experimented with a few tools, but found them all to be unworkably slow (one tool is still running, 2 weeks later).
Could I ask for your recommendations for a (fast) algorithm to solve this problem?
(PS, I'm currently looking for 6 node motifs in a network of ~120,000 nodes & ~600,000 edges)
EDIT - thanks for the answers so far, I'm trying out FANMOD, but it's 27 hours in and still hasn't got past 1% of the input graph, let alone onto analysing random graphs. Not sure there's a ready made solution to this problem.
I think in a graph that large the most you can do is compile node/edge statistics (degree distributions, clustering coefficients etc). Most graph algorithms are probably unfeasible.
What tools have you tried?
Good point - currently running - Kavosh (2 weeks and counting) and mfinder (a week and still going).
Is your graph node and/or edge labeled? Having a hypothesis helps i.e. if you have some idea on how a netowork motif looks (and what its edge/node properties are) you can implement a function that looks for it.
Those interested in network motifs should also read the paper here written by colleagues here at Penn State. It makes a strong point that the seminal papers on network motifs (thus possibly the software for it as long as it reproduces the results) are fundamentally incorrect.
Algorithms in the spirit of PageRank do not need to analyze the network as a whole to return meaningful statistics about any node
FANMOD had been excellent for my 4 node motifs. Author Sebestian is very helping and responds real quick.