2017-10-09 108 views
0

我與LightGBM相當新的,我想通過LGBMRegressor以適應簡單的線條。lightgbm.sklearn.LGBMRegressor未能配合簡單的線條

import numpy as np 
import lightgbm as lgbm 
xs = np.linspace(0, 10, 30).reshape((-1, 1)) 
ys = np.linspace(0, 10, 30)  
reg = lgbm.sklearn.LGBMRegressor() 
reg.fit(xs, ys) 
print reg.predict(xs) 
>>> array([ 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 
    0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 
    0., 0., 0., 0.]) 

我在做什麼錯了?也許我需要更多功能?

我LightGBM版本是2.0.7(從GitHub源),Python版本是2.7.12

PS對不起,我的英文不好

+0

我還沒有轉載您的設置,但我使用python3.6和lightgbm 2.0.3檢查它在我自己的設置。 (與點安裝)。結果得到了不同的輸出(看起來是正確的)。你的python是一個64位版本嗎?否則你的代碼似乎很好。 –

+0

@ChristopherSchröder感謝您發表評論!是的,我的python2.7.12是64位的。也許我應該嘗試與lgbm 2.0.3 –

+0

我也嘗試過使用2.0.7版本以後我的代碼。仍然產生合理的產出。也許你可以嘗試使用pip安裝程序?你使用哪種操作系統? –

回答

1

設置參數min_data_in_leaf = 1,min_data_in_bin = 1