  Community detection is an important problem when processing network data.
Traditionally, this is done by exploiting the connections between nodes, but
connections can be too sparse to detect communities in many real datasets. Node
covariates can be used to assist community detection; see Binkiewicz et al.
(2017); Weng and Feng (2022); Yan and Sarkar (2021); Yang et al. (2013).
However, how to combine covariates with network connections is challenging,
because covariates may be high-dimensional and inconsistent with community
labels. To study the relationship between covariates and communities, we
propose the degree corrected stochastic block model with node covariates
(DCSBM-NC). It allows degree heterogeneity among communities and inconsistent
labels between communities and covariates. Based on DCSBM-NC, we design the
adjusted neighbor-covariate (ANC) data matrix, which leverages covariate
information to assist community detection. We then propose the
covariate-assisted spectral clustering on ratios of singular vectors (CA-SCORE)
method on the ANC matrix. We prove that CA-SCORE successfully recovers
community labels when 1) the network is relatively dense; 2) the covariate
class labels match the community labels; 3) the data is a mixture of 1) and 2).
CA-SCORE has good performance on synthetic and real datasets. The algorithm is
implemented in the R(R Core Team (2021)) package CASCORE.
