摘自《數據挖掘導論》第五章

組合(ensemble)或分類器組合(classifier combination)方法:由訓練數據構建一組基分類器(base classifier),然後通過對每個基分類器的預測進行投票來進行分類。

組合方法的基本原理

考慮25個二元分類器的組合,其中每一個分類器的誤差為 varepsilon

如果基分類器是相互獨立的,則僅當超過一半的基分類器都預測錯誤時,組合分類器才會做出錯誤的預測。這種情況下,組合分類器的誤差率為:

下圖是對於不同的基分類器誤差率( varepsilon ),25個二元分類器的組合分類器誤差率。

上圖中,對角線表示所有基分類器都是等同的情況。實線表示所有基分類器獨立時的情況。當 varepsilon >0.5時,組合分類器的性能比不上基分類器。

上述例子說明:組合分類器的性能優於單個分類器必須滿足兩個必要的條件:

  • 基分類器之間相互獨立
  • 基分類器應當好於隨機猜測分類器

實際上,很難保證基分類器之間完全獨立。儘管如此,我們看到在基分類器輕微相關的情況下,組合方法可以提高分類的準確率。

構建組合分類器的方法

1 .通過處理訓練數據集

這種方法根據某種抽樣分布,通過對原始數據進行再抽樣來得到多個訓練集。抽樣分布決定一個樣本被選做訓練的可能性大小,並且可能因試驗而異。袋裝(bagging)和提升(boosting)是兩種處理訓練集的組合方法。

2 . 通過處理輸入特徵

在這種方法中,通過選擇輸入特徵的子集來形成每個訓練集。子集可以隨機選擇,也可以根據領域專家的建議選擇。

一些研究表明,對那些含有大量冗餘特徵的數據集,這種方法的性能非常好。隨機森林(random forest)就是一種處理輸入特徵的組合方法。

3 .通過處理類標號

這種方法適用於類數足夠多的情況。

to be continued...

4 .通過處理學習演算法

許多學習演算法都可以這樣來處理:在同一個訓練數據集上多次執行演算法可能得到不同的模型。例如,通過改變一個人工神經網路的拓撲結構或各個神經元之間的聯繫的初始權值,就可以得到不同的模型。同樣,通過在樹生成過程中注入隨機性,可以得到決策樹的組合分類器。例如,在每一個結點上,可以隨機地從最好的k個屬性中選擇一個屬性,而不是選擇該節點上最好的屬性來劃分。

前三種屬於一般性的方法,第四種方法依賴於使用的分類器類型。

組合方法的一般過程

1 .從原始數據集創建訓練數據集。訓練數據集的大小一般和原始數據保持一致,但樣本的分布可能不同。

2 .為每個訓練集構建一個基分類器。

3 .通過組合基分類器的預測來對檢驗樣本進行分類。可以對單個預測值進行多數表決,或用基分類器的準確率對每個預測值進行加權來得到類標號。

組合方法對不穩定的分類器效果較好。不穩定的分類器是對訓練集微小的變化都很敏感的基分類器。不穩定的分類器包括:決策樹,基於規則的分類器和人工神經網路。

訓練樣本的可變性是分類器誤差的主要來源之一。通過聚集在不同訓練集上構建的基分類器,有助於減少這種類型的誤差。

偏倚-方差分解

to be continued...


推薦閱讀:
相关文章