<p>You are confusing two different papers. The quote you show <strong>does not</strong> come from the paper you mention. The cited paper:</p>

<p><a href="https://journals.aps.org/prx/abstract/10.1103/PhysRevX.4.011047" rel="nofollow noreferrer">https://journals.aps.org/prx/abstract/10.1103/PhysRevX.4.011047</a></p>

<p>explains exactly your question, i.e. how the most appropriate number of groups is determined, using minimum description length. You can also read a more recent introduction to Bayesian inference of the stochastic block model, which deals with this issue at length:</p>

<p><a href="https://arxiv.org/abs/1705.10225" rel="nofollow noreferrer">https://arxiv.org/abs/1705.10225</a></p>
How does graph-tool decide the number of blocks?
<p>The <a href="https://graph-tool.skewed.de/static/doc/inference.html#graph_tool.inference.minimize_nested_blockmodel_dl" rel="nofollow noreferrer">documentation</a> of <code>minimize_blockmodel_dl</code> says </p>

<blockquote>
  <p>See <a href="https://graph-tool.skewed.de/static/doc/inference.html#id57" rel="nofollow noreferrer">peixoto-hierarchical-2014</a> for details on the algorithm.</p>
</blockquote>

<p>However, the paper explicitely states</p>

<blockquote>
  <p>However, in order to perform model selection, one first needs to find
  optimal partitions of the network for given values of B, which is the
  subproblem which we consider in detail in this work. Therefore, in the
  remainder of this paper we will assume that the value of B is a fixed
  parameter, unless otherwise stated, but the reader should be aware
  that this value itself can be determined at a later step via model
  selection, as described, e.g., in Refs. [19,26].</p>
</blockquote>

<p>Hence, how exactly do <code>minimize_blockmodel_dl</code> and variants decide <code>B</code>? Ultimatively, I'd be interested in plotting the implied likelihoods for different values of <code>B</code>, but would first see what the algorythm has built-in by default - Bayesian model selection?</p>