在IBM SPSS Modeler中,每一個算法都會有相應的默認參數設置,對初學者來講,即便不是很懂算法,也能夠生成模型結果,但在實際項目中,咱們爲了使得模型更加的優化,提高模型的準確率,常常會對算法的參數作一些相應的調整,那麼今天,咱們給你們介紹兩個參數,分別是Bagging和Boosting,讓你們瞭解下它們是怎麼用的,能帶來什麼樣的模型優化結果。html
用途:算法
Bagging和Boosting都是用來提升模型準確率的方法。網絡
計算邏輯:函數
Bagging是Bootstrap Aggregating的一種方式,是一種根據均勻機率分佈從數據集中重複抽樣(有放回的)的技術。每一個自助樣本集都和原數據集同樣大。因爲抽樣過程是有放回的,所以一些樣本可能在同個訓練數據集中出現屢次,而其它一些卻可能被忽略。假設我設置了Bagging的次數是10,也就是說我會根據上面的重複抽樣方式,抽取10份數據,分別構建10個模型,獲得10個預測結果,對最後的斷定,若是是分類問題採用投票方式,對迴歸問題採用簡單平均方法。學習
Boosting主要是AdaBoost (Adaptive Boosting),初始化時對每個訓練集賦相等的權重1/n,而後用該學算法對訓練集訓練t輪,每次訓練後,對訓練失敗的訓練例賦以較大的權重,也就是讓學習算法在後續的學習中集中對比較難的訓練例進行學習,從而獲得一個預測函數序列h_1,⋯, h_m , 其中h_i也有必定的權重,預測效果好的預測函數權重較大,反之較小。最終的預測函數H對分類問題採用有權重的投票方式,對迴歸問題採用加權平均的方法對新示例進行判別。大數據
Bagging與Boosting的區別:優化
兩者的主要區別是取樣方式不一樣。Bagging採用均勻取樣,而Boosting根據錯誤率來取樣,所以Boosting的分類精度要優於Bagging。Bagging的訓練集的選擇是隨機的,各輪訓練集之間相互獨立,而Boosting的各輪訓練集的選擇與前面各輪的學習結果有關;Bagging的各個預測函數沒有權重,而Boosting是有權重的;Bagging的各個預測函數能夠並行生成,而Boosting的各個預測函數只能順序生成。對於像神經網絡這樣極爲耗時的學習方法,Bagging可經過並行訓練節省大量時間開銷。spa
Bagging和Boosting均可以有效地提升分類的準確性。在大多數數據中,Boosting的準確性比Bagging高;在有些數據集中,Boosting會引發退化------過分擬合。3d
IBM SPSS Modeler中的應用: htm
在IBM SPSS Modeler中,能夠設置Bagging或Boosting功能的在算法包括:
Neural
Network
CHAID
QUEST
C&RT
Linear
以CHAID決策樹爲例:
接下來咱們經過電信流失客戶分析模型的建立來體驗下這兩個參數的設置對預測結果的影響。
首先,咱們建立一數據流文件 ,以下圖:
Step1:鏈接數據源Excel文件,文件內容以下:
Step2:類型節點設置影響因素及目標:
Step3:選擇CHAID決策樹算法,並使用默認參數設置生成模型:
Step4:生成的模型結果,能夠在摘要面板查看默認的參數設置內容:
Step5:經過評估節點查看模型準確率爲84.49%:
接下來,咱們第一次更改算法的設置內容,在構建選項的目標面板中,選中「加強模型穩定性」,在總體面板中,設置模型數量爲「10」。
從新運行模型後,能夠看到,獲得10個模型結果及各自的準確率:
也能夠看到該算法中參數設置的內容:
再用評估節點,看到新模型準確率與以前的準確率相比,增長到88.16%:
一樣的道理,若是咱們設置爲Boosting選項,生成的模型能夠看到它的準確度緩慢提高:
一樣的,用評估節點,能夠看到模型的準確率會增長到92.03%:
總結:
經過上面的例子,咱們能夠看到使用Bagging和Boosting對模型帶來的影響,能夠在實際項目中嘗試着使用,固然啦,由於使用這兩個選項後,它的計算量會大大增長,好比原來要構建一個決策樹模型,如今要構建N個(取決於你設置的模型個數),所以計算量是原來的N倍,因此,請耐心等待……
更多大數據與分析相關行業資訊、解決方案、案例、教程等請點擊查看>>>
截止時間:2016年10月30日