ConfusionMatrixMultilabel
ConfusionMatrixMultilabel
计算每个标签的混淆矩阵。该方法应用于预测值向量。
uint vector::ConfusionMatrixMultiLabel(
const vector& vect_true, // 真值向量
matrix& confusions[] // 计算混淆矩阵的数组
);参数
- vect_true
[in] 真值向量。
- confusions
[out] 一个2 × 2矩阵数组,为每个标签计算混淆矩阵。
返回值
计算的混淆矩阵数组的大小。如果失败,则返回0
注意
结果数组可以是动态也可以是静态。如果是静态数组,那么其大小必须不小于类的数量。
真实值向量和预测值向量的大小应该相同。
示例:
vector y_true={7,2,1,0,4,1,4,9,5,9,0,6,9,0,1,5,9,7,3,4,8,4,2,7,6,8,4,2,3,6};
vector y_pred={7,2,1,0,4,1,4,9,5,9,0,6,9,0,1,5,9,7,3,4,2,9,4,9,5,9,2,7,7,0};
matrix label_confusions[12];
uint res=y_pred.ConfusionMatrixMultiLabel(y_true,label_confusions);
Print("res=",res," size=",label_confusions.Size());
for(uint i=0; i<res; i++)
Print(label_confusions[i]);
/*
res=10 size=12
[[26,1]
[0,3]]
[[27,0]
[0,3]]
[[25,2]
[2,1]]
[[28,0]
[1,1]]
[[24,1]
[2,3]]
[[27,1]
[0,2]]
[[27,0]
[2,1]]
[[25,2]
[1,2]]
[[28,0]
[2,0]]
[[23,3]
[0,4]]
*/