I want to use SHAP with Anaconda. Prequisites: llvmlite is installed:
However, I get the error message in the supject, that llvmlite.dll could not be loaded:
from sklearn.model_selection import train_test_split
import xgboost
import shap
import numpy as np
import matplotlib.pylab as pl
# print the JS visualization code to the notebook
shap.initjs()
---------------------------------------------------------------------------
OSError Traceback (most recent call last)
<ipython-input-1-1cffb01788c0> in <module>
1 from sklearn.model_selection import train_test_split
2 import xgboost
----> 3 import shap
4 import numpy as np
5 import matplotlib.pylab as pl
~\Anaconda3\lib\site-packages\shap\__init__.py in <module>
10 warnings.warn("As of version 0.29.0 shap only supports Python 3 (not 2)!")
11
---> 12 from ._explanation import Explanation
13
14 # explainers
~\Anaconda3\lib\site-packages\shap\_explanation.py in <module>
8 from slicer import Slicer, Alias
9 # from ._order import Order
---> 10 from .utils._general import OpChain
11
12 # slicer confuses pylint...
~\Anaconda3\lib\site-packages\shap\utils\__init__.py in <module>
----> 1 from ._clustering import hclust_ordering, partition_tree, partition_tree_shuffle, delta_minimization_order, hclust
2 from ._general import approximate_interactions, potential_interactions, sample, safe_isinstance, assert_import, record_import_error
3 from ._general import shapley_coefficients, convert_name, format_value, ordinal_str, OpChain
4 from ._show_progress import show_progress
5 from ._masked_model import MaskedModel, make_masks
~\Anaconda3\lib\site-packages\shap\utils\_clustering.py in <module>
2 import scipy as sp
3 from scipy.spatial.distance import pdist
----> 4 from numba import jit
5 import sklearn
6 import warnings
~\Anaconda3\lib\site-packages\numba\__init__.py in <module>
12 del get_versions
13
---> 14 from numba.core import config
15 from numba.testing import _runtests as runtests
16 from numba.core import types, errors
~\Anaconda3\lib\site-packages\numba\core\config.py in <module>
14
15
---> 16 import llvmlite.binding as ll
17
18 IS_WIN32 = sys.platform.startswith('win32')
~\Anaconda3\lib\site-packages\llvmlite\binding\__init__.py in <module>
2 Things that rely on the LLVM library
3 """
----> 4 from .dylib import *
5 from .executionengine import *
6 from .initfini import *
~\Anaconda3\lib\site-packages\llvmlite\binding\dylib.py in <module>
1 from ctypes import c_void_p, c_char_p, c_bool, POINTER
2
----> 3 from llvmlite.binding import ffi
4 from llvmlite.binding.common import _encode_string
5
~\Anaconda3\lib\site-packages\llvmlite\binding\ffi.py in <module>
151 break
152 else:
--> 153 raise OSError("Could not load shared object file: {}".format(_lib_name))
154
155
OSError: Could not load shared object file: llvmlite.dll
Does anybody have an idea what the root cause may be and whatelse I could try?
THx, Marcus
I had the same llvmlite missing DLL issue on Windows 10 with Python 3.8 in jupyter notebook when trying to import numba and solved it by installing with pip instead of conda :
conda uninstall llvmlite
pip install llvmlite
If it still does not wortk try installing llvmlite from wheel by downloading your wheel on this page :
https://www.lfd.uci.edu/~gohlke/pythonlibs/#llvmlite
pip install llvmlite-0.34.0-cp38-cp38-win_amd64.whl
(replace with your wheel)