如何获得随机森林多类中一类的预测概率?
Posted
技术标签:
【中文标题】如何获得随机森林多类中一类的预测概率?【英文标题】:How to get the predicted probability for one class in random forest multi-class? 【发布时间】:2021-12-04 03:21:10 【问题描述】:有 6 个班级。我收集了 6 个包含坐标的 CSV。将它们合并为一个后,我训练了随机森林算法来预测类别,并且效果很好。现在我需要找到我预测的那一类的概率。
classifier = RandomForestClassifier(n_estimators=60, criterion="entropy", class_weight="balanced")
classifier.fit(x_train, y_train)
y_pred = classifier.predict(x_test)
classifier.predict([[0.30815389752388, 0.15675216913223267, 0.30418527126312256, 0.13528722524642944, 0.27739858627319336, 0.13911670446395874, 0.1855921745300293, 0.2289518266916275, 0.3659476339817047, 0.20354066789150238, 0.33502599596977234, 0.24855738878250122, 0.4515098035335541, 0.258819043636322, 0.5094516277313232, 0.2201528549194336, 0.5327972173690796, 0.24092578887939453, 0.2740940749645233, 0.47397956252098083, 0.3831675946712494, 0.46537867188453674, 0.24977758526802063, 0.6157410144805908, 0.3534936010837555, 0.4986037611961365, 0.3416776955127716, 0.882462739944458, 0.2505697011947632, 0.7096155881881714]])
【问题讨论】:
你可以使用classifier.predict_proba(x_test)
。
【参考方案1】:
您可以使用y_proba = classifier.predict_proba(x_test)
。
这将返回一个包含六列的数组,因为您有 6 个类。列的顺序将与classifier.classes_
相同。
查看documentation了解更多详情。
【讨论】:
以上是关于如何获得随机森林多类中一类的预测概率?的主要内容,如果未能解决你的问题,请参考以下文章