標籤:三分 gbdt ssi 模型 類別 技術分享 3.2 style ble
| 樣本編號 |
花萼長度(cm) |
花萼寬度(cm) |
花瓣長度(cm) |
花瓣寬度 |
花的種類 |
| 1 |
5.1 |
3.5 |
1.4 |
0.2 |
山鳶尾 |
| 2 |
4.9 |
3.0 |
1.4 |
0.2 |
山鳶尾 |
| 3 |
7.0 |
3.2 |
4.7 |
1.4 |
雜色鳶尾 |
| 4 |
6.4 |
3.2 |
4.5 |
1.5 |
雜色鳶尾 |
| 5 |
6.3 |
3.3 |
6.0 |
2.5 |
維吉尼亞鳶尾 |
| 6 |
5.8 |
2.7 |
5.1 |
1.9 |
維吉尼亞鳶尾
|
Iris資料集
這是一個有6個樣本的三分類問題。我們需要根據這個花的花萼長度,花萼寬度,花瓣長度,花瓣寬度來判斷這個花屬于山鳶尾,雜色鳶尾,還是維吉尼亞鳶尾。具體應用到gbdt多分類演算法上面。我們用一個三維向量來標誌樣本的label。[1,0,0] 表示樣本屬于山鳶尾,[0,1,0] 表示樣本屬於雜色鳶尾,[0,0,1] 表示屬於維吉尼亞鳶尾。
gbdt 的多分類是針對每個類都獨立訓練一個 CART Tree。所以這裡,我們將針對山鳶尾類別訓練一個 CART Tree 1。雜色鳶尾訓練一個 CART Tree 2 。維吉尼亞鳶尾訓練一個CART Tree 3,這三個樹相互獨立。
我們以樣本 1 為例。針對 CART Tree1 的訓練樣本是[5.1,3.5,1.4,0.2],label 是 1,最終輸入到模型當中的為[5.1,3.5,1.4,0.2,1]。針對 CART Tree2 的訓練樣本也是[5.1,3.5,1.4,0.2],但是label 為 0,最終輸入模型的為[5.1,3.5,1.4,0.2,0]. 針對 CART Tree 3的訓練樣本也是[5.1,3.5,1.4,0.2],label 也為0,最終輸入模型當中的為[5.1,3.5,1.4,0.2,0]。
下面我們來看 CART Tree1 是如何產生的,其他樹 CART Tree2 , CART Tree 3的產生方式是一樣的。CART Tree的產生過程是從這四個特徵中找一個特徵做為CART Tree1 的節點。比如花萼長度做為節點。6個樣本當中花萼長度 大於5.1 cm的就是 A類,小於等於 5.1 cm 的是B類。產生的過程其實非常簡單,問題 1.是哪個特徵最合適? 2.是這個特徵的什麼特徵值作為切分點? 即使我們已經確定了花萼長度做為節點。花萼長度本身也有很多值。在這裡我們的方式是遍曆所有的可能性,找到一個最好的特徵和它對應的最優特徵值可以讓當前式子的值最小。
我們以第一個特徵的第一個特徵值為例。R1 為所有樣本中花萼長度小於 5.1 cm 的樣本集合,R2 為所有樣本當中花萼長度大於等於 5.1cm 的樣本集合。所以 R1={2},R2={1,3,4,5,6}.
一棵樹,是這樣進行訓練的,來了一個樣本,它有一個標記,將對應標記的放入到對應標記的樹裡面去,放入到其他樹裡面去的時候,標記為0,放入到對應樹裡面去的時候,標記為1;這樣,每次訓練m顆樹,m為總的類別數,訓練k輪下來就有m*k顆樹
GBDT多分類樣本