随机森林的模型一般都很大么?

  统计/机器学习 监督式学习 Python    浏览次数:3967        分享
0

就是10w条+特征数据max_depth=30,n_estimators=500

跑出来了800M大小模型,load都慢。。。

 

莫莫莫i   2019-05-08 09:51



   3个回答 
3

你这个森林深度有点大啊,如果你把深度调小点,效果应该差不多。

另外你保存的时候,设置一下compress参数应该会减小很多空间

from sklearn.externals import joblib
joblib.dump(my_rf_model, "rf.pkl", compress=9)
#my_rf_model是你训练好的模型

compress的值是0到9之间,越大表示压缩程度越高。

SofaSofa数据科学社区DS面试题库 DS面经

strong.man   2019-05-08 11:38

您好,调整了一下测试 确实小了很多,参数为(max_depth=30,n_estimators=500, min_samples_leaf= 5),10W条数据 compress=0时是300M+,compress=9时是50M+,这边数据量是有500W+如果按照这个比例的话其实压缩比是6倍左右,还是挺大的,请问下面的只能调整深度参数来解决了么? - 莫莫莫i   2019-05-08 16:02
你的模型还是挺大的,最大深度为30,就意味着一棵树最多有2^29个分叉,2^30个叶节点。你的数据只有10万,应该是不需要这么大的深度。同时min_sample_leaf可能也要调整。有时候为了模型压缩牺牲一点精度是ok的。 - strong.man   2019-05-08 21:38
0

随机森林一般深度不要超过10,不然每棵树过拟合严重,而且就会有你遇到的问题,模型太大,不管是调用还是存储都是问题。

SofaSofa数据科学社区DS面试题库 DS面经

abuu   2020-12-06 12:27

0

我觉得模型选择上挺好的,随机森林固有的两类随机性可以很好的处理特征较多的情况,但是深度有些大了,过拟合有很大的概率会出现,可读性也不会太好。


SofaSofa数据科学社区DS面试题库 DS面经

Cypher   2020-12-11 15:53



  相关主题

python sklean中的决策树是用的哪一种决策树算法?   2回答

python里实现一个简单的决策树   1回答

随机森林中增加树的数量对于偏差和方差的影响   2回答

决策树算法ID3,C4.5和CART的特点、异同?   3回答

决策树可以做多元分类吗?   1回答

决策树剪枝有什么策略或者注意事项?   2回答

树模型有哪些假设?比如,对样本数据的分布有做假设吗?   0回答

怎么理解RandomForest中的max_features?   1回答

怎么得到randomforestregressor里每棵树的预测结果?   1回答

Adaboost里的树有没有可能权重是负数?   1回答

lightgbm使用自定义损失函数后,二分类的预测结果不再是【0,1】区间   0回答

关于knn算法中kd树的问题   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!