I'm trying to run the Louvain method of community detection on my database to group some of my nodes into clusters. However, I kept getting different results even just by trying to sort my results.
This is the result I get when I run the Louvain algorithm with no 'order by':
However, when I try to order my results by communityId, the communityId that was assigned to most of the nodes changes:
And when I try to order by nodeId instead, the communityId that was assigned changes again:
Can I get some help in understanding this please? I do understand that for Louvain algorithm, the initial communities assigned may be random at first, and hence, the end results could be different. However, I'm only introducing / changing the sorting order of the results here, not doing anything substantial to change the algorithm or the hyperparameter itself. So I'm really puzzled at how I could get different results in different runs.
I'm using Neo4J ver 4.3.1, with GDS ver 1.6.4, if that matters. Thank you!