confusionmat
분류 문제에 대한 혼동행렬 계산
구문
설명
예제
분류 문제에 대한 예측 레이블과 실제 레이블의 샘플을 불러옵니다. trueLabels
는 영상 분류 문제에 대한 실제 레이블이고 predictedLabels
는 컨벌루션 신경망의 예측입니다.
load('Cifar10Labels.mat','trueLabels','predictedLabels');
숫자형 혼동행렬을 계산합니다. order
는 혼동행렬의 클래스 순서입니다.
[m,order] = confusionmat(trueLabels,predictedLabels)
m = 10×10
923 4 21 8 4 1 5 5 23 6
5 972 2 0 0 0 0 1 5 15
26 2 892 30 13 8 17 5 4 3
12 4 32 826 24 48 30 12 5 7
5 1 28 24 898 13 14 14 2 1
7 2 28 111 18 801 13 17 0 3
5 0 16 27 3 4 943 1 1 0
9 1 14 13 22 17 3 915 2 4
37 10 4 4 0 1 2 1 931 10
20 39 3 3 0 0 2 1 9 923
order = 10×1 categorical
airplane
automobile
bird
cat
deer
dog
frog
horse
ship
truck
confusionchart
를 사용하여 혼동행렬을 혼동행렬 차트로 플로팅할 수 있습니다.
figure cm = confusionchart(m,order);
혼동행렬을 먼저 계산한 다음 플로팅할 필요가 없습니다. 대신, 실제 레이블과 예측 레이블에서 직접 혼동행렬 차트를 플로팅합니다. 열과 행의 요약과 제목도 추가할 수 있습니다.
figure cm = confusionchart(trueLabels,predictedLabels, ... 'Title','My Title', ... 'RowSummary','row-normalized', ... 'ColumnSummary','column-normalized');
ConfusionMatrixChart
객체는 NormalizedValues
속성에 숫자형 혼동행렬을 저장하고 ClassLabels
속성에 클래스를 저장합니다.
cm.NormalizedValues
ans = 10×10
923 4 21 8 4 1 5 5 23 6
5 972 2 0 0 0 0 1 5 15
26 2 892 30 13 8 17 5 4 3
12 4 32 826 24 48 30 12 5 7
5 1 28 24 898 13 14 14 2 1
7 2 28 111 18 801 13 17 0 3
5 0 16 27 3 4 943 1 1 0
9 1 14 13 22 17 3 915 2 4
37 10 4 4 0 1 2 1 931 10
20 39 3 3 0 0 2 1 9 923
cm.ClassLabels
ans = 10×1 categorical
airplane
automobile
bird
cat
deer
dog
frog
horse
ship
truck
입력 인수
관측값을 분류하는 데 사용되는 알려진 그룹으로, 숫자형 벡터, 논리형 벡터, 문자형 배열, string형 배열, 문자형 벡터로 구성된 셀형 배열 또는 categorical형 벡터로 지정됩니다.
group
은 grouphat
과 같은 유형의 그룹화 변수입니다. group
인수는 grouphat
과 관측값 개수가 같아야 합니다(그룹화 변수 (Statistics and Machine Learning Toolbox) 참조). confusionmat
함수는 문자형 배열과 string형 배열을 문자형 벡터로 구성된 셀형 배열로 처리합니다. 또한 confusionmat
는 group
에 있는 NaN
값, 빈 값, 'undefined'
값을 누락값으로 처리하여 이러한 값을 고유한 그룹이나 범주로 간주하지 않습니다.
예: {'Male','Female','Female','Male','Female'}
데이터형: single
| double
| logical
| char
| string
| cell
| categorical
관측값을 분류하는 데 사용되는 예측된 그룹으로, 숫자형 벡터, 논리형 벡터, 문자형 배열, string형 배열, 문자형 벡터로 구성된 셀형 배열 또는 categorical형 벡터로 지정됩니다.
grouphat
은 group
과 같은 유형의 그룹화 변수입니다. grouphat
인수는 group
과 관측값 개수가 같아야 합니다(그룹화 변수 (Statistics and Machine Learning Toolbox) 참조). confusionmat
함수는 문자형 배열과 string형 배열을 문자형 벡터로 구성된 셀형 배열로 처리합니다. 또한 confusionmat
는 grouphat
에 있는 NaN
값, 빈 값, 'undefined'
값을 누락값으로 처리하여 이러한 값을 고유한 그룹이나 범주로 간주하지 않습니다.
예: [1 0 0 1 0]
데이터형: single
| double
| logical
| char
| string
| cell
| categorical
그룹 순서로, 숫자형 벡터, 논리형 벡터, 문자형 배열, string형 배열, 문자형 벡터로 구성된 셀형 배열 또는 categorical형 벡터로 지정됩니다.
grouporder
는 group
과 grouphat
에 있는 모든 고유한 요소를 포함하는 그룹화 변수입니다. grouporder
를 지정하여 C
의 행과 열의 순서를 정의할 수 있습니다. grouporder
에 group
또는 grouphat
에 속하지 않는 요소가 포함된 경우 이에 대응하는 C
의 요소는 0
이 됩니다.
기본적으로 그룹 순서는 s = [group;grouphat]
의 데이터형에 따라 달라집니다.
숫자형 벡터의 경우
s
의 고유한 값의 정렬된 순서로 표시됩니다.논리형 벡터의 경우
false
(0
)가 먼저 오고, 그다음에true
(1
)가 표시됩니다.categorical형 벡터의 경우
에서 반환하는 순서로 표시됩니다.categories
(s)기타 데이터형의 경우
s
에 처음 나타난 순서로 표시됩니다.
예: 'order',{'setosa','versicolor','virginica'}
데이터형: single
| double
| logical
| char
| string
| cell
| categorical
출력 인수
혼동행렬로, group
인수와 grouphat
인수에 포함된 고유한 요소의 총 개수와 크기가 같은 정사각 행렬로 반환됩니다. C(i,j)
는 그룹 i
에 속하는 것으로 알려져 있지만 그룹 j
에 속할 것으로 예측된 관측값의 개수입니다.
C
의 행과 열은 동일한 그룹 인덱스와 순서가 같습니다. 기본적으로 그룹 순서는 s = [group;grouphat]
의 데이터형에 따라 달라집니다.
숫자형 벡터의 경우
s
의 고유한 값의 정렬된 순서로 표시됩니다.논리형 벡터의 경우
false
(0
)가 먼저 오고, 그다음에true
(1
)가 표시됩니다.categorical형 벡터의 경우
에서 반환하는 순서로 표시됩니다.categories
(s)기타 데이터형의 경우
s
에 처음 나타난 순서로 표시됩니다.
순서를 변경하려면 grouporder
를 지정하십시오.
confusionmat
함수는 그룹화 변수에 있는 NaN
값, 빈 값, 'undefined'
값을 누락값으로 처리하며, 이러한 값을 C
의 행과 열에 포함하지 않습니다.
C
에 포함된 행과 열의 순서로, 숫자형 벡터, 논리형 벡터, categorical형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 반환됩니다. group
과 grouphat
이 문자형 배열, string형 배열 또는 문자형 벡터로 구성된 셀형 배열인 경우 변수 order
는 문자형 벡터로 구성된 셀형 배열입니다. 그 외의 경우 order
는 group
및 grouphat
과 동일한 유형입니다.
대체 기능
confusionchart
를 사용하여 혼동행렬을 계산하고 플로팅할 수 있습니다. 또한confusionchart
는 데이터에 대한 요약 통계량을 표시하고 클래스별 정밀도(양성예측도), 클래스별 재현율(참양성률) 또는 올바르게 분류된 총 관측값 개수에 따라 혼동행렬의 클래스를 정렬합니다.
버전 내역
하나의 logical
형 관측값만 사용하여 혼동행렬을 만들 경우 confusionmat
함수는 스칼라 값 대신 행렬을 반환합니다. 행과 열의 디폴트 순서는 false
(0
) 다음에 true
(1
)가 오는 순서입니다.
confusionmat(true,true)
ans = 0 0 0 1
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
- América Latina (Español)
- Canada (English)
- United States (English)
유럽
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)