我使用r隨機森林包來預測基於氨基酸序列的蛋白質對之間的距離,主要興趣是接近(距離較小)的蛋白質。我的訓練數據集由10k對蛋白質和它們之間的實際距離組成。然而,極少數蛋白質對(小於0.2%)之間的距離很小,問題在於訓練的隨機森林在預測距離較遠的蛋白質之間的距離方面變得非常準確,並且對於距離較短的蛋白質非常不利他們。我嘗試在訓練數據中對距離較遠的蛋白質進行下采樣,但結果仍然不好。我更喜歡關閉蛋白質(這些蛋白質之間的距離很小)。 存在的過擬合,因爲我的訓練精度爲78一個非常明確的信號,我的測試精度是51% 任何建議高度讚賞隨機森林對不平衡數據的退化
0
A
回答
0
一對夫婦建議:
1)看GBM的從gbm
包。
2)創建更多功能來幫助RF瞭解驅動距離的原因。
3)繪製錯誤與單個變量來尋找什麼是驅動關係。 (GGPLOT2非常適合此尤其使用colour
和size
選項。)
4)你也可以分配1或0至基於距離y變量(即,如果距離< X;設置爲1 /如果距離> = x;設爲0)。一旦你有兩個類,你可以使用RF中的strata參數來創建均勻平衡的採樣,並使用RF的importance()和varImpPlot()函數來查看哪些變量正在推動距離的差異。
5)嘗試使用距離相關變量的日誌。射頻通常非常適合補償非線性,但它不會因爲嘗試而受傷。
我的猜測是,#2是你想花時間在哪裏,儘管它也是最難的,需要最多的思考。
相關問題
- 1. 隨機森林的二進制數據
- 2. 大數據集上的隨機森林
- 3. python中的隨機森林
- 4. 隨機森林在R:新因子水平在訓練數據
- 5. P值爲隨機森林
- 6. 隨機森林分析
- 7. OpenCV - 隨機森林示例
- 8. 加權隨機森林
- 9. 對一小組標記數據的隨機森林分類器
- 10. 隨機森林參數「keep.forest」的含義
- 11. 具有NaN值的隨機森林
- 12. 隨機森林中的子集
- 13. 隨機森林的高OOB錯誤率
- 14. 隨機森林中的ValueError(Python)
- 15. 隨機森林中的套袋和max_feature
- 16. 隨機森林樹的終點
- 17. scikit-learn中的隨機森林解釋
- 18. 隨機森林是AdaBoost的特例嗎?
- 19. R中的隨機森林算法
- 20. ScikitLearn中的Undersampling vs class_weight隨機森林
- 21. 隨機森林中的樹細節
- 22. 刪除隨機森林的訓練數據集中的行
- 23. 根據隨機森林物體預測響應填充數據
- 24. 具有比數據點更多功能的隨機森林
- 25. 隨MLR包隨機調整隨機森林截止點
- 26. 靈敏度R隨機森林
- 27. 監督學習隨機森林通過
- 28. 隨機森林:查找相關功能
- 29. R文本挖掘和隨機森林
- 30. 多變量隨機森林與opencv
您有一個數據不平衡的情況。 0.2%是微不足道的,所以模型(隨機森林)忽略它們。如果您的測試集包含更多的距離較遠的數據,則應將它們移動到訓練集並使用交叉驗證來測試準確性。這可能不夠,因此小距離採樣的重採樣是下一步(搜索'不平衡數據重採樣') – topchef 2013-03-21 13:48:34