腌制随机森林模型的混淆矩阵
Posted
技术标签:
【中文标题】腌制随机森林模型的混淆矩阵【英文标题】:confusion matrix of pickled random forest model 【发布时间】:2021-07-08 14:21:08 【问题描述】:是否可以仅使用保存为 pickle-dump 的模型重新构建袋外验证的完整混淆矩阵?
mymodel.oob_score_
报告的 OOB 分数为 0.75682
我发现here 可以像这样提取此模型的预测标签:
pred_train = numpy.argmax(mymodel.oob_decision_function_,axis=1)
但是火车标签是否也保存在模型文件中的某个地方?
【问题讨论】:
【参考方案1】:这取决于您使用pickle.dump()
导出的内容,但一般情况下,如果您只导出随机森林,则不会。
sklearn.ensemble.RandomForestClassifier
只有these attributes,而基本事实不是其中之一。
oob_decision_function
仅存储一个大小为 (n_samples
, n_classes
) 的数组,因此您无法从那里获取它们。没有其他属性可以存储 oob 基本事实。
【讨论】:
以上是关于腌制随机森林模型的混淆矩阵的主要内容,如果未能解决你的问题,请参考以下文章
R语言使用randomForest包构建随机森林模型(Random forests)使用importance函数查看特征重要度使用table函数计算混淆矩阵评估分类模型性能包外错误估计OOB
R语言编写自定义函数计算分类模型评估指标:准确度特异度敏感度PPVNPV数据数据为模型预测后的混淆矩阵比较多个分类模型分类性能(逻辑回归决策树随机森林支持向量机)
R语言使用party包中的cforest函数基于条件推理决策树(Conditional inference trees)构建随机森林使用varimp函数查看特征重要度使用table函数计算混淆矩阵