为什么随机森林的大小会随着训练样本的增加而增加?

2024-05-08 19:58:38 发布

您现在位置:Python中文网/ 问答频道 /正文

在过去的几个月里,我一直在定期地训练sklearn Random forest。我注意到,当使用joblib将模型导出到一个文件时,文件大小急剧增加,从2.5gb增加到11GB。所有参数保持不变,训练特征的数量保持不变。唯一的区别是训练数据中的例子数量增加了。你知道吗

假设参数保持不变,并且每个树的估计数和深度都是指定的,为什么增加示例数会增加随机林的大小?你知道吗

以下是模型的参数:

RandomForestClassifier(bootstrap=True, class_weight=None, criterion='gini',
        max_depth=None, max_features='sqrt', max_leaf_nodes=None,
        min_impurity_decrease=0.0, min_impurity_split=None,
        min_samples_leaf=20, min_samples_split=2,
        min_weight_fraction_leaf=0.0, n_estimators=1000, n_jobs=-1,
        oob_score=False, random_state=123, verbose=0, warm_start=False)

Tags: 模型nonefalse参数数量randomsklearnmin
1条回答
网友
1楼 · 发布于 2024-05-08 19:58:38

我将min_samples_leaf设置为浮点,然后它是训练数据集的百分比。例如min_samples_leaf=0.01对于每个叶中至少1%的样本。你知道吗

要优化模型的大小,可以在min_samples_leafn_estimators上使用GridSearchCV。除非您有大量的类和特性,否则您可能可以将模型大小减少几个数量级。你知道吗

相关问题 更多 >