1. 程式人生 > >決策樹相關基礎知識

決策樹相關基礎知識

隨機 生成 features 概念 1-1 nod values 當前 最優

核心思想:

樣本集D,屬性集A

setTree(D,A):
    生成結點node
    if(樣本最終分類相同)
        node標記為該分類的葉結點
        return
    if(樣本在A的某一個屬性上取值相同 || 屬性集合A已經是空集)
        node標記為葉結點並標記為數目最多的屬性取值
    #選取最佳劃分屬性
    for features in A:
        計算每一個屬性劃分得到的指標數值(香農熵/信息熵,基尼指數...)
    選取出指標最優的屬性a
    for values in a:
        為該取值的樣本D'分配一個子結點
        #if 若該取值樣本不存在,分配一個標記為父節點樣本最多屬性取值的子節點(?)
        else
            setTree(D',A-valus)
    return

相關概念及公式
共有D組數據
K表示數據的某一種屬性的一種樣式,如西瓜色澤的:淺白,青綠,烏黑。
技術分享圖片表示某一種屬性的第k個取值所占的比例

信息熵表示當前計算屬性的純度,Ent(D)越小,D純度越高。
信息熵(又稱香農熵):
技術分享圖片

信息增益表示用數據的某一種屬性來劃分後所獲的“純度提升”,信息增益越大,提升越大。A表示某一種(離散)屬性,共有V種不同的取值,v表示第v個取值(分支)。
信息增益:
技術分享圖片

由於信息增益對於分類較多的屬性有所偏好,所以為了平衡這種偏向便有了增益率。
增益率:
技術分享圖片

若屬性a的可能取值數目(V)越多,固有值通常會越大。
固有值:
技術分享圖片

在以上屬性使用時,可遵循一定的組合,如先選出信息增益高於平均水平的屬性,再用增益率進行篩選。

基尼指數反映了從數據集D中隨機抽取兩個樣本其類別不一致的概率。
基尼指數:
技術分享圖片

屬性a的基尼指數的定義類似。
屬性a的基尼指數:
技術分享圖片

決策樹相關基礎知識