自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

CatBoost:比XGBoost更優(yōu)秀的GBDT算法

譯文
人工智能 深度學(xué)習(xí) 算法
互聯(lián)網(wǎng)的算法有很多應(yīng)用場景,包括推薦系統(tǒng)、計算廣告和金融反欺詐等。許多互聯(lián)網(wǎng)的機器學(xué)習(xí)和數(shù)據(jù)挖掘問題都可以轉(zhuǎn)化為分類問題。在處理這一類分類問題的時候,最常用的方法包括邏輯回歸、GBDT和深度學(xué)習(xí)等。

[[242113]]

【51CTO.com快譯】互聯(lián)網(wǎng)的算法有很多應(yīng)用場景,包括推薦系統(tǒng)、計算廣告和金融反欺詐等。許多互聯(lián)網(wǎng)的機器學(xué)習(xí)和數(shù)據(jù)挖掘問題都可以轉(zhuǎn)化為分類問題。在處理這一類分類問題的時候,最常用的方法包括邏輯回歸、GBDT和深度學(xué)習(xí)等。其中邏輯回歸因為算法效率高,能有效處理大規(guī)模的數(shù)據(jù),在深度學(xué)習(xí)還沒有流行之前就被廣泛的應(yīng)用于大型的互聯(lián)網(wǎng)公司。

深度學(xué)習(xí)是自 2012 年由百度首先成立深度學(xué)習(xí)實驗室之后在國內(nèi)掀起的人工智能大潮。然而由于深度學(xué)習(xí)目前還處于蓬勃發(fā)展的階段,并且處理大規(guī)模數(shù)據(jù)時對于機器的經(jīng)費的要求都比較高,因此在很多應(yīng)用場景下大家選擇的并不是機器學(xué)習(xí)。GBDT 自問世以來便在諸多機器學(xué)習(xí)問題上取得了良好的效果,不僅在工業(yè)界,而且在 Kaggle 比賽上取得了非常優(yōu)秀的成績。

針對 GBDT 算法,在學(xué)術(shù)界和工業(yè)界有許多開源的算法包。著名的包括 University of Washington 的陳天奇開發(fā)的 XGBoost ,微軟的 LightGBM ,還有 Yandex 公司開發(fā)的 CatBoost 。XGBoost 被廣泛的應(yīng)用于工業(yè)界,LightGBM 有效的提升了 GBDT的計算效率, 而 Yandex 的 CatBoost 號稱是比 XGBoost 和 LightGBM 在算法準確率等方面表現(xiàn)更為優(yōu)秀的算法。本文主要通過介紹 Yandex 2017 年發(fā)表的一篇題為 CatBoost: Unbiased Boosting with Categorical Features 的論文給大家介紹 CatBoost 算法。

CatBoost 算法的設(shè)計初衷是為了更好的處理 GBDT 特征中的 categorical features 。在處理 GBDT 特征中的 categorical features 的時候,最簡單的方法是用 categorical feature 對應(yīng)的標簽的平均值來替換。在決策樹中,標簽平均值將作為節(jié)點分裂的標準。這種方法被稱為 Greedy Target-based Statistics , 簡稱 Greedy TBS,用公式來表達就是: 

CatBoost: 比XGBoost更優(yōu)秀的GBDT算法

這種方法有一個顯而易見的缺陷,就是通常特征比標簽包含更多的信息,如果強行用標簽的平均值來表示特征的話,當訓(xùn)練數(shù)據(jù)集和測試數(shù)據(jù)集數(shù)據(jù)結(jié)構(gòu)和分布不一樣的時候會出問題(條件偏移問題)。

一個標準的改進 Greedy TBS的方式是添加先驗分布項,這樣可以減少噪聲和低頻率數(shù)據(jù)對于數(shù)據(jù)分布的影響:

CatBoost: 比XGBoost更優(yōu)秀的GBDT算法 

其中 P 是添加的先驗項,a 通常是大于 0 的權(quán)重系數(shù)。

為了解決條件遷移問題,常用的方法例如可以將數(shù)據(jù)集合分為兩部分,在***個部分上對數(shù)據(jù)的特征進行類似 Greedy TBS 的處理,而在第二個數(shù)據(jù)集合上進行訓(xùn)練。CatBoost 參考了在線學(xué)習(xí)的方法,首先對訓(xùn)練書進行了隨機的重排列,然后選擇   作為訓(xùn)練樣本,而整個的數(shù)據(jù)集合做為測試樣本。

類似的,在GBDT的模型訓(xùn)練階段,同樣會因為訓(xùn)練數(shù)據(jù)與測試數(shù)據(jù)分布不同的問題產(chǎn)生預(yù)測偏移(Prediction Shift)和殘差偏移(Residual Shift)的問題。為了解決相應(yīng)的問題,CatBoost 作者采用了排序提升(Ordered Boosting)的方式,首先對所有的數(shù)據(jù)進行隨機排列,然后在計算第 i 步殘差時候的模型只利用了隨機排列中前 i-1 個樣本。

CatBoost 針對于原始 GBDT 的各種偏移問題進行改進之后的算法偽代碼如下:

CatBoost: 比XGBoost更優(yōu)秀的GBDT算法 

CatBoost: 比XGBoost更優(yōu)秀的GBDT算法 

CatBoost: 比XGBoost更優(yōu)秀的GBDT算法

CatBoost 和 XGBoost 以及 LightGBM 在一些知名的數(shù)據(jù)集合上的測試效果如下表所示,評測指標為 Logloss 和 Zero-one Loss 。

CatBoost: 比XGBoost更優(yōu)秀的GBDT算法

CatBoost 的基本原理是解決原始 GBDT 中的各種數(shù)據(jù)偏移問題。在一些開源的機器學(xué)習(xí)和數(shù)據(jù)挖掘的算法包里有現(xiàn)成的模塊可以調(diào)用。CatBoost 自從 2017 年被 Yandex ***提出以來得到了廣泛的關(guān)注。希望本文的介紹能給大家?guī)韼椭?/p>

汪昊,恒昌利通大數(shù)據(jù)部負責(zé)人/資深架構(gòu)師,美國猶他大學(xué)本科/碩士,對外經(jīng)貿(mào)大學(xué)在職MBA。曾在百度,新浪,網(wǎng)易,豆瓣等公司有多年的研發(fā)和技術(shù)管理經(jīng)驗,擅長機器學(xué)習(xí),大數(shù)據(jù),推薦系統(tǒng),社交網(wǎng)絡(luò)分析等技術(shù)。在 TVCG 和 ASONAM 等國際會議和期刊發(fā)表論文 8 篇。本科畢業(yè)論文獲國際會議 IEEE SMI 2008 ***論文獎。

[[242116]]

【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】

責(zé)任編輯:龐桂玉 來源: 51CTO
相關(guān)推薦

2022-03-16 17:01:35

React18并發(fā)的React組件render

2018-05-07 08:54:34

GolangPython語言

2021-10-29 19:00:30

監(jiān)控系統(tǒng)數(shù)據(jù)庫

2023-10-08 16:22:37

XGBoost算法

2015-08-03 09:09:20

程序員腦子快

2020-08-18 17:26:11

機器學(xué)習(xí)XGBoost人工智能

2013-06-07 10:07:28

開發(fā)者優(yōu)秀開發(fā)者

2021-06-17 13:42:40

AI 數(shù)據(jù)機器學(xué)習(xí)

2012-05-03 11:12:28

HP激光打印機

2016-03-28 10:01:45

優(yōu)秀程序員關(guān)鍵閱讀

2020-02-05 14:30:36

MacWindows 10Linux

2023-08-25 13:18:35

思維訓(xùn)練

2021-09-18 10:59:08

大數(shù)據(jù)家庭成績

2012-12-28 09:58:50

程序員代碼編程

2017-10-22 16:16:03

程序員編程代碼

2016-03-04 11:06:20

更優(yōu)秀程序員

2019-09-16 08:33:50

TCP協(xié)議UDP

2021-08-16 15:42:37

Windows 11Snipping To截圖

2023-11-28 12:08:56

機器學(xué)習(xí)算法人工智能

2017-09-20 15:03:42

機器學(xué)習(xí)XGBoost使用
點贊
收藏

51CTO技術(shù)棧公眾號