首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >样本少的随机森林& test_scores的变异

样本少的随机森林& test_scores的变异
EN

Data Science用户
提问于 2023-01-13 12:31:24
回答 2查看 19关注 0票数 1

我正在用75个样本构建一个RandomForestRegressor。Y(在train_test_split之后)的分布如下。(蓝色列车和红色测试)

保持test_size=0.3 (稍等),并在训练集上执行GridSearchCV,并使用生成的best_params_初始化一个新模型,我将得到一个0.83的测试分数。

但是当我第二次运行这个测试(另一次随机测试,火车分裂)时,准确度甚至会下降到与0.35一样低。对于这个模型,我重复了分数检查(R^2) 100次,下面是它的分布。

代码语言:javascript
复制
sco =[]
for i in range(0,100):
    X_train, X_test, y_train, y_test = train_test_split(X,y,test_size=0.30)
    score = best_grid.score(X_test,y_test)
    sco.append(score)
sns.histplot(data=sco)

假设异常值导致R2在测试集中发生这样的变化,我决定删除异常值(数据集降到66个样本)并重新训练模型。下面是删除异常值后目标yD9

然而,按照与模型相同的步骤,分数下降得更远,对0.20来说很奇怪。迭代运行的分数检查如下所示。在大多数测试中,R2保持在0.5以下。

知道为什么下降了吗?

EN

回答 2

Data Science用户

发布于 2023-01-13 12:37:18

您删除的这些“异常值”可能并不是真正的问题,也许实际上可以更容易地预测更常见的情况,并显著增加R^2,这就是为什么去除它们之后性能下降的原因。或者还有很多其他的原因。

票数 0
EN

Data Science用户

发布于 2023-01-13 19:49:52

您有75个样本,这不够有意义的机器学习数据。其结果是不同运行之间的性能差异很大。

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

https://datascience.stackexchange.com/questions/117746

复制
相关文章

相似问题

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