Closed ukaznil closed 4 years ago
Any update on hyperboloid.py please? We are very eager to use this library and test ...
The problem is with the forward
method of class HyperbolicGraphConvolution(nn.Module)
. For some reason that I'm trying to figure out, when I add the bias term, the resulting tensor of h
, is full of nan
values.
python train.py --task lp --dataset cora --model HyperGCN --lr 0.01 --dim 16 --num-layers 2 --act relu --bias 1 --dropout 0.5 --weight-decay 0.001 --manifold Hyperboloid --log-freq 5
Using the config above, I'm able to optimize the network until early stopping is triggered. Otherwise, if fails on the first epoch.
The function I'm referring to is:
def forward(self, input):
x, adj = input
h = self.linear.forward(x)
if self.bias:
h = self.bias_add.forward(h)
h = self.agg.forward(h, adj)
h = self.hyp_act.forward(h)
output = h, adj
return output
If you comment the following code:
if self.bias:
h = self.bias_add.forward(h)
works, but then you don't have bias term, what results in worse training performance.
@ines-chami
@vascobailao Hi, nice to meet you.
What you pointed out seems different from this issue, which is mentioning just about the absence of hyperboloid.py
in this repository.
I suggest that you create a new issue, how about?
I think its very related. The fact that the hyperboloid.py
file is not available is because its not working.
Thanks for your reply, I got it! Sorry for my immature comment.
I found some problems with specific operations in the transformation from the hyperbolic manifold to the tangent plane. I still have to find some time to go over the differences between the two manifolds.
We will be posting code for the hyperboloid manifold shortly. You should be able to obtain similar results on the benchmarks with the PoincareBall model.
@ines-chami can you confirm the problem is in the mobius addition and multiplication? Any news on when the code will be available?
Added.
Hi. I appreciate this wonderful repository.
When I clone this and tried to operate, I found the "hyperboloid.py" is missing in HEAD, since it has been removed at the previous commit.
Could you please add the latest hyperboloid manifold into this repo?