pygcn
pygcn copied to clipboard
Using for Regression
Hi
Thank you for sharing your implementation in Pytorch. I am using a similar GCN structure for regression analysis. Therefor the last layer would be the same as others. My proposed GCN follows the below structure. model GCN( (gc1): GraphConvolution (2 -> 2) (gc2): GraphConvolution (2 -> 20) (gc3): GraphConvolution (20 -> 20) (gc4): GraphConvolution (20 -> 20) (gc5): GraphConvolution (20 -> 2) (gc6): GraphConvolution (2 -> 2) ) The inputs are locations of 2D vertices and adjacency matrix of synthetic data (for simplicity a circular shape graphs). The activation functions are tanh and the loss function is L2norm (because the problem is regression). I’ve also initialized the weights and bias parameters as following: def reset_parameters(self): stdv = 1. / math.sqrt(10/self.nhid) self.weight.data.uniform_(-stdv, stdv) if self.bias is not None: self.bias.data.fill_(0) I feed the network with some noisy data (as input graphs) and the target is a circle. It is expected to networks can regressed a circular shape but outputs have elliptic shape. I got that this network comes to hight sensitivity respect to weight initialization. Why this GCN couldn’t work to solve a regression problem? Could you please give me your advise and some feedback about this.