MAC 上 使用lightgbm遇到image not found 解决办法总结

LightGBM介绍:

GBDT (Gradient Boosting Decision Tree) 是机器学习中一个长盛不衰的模型,其主要思想是利用弱分类器(决策树)迭代训练以得到最优模型,该模型具有训练效果好、不易过拟合等优点。GBDT 在工业界应用广泛,通常被用于点击率预测,搜索排序等任务。GBDT 也是各种数据挖掘竞赛的致命武器,据统计 Kaggle 上的比赛有一半以上的冠军方案都是基于 GBDT。

? LightGBM (Light Gradient Boosting Machine)是一个实现 GBDT 算法的框架,支持高效率的并行训练,并且具有以下优点:

更快的训练速度
更低的内存消耗
更好的准确率
分布式支持,可以快速处理海量数据

如下图,在 Higgs 数据集上 LightGBM 比 XGBoost 快将近 10 倍,内存占用率大约为 XGBoost 的1/6,并且准确率也有提升

在MAC上实际pip安装过程中会出现下面错误

错误信息

    import lightgbm
        File "/opt/venv3/lib/python3.7/site-packages/lightgbm/__init__.py", line 8, in <module>
            from .basic import Booster, Dataset
        File "/opt/venv3/lib/python3.7/site-packages/lightgbm/basic.py", line 32, in <module>
            _LIB = _load_lib()
        File "/opt/venv3/lib/python3.7/site-packages/lightgbm/basic.py", line 27, in _load_lib
            lib = ctypes.cdll.LoadLibrary(lib_path[0])
        File "/usr/local/Cellar/python/3.7.6_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ctypes/__init__.py", line 442, in LoadLibrary
            return self._dlltype(name)
        File "/usr/local/Cellar/python/3.7.6_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ctypes/__init__.py", line 364, in __init__
            self._handle = _dlopen(self._name, mode)
    OSError: dlopen(/opt/venv3/lib/python3.7/site-packages/lightgbm/lib_lightgbm.so, 6): Library not loaded: /usr/local/opt/gcc/lib/gcc/7/libgomp.1.dylib
        Referenced from: /opt/venv3/lib/python3.7/site-packages/lightgbm/lib_lightgbm.so
        Reason: image not found

错误解决:

brew install cmake
brew install gcc
cd /opt  #这个不是固定的,任意地方都行
git clone --recursive https://github.com/Microsoft/LightGBM
cd LightGBM

# 需要确认下自己电脑上的gcc版本
    /usr/local/opt/gcc/lib/gcc/
    total 0
    drwxr-xr-x  47 mafei  staff   1.5K  3  8 11:52 **9**
我电脑上gcc版本是9,所以命令是
export CXX=g++-9 CC=gcc-9
mkdir build ; cd build
cmake ..
make -j4

当前的LightGBM目录

pwd
/opt/LightGBM/build
进入python-package,会有一个setup.py文件

cd /opt/LightGBM/python-package

执行
python setup.py install --precompile 

完美解决

原文地址:https://blog.51cto.com/mapengfei/2476367

时间: 2024-10-10 14:04:34

MAC 上 使用lightgbm遇到image not found 解决办法总结的相关文章

mac 上使用octave的plot错误的解决办法

在mac10.10上使用octave的时候,键入 plot(x, y)的时候会出现如下错误: set terminal aqua enhanced title "Figure 1" font "*,6" dashlength 1 ^ line 0: unknown or ambiguous terminal type; type just 'set terminal' for a list 这个时候可以在每次运行plot前加入这句命令: setenv("G

Mac上pod install一直停住的解决办法

pod install一直停住的解决办法 在/Users/XXX/.cocoapods/repos下 git clone https://github.com/CocoaPods/Specs.git mv Specs master 就可以去project目录pod install了

[Surface] 在win8.1上使用QQ截图放大问题(解决办法)

在使用每次截图的时候整个都被放大了,很让人郁闷,截不到完整的图,本着遇到问题解决问题的想法,这事早解决早好.   开工: 1. 度娘上搜索"win8 qq截图 放大",找到很多资料,整理了一下,分为两类 2. 一类,是修改win8的配置,直接上图,这种方法修改之后,屏幕字符太小(Surface更小),小屏幕不建议采用: 3. 另外一类,是修改qq的配置,Disable DPI设置(DPI是Dots Per Inch(每英寸所打印的点数)的缩写,是打印机.鼠标等设备分辨率的单位),如下图

【转】Ubuntu 上编译Android出现cannot find -lstdc++解决办法

[转]Ubuntu 上编译Android出现cannot find -lstdc++解决办法 在Ubuntu 12.04 x86_64机器上编译Android出现下面错误,是因为找不到32bit的libstdc++.so库. /usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.6/libstdc++.so when searching for -lstdc++ /usr/bin/ld: skipping incom

mac 上格式化磁盘出现MediaKit报告设备上的空间不足以执行请求的解决办法

1.问题描述: 我使用是一个2T移动硬盘,分了5个区 2.分析原因:因为mac OSX的日志式格式需要有EFI分区进行引导,而我的移动硬盘是没有EFI分区的,这样的话就会出现问题: 3.解决办法: 1.建立一个分区,分区大小在200MB,格式为EFI分区,工具diskgenius 2.使用windows电脑格式化剩余容量,格式随便. 3.在mac电脑上进行格式化磁盘,格式为OX日志格式. 4.正常备份.

Mac下su命令提示su Sorry的解决办法

很多人在mac下,用su登录root用户,输入密码,都会提示su:Sorry,然后还怀疑自己记错了密码,其实不然. 其实正确的方式为: sudo su 然后输入密码就可以了 用户名显示不是root,而是sh-3.2,具有root权限. 如果你希望进入root权限,需要输入: sudo su - 总结: mac上,一开始创建的具有管理员权限的用户,但是那个用户密码,不是进入root的密码 当运行su - 这个命令时,会提示输入密码,而输入自己用户密码后报su :sorry 其实,需要使用sudo

mac下无法远程桌面连接win10的解决办法

原文链接:http://www.hangge.com/blog/cache/detail_899.html 原来在Mac OSX下远程win7系统很正常,后来把windows系统升级成了win10,再远程桌面时就一直失败,提示"远程桌面连接无法验证您希望连接的计算机的身份". 解决办法:1,先查看防火墙是否打开,是否去掉"仅允许运行使用网络级别身份验证的远程计算机-"2,如果还是不行的话.便需要开启组策略中远程桌面链接安全层:(1)开始-运行-gpedit.msc,

Mac下paragon插件卸载不完整的解决办法

paragon是一款mac下的ntfs插件,卸载后,有时重启mac仍然会有更新提示. 解决办法: 打开终端输入:launchctl list(查看当前自启的服务)会发现启动的服务里面有两个paragon服务 分别停止这两个服务: launchctl unload /System/Library/LaunchAgents/com.paragon.NTFS.notify.plist launchctl unload /Library/LaunchAgents/com.paragon.updater.

WIN10上的free pascal种种问题的解决办法——

昨天是win10一周年的生日,记得去年的今天[30号]换了RTM版种种BUG,一怒之下退回7党,昨天抱着试一试的心态升了个WIN10最新预览版,感觉还不错,比最初RTM稳定多了啊,但兼容性还是不咋地, FreePascal还是那个样(T_T). 一直默认装两个版本的pascal,首先在官网找到下载地址,安装—— 装完之后首先打开了2.4.0的,结果黑屏报错,而且其它程序也跟着报错(`□′)╯┴┴ 无奈百度,听说只能用新版FP,默默卸了2.4.0—— ******** 打开3.0.0,还好没报错,