关于运维:恒源云云GPU服务器如何使用LightGBM

36次阅读

共计 1525 个字符,预计需要花费 4 分钟才能阅读完成。

文章起源 | 恒源云社区(一个专一 AI 行业的共享算力平台:恒源智享云 )

原文地址 | LightGBM


新的一年,祝大家虎年大吉,虎虎生威~🐯
明天是新年动工第一天,就简略的给大家分享一个算法框架:LightGBM

LightGBM

LightGBM 是一个基于决策树算法的疾速、分布式、高性能的框架,用于排名、分类和许多其余机器学习工作。

装置

LightGBM 反对通过 CLI、Python、R 应用。上面提供 Python 包与 CLI 的装置,编译时均退出了反对 GPU 的选项。

Python 包的编译装置:

# 装置 boost 依赖
apt-get update
apt-get install libboost-dev libboost-system-dev libboost-filesystem-dev -y

# 装置反对 GPU 的 Python 包
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"

mkdir -p /etc/OpenCL/vendors
echo "libnvidia-opencl.so.1" > /etc/OpenCL/vendors/nvidia.icd

命令行的编译装置:

# 装置 boost 依赖
apt-get update
apt-get install libboost-dev libboost-system-dev libboost-filesystem-dev -y

# 克隆 LightGBM 代码
git clone "https://mirror.ghproxy.com/https://github.com/microsoft/LightGBM.git"
cd LightGBM
# 切换版本分支
git checkout v3.2.1
# 替换一些子模块的仓库地址为减速地址,并克隆
sed -i "s/ \(https:\/\/github.com\)/ https:\/\/mirror.ghproxy.com\/\1/" .gitmodules
git submodule update --init
cd external_libs/fast_double_parser
sed -i "s/ \(https:\/\/github.com\)/ https:\/\/mirror.ghproxy.com\/\1/" .gitmodules
git submodule update --init
cd ../..

# 编译装置反对 GPU 选项的命令行
mkdir build
cd build
cmake -DUSE_GPU=1 -DOpenCL_LIBRARY=/usr/local/cuda/lib64/libOpenCL.so -DOpenCL_INCLUDE_DIR=/usr/local/cuda/include/ ..
make -j4

mkdir -p /etc/OpenCL/vendors
echo "libnvidia-opencl.so.1" > /etc/OpenCL/vendors/nvidia.icd

# 执行命令行测试
cd ..
./lightgbm

# 应用源码也能够同时装置 Python 包
cd python-package
python setup.py install --gpu --opencl-include-dir=/usr/local/cuda/include/ --opencl-library=/usr/local/cuda/lib64/libOpenCL.so --no-cache

正文完
 0