Inside the forward function, having called g.update_all, we obtain the results of graph convolution h and e, which represent the terms (Ax+∑vj​→v​η(ej​)⊙Bxj​) from (Eq.5) and ej​ from (Eq. 7) respectively. Then, we normalize h and e with respect to the graph node size and graph edge size respectively. Batch normalization is then applied so that we can train the network effectively. Finally, we apply ReLU(⋅) and add the residual connections to obtain the hidden representations for the nodes and edges, which are then returned by the forward function.
A l’intérieur de la fonction forward, ayant appelé g.update_all, nous obtenons les résultats de la convolution des graphes h et e, qui représentent les termes Ax+∑vj​→v​η(ej​)⊙Bxj​) de (Eq.5) et ej​ de (Eq. 7) respectivement. Ensuite, nous normalisons h et e par rapport à la taille du nœud et de l’arête du graphe respectivement. La batch normalisation est ensuite appliquée afin que nous puissions entraîner le réseau efficacement. Enfin, nous appliquons ReLU(⋅) et ajoutons les connexions résiduelles pour obtenir les représentations cachées des nœuds et des arêtes, qui sont ensuite renvoyées par la fonction forward.