Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Xgboost throws an error when trying to import

I have a project that is using xgboost. We now transfer the project to containers. But after installing it using pip, it throws the following error:

Traceback (most recent call last):
  File "restart_db.py", line 5, in <module>
    from autoai.core.providers import GlobalEnrichmentProvider
  File "/volumes/code/autoai/core/providers/__init__.py", line 1, in <module>
    from .files_providers import CsvProvider, TsvProvider, ExcelProvider, FileProvider
  File "/volumes/code/autoai/core/providers/files_providers.py", line 10, in <module>
    from .base import BaseProvider, BaseInMemoryProvider
  File "/volumes/code/autoai/core/providers/base.py", line 1, in <module>
    from autoai.models.dataset_connection import JoinTypes
  File "/volumes/code/autoai/models/__init__.py", line 5, in <module>
    from .classifier import Classifier
  File "/volumes/code/autoai/models/classifier.py", line 8, in <module>
    from eli5 import explain_prediction
  File "/volumes/dependencies/lib/python3.6/site-packages/eli5/__init__.py", line 53, in <module>
    from .xgboost import (
  File "/volumes/dependencies/lib/python3.6/site-packages/eli5/xgboost.py", line 9, in <module>
    from xgboost import (  # type: ignore
  File "/volumes/dependencies/lib/python3.6/site-packages/xgboost/__init__.py", line 11, in <module>
    from .core import DMatrix, Booster
  File "/volumes/dependencies/lib/python3.6/site-packages/xgboost/core.py", line 150, in <module>
    _LIB = _load_lib()
  File "/volumes/dependencies/lib/python3.6/site-packages/xgboost/core.py", line 141, in _load_lib
    'Error message(s): {}\n'.format(os_error_list))
xgboost.core.XGBoostError: XGBoost Library (libxgboost.so) could not be loaded.
Likely causes:
  * OpenMP runtime is not installed (vcomp140.dll or libgomp-1.dll for Windows, libgomp.so for UNIX-like OSes)
  * You are running 32-bit Python on a 64-bit OS
Error message(s): ['libgomp.so.1: cannot open shared object file: No such file or directory']

I checked that both my python and my ubuntu are 64-bit, and ran: apt-get update && apt-get install -y libaio1

To make sure that package is there (I read it somewhere that this might be the problem) - but it still throws the same error.

I've been stuck on this for a while now and will appreciate any help.

like image 939
NotSoShabby Avatar asked Nov 21 '18 08:11

NotSoShabby


People also ask

Can not import Xgboost?

The Python "ModuleNotFoundError: No module named 'xgboost'" occurs when we forget to install the xgboost module before importing it or install it in an incorrect environment. To solve the error, install the module by running the pip install xgboost command.


1 Answers

I had this issue while creating Docker image of my project.

I have used the command below:

RUN apt-get update && \

     apt-get -y --no-install-recommends install \

     libgomp1
like image 54
Muralitharan Sathyamoorthy Avatar answered Sep 18 '22 12:09

Muralitharan Sathyamoorthy