Skip to main content

LightGBM Python Package

Project description

License Python Versions PyPI Version

Installation

Preparation

32-bit Python is not supported. Please install 64-bit version.

setuptools is needed.

Install from PyPI Using pip

For Windows users, VC runtime is needed if Visual Studio (2015 or newer) is not installed.

For Linux users, glibc >= 2.14 is required.

For macOS users:

  • Starting from version 2.2.1, the library file in distribution wheels is built by the Apple Clang (Xcode_8.3.3) compiler. This means that you don’t need to install the gcc compiler anymore. Instead of that you need to install the OpenMP library, which is required for running LightGBM on the system with the Apple Clang compiler. You can install the OpenMP library by the following command: brew install libomp.

  • For version smaller than 2.2.1 and not smaller than 2.1.2, gcc-8 with OpenMP support must be installed first. Refer to Installation Guide for installation of gcc-8 with OpenMP support.

  • For version smaller than 2.1.2, gcc-7 with OpenMP is required.

Install wheel via pip install wheel first. After that download the wheel file and install from it:

pip install lightgbm

Build from Sources

pip install --no-binary :all: lightgbm

For Linux and macOS users, installation from sources requires installed CMake.

For macOS users, you can perform installation either with Apple Clang or gcc.

  • In case you prefer Apple Clang, you should install OpenMP (details for installation can be found in Installation Guide) first and CMake version 3.12 or higher is required.

    In some cases OpenMP cannot be found which causes installation failures. So, if you encounter errors during the installation process, try to pass paths to CMake via pip options, like

    pip install lightgbm --install-option="--openmp-include-dir=/usr/local/opt/libomp/include/" --install-option="--openmp-library=/usr/local/opt/libomp/lib/libomp.dylib"
  • In case you prefer gcc, you need to install it (details for installation can be found in Installation Guide) and specify compilers by running export CXX=g++-7 CC=gcc-7 (replace “7” with version of gcc installed on your machine) first.

For Windows users, Visual Studio (or VS Build Tools) is needed. If you get any errors during installation, you may need to install CMake (version 3.8 or higher).

Build Threadless Version
pip install lightgbm --install-option=--nomp

All remarks, except the OpenMP requirement for macOS users, from Build from Sources section are actual in this case.

It is strongly not recommended to use this version of LightGBM!

Build MPI Version
pip install lightgbm --install-option=--mpi

All remarks from Build from Sources section are actual in this case.

For Windows users, compilation with MinGW-w64 is not supported and CMake (version 3.8 or higher) is strongly required.

MPI libraries are needed: details for installation can be found in Installation Guide.

Build GPU Version
pip install lightgbm --install-option=--gpu

All remarks from Build from Sources section are actual in this case.

For Windows users, CMake (version 3.8 or higher) is strongly required.

Boost and OpenCL are needed: details for installation can be found in Installation Guide. You need to add OpenCL_INCLUDE_DIR to the environmental variable ‘PATH’ and export BOOST_ROOT before installation. Alternatively, you may pass options to CMake via pip options, like

pip install lightgbm --install-option=--gpu --install-option="--opencl-include-dir=/usr/local/cuda/include/" --install-option="--opencl-library=/usr/local/cuda/lib64/libOpenCL.so"

All available options:

  • boost-root

  • boost-dir

  • boost-include-dir

  • boost-librarydir

  • opencl-include-dir

  • opencl-library

For more details see FindBoost and FindOpenCL.

Build HDFS Version
pip install lightgbm --install-option=--hdfs

Note that the installation process of HDFS version is untested.

Build with MinGW-w64 on Windows
pip install lightgbm --install-option=--mingw

CMake and MinGW-w64 should be installed first.

It is recommended to use Visual Studio for its better multithreading efficiency in Windows for many-core systems (see FAQ Question 4 and Question 8).

Install from GitHub

All remarks from Build from Sources section are actual in this case.

For macOS users who compile with Apple Clang, to pass OpenMP paths to CMake use the following syntax: python setup.py install --openmp-include-dir=/usr/local/opt/libomp/include/ --openmp-library=/usr/local/opt/libomp/lib/libomp.dylib.

For Windows users, if you get any errors during installation and there is the warning WARNING:LightGBM:Compilation with MSBuild from existing solution file failed. in the log, you should install CMake (version 3.8 or higher).

git clone --recursive https://github.com/Microsoft/LightGBM.git
cd LightGBM/python-package
# export CXX=g++-7 CC=gcc-7  # macOS users, if you decided to compile with gcc, don't forget to specify compilers (replace "7" with version of gcc installed on your machine)
python setup.py install

Note: sudo (or administrator rights in Windows) may be needed to perform the command.

Run python setup.py install --nomp to disable OpenMP support. All remarks from Build Threadless Version section are actual in this case.

Run python setup.py install --mpi to enable MPI support. All remarks from Build MPI Version section are actual in this case.

Run python setup.py install --mingw, if you want to use MinGW-w64 on Windows instead of Visual Studio. All remarks from Build with MinGW-w64 on Windows section are actual in this case.

Run python setup.py install --gpu to enable GPU support. All remarks from Build GPU Version section are actual in this case. To pass additional options to CMake use the following syntax: python setup.py install --gpu --opencl-include-dir=/usr/local/cuda/include/, see Build GPU Version section for the complete list of them.

Run python setup.py install --hdfs to enable HDFS support. All remarks from Build HDFS Version section are actual in this case.

If you get any errors during installation or due to any other reasons, you may want to build dynamic library from sources by any method you prefer (see Installation Guide) and then just run python setup.py install --precompile.

Troubleshooting

In case you are facing any errors during the installation process, you can examine $HOME/LightGBM_compilation.log file, in which all operations are logged, to get more details about occurred problem. Also, please attach this file to the issue on GitHub to help faster indicate the cause of the error.

Refer to FAQ.

Examples

Refer to the walk through examples in Python guide folder.

Development Guide

The code style of Python-package follows PEP 8. If you would like to make a contribution and not familiar with PEP 8, please check the PEP 8 style guide first. Otherwise, the check won’t pass. You should be careful about:

  • E1 Indentation (check PEP 8 link above)

  • E202 whitespace before and after brackets

  • E225 missing whitespace around operator

  • E226 missing whitespace around arithmetic operator

  • E261 at least two spaces before inline comment

  • E301 expected 1 blank line in front of and at the end of a method

  • E302 expected 2 blank lines in front of and at the end of a function or a class

E501 (line too long) and W503 (line break occurred before a binary operator) can be ignored.

Documentation strings (docstrings) are written in the NumPy style.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lightgbm-2.2.3.tar.gz (650.0 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

lightgbm-2.2.3-py2.py3-none-win_amd64.whl (515.9 kB view details)

Uploaded Python 2Python 3Windows x86-64

lightgbm-2.2.3-py2.py3-none-manylinux1_x86_64.whl (1.2 MB view details)

Uploaded Python 2Python 3

lightgbm-2.2.3-py2.py3-none-macosx_10_8_x86_64.macosx_10_9_x86_64.macosx_10_10_x86_64.macosx_10_11_x86_64.macosx_10_12_x86_64.macosx_10_13_x86_64.macosx_10_14_x86_64.whl (640.9 kB view details)

Uploaded Python 2Python 3macOS 10.10+ x86-64macOS 10.11+ x86-64macOS 10.12+ x86-64macOS 10.13+ x86-64macOS 10.14+ x86-64macOS 10.8+ x86-64macOS 10.9+ x86-64

File details

Details for the file lightgbm-2.2.3.tar.gz.

File metadata

  • Download URL: lightgbm-2.2.3.tar.gz
  • Upload date:
  • Size: 650.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.18.4 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.5

File hashes

Hashes for lightgbm-2.2.3.tar.gz
Algorithm Hash digest
SHA256 40354d21da6bfa73c7ada4d01b2e0b22eaae00f93e90bdaf3fc423020c273890
MD5 b9c95a074783ce2d25457c252465b33d
BLAKE2b-256 c9ce3aff55e25e282383c19c5a5fb7387fd400e64b1a1036671aefa63ceeaaf4

See more details on using hashes here.

File details

Details for the file lightgbm-2.2.3-py2.py3-none-win_amd64.whl.

File metadata

  • Download URL: lightgbm-2.2.3-py2.py3-none-win_amd64.whl
  • Upload date:
  • Size: 515.9 kB
  • Tags: Python 2, Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.18.4 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.5

File hashes

Hashes for lightgbm-2.2.3-py2.py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 fe4701e65b1151824375d23108d4098266edfe6c556f596f84577b3763dce977
MD5 b116e35de447d6b7614d32b2b47cfe70
BLAKE2b-256 0037a392e669a83fef72b916009c438a924d2a9d70bc8aea62662b207105ed98

See more details on using hashes here.

File details

Details for the file lightgbm-2.2.3-py2.py3-none-manylinux1_x86_64.whl.

File metadata

  • Download URL: lightgbm-2.2.3-py2.py3-none-manylinux1_x86_64.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.18.4 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.5

File hashes

Hashes for lightgbm-2.2.3-py2.py3-none-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 0dc1729b6974eaad3ded060ca3b508f400bf4976550a7d4a3d4091a3cbe3bf5f
MD5 dbfecfafc54281356cb50b3250e2adf8
BLAKE2b-256 770f5157e6b153b3d4a70dc5fbe2ab6f209604197590f387f03177b7a249ac60

See more details on using hashes here.

File details

Details for the file lightgbm-2.2.3-py2.py3-none-macosx_10_8_x86_64.macosx_10_9_x86_64.macosx_10_10_x86_64.macosx_10_11_x86_64.macosx_10_12_x86_64.macosx_10_13_x86_64.macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for lightgbm-2.2.3-py2.py3-none-macosx_10_8_x86_64.macosx_10_9_x86_64.macosx_10_10_x86_64.macosx_10_11_x86_64.macosx_10_12_x86_64.macosx_10_13_x86_64.macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 1106082265671d87b183a29aee2e849b5f0ad81474c889d38d1250cf6ef19583
MD5 150ac479b53eac286073576da587cc8b
BLAKE2b-256 9cb37b6aec53a8cd0a1378279d9f06e647298f0c66299bce0e4b2b919f6557f7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page