The analysis above highlights some of the challenges when using fingerprint methods for featurization of molecules in ML; specifically we saw bit collisions to be problematic for the ML model. Graph convolutional networks (GCNs) represent a means of letting the ML model learn a feature vector as an alternative to fingerprint methods. The input to the GCN (from which the feature vector can be learned) is a graph consisting of a set of node-features representing each atoms, as well as a set of edges (which atoms are bound) represented by an atom connectivity (AC) matrix with 1 on off-diagonal elements between bound atoms and 0 otherwise. The edges, which represent bonds, may also be featurized but is not considered here. The learning is typically done in an end-to-end fashion, where a neural network (NN) that ends in a prediction (here the Crippen logP) follows the GCN resulting in a graph convolutional neural network (GCNN) taking a graph as input and returning a prediction. We employ a simple GCNN using the GraphConv layer as implemented in PyTorch Geometric and use atomic feature vectors following Dablander . Details of the GCNN can be found in section S2.