溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何解析Stacking和Blending方式

發(fā)布時(shí)間:2022-01-15 17:32:34 來源:億速云 閱讀:156 作者:柒染 欄目:大數(shù)據(jù)

本篇文章給大家分享的是有關(guān)如何解析Stacking和Blending方式,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

一.Stacking思想簡(jiǎn)介

1.Stacking的思想是一種有層次的融合模型,比如我們將用不同特征訓(xùn)練出來的三個(gè)GBDT模型進(jìn)行融合時(shí),我們會(huì)將三個(gè)GBDT作為基層模型,在其上在訓(xùn)練一個(gè)次學(xué)習(xí)器(通常為線性模型LR),用于組織利用基學(xué)習(xí)器的答案,也就是將基層模型的答案作為輸入,讓次學(xué)習(xí)器學(xué)習(xí)組織給基層模型的答案分配權(quán)重。

2.下圖是個(gè)簡(jiǎn)單的例子,A、B是學(xué)習(xí)器,C、D、E是進(jìn)行答案再組織的次學(xué)習(xí)器,次學(xué)習(xí)器會(huì)組織利用底層模型提供的答案。

如何解析Stacking和Blending方式

二.Stacking過程解讀

       Stacking的主要思想是訓(xùn)練模型來學(xué)習(xí)使用底層學(xué)習(xí)器的預(yù)測(cè)結(jié)果,下圖是一個(gè)5折stacking中基模型在所有數(shù)據(jù)集上生成預(yù)測(cè)結(jié)果的過程,次學(xué)習(xí)器會(huì)基于模型的預(yù)測(cè)結(jié)果進(jìn)行再訓(xùn)練,單個(gè)基模型生成預(yù)測(cè)結(jié)果的過程是:            

         *首先將所有數(shù)據(jù)集生成測(cè)試集和訓(xùn)練集(假如訓(xùn)練集為10000,測(cè)試集為2500行),那么上層會(huì)進(jìn)行5折交叉檢驗(yàn),使用訓(xùn)練集中的8000條作為喂養(yǎng)集,剩余2000行作為驗(yàn)證集(橙色)

如何解析Stacking和Blending方式

        *每次驗(yàn)證相當(dāng)于使用了藍(lán)色的8000條數(shù)據(jù)訓(xùn)練出一個(gè)模型,使用模型對(duì)驗(yàn)證集進(jìn)行驗(yàn)證得到2000條數(shù)據(jù),并對(duì)測(cè)試集進(jìn)行預(yù)測(cè),得到2500條數(shù)據(jù),這樣經(jīng)過5次交叉檢驗(yàn),可以得到中間的橙色的5*2000條驗(yàn)證集的結(jié)果(相當(dāng)于每條數(shù)據(jù)的預(yù)測(cè)結(jié)果),5*2500條測(cè)試集的預(yù)測(cè)結(jié)果。            

        *接下來會(huì)將驗(yàn)證集的5*2000條預(yù)測(cè)結(jié)果拼接成10000行長(zhǎng)的矩陣,標(biāo)記為A1,而對(duì)于5*2500行的測(cè)試集的預(yù)測(cè)結(jié)果進(jìn)行加權(quán)平均,得到一個(gè)2500一列的矩陣,標(biāo)記為B1。  

        *上面得到一個(gè)基模型在數(shù)據(jù)集上的預(yù)測(cè)結(jié)果A1、B1,這樣當(dāng)我們對(duì)3個(gè)基模型進(jìn)行集成的話,相于得到了A1、A2、A3、B1、B2、B3六個(gè)矩陣。

如何解析Stacking和Blending方式

        *之后我們會(huì)將A1、A2、A3并列在一起成10000行3列的矩陣作為training data,B1、B2、B3合并在一起成2500行3列的矩陣作為testing  data,讓下層學(xué)習(xí)器基于這樣的數(shù)據(jù)進(jìn)行再訓(xùn)練。

       *再訓(xùn)練是基于每個(gè)基礎(chǔ)模型的預(yù)測(cè)結(jié)果作為特征(三個(gè)特征),次學(xué)習(xí)器會(huì)學(xué)習(xí)訓(xùn)練如果往這樣的基學(xué)習(xí)的預(yù)測(cè)結(jié)果上賦予權(quán)重w,來使得最后的預(yù)測(cè)最為準(zhǔn)確。

以上就是Stacking的思想,進(jìn)行Stacking集成同樣需要基學(xué)習(xí)器盡量保持獨(dú)立,效果相近。

如何解析Stacking和Blending方式

三.Stacking特點(diǎn)

 使用stacking,組合1000多個(gè)模型,有時(shí)甚至要計(jì)算幾十個(gè)小時(shí)。但是,這些怪物般的集成方法同樣有著它的用處:        

      (1)它可以幫你打敗當(dāng)前學(xué)術(shù)界性能最好的算法          

      (2)我們有可能將集成的知識(shí)遷移到到簡(jiǎn)單的分類器上          

      (3)自動(dòng)化的大型集成策略可以通過添加正則項(xiàng)有效的對(duì)抗過擬合,而且并不需要太多的調(diào)參和特征選擇。所以從原則上講,stacking非常適合于那些“懶人”        

      (4)這是目前提升機(jī)器學(xué)習(xí)效果最好的方法,或者說是最效率的方法human ensemble learning 。

四.Stacking和Blending對(duì)比

1.Blending方式和Stacking方式很類似,相比Stacking更簡(jiǎn)單點(diǎn),兩者區(qū)別是:        

     *blending是直接準(zhǔn)備好一部分10%留出集只在留出集上繼續(xù)預(yù)測(cè),用不相交的數(shù)據(jù)訓(xùn)練不同的 Base Model,將它們的輸出?。訖?quán))平均。實(shí)現(xiàn)簡(jiǎn)單,但對(duì)訓(xùn)練數(shù)據(jù)利用少了。          

2.blending 的優(yōu)點(diǎn)是:比stacking簡(jiǎn)單,不會(huì)造成數(shù)據(jù)穿越(所謂數(shù)據(jù)創(chuàng)越,就比如訓(xùn)練部分?jǐn)?shù)據(jù)時(shí)候用了全局的統(tǒng)計(jì)特征,導(dǎo)致模型效果過分的好),generalizers和stackers使用不同的數(shù)據(jù),可以隨時(shí)添加其他模型到blender中。                

3.缺點(diǎn)在于:blending只使用了一部分?jǐn)?shù)據(jù)集作為留出集進(jìn)行驗(yàn)證,而stacking使用多折交叉驗(yàn)證,比使用單一留出集更加穩(wěn)健

4.兩個(gè)方法都挺好,看偏好了,可以一部分做Blending、一部分做Stacking。        

以上就是如何解析Stacking和Blending方式,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI