RPi 4B Ubuntu 上的 LightGBM 无法加载模型

LightGBM on RPi 4B Ubuntu fails to load model

我在 raspberry pi 4b 8GB 运行 Ubuntu 20.04 64 位上使用 Julia 1.5。我在我的 Windows 笔记本电脑上创建了一个 lightGBM 模型并将模型保存到一个文件中。这在我的 windows 笔记本电脑上加载正常并且可以正常执行。但是当我尝试在 Raspberry PI 中加载它时,出现以下错误。 我查看了一下,发现/home/pi/.julia/packages/LightGBM/My6MK/src/lib_lightgbm.so这个文件是存在的。 我试图删除 LightGBM 包并重新添加它。但问题仍然存在。 如果您需要更多详细信息,请告诉我。

loadmodel(estimator, "/home/pi/softwares/julia/lightgbmModel.jld2")
ERROR: could not load library "/home/pi/.julia/packages/LightGBM/My6MK/src/lib_lightgbm.so"
/home/pi/.julia/packages/LightGBM/My6MK/src/lib_lightgbm.so: cannot open shared object file: No such file or directory
Stacktrace:
 [1] LGBM_BoosterCreateFromModelfile(::String) at /home/pi/.julia/packages/LightGBM/My6MK/src/wrapper.jl:101
 [2] loadmodel(::LGBMClassification, ::String) at /home/pi/.julia/packages/LightGBM/My6MK/src/utils.jl:72
 [3] top-level scope at REPL[16]:1

我在 MacOs 上构建 .Net 项目时遇到了类似的问题,然后在 Raspberry PI 上构建 运行 4。看起来与 NuGet 包管理器一起分发的库 'lib_lightgbm.so' 可以与其他 Linux 发行版,但它不是 Raspberry 的正确库。

我使用

在 Raspberry 上编译了 'lib_lightgbm.so'
git clone --recursive https://github.com/microsoft/LightGBM ; cd LightGBM
mkdir build ; cd build
cmake ..
make -j4

然后手动将编译好的库'lib_lightgbm.so'复制到你的项目目录中(替换已有的)。这对我有用。