gpt4 book ai didi

matlab - MATLAB 中的plotconfusion 和Confusionmat 函数有什么区别?

转载 作者:行者123 更新时间:2023-11-30 08:37:56 26 4
gpt4 key购买 nike

我尝试在使用 plotconfusionConfusionmat 函数时根据实际值和预测值显示混淆矩阵。两者都会给出不同的结果。这对我来说真的很奇怪。看起来 Confusionmatplotconfusion 的转置。我应该怎么做才能在 plotconfusion 上绘制 Confusionmat 的类似结果?

plotconfusion:    

59 0 0
0 68 0
0 3 48

还有

Confusionmat:

59 0 0
0 68 3
0 0 48

最佳答案

您已经正确理解了 - plotconfusion 生成的混淆矩阵是 confusionmat 生成的混淆矩阵的转置。

这已记录在案 - 在 plotconfusion 的文档中它说

the rows correspond to the predicted class (Output Class), and the columns show the true class (Target Class).

confusionmat 的文档中它说

C(i,j) is a count of observations known to be in group i but predicted to be in group j

如果您想在两者之间进行转换,只需使用 ' 转置它们即可。

为什么会这样?主要是出于不太充分的理由。 plotconfusion 来自神经网络工具箱,而 confusionmat 来自统计工具箱,这两个工具箱具有不同的历史、目的和约定。

Statistics Toolbox 始终由 MathWorks 直接开发。相比之下,Neural Network Toolbox 最初是由外部学术作者开发,并由 MathWorks 营销和销售(尽管最近许多开发已由内部进行)。神经网络工具箱的早期版本主要侧重于神经网络在控制理论中的应用,而不是预测建模。因此,这些工具箱具有不同的历史和目的,并建立了一套不同的约定。

现在逐渐使工具箱的设计更加一致和统一是有意义的,但目前还没有这样做。

关于matlab - MATLAB 中的plotconfusion 和Confusionmat 函数有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44967339/

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