The code in this repository was developed for the QUBIQ 2021 challenge. We extend the Probabilistic U-Net to estimate model uncertainty (in addition to data uncertainty) using the popular MC-Dropout technique. This approach is inspired from Hu et al., 2019 that uses variational dropout within the Probabilistic U-Net framework to estimate the model uncertainty.
The code for the Probabilistic U-Net has been forked from here. We have restructured the code to enable import as an external module, in addition to changes to handle multi-channel images and uncertainty estimation using MC-Dropout.
UPDATE: Supports low-rank approximation for prior and posterior covariance matrices to capture more expressive distributions. See Monteiro et al. (2020) for background on low-rank approximation of covariance matrices of multivariate Gaussian distributions.
Follow these steps to use this model in your project:
-
Clone this repository into a local folder
git clone https://github.com/kilgore92/PyTorch_ProbUNet.git
-
Install the model in your python environment
python setup.py install
-
Import the model into your script
from probabilistic_unet.model import ProbabilisticUnet
If you have any questions, please open a pull-request or issue and I will get back to you.