- Notifications
You must be signed in to change notification settings - Fork 159
Open
Labels
enhancementNew feature or requestNew feature or request
Description
When I try to feed the cheb_conv with SparseTensor, I got the following errors:
x = self.model(x, sparse_adj_mat) File "/home/user/miniconda2/envs/myenvlib/python3.8/site-packages/torch/nn/modules/module.py", line 727, in _call_impl result = self.forward(*input, **kwargs) File "./net.py", line 121, in forward x = F.relu(self.conv1(x, sparse_adj_mat)) File "/home/user/miniconda2/envs/myenv/lib/python3.8/site-packages/torch/nn/modules/module.py", line 727, in _call_impl result = self.forward(*input, **kwargs) File "/home/user/miniconda2/envs/myenv/lib/python3.8/site-packages/torch_geometric/nn/conv/cheb_conv.py", line 126, in forward edge_index, norm = self.__norm__(edge_index, x.size(self.node_dim), File "/home/user/miniconda2/envs/myenv/lib/python3.8/site-packages/torch_geometric/nn/conv/cheb_conv.py", line 93, in __norm__ edge_index, edge_weight = remove_self_loops(edge_index, edge_weight) File "/home/user/miniconda2/envs/myenv/lib/python3.8/site-packages/torch_geometric/utils/loop.py", line 33, in remove_self_loops edge_index = edge_index[:, mask] File "/home/user/miniconda2/envs/myenv/lib/python3.8/site-packages/torch_sparse/tensor.py", line 464, in __getitem__ out = out.select(dim, item) File "/home/user/miniconda2/envs/myenv/lib/python3.8/site-packages/torch_sparse/select.py", line 9, in <lambda> SparseTensor.select = lambda self, dim, idx: select(self, dim, idx) File "/home/user/miniconda2/envs/myenv/lib/python3.8/site-packages/torch_sparse/select.py", line 6, in select return narrow(src, dim, start=idx, length=1) File "/home/user/miniconda2/envs/myenv/lib/python3.8/site-packages/torch_sparse/narrow.py", line 51, in narrow col = col[mask] - start RuntimeError: Subtraction, the `-` operator, with a bool tensor is not supported. If you are trying to invert a mask, use the `~` or `logical_not()` operator instead. Looks like cheb_conv does not support SparseTensor. Other GNN (e.g. sgc) works fine with my SparseTensorinput. The error is triggered when the variable start becomes a bool value though it was int in the first few iterations of remove_self_loops.
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request