gpt4 book ai didi

python - 改变随机森林中每棵树的权重

转载 作者:太空宇宙 更新时间:2023-11-03 19:45:47 27 4
gpt4 key购买 nike

我目前正在 scikit-learn 下研究随机森林。

是否有可能改变生成的随机森林中使用的每个估计器的权重?

最佳答案

Are you asking how to change the weights of each estimator individually or how to change the answer weight of each tree in the voting system when doing predict()?

当你有一个拟合的随机森林时,参数 estimators_ 返回决策树数组,并且所有决策树都可以单独编辑,例如:

from sklearn.ensemble import RandomForestClassifier

model = RandomForestClassifier(n_estimators=2)

df = pd.DataFrame([[1, True], [2, False]])

model.fit(df[0].to_numpy().reshape(-1,1), df[1])

print(model.estimators_)

输出:

[DecisionTreeClassifier(ccp_alpha=0.0, class_weight=None, criterion='gini',
max_depth=None, max_features='auto', max_leaf_nodes=None,
min_impurity_decrease=0.0, min_impurity_split=None,
min_samples_leaf=1, min_samples_split=2,
min_weight_fraction_leaf=0.0, presort='deprecated',
random_state=1942352063, splitter='best'),
DecisionTreeClassifier(ccp_alpha=0.0, class_weight=None, criterion='gini',
max_depth=None, max_features='auto', max_leaf_nodes=None,
min_impurity_decrease=0.0, min_impurity_split=None,
min_samples_leaf=1, min_samples_split=2,
min_weight_fraction_leaf=0.0, presort='deprecated',
random_state=1414900336, splitter='best')]

因此,您可以仅使用 model.estimators_[0] 选择第一个。

然后,如果您阅读 Decision tree docu ,您可以更改 feature_importances_ .

如果您的问题是如何更改随机森林投票系统,那么我建议您选择look at the code ,但让我告诉您,修改此功能并不是一个好的决定。

如您所见here ,随机森林对每个输出采用(所有树中)最大的概率,因此您可以单独处理每个决策树的预测概率。

关于python - 改变随机森林中每棵树的权重,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60146553/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com