首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >随机森林预测

随机森林预测
EN

Data Science用户
提问于 2019-07-31 06:53:22
回答 1查看 151关注 0票数 1

比方说,我想对员工是否会流失进行分类。在我的随机森林中,我有6种估计量,其中3种是预测员工流失的,另一种是预测员工保留的。简而言之,3种估计量=预测会产生波动,3种估计量=预测将保持。

我知道,随机森林的工作方式是为每个班级获得最多的选票,或者通过获得模式来实现。

问题是在这种情况下,随机森林是如何预测的?

EN

回答 1

Data Science用户

回答已采纳

发布于 2019-07-31 07:21:57

好像它预测了头等舱。Sklearns随机森林实现通过将每个估计器预测的概率平均为一个形状数组(n_samples,n_classes),为每个类生成概率,然后使用np.take(np.argmax())选择最高的概率,类似于以下内容:

代码语言:javascript
复制
# Pretend "a" is our averaged predictions for the forest. So the first sample is predicting 78% probability
class 0, 22% class 1. The second has the probabilities reversed and the third is 50/50 split. 

a = np.array([[0.78, 0.22], [0.22, 0.78], [0.5, 0.5]])

np.argmax(a, axis=1)

输出为array([0, 1, 0], dtype=int64)。这些是数组中每个样本中最高值的索引,对于平分的样本,您可以看到它正在选择类0。

编辑:

如果您想亲自查看它,相关代码是sklearn的forest.py中的第540行:

https://github.com/scikit-learn/scikit-learn/blob/master/sklearn/ensemble/forest.py

票数 1
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/56658

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档