我正在使用R语言的randomForest
包对一些生物数据进行回归分析。我的训练数据大小为38772 X 201
。
我想知道,对于树的数量ntree
和每层变量的数量mtry
,什么样的值是合适的?有没有一个近似的公式来找到这些参数值?
我的输入数据中的每一行是一个200个字符的氨基酸序列,我希望构建一个回归模型,使用这样的序列来预测蛋白质之间的距离。
回答:
mtry的默认值是相当合理的,因此没有必要去调整它。有一个函数tuneRF
可以用来优化这个参数。然而,请注意它可能会引起偏差。
对于自助法复制的数量没有优化。我通常从ntree=501
开始,然后绘制随机森林对象的图。这将显示基于OOB错误的错误收敛情况。你需要足够的树来稳定错误,但又不能太多,以免使集合过度相关,导致过拟合。
需要注意的是,变量间的相互作用稳定速度比错误慢,因此,如果你有大量的独立变量,你需要更多的复制。我建议将ntree保持为奇数,以便可以打破平局。
对于你的问题维度,我建议从ntree=1501
开始。我还建议你参考一些已发表的变量选择方法来减少你的独立变量数量。