DiffDRR
DiffDRR copied to clipboard
Get the initialization neural network working
Nalini's advice:
- Check the training loss
- Make sure the network can learn a single example
- Use batchnorm
- Use residual connections
- Try a deeper network
- Try to predict just a few parameters (eg, just project through an axis-aligned slice)
NN works perfectly well with MSELoss. The issue is defining a loss function with the DRR module. This is because the DRR module makes the geometrics base parameters... that is, I can't pass parameters from another layer without losing the gradient
Fix will require a change to the API to input torch.tensors (will implicitly fix #30, but will break all other examples).
Or one can simply make the projection its own function for use as an intermediate layer :)
Batched DRR rendering was completely broken (#107), but fixed now!