微软开源分布式高性能GB框架LightGBM Ubuntu、CentOS下编译安装过程

LightGBM(Light Gradient Boosting Machine)是一个基于决策树算法的快速的、分布式的、高性能 gradient boosting(GBDT、GBRT、GBM 或 MART)框架,可被用于排行、分类以及其他许多机器学习任务中。
开源项目地址: https://github.com/Microsoft/LightGBM
开源 LightGBM:三天内收获GitHub 1000+ Star,表现超越已有boosting工具。

LightGBM

LightGBM 是一个梯度 boosting 框架,使用基于学习算法的决策树。它可以说是分布式的,高效的,它有以下优势:

  • 更快的训练效率
  • 低内存使用
  • 更好的准确率
  • 支持并行学习
  • 可处理大规模数据

环境描述

VMware 虚拟机
操作系统:Ubuntu 14.04.4 LTS、CentOS 7.2.1511 (Core)
处理器:1核
内存:1 GB

编译过程

lightgbm 依赖 OpenMP 进行编译,苹果的 Clang 不支持。
请使用 GCC / G++ 代替。
参考官方给出的安装指南:

git clone --recursive https://github.com/Microsoft/LightGBM ; cd LightGBM
mkdir build ; cd build
cmake .. 
make -j 

如果你还没有安装 cmake,执行以下命令安装:

sudo apt-get install cmake

CentOS 下把 apt-get 换成 yum 就可以了。
如果你还没有安装 g++,执行以下命令安装:

sudo apt-get install g++

克隆,创建构建目录没什么好说的,但执行

camke ..

却会出错,需要执行以下命令:

cmake -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc ..

MacOS下参数后面需要指定版本号:

cmake -DCMAKE_CXX_COMPILER=g++-6 -DCMAKE_C_COMPILER=gcc-6 .. 

但是Ubuntu下不需要,CentOS 下也是如此。

执行到 96% 的时候会卡一会儿,如果不希望执行“make -j”命令时对电脑影响太大的话,执行“make -j1”,使用CPU的一核,不会占满CPU。
注意:由于实体机CPU不是一核,但虚拟机选择了一核,所以执行“make -j”时会在96% 的时候卡死,需要执行“make -j1”才可以。
构建成功后会在上层目录生成两个文件,lib_lightgbm.so lightgbm,一个库文件,一个可执行文件。

相关下载:
lib_lightgbm.so 库文件和可执行文件 lightgbm for Ubuntu
lib_lightgbm.so 库文件和可执行文件 lightgbm for CentOS
相关阅读:
微软开源分布式高性能GB框架LightGBM安装使用
微软开源分布式高性能GB框架LightGBM安装使用——Python
====================文档信息=======================
版权声明:非商用自由转载-保持署名-注明出处
署名(BY) :testcs_dn(微wx笑)
文章出处:无知人生,记录点滴
==============欢迎关注我的个人微信订阅号(微wx笑)==========

你可能感兴趣的:(ubuntu,分布式,高性能,lightgbm,GB构架)