随机森林的手工k-fold交叉验证



我正在使用随机森林分类器,我想执行k-fold交叉验证。我的数据集已经分成了10个不同的子集,所以我想用它们来做k-fold交叉验证,而不使用随机分割数据集的自动函数。在Python中可能吗?

Random Forest没有partial_fit()方法,所以我不能做增量拟合。

尝试kf = StratifiedKFold(n_splits=3, shuffle=True, random_state=123)来平均分割你的数据

try kf=TimeSeriesSpit(n_splits=5)按时间戳进行分割尝试kf = KFold(n_splits=5, random_state=123, shuffle=True)在分割之前对训练数据进行洗牌。

for train_index, test_index in kf.split(bryant_shots):
cv_train, cv_test = df.iloc[train_index], df.iloc[test_index]
#fit the classifier

您还可以通过分组或类别进行策略,并使用kfold获得这些分组的平均值。它对于理解你的数据是超级强大的。

最好将所有子集连接起来,然后对它们进行k-fold分割,但这里有另一种方法:

for in range(10):
model = what_model_you_want
model.fit(dataset.drop(i_th_subset))
prediction = model.predict(i_th_subset)
test_result = compute_accuracy(i_th_subset.target, prediction)

相关内容

  • 没有找到相关文章

最新更新