首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不平衡数据的随机森林回归

不平衡数据的随机森林回归
EN

Stack Overflow用户
提问于 2013-03-21 21:18:56
回答 2查看 2.2K关注 0票数 2

我正在使用随机森林的r包根据蛋白质对的氨基酸序列来预测它们之间的距离,主要关注的是距离较近(距离较小)的蛋白质。我的训练数据集由10k对蛋白质和它们之间的实际距离组成。然而,很少有蛋白质对(小于0.2%)之间的距离很小,问题是经过训练的随机森林在预测距离较大的蛋白质之间的距离时变得非常准确,而对于距离较小的蛋白质来说则非常糟糕。我试图在我的训练数据中对距离很大的蛋白质进行下采样,但结果仍然不好。我更感兴趣的是紧密的蛋白质(那些距离很小的蛋白质对)。由于我的训练准确率为78,测试准确率为51%,因此有一个非常明显的过度拟合的信号。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-21 21:49:48

以下是一些建议:

1)查看gbm包中的GBM。

2)创建更多功能,以帮助RF了解是什么驱动距离。

3)绘制错误与单个变量的关系图,以寻找驱动关系的因素。(尤其是在使用coloursize选项时,ggplot2在这方面非常有用。)

4)您也可以根据距离将1或0赋给y变量(例如,如果距离< x;设置为1/ if distance >= x;设置为0)。一旦您有了两个类,您就可以使用RF中的strata参数来创建均匀平衡的样本,并使用RF的importance()和varImpPlot()函数查看是什么变量驱动了距离的差异。

5)尝试使用距离相关变量的对数。RF通常在补偿非线性方面做得很好,但尝试一下也没什么坏处。

我的猜测是#2是你想要花时间的地方,尽管它也是最难的,也需要最多的思考。

票数 1
EN

Stack Overflow用户

发布于 2019-11-19 14:28:50

我认为考虑到你的问题,可能对你有帮助的是回归的合成少数过采样技术(SMOTER)。有一些关于这个主题的研究。然而,正如您可能遇到的那样,它仍然比它的分类对应物(SMOTE)探索得更少。

我可能会推荐下面引用的论文,这取决于你从研究角度理解它的兴趣程度。我真的很欣赏在生成合成观测值时引入高斯噪声。

如果您对实用的解决方案更感兴趣,第一作者在她的Github页面上提供了一个R实现。https://github.com/paobranco/SMOGN-LIDTA17

如果您更倾向于使用Python,那么我最近发布了一个完全Pythonic的SMOGN算法实现,该实现现已可用,目前正在进行单元测试。https://github.com/nickkunz/smogn

Branco,P.,Torgo,L.,Ribeiro,R. (2017)。"SMOGN:不平衡回归的预处理方法“。机器学习研究论文集,74:36-50。http://proceedings.mlr.press/v74/branco17a/branco17a.pdf

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15548731

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档