Hey ! These GNCConv are from the GraphNeuralNetworks library in Julia. Where do you get that the array is 3d in their code ? Just to make sure: you are looking at this code right ( Supervised graph classification with Deep Graph CNN — StellarGraph 1.2.1 documentation)
I’m still a beginner with ML library and ML in general so could be that I am mistaken…
I have now changed the code to
model = GNNChain(GCNConv(5 => 32,tanh),
GCNConv(32 => 32,tanh),
GCNConv(32 => 32,tanh),
GCNConv(32 => 1,tanh),
GlobalPool(mean))model_1 = Chain(Flux.Conv((30,),1=>16,relu,stride=30),
Flux.MaxPool((1,),pad=2),
Flux.Conv((5,),16=>32,relu,stride=2),
x → reshape(x, :, size(x, 4)),
Dense(32=>1,relu))
These two models are then put together with
ps = Flux.params(model,model_1)
I’m still very confused how in the python code they write
x_out = Conv1D(filters=16, kernel_size=sum(layer_sizes), strides=sum(layer_sizes))(x_out)
as the dimensions I get of the final layer of the GNNChain is of the order of the batchsize, therefore if using a standard batchsize of 32 this does fit as sum(layer_sizes)=97. I think i’m not understanding something here…