You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Whether the current implementation of the community detection algorithms (e.g., Leiden, Louvain, etc.) in GDS support an incremental update mechanism?
For example:
Retain the already detected community structure for an existing graph.
Allow newly added nodes and edges to be integrated into the graph. Then perform community detection only on the new nodes and edges.
Thanks!
The text was updated successfully, but these errors were encountered:
Unfortunately currently GDS does not support incremental updates in-memory graph.
This means that if you need to update your graph you will have to reproject again, and running any algorithm on the new graph will end computing a value for each node.
What GDS offers for most of community algorithms is a seedProperty . This is a way to pre-assign communities to some nodes, which can help the algorithm converge faster, because when only few nodes/relationships are added the pre-existing communities should not change much, hence the outcome should stabilize with fewer iterations.
So while it won't be as fast as calculating the communities only for new entities, using the seedProperty could make it faster than running the algorithm on the re-projected graph from scratch.
In your case, you could do a gds.louvain.write to write back the community of each node in your neo4j database as a node property, and then load that property when you next project.
I hope that clears things out for you
Let me know if you have any other question,
Whether the current implementation of the community detection algorithms (e.g., Leiden, Louvain, etc.) in GDS support an incremental update mechanism?
For example:
Thanks!
The text was updated successfully, but these errors were encountered: