  Community detection is a fundamental problem in network analysis, with
applications in many diverse areas. The stochastic block model is a common tool
for model-based community detection, and asymptotic tools for checking
consistency of community detection under the block model have been recently
developed. However, the block model is limited by its assumption that all nodes
within a community are stochastically equivalent, and provides a poor fit to
networks with hubs or highly varying node degrees within communities, which are
common in practice. The degree-corrected stochastic block model was proposed to
address this shortcoming and allows variation in node degrees within a
community while preserving the overall block community structure. In this paper
we establish general theory for checking consistency of community detection
under the degree-corrected stochastic block model and compare several community
detection criteria under both the standard and the degree-corrected models. We
show which criteria are consistent under which models and constraints, as well
as compare their relative performance in practice. We find that methods based
on the degree-corrected block model, which includes the standard block model as
a special case, are consistent under a wider class of models and that
modularity-type methods require parameter constraints for consistency, whereas
likelihood-based methods do not. On the other hand, in practice, the degree
correction involves estimating many more parameters, and empirically we find it
is only worth doing if the node degrees within communities are indeed highly
variable. We illustrate the methods on simulated networks and on a network of
political blogs.
