Contact: Daichi Kuroda
Community detection is a task grouping each node of a graph into a group(s), a.k.a. a community. Several branches of community detection algorithms exist, such as modularity optimization or fitting to some artificial graph-generating models.
Usually, the superiority of a community detection method over the others is tested by the accuracies of recovering planted communities of some well-defined graph-generating models or by the consistency of discovered communities with some ground truth node labels of a real data set of networks. These evaluations are very biased and may result in overrating some algorithms that exploit some graph properties that might not be common in real data.
Moreover, depending on the purpose of the application, you might prefer to use a community detection method over others in some real-life applications, even though the method performs more poorly on well-defined graph-generating models.
This project tries to thoroughly investigate the properties of communities each community detection method finds.
The objectives of the project are: - Give some guidance on which community detection algorithm to choose according to the purpose of community detection. - Obtain some insights that could lead to proposing a new definition of community.