我使用的隨機森林包中的R(R版本2.13.1,隨機森林版本4.6-2),用於迴歸和注意到我的結果的顯著偏壓:預測誤差是依賴於值的響應變量。預測值偏高,預測值偏低。起初我懷疑這是我的數據的結果,但下面這個簡單的例子表明,這是固有的隨機森林算法:隨機森林中的R線性迴歸尾巴mtry
n = 50;
x1 = seq(1,n)
x2 = matrix(1, n, 1)
predictors = data.frame(x1=x1, x2=x2)
response = x2 + x1
rf = randomForest(x=predictors, y=response)
plot(x1, response)
lines(x1, predict(rf, predictors), col="red")
毫無疑問樹方法有其侷限性,當談到線性度,但即使是最簡單的迴歸樹,例如R中的tree()不會表現出這種偏見。我無法想象社區會不知道這一點,但沒有發現任何提及,它通常如何糾正?感謝您的任何意見
編輯:對於這個問題的例子是有缺陷的,請參閱「隨機森林爲R中迴歸 - 響應分佈依賴偏見」在堆棧換取更好的治療https://stats.stackexchange.com/questions/28732/randomforest-for-regression-in-r-response-distribution-dependent-bias
謝謝Joran。有些東西感覺不對,我很高興看到有解決方案。不幸的是,我的工作,我已經調整效果不大的參數(當然除了nTrees的),所以我大多忽略了他們對於這種「簡單」的例子 - 我猜偏見確實只在我的情況存在,感謝足夠再次 – rumbleB
公平。 ..雖然如果它僅限於你的數據,它不是真的在射頻偏見,是嗎? ;)你只是難以模擬數據! – joran
燁,在RF偏置是可以避免的 - 我已經改變了這個問題的標題,這樣可能更有助於人們對未來 – rumbleB