一、基尼不純度計算
基尼不純度(Gini impurity)是一種衡量樣本集合純度的指標,通常用於決策樹演算法中。計算基尼不純度的方法為,對於樣本集合D來說,其基尼不純度的計算方法為:
def gini(D): N = len(D) class_counts = {} for data in D: class_counts[data[-1]] = class_counts.get(data[-1], 0) + 1 imp = 1 for cnt in class_counts.values(): imp -= (cnt/N)**2 return imp
上述代碼中,D是樣本集合,每個樣本的最後一個屬性為其類別,class_counts是一個字典,記錄每個類別出現的次數,imp為計算得出的基尼不純度。
二、基尼不純度作為自適應參數
在決策樹演算法中,基尼不純度可以作為自適應參數來選擇最優劃分屬性。通常情況下,選擇基尼不純度較小的屬性作為劃分屬性,使得劃分後的子集更加純凈。這種方式可以實現決策樹對訓練樣本的識別能力,同時避免了過擬合的風險。
三、基尼不純度計算公式
對於樣本集合D來說,其基尼不純度計算公式為:
$$Gini(D)=1-\sum_{k=1}^{K}(\frac{|C_k|}{|D|})^2$$
其中,K為類別數量,Ck為屬於第k類的樣本子集,|Ck|為樣本子集的大小,|D|為樣本集合的大小。
四、基尼不純度的概念
基尼不純度是衡量樣本集合純度的指標,基於統計學和資訊理論的思想,可以用於分類模型的訓練和選擇。基尼不純度越小,表示樣本集合越純凈,能夠更好地用於分類任務。
五、基尼不純度的圖片
下圖展示了兩個二分類問題的決策邊界,其中左邊的決策邊界是通過最小化基尼不純度得出的,而右邊的決策邊界是通過最小化熵得出的。可以看出,基尼不純度和熵在二分類問題上的效果差異並不明顯,但在多分類問題中,熵的計算會更加耗時。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/256771.html