Head's Up! These forums are read-only. All users and content have migrated. Please join us at community.neo4j.com.
01-05-2021 06:05 AM
In the Online-Training Course: Introduction to Graph Algorithms — Exercises
:play https://guides.neo4j.com/4.0-intro-graph-algos-exercises/LouvainModularity.html
when doing this query:
CALL gds.louvain.write('roads',{
writeProperty:'community_louvain',
relationshipWeightProperty: 'inverse_distance'})
YIELD modularity, ranLevels, communityCount, communityDistribution
it would be great to add some explanations of the results:
Are there any documentation about the values p99, p75 etc. ?
Solved! Go to Solution.
01-05-2021 07:43 AM
Hey Andreas,
the documentation states that:
Map containing min, max, mean as well as p50, p75, p90, p95, p99 and p999 percentile values of community size for the last level.
So, for example, the p50 value is the 50th percentile value or the median value of the community size. So in this case, the p99 value of 75 represents that 99% of communities have the community size of 75 or less and 1% have the community size greater than or equal to 75.
We will add the explanation to the browser guide.
Thanks for your feedback.
01-05-2021 07:43 AM
Hey Andreas,
the documentation states that:
Map containing min, max, mean as well as p50, p75, p90, p95, p99 and p999 percentile values of community size for the last level.
So, for example, the p50 value is the 50th percentile value or the median value of the community size. So in this case, the p99 value of 75 represents that 99% of communities have the community size of 75 or less and 1% have the community size greater than or equal to 75.
We will add the explanation to the browser guide.
Thanks for your feedback.
01-07-2021 12:57 AM
Thanks for the fast answer !
01-08-2021 12:14 PM
One other question about this Guide:
:play https://guides.neo4j.com/4.0-intro-graph-algos-exercises/LoadData.html
where you propse the inverse distance like this:
MATCH (:Place)-[r:EROAD]->(:Place)
SET r.inverse_distance = 1.0 / log10(r.distance + 2)
Why do you use log10 etc. when inverse distance would be 1/distance ?
01-08-2021 12:52 PM
If I remember correctly, the main reason was that otherwise, the weights would be super tiny, ranging between 0.0 and 0.1. One distance is 0, so you would have to do 1 / distance + 1. I think I tried both and it doesn't impact the results that much.
01-13-2021 12:08 PM
Thanks for the fast answer !
01-14-2021 02:43 AM
In Browserguide
:play https://guides.neo4j.com/4.0-intro-graph-algos-exercises/LouvainModularity.html
on Slide 11 of 16 the explanation:
"Antwerpen, Gent, Bruxelles, and six other places share the same community through all the hierarchical levels." does not fit to the values of the property communities_louvain, eg. [145, 192, 192] for Maastricht ?
01-14-2021 06:48 AM
What's the question here?
If it's the same array, meaning all the three community ids in array are in the same sequence, then the places are in the same community on all the hierarchical levels.
01-15-2021 09:39 AM
What does "in the same sequence" mean. I thougt [145, 192, 192] for Maastricht means that Maastricht was first in community 145 and then in 192 in the second run and then in 192 too in the last run ? Or do i miss something ?
01-16-2021 03:15 AM
Maybe the first/last run is not the best wording. The first or last hierarchical level is better. But yes, I think you are probably understanding correctly
01-17-2021 09:23 AM
Ok, when I'm right then Maastricht does not have the same community through all hierarchial levels.
01-17-2021 10:08 AM
Exactly Maastricht has a different community on each level. Keep in mind though that same of the communities might disappear on a higher level as you can notice there are more communities on the first level than the last one.
01-17-2021 11:00 AM
Ok, but then the first sentence says something different than the second:
"Antwerpen, Gent, Bruxelles, and six other places share the same community through all the hierarchical levels. On the first level, they have been assigned to the community with an id 145, but later switched to community 192 on level two and final third level."
because they share the same community not in all but from the second level up ?
01-17-2021 11:28 AM
Ok, now I finally understand your point. Perhaps the phrasing is a bit off, maybe it would be better to say:
X,y,z share a common community through all levels or something like that. Something that implies that on each level they can be found sharing the same community id. Not implying that their community id dont change. Even when writing this response I had problem finding a nice wording.
Feel free to add a PR with better wording
01-17-2021 01:44 PM
I found this picture very good to understand the matter:
Does the number of hierarchies correspondend with the times the algo runs ?
01-17-2021 11:26 PM
Thanks for that article !
All the sessions of the conference are now available online