CART生成演算法

2021-07-04 02:42:44 字數 782 閱讀 6828

輸入:訓練資料集

d ,停止計算的條件;

輸出:cart 決策樹。

根據訓練資料集,從根結點開始,遞迴地對每個結點進行以下操作,構造二叉決策樹:

(1) 設結點的訓練資料集為

d ,計算現有特徵對該資料集的基尼指數。此時,對每乙個特徵

a,對其可能取得每個值

a ,根據樣本點對 a=

a的測試為「是」或「否」將

d 分割成 d1

和 d2 兩部分,計算 a=

a 時的基尼指數。

(2) 在所有可能的特徵

a 以及他們所有可能的切分點

a中,選擇基尼指數最小的特徵及其對應的切分點作為最優特徵與最優切分點。依最優特徵與最優切分點,從現結點生成兩個子結點,將訓練資料集依特徵分配到兩個子結點中去。

(3) 對兩個子結點遞迴地呼叫(1),(2),直至滿足停止條件。

(4) 生成 cart 決策樹。

樣本集合

d 的基尼指數

gini(d

)=1−

∑k=1

k(|c

k||d

|)2 特徵

a 條件下集合

d的基尼指數:

gini(d

,a)=

|d1|

|d|gini(d

1)+|

d2||

d|gini(d

2)結點中的樣本個數小於預訂閾值

樣本集的基尼指數小於預定閾值

沒有更多特徵

子集生成演算法

劉汝佳書上的內容 下文提到的集合 其元素預設為0 n 1 n 個 意思就是一次選乙個 放到 裡 include include include include include include include include include include include include includ...

子集生成演算法

子集生成演算法屬於暴力法中一類非常重要的演算法.給定乙個集合,請寫乙個演算法,得到其所有的子集.這裡假定該集合不存在重複的元素.舉個栗子,給定集合 1,2,3 你返回這樣一堆子集 1 2 3 1,2 1,3 2,3 1,2,3 根據離散數學的知識,我們可以知道,乙個長度為n的集合的子集有2n個,集合...

直線生成演算法

目的 理解基本圖形元素光柵化的基本原理 掌握一種基本圖形元素光柵化演算法 利用opengl實現直線光柵化的 dda演算法。要求 根據所給的直線光柵化的示範源程式,在計算機上編譯執行,輸出正確結果 了解和使用opengl的生成直線的命令,來驗證程式執行結果。include include includ...