mac下python安裝LightGBM並測試


之前實習的時候用的windows系統,感覺python安裝lightgbm模塊有點曲折但整體上還是比較順利就完成了的,沒想到mac下安裝真的太心酸了,着急用就坑在了安裝lightgbm模塊前的準備工作上😭
所以這裏總結了一下通過看了好幾篇安裝教程,結合自己遇到的問題給出方案,希望你們順利解決!!!

環境說明

  • 本本環境:macbook air(還是14年的老戰機了)
項目 內容
版本 10.14.4
處理器 1.4GHz Intel Core i5
內存 4GB
顯卡 Intel HD Graphics 5000 1536 MB

步驟

– 計劃:(根據網上常見安裝方法)

  • 1.安裝homebrew:安裝完這個以後就可以在終端下載cmake和gcc啦。
  • 2.安裝cmake:說是依賴這個,所以要下。
  • 3、安裝gcc:這個也是。
  • 4、安裝lightgbm
    – 實際實施:
  • 1、安裝homebrew
  • 2、安裝cmake
  • 3、由於試了很多方法安裝gcc總是失敗,所以我去官網看了最終嘗試直接用homebrew安裝lightgbm成功。

不能保證安裝好homebrew後直接可以安裝lightgbm,我是安裝了homebrew和cmake以後成功,如果有直接用homebrew安裝成功的可以在評論裏告訴大家~謝謝~

說明:步驟1-3都是爬後完成的。

詳細說明

安裝homebrew

2020年4月更新
換了電腦後再次安裝,使用了國內的鏡像網站安裝,按照下面鏈接裏的方法,以後用brew下載軟件或者更新brew時是國內源有緩存就從國內源下載,更方便快捷。

https://zhuanlan.zhihu.com/p/111014448
清華大學和中國科技大學的鏡像網站,按照鏈接裏教程自動安裝成功~

2019年第一次安裝方法
首先,我覺得這真的是看運氣的事情,莫名其妙一通我安裝好了…所以沒有截圖。搜索mac安裝lightgbm或者mac安裝homebrew會出現很多人的回答,就按照大家所說在終端輸入以下命令:

/usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”

遇到的問題:(1)沒反應(2)運行到一半就停了…(3)中間要輸入電腦管理員密碼,忘記了…重新更改密碼
解決方法:(1)沒反應這個問題,我嘗試關閉終端重新打開,或者重新輸入命令運行,有時候就可以了;(2)運行到一半這個問題,我翻了一下🧱牆,終於看到它運行,這個過程挺久的。要有耐心,中途可能有時候還是會停下來。也有人建議用手機熱點可以解決,這個我沒有試。(3)重點!!剛開始不久有需要輸入管理員密碼的地方,忘記的朋友可以搜一下mac管理員密碼忘記,按照步驟做即可。所以不記得密碼的朋友一定先做這一步,不然你又要重新開始。

爲了查看自己是否安裝完成,可以輸入以下命令:

終端輸入命令:brew -v
顯示結果:Homebrew 2.2.2
Homebrew/homebrew-core (git revision df6f; last commit 2020-01-07)

安裝cmake

終端輸入命令:brew install cmake
大約20分鐘後完成,有點久
在這裏插入圖片描述
在這裏插入圖片描述

安裝gcc

嘗試輸入

brew install gcc --without-multilib
Error: invalid option: --without-multilib

看到博客評論區裏面有人說把後面的–without-multilib去掉就可以成功,於是重新輸入:

brew install gcc
結果安裝了快半小時了,纔到6%,就放棄去網上搜了一下解決辦法。
在這裏插入圖片描述

又嘗試了

brew install open-mpi
也不行基本上安裝一會斷掉

最終

哭了,晚上開會前我去看github官網上面有一個命令,是用homebrew直接安裝。

brew install lightgbm
結果:你可以看到一開始到52%的時候還是失敗了,但是它自動的又下載了一次,我發現兩次下載地址不同。
在這裏插入圖片描述

最後別忘了在終端pip install lightgbm一下,就可以開始測試了.

測試用例

我在jupyter裏面測試的,在網上找了一個例子:

import lightgbm as lgb
import numpy as np
print(lgb.__version__)

data = np.random.rand(500, 10)  # 500 entities, each contains 10 features
label = np.random.randint(2, size=500)  # binary target

train_data = lgb.Dataset(data, label=label)
param = {'num_leaves': 31, 'objective': 'binary'}
param['metric'] = 'auc'
num_round = 10
bst = lgb.train(param, train_data, num_round)

# 預測
data = np.random.rand(7, 10)
y_pred = bst.predict(data)
print(y_pred)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章