sklearn-机器学习-随机森林

本文介绍了sklearn中的RandomForestRegressor,详细说明了回归树的准则,如MSE、Friedman MSE和MAE。重点讨论了随机森林回归的核心接口如fit、predict和score,并指出其没有predict_proba接口。此外,探讨了机器学习调参的基本思想,强调找到复杂度与泛化能力的平衡。最后,通过乳腺癌数据展示了随机森林的调参过程,包括调整max_depth、max_features和min_samples_split等参数。
摘要由CSDN通过智能技术生成

1RandomForestRegressor随机森林回归

class sklearn.ensemble.RandomForestRegressor (n_estimators=’warn’, criterion=’mse’, max_depth=None, min_samples_split=2, min_samples_leaf=1, min_weight_fraction_leaf=0.0, max_features=’auto’, max_leaf_nodes=None, min_impurity_decrease=0.0, min_impurity_split=None, bootstrap=True, oob_score=False, n_jobs=None, random_state=None, verbose=0, warm_start=False) 所有的参数,属性与接口,全部和随机森林分类器一致。仅有的不同就是回归树与分类树的不同,不纯度的指标, 参数Criterion不一致。

参数 criterion

回归树衡量分枝质量的指标,支持的标准有三种:

(1)输入"mse"使用均方误差mean squared error(MSE),父节点和叶子节点之间的均方误差的差额将被用来作为 特征选择的标准,这种方法通过使用叶子节点的均值来最小化L2损失

(2)输入“friedman_mse”使用费尔德曼均方误差,这种指标使用弗里德曼针对潜在分枝中的问题改进后的均方误差

(3)输入"mae"使用绝对平均误差MAE(mean absolute error),这种指标使用叶节点的中值来最小化L1损失

最重要的属性和接口,都与随机森林的

机器学习中,特别是在文本处理和特征提取阶段,`MAX_FEATURES`是一个常见的参数,特别是在使用像scikit-learn库中的`CountVectorizer`或`TfidfVectorizer`这样的向量化工具时。这个参数控制了转换后的文档向量所包含的最多不同特征(单词或术语)的数量。 **如何设置`MAX_FEATURES`:** 1. **理解上下文**: 首先,你需要明确你的目标任务是什么。如果目标是减少计算资源消耗并提高模型速度,你可以选择较小的值;如果追求更好的信息保留,则可能需要较大的值。 2. **经验值**: 对于新手,通常可以从一个相对较大的值开始,比如几千到几万,看模型性能如何。然后逐渐减小,直到找到最优值。 3. **使用自动特征选择**: 可以使用`TfidfVectorizer`的`max_df`和`min_df`参数,它们可以帮助筛选出最常见的和不常见的词。同时,还可以用`SelectKBest`或`chi2`等方法进行特征重要性分析。 4. **交叉验证**: 使用交叉验证来评估不同`MAX_FEATURES`下的模型性能。这能帮助你找到在泛化能力上表现最好的特征数量。 5. **调整范围**: 根据数据集大小、词汇表规模以及内存限制,设置一个合理的`MAX_FEATURES`范围,例如(100, 10000) 或 (None, 自动计算)。 6. **注意稀疏性**: 当`MAX_FEATURES`接近于词汇表大小时,向量会变得非常稀疏,这可能会影响某些算法(如朴素贝叶斯)的效率。在这种情况下,考虑降低`MAX_FEATURES`以保持向量的稠密度。 **相关问题--:** 1. `MAX_FEATURES`对模型效果有何影响? 2. 如何根据数据集特点选择合适的`MAX_FEATURES`? 3. 是否总是应该尽可能大?还是有最小值建议?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值