【问题标题】:Getting this simple problem while importing Xgboost on Jupyter notebook在 Jupyter 笔记本上导入 Xgboost 时遇到这个简单的问题
【发布时间】:2020-09-10 06:54:08
【问题描述】:

在我导入 Xgboost 之前,Jupyter 笔记本中的一切都运行良好。一旦我导入它,我就会遇到以下问题。我有 Python 3.8 并且已经通过终端 pip3 方法安装了它,接下来我该怎么办?

---------------------------------------------------------------------------
XGBoostError                              Traceback (most recent call last)
<ipython-input-17-a81e4513ce38> in <module>
      1 # Let's Learn about the stock market using XGBOOST
      2 
----> 3 import xgboost as xgb

/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/xgboost/__init__.py in <module>
      9 import warnings
     10 
---> 11 from .core import DMatrix, DeviceQuantileDMatrix, Booster
     12 from .training import train, cv
     13 from . import rabit  # noqa

/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/xgboost/core.py in <module>
    173 
    174 # load the XGBoost library globally
--> 175 _LIB = _load_lib()
    176 
    177 

/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/xgboost/core.py in _load_lib()
    156     if not lib_success:
    157         libname = os.path.basename(lib_paths[0])
--> 158         raise XGBoostError(
    159             'XGBoost Library ({}) could not be loaded.\n'.format(libname) +
    160             'Likely causes:\n' +

XGBoostError: XGBoost Library (libxgboost.dylib) could not be loaded.
Likely causes:
  * OpenMP runtime is not installed (vcomp140.dll or libgomp-1.dll for Windows, 
       libomp.dylib for Mac OSX, libgomp.so for Linux and other UNIX-like OSes). 
       Mac OSX users: Run `brew install libomp` to install OpenMP runtime.
  * You are running 32-bit Python on a 64-bit OS
Error message(s): ['dlopen(/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/xgboost/lib/libxgboost.dylib, 6): Library not loaded: /usr/local/opt/libomp/lib/libomp.dylib\n  Referenced from: /Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/xgboost/lib/libxgboost.dylib\n  Reason: image not found']

【问题讨论】:

  • 解决了我为 Mac OSX 安装了 libomp.dylib
  • 知道如何在 linux 上执行此操作吗?

标签: python jupyter-notebook jupyter xgboost


【解决方案1】:

我通过为 Mac OSX 安装 libomp.dylib 解决了这个问题。答案一直都在。

您可以通过运行以下命令来完成:

brew install libomp

【讨论】:

  • 这也为我修好了。
  • 同意,具体来说我做了brew install libomp
【解决方案2】:

对于 Mac OSX,只需运行“brew install libomp”

【讨论】:

    【解决方案3】:

    如果你使用anaconda,你可以使用:

    conda install py-xgboost
    

    【讨论】:

    • 这在 M1 Mac 上对我有用!即使在brew install libomp 之后也没有成功
    【解决方案4】:

    您必须先在您的 MAC 上安装 brew:https://brew.sh/(安装 Brew 可能需要一些时间) 然后在终端中运行以下命令:brew install libomp

     

    【讨论】:

      【解决方案5】:

      原因是XGBoost正在寻找以下位置处的动态库,这不是它可能安装到的位置。

      Reason: tried: '/libomp.dylib' (no such file), '/usr/local/opt/libomp/lib/libomp.dylib' (no such file), '/libomp.dylib' (no such file), '/Users/michaeltu/third-party/lib/libomp.dylib' (no such file)"]
      

      首先,brew install libomp如果你还没有这样做。

      之后,检查Brew安装了库。

      $ brew info libomp
      libomp: stable 12.0.0 (bottled)
      LLVM's OpenMP runtime library
      https://openmp.llvm.org/
      /opt/brew/Cellar/libomp/12.0.0 (9 files, 1.5MB) *
      

      我们看到它安装在这里:

      $ ls /opt/brew/Cellar/libomp/12.0.0/lib/
      libomp.a    libomp.dylib
      

      制作一个simlink(基于您安装的libomp的版本):

      $ mkdir -p /usr/local/opt/libomp/
      $ ln -s /opt/brew/Cellar/libomp/12.0.0/lib /usr/local/opt/libomp/lib
      

      尝试再次导入它。这能够解决我的问题。

      【讨论】:

        【解决方案6】:

        如果您使用 anaconda,以下命令对我有用

        conda install -c conda-forge xgboost
        

        【讨论】:

          【解决方案7】:

          如果brew install libomp 不起作用,libomp 可能会安装到其他位置。

          xgboost 需要libomp.dylibusr/local/opt/libomp/lib/libomp.dylib 下,但brew 可以安装在/opt/brew/Cellar/libomp/11.0.1/lib/libomp.dylib 下。您可以将您的复制到 xgboost 所需的路径。

          【讨论】:

            【解决方案8】:

            如果你有 Python 3.7 或更高版本,你可以如下解决它:

            !brew install libomp
            

            【讨论】:

              猜你喜欢
              • 2020-09-05
              • 2017-12-04
              • 2020-08-12
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2023-01-15
              • 2020-11-20
              相关资源
              最近更新 更多