LightGBM説明:
GBDT(グラデーション後押しディシジョン・ツリー)は、その主なアイデアではない簡単にオーバーフィッティングに優れたトレーニング効果を、持って最適なモデルを取得するために、弱識別器(決定木)、反復トレーニングを活用することで永続的なモデルを機械学習であり、ように。業界でGBDT幅広いアプリケーションには、多くの場合、CTRを予測し、ソートや他のタスクを検索するために使用されます。またGBDT統計Kaggleより多くのチャンピオンシップ・プログラムの半分よりもレースに応じて凶器データマイニング競技の様々な、GBDT基づいています。
LightGBM(マシンを後押しライトグラデーション)効率的なサポートを平行に訓練し、GBDTアルゴリズムを達成するためのフレームワークであり、そして次のような利点があります。
より速いスピードトレーニング
低メモリ消費量
と優れた精度
の分散のサポートを、あなたはすぐに膨大な量のデータを処理することができます
以下は、データに1/6程度のほぼ10倍の高速化、メモリ使用量XGBoostよりLightGBMヒッグスXGBoostを設定し、さらに精度を高めるために
MACは、インストール時にピップ実際、次のエラーに表示されます
エラーメッセージ
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
完美解决