anaconda jupyter不能導入安裝的lightgbm解決方案

問題:

安裝lightgbm成功後,無法在anaconda jupyter notebook中導入lightgbm包

原因:

lightgbm默認安裝在本地python環境中,而anaconda的python環境與本地不是同一個環境,不能使用本地環境中的包

解決方法:

將本地環境中的lightgm包拷貝到anaconda的python環境中

操作方法:

在本地的python環境下,導入lightgbm包,使用lightgbm.__file__輸出包的路徑

在Anaconda的python環境下,導入任意一個包,然後輸出該路徑

將本地環境中的lightgm包拷貝到anaconda的python環境中

補充:mac 安裝 lightgbm 無法導入(以及解決cmake命令無法編譯)

最近在看數據分析,用到 python 的 lightgbm 包,直接用 pip install lightgbm 命令安裝後,在 import lightgbm 時總報錯,解決瞭一晚上加一上午,記錄下來幫助像我一樣的新手小夥伴少踩坑。

一般的包在用上述 pip 命令安裝後,就可正常使用,但是 LightGBM 編譯依賴 OpenMP,Apple Clang 不支持。給出如下圖的錯誤:

官網也有給出在 mac 上安裝的方法,但我在執行 cmake .. 命令時,總是無法成功,跳過這個坑花瞭好久,下面給出成功安裝的方法。

系統:macOS Sierra 10.12.6

LightGBM包:https://github.com/Microsoft/…

首先保證你的電腦裝瞭 Homebrew,下面用到 brew 命令。

打開終端後,依次執行命令:

brew install cmake
brew install gcc@7 --without-multilib
git clone --recursive https://github.com/Microsoft/LightGBM ; cd LightGBM
mkdir build ; cd build
cmake -DCMAKE_CXX_COMPILER=g++-7 -DCMAKE_C_COMPILER=gcc-7 ..
make -j

如果安裝成功,最後輸出結果如下:

我的電腦上默認安裝到 /usr/local/lib/python2.7/site-packages 文件夾下。

輸出上述編譯成功的信息後,即可執行下一步,從 build 文件夾返回上一級,執行命令:

cd python-package
pip install lightgbm

如成功安裝顯示信息:

最後還需要進行配置,找到你在上一步安裝的 LightGBM 文件夾,拷貝裡面的 lib_lightgbm.so 文件到 LightGBM/python-package/lightgbm 目錄下。最後將 LightGBM/python-package/lightgbm 文件夾拷貝到你需要用到到 python 文件夾下。

註意是要將 python-package 裡的 lightgbm 文件夾放到要用到 lightgbm 的環境下,而不是 LightGBM 整個文件,否則雖然可以 import 成功,但是不能正常用,會報錯 LightGBM 對要用的方法無效。

我用的是 python3.6 和 jupyter notebook,所以需要分別將 lightgbm 文件夾復制到 /usr/local/lib/python3.6/site-packages 和 anaconda3 對應的文件夾下。

補充:

在執行 pip install lightgbm 命令時,我又遇到瞭如下所示的問題:

解決辦法,執行命令:

pip install urllib3==1.21.1

然後即可成功 import :

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。

推薦閱讀: