Open nicolaspayette opened 5 years ago
Thanks @nicolaspayette! That paper looks great. The point about disconnected communities in Louvain is really interesting; obvious in retrospect, but never occurred to me before.
Looks like the algorithm is broadly as follows. Initialize each node to its singleton community, then:
It inherits the gamma parameter from CPM (which I hadn't heard of until this paper; definitely something we should consider adding). Gamma here then defines how well connected and well separated the communities are. For a community C and subset S, S
and C-S
will have at least gamma * ||S|| * ||C - S||
internal links. This is the main guarantee that this algorithm has over Louvain.
They also say the algorithm is faster, though AFAICT, most of that speed boost comes from the fast local move, which (again AFAICT) could be used in Louvain.
Anyway, great find @nicolaspayette!
This got published today: https://www.nature.com/articles/s41598-019-41695-z
A Java implementation is available at https://github.com/CWTSLeiden/networkanalysis.
I haven't looked at any of it in details, but it might warrant future consideration.