  Community detection is one of the most important and challenging problems in
network analysis. However, real-world networks may have very different
structural properties and communities of various nature. As a result, it is
hard (or even impossible) to develop one algorithm suitable for all datasets. A
standard machine learning tool is to consider a parametric algorithm and choose
its parameters based on the dataset at hand. However, this approach is not
applicable to community detection since usually no labeled data is available
for such parameter tuning. In this paper, we propose a simple and effective
procedure allowing to tune hyperparameters of any given community detection
algorithm without requiring any labeled data. The core idea is to generate a
synthetic network with properties similar to a given real-world one, but with
known communities. It turns out that tuning parameters on such synthetic graph
also improves the quality for a given real-world network. To illustrate the
effectiveness of the proposed algorithm, we show significant improvements
obtained for several well-known parametric community detection algorithms on a
variety of synthetic and real-world datasets.
