共计 1562 个字符,预计需要花费 4 分钟才能阅读完成。
文章起源 | 恒源云社区(专一人工智能 / 深度学习云 GPU 服务器训练平台,官网体验网址:https://gpushare.com/)
原文地址 | https://gpushare.com/docs/best_practices/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 |
正文完