我正在使用 scikit 学习决策树将一组数据分类为四个类别之一。一般来说,我是机器学习和编码的新手,正在尝试了解混淆矩阵。
因此,当我使用 sci-kits 混淆矩阵时,我得到一个四乘四矩阵。我能够弄清楚这些列是对每个类别所做的预测(例如“预测 A、预测 B...”)。但是,我对这些行代表什么感到困惑。此外,某些预测是否有可能不进入混淆矩阵。我发现有些列没有必要的总计数。这是为什么?
unique, counts = np.unique(classif_predict, return_counts=True)
print('Predicted:',dict(zip(unique, counts)))
_unique, _counts = np.unique(classif_test, return_counts=True)
print('Tested:',dict(zip(_unique, _counts)))
pd.DataFrame(
confusion_matrix(classif_test, class_predict),
columns = ['AGN Predicted', 'BeXRB Predicted', 'HMXB Predicted', 'SNR Predicted']
)
我的输出是这样的:
Predicted: {'AGN': 7, 'BeXRB': 25, 'HMXB': 7, 'SNR': 2}
Tested: {'AGN': 10, 'BeXRB': 22, 'HMXB': 7, 'SNR': 2}
AGN Predicted BeXRB Predicted HMXB Predicted SNR Predicted
3 3 4 0
2 13 6 1
0 3 4 0
0 2 0 0
```
最佳答案
行代表已预测的类的实例(通过我们使用的算法),列代表已知真实值的实例。
行:预测值 列:实际值
在您的情况下,了解 4*4 矩阵表示您的预测变量中有 4 个不同的值,即:AGN、BeXRB、HMXB、SNR。 还有一件事,值的正确分类将在从左上角到右下角的对角线上,所有其他值都被错误分类。
this is an example of a 4*4 matrix 请注意,绿色值将被正确分类,而红色值将被错误分类。
https://stackoverflow.com/questions/58575840/
相关文章:
python-3.x - 模块错误 : Rasterio has no attribute open
amazon-web-services - Cloudwatch 中未显示 Cognito 的指标
python - 在 Python 中打印大型 JSON 文件的前几行
postgresql - 通过 EC2 从 sqlalchemy 连接 AWS RDS
javascript - 如何使用 yarn 将 NodeJS/React 应用程序部署到 Hero
django - 重定向到 Django Admin 中的过滤列表
c# - .Net Core Linux 不支持 SecurityIdentifier?