中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

CatBoost怎么安裝使用

發布時間:2021-12-27 13:40:05 來源:億速云 閱讀:906 作者:iii 欄目:大數據

這篇文章主要介紹“CatBoost怎么安裝使用”,在日常操作中,相信很多人在CatBoost怎么安裝使用問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”CatBoost怎么安裝使用”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

介紹

CatBoost不僅在你提供給它的任何數據集上構建了一個最精確的模型,其中只需要最少的數據準備。它還提供了迄今為止最好的開源解釋工具,以及快速生成模型的方法。

CatBoost引發了機器學習革命。學習使用它會提高你的技能。但更有趣的是,CatBoost對數據科學家(比如我自己)的現狀構成了威脅,因為我認為在給定數據集的情況下,建立一個高精度的模型是很乏味的。但是CatBoost正在改變這種狀況。它使得每個人都可以使用高度精確的模型。

以極快的速度建立高精度模型

安裝

你試過在筆記本電腦上安裝XGBoost嗎?那你肯定知道有多麻煩。但是在另一端安裝運行CatBoost卻是小菜一碟。

pip install catboost

這樣就安裝好了。

數據準備

與目前大多數可用的機器學習模型不同,CatBoost只需要最少的數據準備。它能處理:

  • 數值變量的缺失值

  • 沒有編碼的分類變量

    注意:對于分類變量,必須事先處理缺失值。替換為新類別“missing”或最其他常用的類別。

  • 對于GPU用戶,它也能處理文本變量。

不幸的是,我無法測試這個功能,因為我正在一臺沒有GPU的筆記本電腦上工作。

構建模型

與XGBoost一樣,你擁有熟悉的sklearn語法和一些特定于CatBoost的附加功能。

from catboost import CatBoostClassifier # 或者 CatBoostRegressor
model_cb = CatBoostClassifier()
model_cb.fit(X_train, y_train)

或者,如果你想要一個關于模型如何學習以及是否開始過擬合的可視化界面,請使用plot=True并在eval_set參數中插入測試集:

from catboost import CatBoostClassifier # 或者 CatBoostRegressor
model_cb = CatBoostClassifier()
model_cb.fit(X_train, y_train, plot=True, eval_set=(X_test, y_test))

CatBoost怎么安裝使用

注意,你可以同時顯示多個度量,甚至更人性化的度量,如準確度或精確度。此處列出了支持的指標:https://catboost.ai/docs/concepts/loss-functions-classification.html。

請參見下面的示例:

CatBoost怎么安裝使用

你甚至可以使用交叉驗證,在不同的分割上觀察模型準確度的平均和標準偏差:

CatBoost怎么安裝使用

微調

CatBoost與XGBoost非常相似。要對模型進行適當的微調,首先將early_stopping_rounds進行設置(如10或50),然后開始調整模型的參數。

訓練速度
無GPU

從他們的基準測試中,你可以看到CatBoost比XGBoost更快,并且與LightGBM相對類似。眾所周知,LightGBM的訓練速度很快。

有GPU

不過,說到GPU,真正的魔力就來了。

CatBoost怎么安裝使用

即使使用相對較老的GPU,如K40(2013年發布),訓練時間也將被至少快4倍,而其他更新的CPU最多能快40倍。

模型的解釋

CatBoost的作者們明白的一件事是,這不僅僅是一個玩精確度的游戲。為什么在XGBoost和LightGBM可用時要使用CatBoost呢。所以,在可解釋性方面,CatBoost提供了開箱即用的函數。

特征重要性

CatBoost提供了3種不同的方法:PredictionValuesChange、LossFunctionChange和InternalFeatureImportance。這里有詳細的文檔:https://catboost.ai/docs/concepts/fstr.html

局部可理解性

對于局部可理解性,CatBoost附帶SHAP,SHAP通常被認為是唯一可靠的方法。

shap_values = model.get_feature_importance(Pool(X, y), type='ShapValues')

官方也提供了教程:https://github.com/catboost/tutorials/blob/master/model_analysis/shap_values_tutorial.ipynb。你可以使用進行局部可理解性操作以及獲取特征重要性。

CatBoost怎么安裝使用

邊際效應

到目前為止,這是我最喜歡的東西。隨著高精度的商品化(特別是隨著AutoML的興起),當今從更深層次上了解這些高精度模型變得越來越重要。

根據經驗,以下圖表已成為模型分析的標準。CatBoos在它的包中直接提供它。

CatBoost怎么安裝使用

在這個圖標上你觀察到

  1. 綠色的是數據分布

  2. 藍色的是每個箱子的平均目標值

  3. 橙色的是每個箱子的平均預測值

  4. 紅色的是部分依賴圖( Partial Dependence

在生產中使用CatBoost模型

在生產中實現你的模型變得非常容易。下面是如何導出CatBoost模型。

使用.save_model()方法可以獲得以下幫助文檔:

CatBoost怎么安裝使用

Python和C++的導出
model_cb.save_model(‘model_CatBoost.py’, format=’python’, pool=X_train)

執行后在你的repo中會有一個生成好的.py文件,如下所示:

CatBoost怎么安裝使用

這時候模型已經準備好生產了!而且你不需要在機器上設置一個特定的環境來獲得新的分數。只需要Python 3就可以了!

二進制文件輸出

二進制顯然是獲得新數據的最快選擇。代碼中改成輸出.cbm文件。

載入時使用以下代碼重新加載模型:

from catboost import CatBoost
model = CatBoost()
model.load_model('filename', format='cbm')

其他有用的提示

Verbose = 50

大多數模型中通常都有詳細的輸入,以便查看你過程的進展情況。CatBoost也有,但比其他的稍好一點。例如,使用verbose=50將每50次迭代顯示一次訓練錯誤,而不是每次迭代顯示一次,因為如果有許多次迭代,這可能會很煩人。

CatBoost怎么安裝使用

使用verbose=10訓練同一模型。檢查起來好多了。

CatBoost怎么安裝使用

注意,剩余時間也會顯示出來。

模型比較

微調模型需要時間。通常,你可能有幾個好的參數列表。為了將其提升結果你甚至可以使用不同的參數集學習模型來比較,以便幫助你對要選擇的參數的最終列表做出決定。

CatBoost怎么安裝使用

到此,關于“CatBoost怎么安裝使用”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

海门市| 白水县| 深州市| 德保县| 佛教| 昭觉县| 甘谷县| 中卫市| 芒康县| 从化市| 镇平县| 资源县| 衡南县| 安平县| 海南省| 侯马市| 武鸣县| 彰化市| 花垣县| 罗平县| 大宁县| 通河县| 溆浦县| 长宁县| 玛曲县| 安国市| 昌乐县| 石河子市| 姜堰市| 福鼎市| 九龙县| 琼结县| 清涧县| 灵川县| 嘉禾县| 营山县| 武穴市| 铁岭县| 偏关县| 金塔县| 德安县|