最简便的lightGBM GPU支持的安装、验证方法

本文介绍如何在Ubuntu 16.04上安装并配置LightGBM GPU版本,包括必要的软件依赖和Python库。通过对比GPU与CPU版本训练时间,验证GPU加速效果。

以下基于ubuntu 16.04 python 3.6.5安装测试成功

1、安装软件依赖

sudo apt-get install --no-install-recommends git cmake build-essential libboost-dev libboost-system-dev libboost-filesystem-dev

2、安装python库

pip install setuptools wheel numpy scipy scikit-learn -U

3、安装lightGBM-GPU

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

4、测试

先下载测试文件并且进行文件转化

git clone https://github.com/guolinke/boosting_tree_benchmarks.git
cd boosting_tree_benchmarks/data
wget "https://archive.ics.uci.edu/ml/machine-learning-databases/00280/HIGGS.csv.gz"
gunzip HIGGS.csv.gz
python higgs2libsvm.py

编写测试脚本

import lightgbm as lgb
import time


params = {'max_bin': 63,
'num_leaves': 255,
'learning_rate': 0.1,
'tree_learner': 'serial',
'task': 'train',
'is_training_metric': 'false',
'min_data_in_leaf': 1,
'min_sum_hessian_in_leaf': 100,
'ndcg_eval_at': [1,3,5,10],
'sparse_threshold': 1.0,
'device': 'gpu',
'gpu_platform_id': 0,
'gpu_device_id': 0}


dtrain = lgb.Dataset('data/higgs.train')
t0 = time.time()
gbm = lgb.train(params, train_set=dtrain, num_boost_round=10,
          valid_sets=None, valid_names=None,
          fobj=None, feval=None, init_model=None,
          feature_name='auto', categorical_feature='auto',
          early_stopping_rounds=None, evals_result=None,
          verbose_eval=True,
          keep_training_booster=False, callbacks=None)
t1 = time.time()

print('gpu version elapse time: {}'.format(t1-t0))


params = {'max_bin': 63,
'num_leaves': 255,
'learning_rate': 0.1,
'tree_learner': 'serial',
'task': 'train',
'is_training_metric': 'false',
'min_data_in_leaf': 1,
'min_sum_hessian_in_leaf': 100,
'ndcg_eval_at': [1,3,5,10],
'sparse_threshold': 1.0,
'device': 'cpu'
}

t0 = time.time()
gbm = lgb.train(params, train_set=dtrain, num_boost_round=10,
          valid_sets=None, valid_names=None,
          fobj=None, feval=None, init_model=None,
          feature_name='auto', categorical_feature='auto',
          early_stopping_rounds=None, evals_result=None,
          verbose_eval=True,
          keep_training_booster=False, callbacks=None)
t1 = time.time()

print('cpu version elapse time: {}'.format(t1-t0))

测试结果如下,可见gpu版确实比cpu快

























<think>好的,我需要帮助用户找到关于LightGBM使用GPU加速的安装步骤。用户之前提到参考了多个引用,其中引用[3]和引用[5]提到了安装相关的步骤,特别是引用[3]提供了具体的命令行操作。首先,我需要确认用户的操作系统,但用户之前的问题提到引用[2]是关于Windows 10的安装指南,而引用[3]似乎是基于Linux的命令。所以可能需要区分不同系统的安装方法。 首先,对于Linux系统,按照引用[3],安装依赖如libboost-dev,然后通过pip安装并指定GPU选项,可能需要CUDA的环境。同时要配置OpenCL的库。对于Windows用户,可能需要预编译的GPU版本,如引用[2]提到的Windows 10预编译包,或者从源码编译。引用[5]中的项目地址可能提供更多官方指导。此外,用户需要确认是否已经安装了正确版本的CUDA和NVIDIA驱动,因为GPU加速通常依赖这些。 另外,引用[1]提到在LightGBM参数中设置device='gpu',但安装GPU版本是前提。可能需要提醒用户安装时确保选择了支持GPU的版本,比如通过pip安装时指定--install-option,或者使用预编译的二进制文件。对于Windows用户,可能更推荐使用预编译的包以避免复杂的编译过程。 还需要注意安装后的验证步骤,比如在Python中导入lightgbm并检查是否支持GPU。可能还需要设置环境变量或配置文件,如引用[3]中的OpenCL配置。如果用户遇到问题,可能需要检查CUDA路径是否正确,或者是否有权限问题。 后,整理步骤时应该分点说明,区分Linux和Windows的不同方法,并强调依赖项和验证过程。确保用户能一步步跟随,避免遗漏关键步骤如安装CUDA或设置参数。</think>### LightGBM GPU加速安装指南 #### 一、安装前的准备工作 1. **系统环境要求** - **CUDA工具包**:需安装CUDA 10.0及以上版本(推荐CUDA 11.x),并配置`CUDA_PATH`环境变量[^3][^5]。 - **NVIDIA驱动**:确保驱动支持CUDA版本。 - **Boost库**(Linux):安装`libboost-dev`等依赖项[^3]。 2. **操作系统区分** - **Linux/Unix系统**:需通过源码编译或`pip`安装GPU版本。 - **Windows系统**:推荐使用预编译的GPU版本(需从官方渠道获取)[^2][^5]。 --- #### 二、安装步骤(Linux/Unix示例) 1. **安装依赖项** ```bash sudo apt-get update sudo apt-get install -y libboost-dev libboost-system-dev libboost-filesystem-dev ``` 2. **通过`pip`安装GPU版本** ```bash 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" ``` 3. **配置OpenCL驱动** ```bash sudo mkdir -p /etc/OpenCL/vendors echo "libnvidia-opencl.so.1" | sudo tee /etc/OpenCL/vendors/nvidia.icd ``` --- #### 三、Windows系统安装(预编译版本) 1. **下载GPU支持包** - 从LightGBM官方GitHub的Release页面下载`lightgbm_gpu.dll`和`lib_lightgbm.dll`[^5]。 2. **替换默认库文件** - 将GPU版本动态库文件覆盖到Python包的`lightgbm`目录中(路径如:`PythonXX/site-packages/lightgbm`)。 --- #### 四、验证GPU支持 1. **Python代码验证** ```python import lightgbm as lgb print(lgb.compat.CUDA_COMPILE_CC) # 输出CUDA计算能力版本 ``` 2. **参数配置测试** ```python params = { 'device': 'gpu', 'gpu_platform_id': 0, # 指定GPU设备 'gpu_device_id': 0 } ``` --- #### 五、常见问题解决 1. **CUDA路径错误** - 检查`/usr/local/cuda/include/`和`/usr/local/cuda/lib64/`是否存在[^3]。 2. **OpenCL库缺失** - 确保已安装NVIDIA OpenCL驱动,并验证`libOpenCL.so`文件路径。 3. **预编译版本不兼容** - 若报错`CUDA runtime version mismatch`,需重新编译LightGBM源码以匹配CUDA版本[^5]。 ---
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值