Conversation
pzhanggit
left a comment
There was a problem hiding this comment.
See the detailed comments. I might be missing something but I do not see how geometry info is fed into the model. Could you explain?
matey/models/spatial_modules.py
Outdated
|
|
||
| def forward(self, y, x, f_y, key): | ||
| if f_y is not None: | ||
| if f_y.ndim == 3 and f_y.shape[0] == -1: |
There was a problem hiding this comment.
What does the f_y.shape[0] == -1 mean?
| return_dict = self.search_fn(data, queries, radius, self.return_norm) | ||
| return return_dict | ||
|
|
||
| def custom_neighbor_search(data: torch.Tensor, queries: torch.Tensor, radius: float, return_norm: bool=False): |
There was a problem hiding this comment.
I need to read this part a bit more to understand it. Did you check if returned neighbors make sense?
| in_channels: int, | ||
| out_channels: int, | ||
| coord_dim: int, | ||
| radius: float, | ||
| transform_type="linear", | ||
| weighting_fn: Optional[Callable]=None, | ||
| reduction: Literal['sum', 'mean']='sum', | ||
| pos_embedding_type: str='transformer', | ||
| pos_embedding_channels: int=32, | ||
| pos_embedding_max_positions: int=10000, | ||
| channel_mlp_layers: List[int]=[128,256,128], | ||
| channel_mlp_non_linearity=F.gelu, | ||
| channel_mlp: nn.Module=None, | ||
| use_torch_scatter_reduce: bool=True): |
There was a problem hiding this comment.
Do we still need all the arguments? Wondering if we should remove the arguments and functions that we do not need for simplicity.
matey/models/spatial_modules.py
Outdated
|
|
||
| # FIXME: should there be a normalization layer here | ||
|
|
||
| self.res = params["resolution"] |
There was a problem hiding this comment.
Forgot to add: so the ratio between D,H,W and params["resolution"] would be the equivalent patch size? If so, should we use patch size as input?
I'll answer as to how I understand your question. The Flow3D dataset returns a dictionary with geometry and geometry id, which is then unpacked in |
Thanks, Andrey. I understand what you did in the PR, but the part confuses me is: what do you mean by |
| radius_in: 1.8 | ||
| radius_out: 1.9 | ||
| # resolution: [48, 48, 48] | ||
| resolution: [16, 16, 16] |
There was a problem hiding this comment.
resolution and patch_size
|
|
||
| self.neighbors_dict = {} | ||
|
|
||
| def forward(self, y, x, f_y, key): |
There was a problem hiding this comment.
Is the forward function modified from the original GNOBlock or we can use the original one?

No description provided.