日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

LightGBM笔记

發布時間:2025/3/8 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 LightGBM笔记 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

煉丹筆記:記錄我們的成長軌跡


LightGBM如何保存模型?

用lgb保存模型遇到了幾個坑,在這里記錄一下。

在用Lightgbm.LGBMClassifier訓練生成模型時,Scikit-learn 官網上建議的兩種方式:

1.pickle方式

這里我寫了保存和加載兩種方式:

import pickle def pkl_save(filename,file):output = open(filename, 'wb')pickle.dump(file, output)output.close()def pkl_load(filename):pkl_file = open(filename, 'rb')file = pickle.load(pkl_file) pkl_file.close()return file

2.joblib方式

from sklearn.externals import joblib joblib.dump(model_lgb, 'dota_model.pkl') clf = joblib.load('dota_model.pkl')

但是,使用你這兩種方式遇到了一個坑,那就是sklearn版本的問題!

你可會發現這個錯誤“ModuleNotFoundError: No module named 'sklearn.preprocessing.label'”

產生這個的原因,是其實已經提醒我們了,

在版本大于0.21的情況下,函數發生了變化。

所以我們介紹第3中保存lightGBM的方式。

3. Booster

clf = lgb.LGBMClassifier( ... ) clf.fit(X_train, y_train, **fit_params) clf.booster_.savemodel("dota_model.txt")

加載:

clf_loads = lgb.Booster(model_file='dota_model.txt') probas = clf_fs.predict(test)

需要注意的是,這里的是predict而不是predict_proba,得到概率。

在Github上所述的(現已關閉) #1217問題中 ,從事該項目的Microsoft開發人員說 ,在這種情況下:

booster.predict()實際上將返回概率

因此,不應該寫predict_proba 。


LightGBM的metric有哪些?

  • “None”(字符串),表示無度量,等效于na,null,custom
  • l1(absolute loss),等效于mean_absolute_error,mae,regression_l1
  • l2(square loss),等效于mean_squared_error,mse,regression_l2,regression
  • rmse(平方根損失),等效于root_mean_squared_error,l2_root
  • quantile,分位數回歸
  • mape(MAPE損失),等效于mean_absolute_percentage_error
  • huber(huber損失)
  • fair(fair損失)
  • poisson,泊松回歸的負對數似然
  • gamma,Gamma回歸的負對數似然
  • gamma_deviance,Gamma回歸殘差
  • tweedie,Tweedie回歸的負對數似然
  • ndcg,等效于lambdarank,rank_xendcg,xendcg,xe_ndcg,xe_ndcg_mart,xendcg_mart
  • map,等效于mean_average_precision
  • auc
  • average_precision,平均精度得分
  • binary_logloss,log loss,等效于binary
  • binary_error,對于單樣本,0用于正確分類,1用于錯誤分類
  • auc_mu
  • multi_logloss,多分類log loss,等效于multiclass,softmax,multiclassova,multiclass_ova,ova,ovr
  • multi_error,多分類錯誤率
  • cross_entropy,交叉熵(具有可選的線性權重),等效于xentropy
  • cross_entropy_lambda,“intensity-weighted”交叉熵,等效于 xentlambda
  • kullback_leibler,Kullback-Leibler散度,等效于kldiv
  • 如何多個評價指標?

    支持多個指標,使用“,”分隔。

    • ‘metric’: {‘binary_logloss’, ‘auc’}

    總結

    以上是生活随笔為你收集整理的LightGBM笔记的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。