機器學習高階之(六)CatBoost

2021-09-26 06:39:14 字數 1761 閱讀 8210

俄羅斯人提出了catboost,這個演算法在其**中與gbdts演算法對比,注意,這裡的gbdt演算法不是簡單的gbdt演算法,而是作者將gbdtxgboost統稱為gbdts。這兩個演算法具體的差別是:

k2​gini指數gini(d,a)表示特徵a

aa不同分組的資料集d

dd的不確定性。gini指數值越大,樣本集合的不確定性也就越大,這一點與熵的概念非常類似。但這裡gini是無法處理取值為字串的離散特徵,對於普通的連續或者離散特徵而言,使用gbdt,我們在處理特徵中的categorical features的時候,最簡單的方法是使用對應標籤的平均值來替換。如果在決策樹中,標籤平均值將作為節點**的標準,這種方法被稱為greedy target-based statistics,簡稱greedy tbs,用公式來表達就是:

∑ j=

1n[x

j,k=

xi,k

]⋅yj

∑j=1

n[xj

,k=x

i,k]

\frac^n=x_]·y_j}}^n[x_=x_]}

∑j=1n​

[xj,

k​=x

i,k​

]∑j=

1n​[

xj,k

​=xi

,k​]

⋅yj​

​這種方法有乙個顯而易見的缺陷,就是通常特徵比標籤包含更多資訊的時候,如果強行使用標籤的平均值來表示特徵的話,當訓練集和測試集資料結果分布不一樣時,就會出現條件偏移的問題。

乙個標準改進greedy tbs的方法是新增先驗分布項,這樣可以減少雜訊和低頻資料對於資料分布的影響:

∑ j=

1p−1

[xσj

,k=x

σp,k

]⋅yσ

,j+a

⋅p∑j

=1p−

1[xσ

j,k=

xσp,

k]\frac^=x_]·y_+a·p}}^[x_=x_]}

∑j=1p−

1​[x

σj,k

​=xσ

p,k​

]∑j=

1p−1

​[xσ

j,k​

=xσp

,k​]

⋅yσ,

j​+a

⋅p​上面的σj,

k\sigma_j,k

σj​,

k就是代表第j

jj條資料,上面的k

kk代表第k

kk列也就是第k

kk個特徵,p

pp是新增的先驗項,aaa

機器學習筆記之 六 Logistic回歸

前面介紹了線性回歸的問題,這裡接著引出邏輯回歸的問題,一般邏輯回歸用於解決分類問題,以二分類為例。sigmoid函式 sigmoid是乙個非線性函式,也是一種啟用函式,表示式為g x 1 1 e x 主要為了去線性化其影象如下,而且具有良好的性質,中心對稱,光滑可導。sigmoid函式的導數 我們來...

機器學習筆記之六 Bagging 簡述

本文結構 bagging bootstrap aggregating 的縮寫。是一種並行式整合學習方法,可用於二分類,多分類,回歸等任務。基本流程 對乙個包含 m 個樣本的資料集,有放回地進行 m 次隨機取樣,這樣得到具有 m 個樣本的取樣集。取 t 個這樣的取樣集。每個取樣集訓練乙個基學習器。結合...

機器學習 學習記錄六

本篇部落格將介紹semi supervised learning的實現方法 介紹 之前我們所介紹的機器學習所提到的資料都是帶有label的。而現實是,蒐集這些帶有label的資料並不是一件簡單的事情,但是蒐集一些不帶有label的資料就要容易很多。semi supervised learning指的...