The net:cal calibration framework is a Python 3 library for measuring and mitigating miscalibration of uncertainty estimates, e.g., by a neural network.
In 1.2.1 importing netcal.scaling results in the following error:
Traceback (most recent call last):
File "/path_to_script/ecal.py", line 3, in <module>
from netcal.scaling import TemperatureScaling, LogisticCalibration
File "/path_to_miniconda/lib/python3.8/site-packages/netcal/scaling/__init__.py", line 28, in <module>
from .AbstractLogisticRegression import AbstractLogisticRegression
File "/path_to_miniconda/lib/python3.8/site-packages/netcal/scaling/AbstractLogisticRegression.py", line 26, in <module>
import pyro
File "/path_to_miniconda/lib/python3.8/site-packages/pyro/__init__.py", line 4, in <module>
import pyro.poutine as poutine
File "/path_to_miniconda/lib/python3.8/site-packages/pyro/poutine/__init__.py", line 4, in <module>
from .handlers import (
File "/path_to_miniconda/lib/python3.8/site-packages/pyro/poutine/handlers.py", line 60, in <module>
from .collapse_messenger import CollapseMessenger
File "/path_to_miniconda/lib/python3.8/site-packages/pyro/poutine/collapse_messenger.py", line 7, in <module>
from pyro.distributions.distribution import COERCIONS
File "/path_to_miniconda/lib/python3.8/site-packages/pyro/distributions/__init__.py", line 4, in <module>
import pyro.distributions.torch_patch # noqa F403
File "/path_to_miniconda/lib/python3.8/site-packages/pyro/distributions/torch_patch.py", line 87, in <module>
@patch_dependency("torch.distributions.constraints._CorrCholesky.check")
File "/path_to_miniconda/lib/python3.8/site-packages/pyro/distributions/torch_patch.py", line 18, in patch_dependency
module = getattr(module, part)
AttributeError: module 'torch.distributions.constraints' has no attribute '_CorrCholesky'
This is with pytorch 1.7.1, python 3.8, pyro-ppl 1.7.0. Reproduction is as simple as import netcal.scaling.
Reinstalling pyro (pip install pyro-ppl --upgrade) seems to have fixed the issue. For future reference, the error described above happened after upgrade from 1.2.0 to 1.2.1.
In 1.2.1 importing
netcal.scaling
results in the following error:This is with pytorch 1.7.1, python 3.8, pyro-ppl 1.7.0. Reproduction is as simple as
import netcal.scaling
.