  Graph neural networks (GNNs) have been widely used in various graph-related
problems such as node classification and graph classification, where superior
performance is mainly established when natural node features are available.
However, it is not well understood how GNNs work without natural node features,
especially regarding the various ways to construct artificial ones. In this
paper, we point out the two types of artificial node features, i.e., positional
and structural node features, and provide insights on why each of them is more
appropriate for certain tasks, i.e., positional node classification, structural
node classification, and graph classification. Extensive experimental results
on 10 benchmark datasets validate our insights, thus leading to a practical
guideline on the choices between different artificial node features for GNNs on
non-attributed graphs. The code is available at
https://github.com/zjzijielu/gnn-positional-structural-node-features.
