Aggregation總結:Blending和Bootstrap

1. Aggregation

首先舉一個買房的例子,假如你有10個朋友給出了買房的意見,你如何參考這10個人的意見做出決定呢?

  1. 第一種辦法是讓大家投票,每人一票,最後選擇得票數最多的那個選項
  2. 第二種辦法也是投票,與第一種不同的是每個人手裏的票數不一樣,懂行的人可能會分配更多的票數
  3. 第三種辦法是根據具體條件進行判斷:這10個人中,有的人可能注重房源的地理位置,有的人可能更注重交通狀況。根據不同的條件參考不同人的意見。

Aggregation的目的就是要融合多個hypothesis,從而達到更好的預測效果。
以上三種投票方式分別對應了機器學習中的三種Aggregation類型,即Uniform Blending、Linear Blending和Any Blending

2. Uniform Blending

分類與迴歸模型的Uniform Blending

對於多分類模型,Uniform Blending可將得票數最多的那一類作爲最終的分類結果,其中gt(x) 表示我們現有的模型,G(x) 表示混合後的模型:

圖片名稱

對於迴歸模型,Uniform Blending將每一個gt(x) 求平均:

圖片名稱

Uniform Blending的可行性:

f(x) 表示實際的預測結果,gt(x)f(x) 的平方誤差與G(x) 的聯繫可通過如下推導得出:

圖片名稱

(Gf)2 這項表示混合後的模型與真實結果的誤差,即Bias; avg((gtG)2) 表示gt 之間的相異性,即Variance。從推導結果可以看出gt(x)G(x) 在預測誤差上相差了 avg((gtG)2) 這一項,即G(x) 的誤差期望小於或等於任選一個gt(x) 的誤差期望。

3. Linear Blending和Any Blending

Linear Blending

對於迴歸問題,Linear Blending 就是將gt(x) 的結果進行線性組合,使混合後的結果趨近目標值。

圖片名稱

在對α 進行訓練時需採用驗證集,並且通常情況會去掉α0 這個約束。這時候 α<0 表示將模型起了反作用,所以將結果反着用。

Any Blending

注意overfitting問題

圖片名稱

4. Bootstrap (Bagging)

首先回顧一下如何獲得不同的g(x) ,有如下4種方法:

圖片名稱

第一種是從不同的模型得到不同的gt ,第二種是同一種模型設置不同的參數,第三種是設置不同的起始點,第四種是用不同的訓練數據。

bootstrapping 的思想就是利用現有的訓練數據模擬出不同的數據集,從而訓練出不同的gt 。具體做法是在訓練集中進行re-sample,即經過多次有放回採樣獲得多個數據集。

發佈了50 篇原創文章 · 獲贊 703 · 訪問量 55萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章