俄羅斯人提出了catboost
,這個演算法在其**中與gbdts
演算法對比,注意,這裡的gbdt演算法不是簡單的gbdt
演算法,而是作者將gbdt
與xgboost
統稱為gbdts
。這兩個演算法具體的差別是:
k2gini
指數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指的...