集成學習-Stacking

       在集成學習中,結合策略也是影響集成模型性能的重要因素之一。傳統的結合策略有多數投票、加權平均等。Stacking的本質是設計合適的結合策略,達到比傳統結合策略更優的集成效果。首先,Stacking訓練一組基學習器,用以參與後續的集成構建。其次,算法將這些學習器的輸出和期望的樣本標籤視爲新的學習任務,通過機器學習或其他策略得到一個新的模型,其中模型的輸入爲基學習器的輸出,目的是通過構建的新模型使基學習器的輸出能夠更好的逼近理想輸出Stacking着重於集成學習中的結合策略。

僞代碼如下所示:

Stacking

輸入:

訓練集D={(x1,y1), (x2,y2), ··· , (xm,ym)};

基學習器訓練方法;

次級學習算法;

基學習器個數T

Step1:

根據基學習器訓練方法訓練T個基學習器;

Step2:

T個基學習器的輸出進行整合,將其作爲次級訓練集和D´;

Step3:

利用次級學習算法對新訓練集{ D´, Y}進行訓練,得到次級學習器H; // H可視爲各基學習器輸出的加權。

輸出:

次級學習器H

爲了更進一步說明,Stacking原理圖如下:

 

 

 

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