Understanding a graph’s structure by looking for communities
In a graph, the repartition of edges is often a key characteristic. Indeed, graph traversal is used by many algorithms to propagate some values from one node to its neighbors, until some equilibrium is reached. Knowing in advance that some groups of nodes are totally isolated from, or share very few links with, the rest of the graph is key information to understand the result of such algorithms. Besides those technical details, the knowledge that some nodes tend to be more connected with each other with respect to other nodes in the graph, forming a community can also be used as an input feature for an ML model. You can, for instance, imagine finding communities in your user base depending on the products they frequently buy and identifying the group of coffee aficionados, different from the group of tea lovers, that will get different recommendations.
Number of components
The next goal of this analysis is to...