调整K折交叉验证的测试大小

时间:2018-10-01 08:14:22

标签: python machine-learning random-forest cross-validation

我正在寻找在Python中的随机森林回归器上使用k折交叉验证的方法。我知道k是指数据集中的折叠数,但是我该如何调整测试集的大小?假设我想以十种不同的方式拆分数据,但是在每一折中我都希望将数据拆分为50/50,我该怎么做?这是我目前拥有的;

from sklearn.cross_validation import cross_val_predict
from sklearn.ensemble import RandomForestRegressor as rfr

<wasn't sure how to include the data as its a big file>

# BUILD RANDOM FOREST MODEL
rfmodel = rfr(n_estimators = 100, random_state = 0)

# make cross validated predictions
cv_preds = cross_val_predict(rfmodel, x, y, cv=10)
cv_preds = (np.around(cv_preds, 2))

我知道RF不一定需要k折,但是出于这个项目的目的,这是我需要做的。

编辑:由于我可能没有足够好地描述我的问题,我将尝试重新表达。假设我有100个k = 5的观察值,而不是将观察值分成五个相等大小的折叠,对k-1进行训练并测试剩余的折叠,我想做的是将100个观察值随机分配到50 / 50次火车测试拆分,运行模型,然后将100个观测值重新分配到另一个50/50拆分中,然后再次运行模型。然后我会做5次。

0 个答案:

没有答案