  Local graph clustering methods aim to detect small clusters in very large
graphs without the need to process the whole graph. They are fundamental and
scalable tools for a wide range of tasks such as local community detection,
node ranking and node embedding. While prior work on local graph clustering
mainly focuses on graphs without node attributes, modern real-world graph
datasets typically come with node attributes that provide valuable additional
information. We present a simple local graph clustering algorithm for graphs
with node attributes, based on the idea of diffusing mass locally in the graph
while accounting for both structural and attribute proximities. Using
high-dimensional concentration results, we provide statistical guarantees on
the performance of the algorithm for the recovery of a target cluster with a
single seed node. We give conditions under which a target cluster generated
from a fairly general contextual random graph model, which includes both the
stochastic block model and the planted cluster model as special cases, can be
fully recovered with bounded false positives. Empirically, we validate all
theoretical claims using synthetic data, and we show that incorporating node
attributes leads to superior local clustering performances using real-world
graph datasets.
