技术标签: LightGBM
该页面是 LightGBM CLI 版本的构建指南。
要构建 Python 和 R 的软件包,请分别阅读 Python-package 和 R-package 文件夹。
LightGBM 可以使用 Visual Studio,MSBuild 与 CMake 或 MinGW 来在 Windows 上构建。
使用 GUI
安装 Visual Studio (2015 或更新版本)。
下载 zip archive 并且 unzip (解压)它。
定位到 LightGBM-master/windows
文件夹。
使用 Visual Studio 打开 LightGBM.sln
文件,选择 Release
配置并且点击 BUILD
-> Build Solution
(Ctrl+Shift+B)。
如果出现有关 Platfotm Toolset 的错误,定位到 PROJECT
-> Properties
-> Configuration Properties
-> Gneral
然后选择 toolset 安装到你的机器。
该 exe 文件可以在 LightGBM-master/windows/x64/Release
文件夹中找到。
→ git clone --recursive https://github.com/Microsoft/LightGBM
→ cd LightGBM
→ mkdir build
→ cd build
→ cmake -DCMAKE_GENERATOR_PALTFORM=x64 ..
→ cmake --build . --target ALL_BUILD --config Release
这些 exe 和 dll 文件可以在 LightGBM/Release
文件夹中找到。
→ git clone --recursive https://github.com/Microsoft/LightGBM
→ cd LightGBM
→ mkdir build
→ cd build
→ cmake -G "MinGW Makefiles" ..
→ mingw32-make.exe -j4
这些 exe 和 dll 文件可以在 LightGBM/
文件夹中找到。
注意: 也许你需要再一次运行
cmake -G "MinGW Makefiles" ..
命令,如果遇到sh.exe was found in your PATH
错误的话。
也许你还想要参阅 gcc 建议。
LightGBM 使用 CMake 来构建,运行以下命令:
→ git clone --recursive https://github.com/Microsoft/LightGBM
→ cd LightGBM
→ mkdir build
→ cd build
→ cmake ..
→ make -j4
注意:
glibc >= 2.14
是必须的。
LightGBM 依赖于 OpenMP 进行编译,然而 Apple Clang 不支持它。
请使用以下命令来安装 gcc/g++:
→ brew install cmake
→ brew install gcc --without-multilib
然后安装 LightGBM:
→ git clone --recursive https://github.com/Microsoft/LightGBM
→ cd LightGBM
→ mkdir build
→ cd build
→ cmake ..
→ make -j4
LightGBM 默认的构建版本是基于 socket 的。LightGBM 也支持 MPI。MPI 是一种与 RDMA 支持的高性能通信方法。
如果您需要运行具有高性能通信的并行学习应用程序,则可以构建带有 MPI 支持的 LightGBM。
使用 GUI
msmpisdk.msi
和 MSMpiSetup.exe
。LightGBM-master/windows
文件夹。LigthGBM.sln
文件,选择 Release_mpi
配置 BUILD
-> Build Solution
(Ctrl+Shift+B)。如果遇到有关 Platform Toolset 的错误,定位到 PROJECT
-> Properties
-> Configuration Properties
-> Gneral
然后选择 toolset 安装到你的机器。
该 exe 文件可以在 LightGBM-master/windows/x64/Release
文件夹中找到。
使用命令行
需要先安装 MS MPI。需要 msmpisdk.msi
和 MSMpiSetup.exe
。
安装 Git for Windows,CMake (3.8 或更新版本) 以及 MSBuild (MSBuild 是非必要的,如果已安装 Visual Studio(2015 或更新版本) 的话 )。
运行一下命令:
→ git clone --recursive https://github.com/Microsoft/LightGBM
→ cd LightGBM
→ mkdir build
→ cd build
→ cmake -DCMAKE_GENERATOR_PALTFORM=x64 ..
→ cmake --build . --target ALL_BUILD --config Release
这些 exe 和 dll 文件可以在 LightGBM/Release
文件夹中找到。
注意: Build MPI Version 通过 MinGW 来构建 MPI 版本是不支持,由于它里面缺失了 MPI 库。
需要先安装 Open MPI。
然后运行以下命令:
→ git clone --recursive https://github.com/Microsoft/LightGBM
→ cd LightGBM
→ mkdir build
→ cd build
→ cmake -DUSE_MPI=ON ..
→ make -j4
注意:
glibc >= 2.14
是必要的。
先安装 gcc 和 Open MPI:
→ brew install openmpi
→ brew install cmake
→ brew install gcc --without-multilib
然后运行以下命令:
→ git clone --recursive https://github.com/Microsoft/LightGBM
→ cd LightGBM
→ export CXX=g++7 CC=gcc-7
→ mkdir build
→ cd build
→ cmake -DUSE_MPI=ON ..
→ make -j4
在编译前应该先安装以下依赖:
OpenCL 1.2 headers and libraries, 它们通常由 GPU 制造商提供.
The generic OpenCL ICD packages (for example, Debian package cl-icd-libopencl1
and cl-icd-opencl-dev
) can also be used.
libboost 1.56 或更新版本 (1.61 或最新推荐的版本)。
We use Boost.Compute as the interface to GPU, which is part of the Boost library since version 1.61. However, since we include the source code of Boost.Compute as a submodule, we only require the host has Boost 1.56 or later installed. We also use Boost.Align for memory allocation. Boost.Compute requires Boost.System and Boost.Filesystem to store offline kernel cache.
The following Debian packages should provide necessary Boost libraries: libboost-dev
, libboost-system-dev
, libboost-filesystem-dev
.
CMake 3.2 或更新版本。
要构建 LightGBM GPU 版本, 运行以下命令:
→ git clone --recursive https://github.com/Microsoft/LightGBM
→ cd LightGBM
→ mkdir build
→ cd build
→ cmake -DUSE_GPU=1 ..
# if you have installed the NVIDIA OpenGL, please using following instead
# sudo cmake -DUSE_GPU=1 -DOpenCL_LIBRARY=/usr/local/cuda/lib64/libOpenCL.so -OpenCL_INCLUDE_DIR=/usr/local/cuda/include/ ..
→ make -j4
如果使用 MinGW, 该构建过程类似于 Linux 上的构建. 相关的更多细节请参阅 GPU Windows 平台上的编译 。
以下构建过程适用于 MSVC (Microsoft Visual C++) 构建。
安装 Git for Windows, CMake (3.8 or higher) 和 MSBuild (MSBuild 是非必要的, 如果已安装 Visual Studio (2015 或更新版本))。
针对 Windows 平台安装 OpenCL . 安装取决于你的 GPU 显卡品牌 (NVIDIA, AMD, Intel)。
安装 Boost Binary。
注意: 要匹配你的 Visual C++ 版本:
Visual Studio 2015 -> msvc-14.0-64.exe
。
Visual Studio 2017 -> msvc-14.1-64.exe
。
运行以下命令:
→ Set BOOST_ROOT=C:\local\boost_1_64_0\
→ Set BOOST_LIBRARYDIR=C:\local\boost_1_64_0\lib64-msvc-14.0
→ git clone --recursive https://github.com/Microsoft/LightGBM
→ cd LightGBM
→ mkdir build
→ cd build
→ cmake -DCMAKE_GENERATOR_PLATFORM=x64 -DUSE_GPU=1 ..
→ cmake --build . --target ALL_BUILD --config Release
注意:
C:\local\boost_1_64_0\
和C:\local\boost_1_64_0\lib64-msvc-14.0
是你 Boost 二进制文件的位置. 你还可以将它们设置为环境变量, 以在构建时避免Set ...
命令.
如果想要使用 protobuf 来保存和加载模型, 请先安装 protobuf c++ version . 然后使用 USE_PROTO=ON 配置来运行 cmake 命令, 例如:
→ cmake -DUSE_PROTO=ON ..
然后在保存或加载模型时, 可以在参数中使用 model_format=proto
。
注意: 针对 windows 用户, 它只对 mingw 进行了测试。
目录指令周期指令周期的基本概念5条典型的指令时序产生器和控制方式时序信号的作用和体制控制器的时序信号时序信号产生器微程序控制器中时序信号产生器的组成部分控制方式同步控制方式异步控制方式联合控制方式指令周期指令周期的基本概念CPU执行程序是一个“取指令–执行指令”的循环过程指令周期:CPU从内存中取出一条指令,并执行完毕的时间总和。CPU周期:又称机器周期,一般为从内存读取一条指令字的最短时间时钟周期:也叫节拍脉冲或T周期,是计算机工作的基本时间单位。如上图所示,指令周期通常包含C_mov指令多少个机器周期
对于决策树,有点像if...elseif...elseif...else语句。最重要的点就是找到合适的属性来划分类别。对于那个用来划分类别的属性要符合一个条件,那就是划分后,集合的纯度提高了。所以我们往往是在一堆属性中,找到一个属性,该属性最能提高集合的纯度。本文将重点解释信息熵的数学含义。一、信息熵信息熵Ent(D)Ent(D)Ent(D)是用来度量样本集合纯度的最常用指标。Ent(D)=..._决策树的信息熵
作者简介赵亚楠,携程云平台资深架构师。2016 年加入携程云计算部门,先后从事 OpenStack、SDN、容器网络(Mesos、K8S)、容器镜像存储、分布式存储等产品..._携程赵亚楠 博客
基本思路:1、确定指定目录2、判断指定目录是否存在,如果不存在就新建该目录3、修改新的文件名4、复制图片到指定位置,如果需要移动采用shutil.move(origin_path, new_file_name)import osimport shutilbase_dir = os.path.dirname(__file__) # 获取当前文件目录outfile = 'try_file'path..._python移动文件时遇到重名
1、Unity 下打包Bulid FailedAssets/Plugins/uLua/x86_64/ulua.dll would be copied to /ulua.dllPlugin ‘ulua.dll’ is used from several locations: Assets/Plugins/uLua/x86_64/ulua.dll would be copied to /ulua.d
SpringCloudAlibaba(九)——sentinel组件的熔断降级和热点规则熔断降级规则简介熔断:用来避免微服务架构中雪崩现象,达到某个阈值条件之后自动出发熔断原理:当监控到调用链路中某一个服务,出现异常(20个以上异常)自动出发熔断,在出发熔断之后对于该微服务调用不可用熔断降级规则的使用RT:根据请求响应时间熔断异常比例:根据请求调用过程中出现异常百分比进行熔断异常数:根据请求调用过程中异常数进行熔断平均响应时间领取资料当 1s 内持续进入 N 个请求,对应时刻的平均响应
键盘事件是指在Web页面中,当用户按下或释放键盘上的按键时触发的事件。可以实现响应按键事件的交互功能,例如快捷键等;可以对用户的输入进行验证和限制;可以模拟输入事件,实现自动化测试等。表单验证:防止用户在表单输入中输入非法字符或格式;密码强度评估:当用户在密码输入框内输入字符时,动态显示密码强度是否满足规定;快捷键:快速响应某些按键事件,提高用户的操作效率;自动完成:通过监听按键事件,在输入框中自动匹配内容;游戏开发:捕捉用户的键盘输入,控制游戏角色的移动、攻击等。_上位机 中事件是啥
#include<stdio.h>int main(){/*输入三个正整数,判断用这三个整数做边长是否能构成一个直角三角形。输入输入三个正整数。输出能否构成直角三角形。如能输出:yes.若不能,输出:no。 */int a,b,c;scanf("%d%d%d",&a,&b,&c);if(a + b > c && a + ..._输入三个数a,b,c, 判断能否以它们为三个边长构成直角三角形。若能,输出yes,否则输
以肖特基二极管1N5819为例说明Spice模型的建立方法。**准备工作:**下载1N5819的文本模型文件,后缀名为.txt。1N5819的模型文件在Diodes官网下载。见图1和图2。具体步骤:打开PSpice Model Editor。打开下载的1N5819的Spice文本文件,File—>open—>1N5819.spice.txt,见图3。生成.lib文件,File—>Save As—>更改模型名称—>保存,见图4和图5。导出.o_txt转pspice模型
监督学习(Supervised Learning)数据集为(x, y)一些监督学习技术包括:线性回归 (回归)局部线性回归 (回归)logistic回归 (分类)深度神经网络无监督学习(Unsupervised Learning)数据集为(x)一些无监督学习技术包括:自编码(Autoencoding)主成分分析(Principal components analysis)随机森林(R
LintCode:二叉树的最大深度给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的距离。显然,这是一个典型的递归。/** * Definition of TreeNode: * class TreeNode { * public: * int val; * TreeNode *left, *right; * TreeNode(int val)_二叉树最大深度
pytorch softmax 手动_pytorch实现softmax