본문 바로가기
@ OO의 이해/분할표와 ROC curve의 이해

[분할표와 ROC curve의 이해] 4. 최적의 진단기준은 어떻게 정할까?

by bigpicture 2020. 9. 8.
반응형

우리는 지금까지 분할표, 민감도, 특이도에 대해서 배웠습니다. 이제 다시 첫시간의 문제로 돌아가서 k를 구하는 방법을 고민해봅시다.

 

우리는 A라는 병을 진단하는 진단키트를 개발하는 연구원입니다. 혈액에서 채취한 어떤 수치 k가 병과 연관이 있었고, k를 이용해서 병을 진단하려고 시도하는 상황입니다. 정상인과 병에 걸린사람을 각각 5명식 모집하고, 수치 k를 측정하였습니다. 결과는 아래와 같습니다. (사람 수가 작은 이유는 손으로 풀기 위함입니다.)

 

정상 : 3.3, 3.6, 5.2, 4.6, 4.9

환자 : 5.3, 6.8, 7.7, 8.3, 4.7

 

진단 기준이 되는 k값 몇으로 해야할까요?

 

최적의 k를 구하는 방법은 간단합니다. 먼저 환자와 정상인의 k수치를 크기 순서대로 배열합시다. 

 

3.3(정상)

3.6(정상)

4.6(정상)

4.7(환자)

4.9(정상)

5.2(정상)

5.3(환자)

6.8(환자)

7.7(환자)

 

8.3(환자)

 

이제 k값을 바꿔가면서 민감도와 특이도를 구하면 됩니다. 데이터를 보면 환자가 정상인보다 대체로 k값이 높으므로, k 큰 경우를 환자로 진단하기로 합시다. 먼저 측정된 최소값인 3.3보다 작은 k값에서 시작합니다. 

 

k<3.3 인 경우의 민감도와 특이도

 

k가 3.3보다 작은 경우에는 모든 대상을 환자로 진단하게 됩니다. 이해를 돕기 위해 간단한 표를 그려봅시다. 아래와 같은 형식입니다. 

 

환자 양성/정상 양성

환자 음성/정상 음성

 

본 경우에 적용하면 아래와 같습니다.

 

5/5

0/0

 

따라서 민감도가 1이되고, 특이도가 0이 됩니다. 아래와 같이 (k의 범위, 민감도, 특이도) 형태로 나타내겠습니다. 

 

(k<3.3, 1, 0)

 

이번에는 k의 범위를 3이상, 3.6 이하로 설정합시다. 첫번째 경우의 범위에서, 방금 설정한 범위로 넘어갈 때 민감도와 특이도가 변하기 때문입니다. 민감도와 특이도가 변하는 구간을 모두 찾아서 계산해주시면 됩니다. 

 

3.3≤k<3.6 인 경우의 민감도와 특이도

 

표를 그려보면 아래와 같습니다.

 

5/4

0/1

 

민감도는 5/5 이므로 1이고, 특이도는 1/5 이므로 0.2입니다. 따라서 결과는 아래와 같습니다.

 

(3.3≤k<3.6, 1, 0.2)

 

같은 원리로 민감도와 특이도를 구해서 표로 정리하면 아래와 같습니다. 

 

 k 범위  환자 양성/정상 양성
환자 음성/정상 음성
민감도  특이도 
 k<3.3 5/5
0/0
1 0
 3.3≤k<3.6 5/4
0/1
1 0.2
 3.6≤k<4.6 5/3
0/2
1 0.4
 4.6≤k<4.7 5/2
0/3
1 0.6
4.7≤k<4.9  4/2
1/3
0.8 0.6
 4.9≤k<5.2 4/1
1/4 
0.8 0.8
 5.2≤k<5.3 4/0
1/5
0.8 1
 5.3≤k<6.8 3/0
2/5
0.6 1
 6.8≤k<7.7 2/0
3/5
0.4 1
 7.7≤k<8.3 1/0
4/5
0.2 1
 8.3≤k 0/0
5/5
0 1

 

어떤 구간의 k값을 사용해야할까요? 민감도와 특이도 둘다 높은 k값이 더 정확한 진단을 할 수 있는 k값입니다. 그런데 문제가 있습니다. 민감도가 커지면 특이도가 작아지고, 특이도가 커지면 민감도가 작아집니다. 둘이 trade-off 관계를 갖습니다. 다음 글에서 이 문제를 해결해봅시다. 

반응형

댓글