線性迴歸模型問題
在線性迴歸模型,發生共線性的問題可能會導致自變數在係數上會有正負號的改變,會造成模型上判斷的錯誤,所以共線性是需要解決的問題之一,要如何知道有共線性問題?遇到共線性問題如何解決?
對於共線性 可以從Variable inflation factor (VIF)發現,如果VIF≧5表示有高度共線性的問題,5≧VIF≧1則有輕微共線性的問題,有些教材會使用容許度(tolerance)作為判斷依據,而容許度跟VIF的關係為 : 容許度=1/VIF,換言之,容許度≦0.2則有高度共線性的問題。
共線性解決的方式如下 :
1.逐步迴歸法(stepwise
regression)
2.差分法 : 將原模型變換為差分模型
3.脊迴歸法(ridge
regression)
決策樹(Decision tree)
決策樹根據使用情況不同時被稱為分類樹或迴歸樹。決策樹的生成是將大量的data按照一定的劃分,逐層分類至不可分或者不需要再分為止,但生成決策樹的分枝太過於繁雜,就需要做到剪枝的動作,將節點(Node)進行刪減,例如 :
maxdepth(Tree的深度),透過了剪枝如果還不夠,必須做到minsplit(每個節點最少要幾個data),minsplit愈小決策樹愈複雜,反之,愈簡單。最後一步complexity
parameter此法為決定精度的參數,如果將CP設太大決策樹將會失去重要性,CP要怎設法對於不同的data及目的都有影響,正確取值必須自行揣測。以下為決策樹最普遍使用的算法 :
1.C4.5(successor
of ID3)
2.CART(Classification
and Regression Tree)
隨機森林(randomForest)
隨機森林是用上述CART的算法建構而成,簡單來說CART就是一棵樹,而隨機森林就是由許多小樹所形成的一座森林,森林的輸出採用多數投票法或是單棵樹輸出結果的平均。其中多數投票法主要用於分類模型;單棵樹輸出結果的平均主要用於回歸模型。
1.首先用N表示原始data數量,用m來表示變數的數量
2.決定一個定值m,此值用來決定一個節點上會使用多少個變量,m<M,在分類模型上m的取值建議為√M;在回歸模型上取值建議為M/3
3.從N個data中做簡單隨機抽樣抽取一部分做為train
data ,未抽到的data做為test
data,來計算錯誤率
4.決定森林中樹的數量(ntree)
: 決策樹的數量愈多,錯誤率趨近於穩定,穩定時的數量通常為ntree適合的棵數
5.最後預測錯誤率,根據每個樹投票的結果取票數最高的一個類別,也要提醒目的的不同對於錯誤率的認知或接受上也會有差異。

