SeldonIO / alibi

Algorithms for explaining machine learning models
https://docs.seldon.io/projects/alibi/en/stable/
Other
2.4k stars 251 forks source link

ImportError when doing 'import alibi' #315

Closed FabienNugier closed 3 years ago

FabienNugier commented 3 years ago

Hi, I am very interested in using your package.

I get the following error through when I do import alibi after installing your last version (alibi-0.5.5):

`------------------------------------------------------------ ImportError Traceback (most recent call last)

in ----> 1 import alibi /opt/anaconda3/lib/python3.7/site-packages/alibi/__init__.py in ----> 1 from . import confidence, datasets, explainers, utils 2 from .version import __version__ # noqa F401 3 4 __all__ = ['confidence', 'datasets', 'explainers', 'utils'] /opt/anaconda3/lib/python3.7/site-packages/alibi/explainers/__init__.py in 6 from .anchor_tabular import AnchorTabular, DistributedAnchorTabular 7 from .anchor_text import AnchorText ----> 8 from .anchor_image import AnchorImage 9 from .cem import CEM 10 from .cfproto import CounterFactualProto /opt/anaconda3/lib/python3.7/site-packages/alibi/explainers/anchor_image.py in 12 from .anchor_base import AnchorBaseBeam 13 from .anchor_explanation import AnchorExplanation ---> 14 from skimage.segmentation import felzenszwalb, slic, quickshift 15 16 logger = logging.getLogger(__name__) /opt/anaconda3/lib/python3.7/site-packages/skimage/segmentation/__init__.py in 1 from .random_walker_segmentation import random_walker ----> 2 from .active_contour_model import active_contour 3 from ._felzenszwalb import felzenszwalb 4 from .slic_superpixels import slic 5 from ._quickshift import quickshift /opt/anaconda3/lib/python3.7/site-packages/skimage/segmentation/active_contour_model.py in 3 from scipy.interpolate import RectBivariateSpline 4 from ..util import img_as_float ----> 5 from ..filters import sobel 6 7 /opt/anaconda3/lib/python3.7/site-packages/skimage/filters/__init__.py in 10 from ._rank_order import rank_order 11 from ._gabor import gabor_kernel, gabor ---> 12 from .thresholding import (threshold_local, threshold_otsu, threshold_yen, 13 threshold_isodata, threshold_li, threshold_minimum, 14 threshold_mean, threshold_triangle, /opt/anaconda3/lib/python3.7/site-packages/skimage/filters/thresholding.py in 7 from ..exposure import histogram 8 from .._shared.utils import check_nD, warn ----> 9 from ..transform import integral_image 10 from ..util import crop, dtype_limits 11 from ..filters._multiotsu import (_get_multiotsu_thresh_indices_lut, /opt/anaconda3/lib/python3.7/site-packages/skimage/transform/__init__.py in ----> 1 from .histogram_matching import match_histograms 2 from .hough_transform import (hough_line, hough_line_peaks, 3 probabilistic_hough_line, hough_circle, 4 hough_circle_peaks, hough_ellipse) 5 from .radon_transform import (radon, iradon, iradon_sart, /opt/anaconda3/lib/python3.7/site-packages/skimage/transform/histogram_matching.py in 1 from warnings import warn 2 ----> 3 from ..exposure import match_histograms as mh 4 5 def match_histograms(image, reference, multichannel=False): ImportError: cannot import name 'match_histograms' from 'skimage.exposure' (/opt/anaconda3/lib/python3.7/site-packages/skimage/exposure/__init__.py)` ------------------------------------------------------------ Any idea how to solve it? I have installed scikit-image v 0.17.2 and the problem seems to come from it.
jklaise commented 3 years ago

@FabienNugier I can't reproduce this behaviour in a clean conda environment with Python 3.7 and scikit-image 0.17.2. Do you get the same behaviour in a clean environment?

FabienNugier commented 3 years ago

@jklaise Thank you very much for your prompt reply, and sorry, it seems that I have solved the problem starting from a clean environment (using poetry). There must have been a dependency problem on my side. I am excited to use this amazing package. Wishing Alibi's team of developers the best!