0

我想将 SHAP 与 Anaconda 一起使用。先决条件: llvmlite 已安装:

  • pip install llvmlite 要求已经满足:llvmlite 在 c:\users...\anaconda3\lib\site-packages (0.34.0)

但是,我在问题中收到错误消息,即无法加载 llvmlite.dll:


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

有谁知道根本原因可能是什么,我可以尝试什么?

THx,马库斯

4

2 回答 2

0

就我而言,以下操作有效:
conda uninstall llvmlite
然后
conda install llvmlite

于 2022-01-23T14:52:18.237 回答
0

在尝试导入 numba 并通过使用 pip 而不是 conda 安装时,我在 jupyter notebook 中使用 Python 3.8 在 Windows 10 上遇到了相同的 llvmlite 缺少 DLL 问题:

conda uninstall llvmlite
pip install llvmlite

如果它仍然不起作用,请尝试通过在此页面上下载您的轮子从轮子安装 llvmlite:
https
pip install llvmlite-0.34.0-cp38-cp38-win_amd64.whl ://www.lfd.uci.edu/~gohlke/pythonlibs/#llvmlite (替换为您的轮子)

于 2020-11-26T11:33:42.020 回答