First, I'd like to thank you for your excellent work on spconv. I am currently conducting a sanity check for sparse tensors with a density of 1.0, where I expect the outputs of sparse and dense convolutions to be identical. However, I'm observing significant discrepancies between the two.
Two Conv share the same outputs: False
Max relative error: 2254.46240234375
Two Conv share the same gradients: False
Max gradient relative error: 1.746766448020935
Issue
As illustrated, the results and gradients from the sparse convolution significantly differ from those of the dense convolution when the density is set to 1.0. However, the conversions should theoretically yield identical results.
Could you please help identify any potential issues or suggest any modifications to ensure the outputs align more closely? Thank you for your assistance!
Hi @traveller59,
First, I'd like to thank you for your excellent work on spconv. I am currently conducting a sanity check for sparse tensors with a density of 1.0, where I expect the outputs of sparse and dense convolutions to be identical. However, I'm observing significant discrepancies between the two.
Environment Details
Reproducible Example
Here's the code snippet I'm using for the test:
Observed Results
Issue
As illustrated, the results and gradients from the sparse convolution significantly differ from those of the dense convolution when the density is set to 1.0. However, the conversions should theoretically yield identical results. Could you please help identify any potential issues or suggest any modifications to ensure the outputs align more closely? Thank you for your assistance!