ROC 곡선 (ROC curve) - (2) 비교법 및 최적화

안녕하세요. 동글연구자입니다. 앞선 글에서 ROC곡선에 대한 기본개념을 알아보았습니다. 아직 ROC곡선에 대한 기본개념을 잘 모르시는 분이라면 아래 글을 보고 이 글을 읽는 것을 추천드립니다.

 

 ROC 곡선(ROC curve) - (1) 기본개념

 

 이번 글에서는 ROC곡선을 이용하여 서로 다른 결정인자간의 비교 방법이익(utilities or benefits)이 주어졌을 때 어떻게 최적의 결정인자를 찾은 방법에 대해서 알아보겠습니다.

 


1. ROC곡선을 이용해 결정인자 역량의 비교

 

 가장 이상적인 결정인자는 무엇일까? 그것은 두 분포를 완벽히 분리해내는 결정인자이다. 코로나19 바이어스를 다시 예로 들면 이상적인 진단방법이 개발되어 진단율 100퍼센트로 양성과 음성을 가려낼 수 있다고 가정해보자. 새로운 진단방법에 대한 결정 인자를 \( z \)라 할때, \( z \)에 대해서 아래와 같은 분포를 만들 수 있다.

음성과 양성집단 분포
<새로운 결정인자 \( z \)에 해당하는 음성집단과 양성집단의 분포>

 

 그렇다면 위 상황에 따른 ROC 곡선은 무엇일까? 아래 그림에서 빨간색 선이다. 즉, 빨간색 선에 가까울 수록 좋은 결정인자라고 말할 수 있다. 하지만 현실에서는 빨간색 선과 같은 상황이 나오기는 매우 어렵다. 만약 새로운 진단기술이 개발되었고(\( 결정인자 y \)) 그것에 따른 ROC곡선이 아래와 같다면 새로운 기술은 현재의 기술(\( 결정인자 x \))보다 뛰어나다고 판단되며 충분이 현재에 기술을 대체할 수 있다.

 여기서 각 결정인자 \( x, y\)로 만들어지는 ROC곡선이 이루는 면적을 AUC(Area Under Curve)라고 한다. 가장 좋은 AUC 값은 당연히 빨간색 그래프가 만드는 면적으로 1이다. 그리고 그 면적이 작을 수록 좋지 못하고 최저값은 0이다. 아래의 경우엔 결정인자 \( y \)로 만들어지는 ROC곡선의 면적이 결정인자 \( x \)의 면적보다 큰 것을 확인할 수 있다.

 

ROC곡선
<결정인자 y와 x에 대한 ROC 곡선>


2. 최적의 결정인자

 

 이번에는 각 경우의 수에 대한 이익이 주어졌을때 최적의 결정인자를 찾는 방법에 대해서 알아보자. 본 내용은 확률에 대한 기본적 배경이 없으면 다소 어려울 수 있다. 여기서 이익이란 돈, 생존율, 노동효율 등 관점에 따라 변할 수 있다. 이익을 고려한 간단한 상황을 예로 들자면, 의사가 진단이 애매한 상황에서 환자를 음성으로 진단하는 것이 양성으로 진단하는 것보다 항상 이익이 높다면 의사는 항상 애매한 환자에 대해 음성으로 진단하는게 좋을 것이다. 이와 같이 이익에 따라서 진단방법이 크게 달라질 수 있다.

 

※ 하나 집고 넘어가야 할 것이 여기서 말하는 최적의 결정인자라고 하는 것은 주어진 결정인자를 통해 얻은 환자의 정보와 이득이 주어졌을때 만들 수 있는 최적의 결정인자를 말한다. 새로운 어떤 최고의 결정인자를 창조하는 것이 아니다.

 

 진단에는 TN(True-negative), FN(False-negative), TP(True-positive), FP(Falue-positive)로 총 4가지 상황이 나올 수 있다. 각 상황에 대한 이익에 대한 변수를 \( U_{TN}, U_{FN}, U_{TP}, U_{FP} \)라고 정의하자. 그리고 음성 진단에 대한 이익과 양성진단에 대한 이익을 \( U_{N}, U_{S} \) 라고 하자. 그렇다면 음성으로 진단한 기대 이익양상으로 진단하는 기대 이익은 다음과 같이 표현할 수 있다.

 

$$ E[U_{N}| \vec{x}] = U_{TN} P(n|\vec{x}) + U_{FN} P(s| \vec{x}) $$

$$ E[U_{S}| \vec{x}] = U_{FP} P(n|\vec{x}) + U_{TP} P(s| \vec{x}) $$

 

 여기서 \( \vec{x} \)는 특정환자에서 초기에 주어진 결정인자에 대해 얻은 측정치이다. 그리고 \( P(n|\vec{x}), P(s| \vec{x} ) \) 는 \( \vec{x} \)가 주어졌을때 각각 환자가 음성집단에서 나왔을 확률, 양성집단에서 나왔을 확률이다. 

 

 

 이익을 고려한다면, 우리는 \( E[U_{N}| \vec{x}] > E[U_{S}| \vec{x}] \) 일때 양성으로 진단하고, 반대로 \(E[U_{N}| \vec{x}] > E[U_{S}| \vec{x}]\) 일 때 음성으로 진단해야 한다. 이를 수식으로 정리하면 다음과 같다.

 

\( E[U_{N}| \vec{x}] > E[U_{S}| \vec{x}] \)

→ \( U_{TN} P(n|\vec{x}) + U_{FN} P(s| \vec{x}) > U_{FP} P(n|\vec{x}) + U_{TP} P(s| \vec{x}) \)

→ \( (U_{TN} -U_{FP}) P(n|\vec{x}) > (U_{FN} - U_{TP}) P(s| \vec{x}) \)

 

 베이즈 이론(Bayes' theorem)을 적용하여 \( P(n|\vec{x}) \) 와 \( P(s| \vec{x}) \) 를 다시 표현하면 다음과 같다.

 

$$ P(n|\vec{x}) = \frac{f(\vec{x}|n)P(n)}{f(\vec{x})}$$

$$ P(s|\vec{x}) = \frac{f(\vec{x}|s)P(s)}{f(\vec{x})}$$

 

 이를 이용하여 위의 식을 다시 한번 정리하면 아래의 식과 같이 표현할 수 있다.

 

$$ \frac{f(\vec{x}|s)}{f(\vec{x}|n)} > \frac{[U_{TN}-U_{FP}]}{[U_{TP}-U_{FN}]} \frac{P(n)}{P(s)} $$

 

 위 식의 좌변을 가능성 비율(Likelihood Ratio, \( LR \))라고 부른다. 이를 해석하면 이익을 따졌을때 가능성 비율이 우변보다 크면 양성으로 진단하고 우변보다 작으면 음성으로 진단한다. 즉, 우변이 이익을 고려한 최적의 결정인자가 된다. 우리는 이를 결정적 가능성 비율(Critical Likelihood Ratio, \( LR_{c} \))이라 부르고 다음과 같이 표현한다.

 

$$ LR_{c} = \frac{[U_{TN}-U_{FP}]}{[U_{TP}-U_{FN}]} \frac{P(n)}{P(s)} $$

 

예를 들어,

 

$$ P(n) = \frac{1}{\sqrt{2 \pi }}e^{\frac{x^2}{2}}$$

$$ P(s) = \frac{0.5}{\sqrt{2 \pi }}e^{\frac{(0.5x-1)^2}{2}} $$

 

라는 음성집단과 양성집단이 결정인자 \( x \) 에 대해서 정의될때, 아래와 같이 빨간색 ROC곡선을 그릴 수 있다. 하지만 이익을 고려한 최적의 결정인자 \( LR_{c} \)에 대해서는 파란색 ROC곡선을 그릴 수 있다. 큰 차이는 아니지만 주어진 결정인자에서 더 좋은 결과를 얻을 수 있음을 보여준다.

 

<주어진 결정인자와 최적의 결정인자의 ROC곡선>


끝으로

 

 ROC곡선은 이진분류에 특화된 평가방법으로 단순히 비교뿐만 아니라 주어진 결정인자를 토대로 최적화까지 가능하다. 비록 큰 변화는 없지만 더 좋은 방향으로 진단할 수 있으므로 최적화는 꼭 필요하다고 생각된다.

 요즘 머신러닝(Machine Learning)이나 딥러닝(Deep Learning)분야가 많은 주목을 받고 있는데, 분류법(Classification)은 가장 딥러닝분야에서 높은 역량을 보여주고 있다. 이를 개발한 네트워크를 평가하기 위해서는 ROC곡선이나 다른 효과적인 방법이 필요할 것이다. 그런 의미에서 가장 기본이 되는 ROC곡선을 알아두면 연구를 진행하는데 있어서 큰 도움이 될 것이다.

 

 

 

※ 본 글이 도움되었다면 하트 클릭 부탁드립니다 (비로그인으로도 가능합니다).

그리고 질문이나 코멘트을 댓글에 적어주시면 답변드리겠습니다.

'의료영상' 카테고리의 다른 글

ROC 곡선 (ROC curve) - (1) 기본개념  (0) 2020.04.28

댓글

Designed by JB FACTORY