【问题标题】:Min and Max of Confusion matrices in MatlabMatlab中混淆矩阵的最小值和最大值
【发布时间】:2017-02-18 07:47:28
【问题描述】:

在 Matlab 中,我有一个包含 100 个混淆矩阵的单元格。

例如confusionMatrix{1} =

16     1     0
 0    12     2
 0    10     9

如何从这些混淆矩阵中找出预测率最高和最差的两个混淆矩阵(非对角元素的总和)?

【问题讨论】:

    标签: matlab max min confusion-matrix


    【解决方案1】:

    您可以通过对矩阵及其转置使用上移的 triu 来区分矩阵 A 的非对角元素:triu(A,1) 和 triu(A',1):

    sum(sum(triu(a,1)+triu(a',1)'))
    

    如果你想对confusionMatrix{:}中的所有单元格都这样做,你可以使用cellfun,然后排序:

    prediction_rate=cellfun(@(a)  sum(sum(triu(a,1)+triu(a',1)')), confusionMatrix);
    [r,idx]=sort(prediction_rate);
    best_rate=r(end);
    best_rated=idx(end);
    worst_rate=r(1);
    worst_rated=idx(1);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-19
      相关资源
      最近更新 更多