ConfusionMatrixMultilabel
Tính ma trận nhầm lẫn cho từng nhãn. Phương thức này được áp dụng cho vector của các giá trị dự đoán.
cpp
uint vector::ConfusionMatrixMultiLabel(
const vector& vect_true, // vector của giá trị thực tế
matrix& confusions[] // mảng các ma trận nhầm lẫn đã tính toán
);
1
2
3
4
2
3
4
Tham số
vect_true
[in] Vector của các giá trị thực tế.
confusions
[out] Một mảng các ma trận 2 x 2 chứa các ma trận nhầm lẫn được tính toán cho từng nhãn.
Giá trị trả về
Kích thước của mảng các ma trận nhầm lẫn đã tính toán. Trong trường hợp thất bại, trả về 0.
Ghi chú
Mảng kết quả có thể là động hoặc tĩnh. Nếu mảng là tĩnh, thì kích thước của nó phải không nhỏ hơn số lượng lớp.
Kích thước của vector giá trị thực tế và vector giá trị dự đoán phải giống nhau.
Ví dụ:
cpp
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]]
*/
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32