安装与配置 #

系统要求 #

支持的操作系统 #

操作系统 版本要求 备注
Linux Ubuntu 16.04+, CentOS 7+ 推荐用于生产环境
macOS 10.13+ 需要安装 Xcode 命令行工具
Windows Windows 10+ 需要 Visual Studio 或 MinGW

Python 版本要求 #

Python 版本 支持状态
3.6 ✅ 支持
3.7 ✅ 支持
3.8 ✅ 支持
3.9 ✅ 支持
3.10 ✅ 支持
3.11 ✅ 支持
3.12 ✅ 支持

安装方式 #

方式一:使用 pip 安装(推荐) #

最简单的安装方式:

bash
pip install lightgbm

安装指定版本:

bash
pip install lightgbm==4.3.0

从清华镜像安装:

bash
pip install lightgbm -i https://pypi.tuna.tsinghua.edu.cn/simple

方式二:使用 conda 安装 #

bash
conda install -c conda-forge lightgbm

方式三:从源码编译 #

Linux/macOS 编译 #

bash
git clone --recursive https://github.com/microsoft/LightGBM
cd LightGBM
mkdir build
cd build
cmake ..
make -j4

安装 Python 接口:

bash
cd ../python-package
pip install .

Windows 编译 #

使用 Visual Studio:

powershell
git clone --recursive https://github.com/microsoft/LightGBM
cd LightGBM
mkdir build
cd build
cmake -A x64 ..
cmake --build . --target ALL_BUILD --config Release
cmake --install . --prefix ./install

安装 Python 接口:

powershell
cd ..\python-package
pip install .

GPU 支持安装 #

安装 GPU 版本 #

bash
pip install lightgbm --install-option=--gpu

或从源码编译 GPU 版本:

bash
cmake -DUSE_GPU=ON ..
make -j4

GPU 环境要求 #

组件 版本要求
CUDA 9.0+
cuDNN 7.0+
GPU NVIDIA GPU,计算能力 3.0+

验证 GPU 安装 #

python
import lightgbm as lgb

print(lgb.__version__)

params = {
    'device': 'gpu',
    'gpu_platform_id': 0,
    'gpu_device_id': 0
}

try:
    data = lgb.Dataset([[1, 2], [3, 4]], label=[0, 1])
    lgb.train(params, data, num_boost_round=1)
    print("GPU 支持正常")
except Exception as e:
    print(f"GPU 支持异常: {e}")

验证安装 #

检查版本 #

python
import lightgbm as lgb

print(f"LightGBM 版本: {lgb.__version__}")

运行简单测试 #

python
import lightgbm as lgb
import numpy as np
from sklearn.datasets import load_breast_cancer
from sklearn.model_selection import train_test_split

data = load_breast_cancer()
X_train, X_test, y_train, y_test = train_test_split(
    data.data, data.target, test_size=0.2, random_state=42
)

train_data = lgb.Dataset(X_train, label=y_train)
valid_data = lgb.Dataset(X_test, label=y_test, reference=train_data)

params = {
    'objective': 'binary',
    'metric': 'auc',
    'num_leaves': 31,
    'verbose': -1
}

model = lgb.train(
    params,
    train_data,
    num_boost_round=100,
    valid_sets=[valid_data],
    callbacks=[lgb.log_evaluation(10)]
)

print(f"测试通过,AUC: {model.best_score['valid_0']['auc']:.4f}")

开发环境配置 #

Jupyter Notebook 配置 #

bash
pip install jupyter
pip install lightgbm

在 Jupyter 中使用:

python
import lightgbm as lgb
import matplotlib.pyplot as plt

%matplotlib inline

model = lgb.LGBMClassifier()
model.fit(X_train, y_train)

lgb.plot_importance(model, max_num_features=10)
plt.show()

VS Code 配置 #

安装 Python 扩展:

json
{
    "python.linting.enabled": true,
    "python.linting.pylintEnabled": true,
    "python.formatting.provider": "black"
}

PyCharm 配置 #

  1. 打开 Settings → Project → Python Interpreter
  2. 点击 + 添加 lightgbm
  3. 配置代码提示和检查

常见问题 #

问题 1:找不到 lib_lightgbm.so #

错误信息

text
OSError: lib_lightgbm.so: cannot open shared object file: No such file or directory

解决方案

bash
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/LightGBM/lib

或在 Python 中:

python
import os
os.environ['LD_LIBRARY_PATH'] = '/path/to/LightGBM/lib'
import lightgbm as lgb

问题 2:Windows 下编译失败 #

解决方案

安装 Visual Studio Build Tools:

powershell
choco install visualstudio2019buildtools
choco install visualstudio2019-workload-vctools

或使用预编译版本:

bash
pip install lightgbm

问题 3:GPU 版本无法使用 #

检查步骤

python
import lightgbm as lgb

print(lgb.__version__)

params = {'device': 'gpu'}
try:
    data = lgb.Dataset([[1], [2]], label=[0, 1])
    lgb.train(params, data, num_boost_round=1)
    print("GPU 可用")
except:
    print("GPU 不可用,使用 CPU")
    params = {'device': 'cpu'}

问题 4:内存不足 #

解决方案

使用更小的 bin 数量:

python
params = {
    'max_bin': 63,
    'num_leaves': 31
}

使用数据采样:

python
params = {
    'bagging_fraction': 0.8,
    'feature_fraction': 0.8
}

问题 5:多线程警告 #

警告信息

text
[LightGBM] [Warning] Starting from version 2.2.1, num_threads (thread_count) is set to num_cores

解决方案

python
import os
os.environ['OMP_NUM_THREADS'] = '4'

params = {
    'num_threads': 4
}

环境变量配置 #

常用环境变量 #

环境变量 说明 示例
OMP_NUM_THREADS OpenMP 线程数 4
OMP_STACKSIZE 栈大小 16M
LD_LIBRARY_PATH 库路径 /path/to/lib

配置示例 #

bash
export OMP_NUM_THREADS=4
export OMP_STACKSIZE=16M
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

Docker 环境 #

使用官方镜像 #

bash
docker pull microsoft/lightgbm

自定义 Dockerfile #

dockerfile
FROM python:3.9-slim

RUN apt-get update && apt-get install -y \
    cmake \
    build-essential \
    git

RUN pip install lightgbm jupyter

WORKDIR /workspace

CMD ["jupyter", "notebook", "--ip=0.0.0.0", "--allow-root"]

构建和运行:

bash
docker build -t lightgbm-env .
docker run -p 8888:8888 lightgbm-env

虚拟环境配置 #

使用 venv #

bash
python -m venv lightgbm-env
source lightgbm-env/bin/activate
pip install lightgbm

使用 conda #

bash
conda create -n lightgbm-env python=3.9
conda activate lightgbm-env
conda install -c conda-forge lightgbm

性能优化配置 #

CPU 优化 #

python
params = {
    'num_threads': 8,
    'max_bin': 255,
    'num_leaves': 63
}

内存优化 #

python
params = {
    'max_bin': 127,
    'num_leaves': 31,
    'feature_fraction': 0.8,
    'bagging_fraction': 0.8
}

速度优化 #

python
params = {
    'num_threads': -1,
    'max_bin': 63,
    'num_leaves': 31,
    'learning_rate': 0.1
}

下一步 #

安装完成后,继续学习 第一个模型,开始你的 LightGBM 实践!

最后更新:2026-04-04