'의사결정'에 해당되는 글 2건

  1. 2013.05.06 의사결정이론 - Decision Theory
  2. 2013.01.07 의사결정에 숨어있는 함정들

의사결정이론 - Decision Theory

|



앞에서 확률이론Bayesian & Frequentist에 대해서 살펴봤습니다. 

기계학습의 목표는 이러한 이론들을 활용해서 주어진 입력값 x에 대한 타겟인 t를 예측하는 것이었습니다.


불확실성에 직면해서 결정을 내려지 않으면 안될 경우, 어떤 결정을 해야 하고, 

어떤 정보를 이용해야 하는지에 대해서 다루는 것이 바로 의사결정이론 (Decision Theory)입니다. 


Decision Theory 

병원에서 암을 진단하기 위해 X-ray 사진이 주어졌다고 생각해 봅시다. 

X-ray 사진을 보고 암에 걸렸는지 아닌지 결정해야 할때, Decision Theory를 활용할 수 있습니다. 


암일 경우를 클래스 1(C1)이라고 하고, 암이 아닌 경우를 클래스 2(C2)라고 할 때, 

주어진 X-ray 사진(x)이 특정 클래스에 들어갈 확률은 베이즈 정리를 활용해서 다음과 같이 쓸 수 있습니다. 



베이즈 확률에서 이야기 한 Posterior, Prior, Likelihood의 관계를 항상 생각하시기 바랍니다. 



병원 예제에서는 X-ray 사진(x)이 잘못된 클래스로 할당되어 오진이 발생할 경우를 최소화해야 하므로, 

상대적으로 높은 Posterior 확률을 가진 것을 선택해야 합니다.

이것이 바로 Decision Theory입니다. 


오류(misclassification rate) 최소화 

위의 X-ray 예제에서 오진할 확률은 환자가 암에 걸리지 않았는데 암에 걸린 것으로 진단하거나 반대의 경우라고 할 수 있습니다. 

C1, C2 클래스로 진단했을때, 실제 영역을 R1, R2라고 하면 다음과 같이 오류가 발생할 확률을 구할 수 있습니다. 



반대로 정확하게 결정할 확률은 주어진 x에 대해 R1, C1 / R2, C2가 일치하는 경우가 되겠죠. 



여기에서도 

가 되고,  p(x)가 모든 요소에 대해 공통적인 요소이므로, 

각각의 x가 가장 높은 Posterior 확률을 갖는 클래스에 할당된다는 것을 다시 한번 확인 할 수 있습니다. 


기대손실(expected loss) 최소화

X-ray 사진으로 암여부를 잘 못 진단했을 경우를 생각해 보죠. 

실제 암이었는데 정상이라고 오진한 경우가 그 반대보다 더 큰 실수가 될 것입니다. 

이러한 상황에 따른 패널티 또는 가중치를 두고서 결정을 해보자는 것이 바로 기대손실 최소화 입니다. 

즉, 잘못된 결정에 따른 피해를 가장 적게 하는 방향으로 결정을 해보자는 데서 출발한 것이지요. 


이를 위해 다음과 같은 행렬(L)을 만들고 패널티를 부여합니다. 

1000이 주어진 경우가, 실제 암(R1)인데 정상인 클래스(C2)에 할당한 것이 됩니다. 



이것을 수식으로 나타내면 기존 확률에 위의 패널티를 곱해주게 됩니다. 



rejection option

의사 결정이 어려운 상황일 때, 의사결정을 피하는 것이 적절한 경우가 있습니다. 

한계점(threshold)을 지정해서 이러한 영역을 제외하는 것을 rejection option이라고 합니다. 


다음 그림을 보면 reject region에 해당하는 영역에서는 클래스에 할당하는 결정을 하지 않는다는 것이죠. 



추론과 의사결정

의사결정 이슈를 해결하기 위해 먼저 추론(inference)을 해야 하는데 다음과 같은 접근법이 있습니다. 


1. 베이즈 정리 활용


앞에서 설명한대로, 주어진 x에 대해 어느 클래스에 할당될 확률이 높은지 계산하면 의사결정을 할 수 있게 됩니다. 

즉, Posterior를 계산하는 것이 Decision Theory에서 중요한 부분이 되는 것이죠. 

이것을 베이즈 정리를 통해서 계산해 낼 수 있습니다. 



2. Posterior를 직접 계산


두번째 방식으로는 Posterior를 베이즈 정리를 활용하지 않고 직접 계산하는 것입니다. 

를 바로 계산해서 주어진 x가 어느 클래스에 들어갈지를 결정하는 것이죠. 


3. 판별식 함수(discriminant function) 활용


마지막으로 확률을 이용하지 않고, 특정 함수를 이용해서 결정하는 방식입니다. 

discriminant function이라고 하는 f(x)가 있을 때, 

f = 0이면 클래스 1로 결정하고, f = 1이면 클래스 2로 결정하는 방식입니다. 


회귀분석에서의 Loss function

다음 그림을 보면 파란선은 정규분포를 따르고 있습니다. 



그리고 파란선의 평균값인 E[t|x]가 바로 y(x)값이 된다는 것도 알 수 있습니다. 



또한, y(x)와 t의 차이가 적을 수록 오류가 최소화된다는 것을 확인할 수 있습니다. 

그러므로 손실함수(Loss function)을 다음과 같이 나타냅니다. 



책에서는 이 Loss function으로부터 y(x)와 E[t|x]가 같다는 것을 증명하는 것이 나와 있습니다. 

어쨌든 그림에서 어느정도 이해할 수 있으므로 생략하도록 할께요. (수식 대입하고 미분해서 0이 되는 값을 구하는 형식입니다.)


분명히 알아야 할 점은 오차의 분포가 정규분포인 경우, 이러한 Loss function이 가장 효율적이라는 점입니다. 

제곱을 하기 때문에 이것을 square loss 라고 하기도 합니다. 


이상으로 Decision Theory에 대해 정리해 봤습니다. 

다음에는 엔트로피와 관련된 Information Theory를 간략하게 정리해 보겠습니다.





Trackback 0 And Comment 0

의사결정에 숨어있는 함정들

|



1998년 John Hammond, Ralph Keeney, Howard Raiffa 세 사람이 Harvard Business Review에 올린 "The Hidden Traps in Decision Making"에 대한 내용을 간단히 정리해서 올려봅니다. 


중요한 의사결정을 할 때 발생할 수 있는 함정들을 설명하고 이에 대한 대처 방안들을 정리해 놓은 문서인데요. 

15년여의 시간이 흘렀지만 참고할 만한 자료인 듯 합니다. 


1. The Anchoring Trap 

기준점 또는 선행지표 오류라고 할 수 있는데요. 

바로 전에 들었던 수치나 정보의 영향을 받아서 다음 결정을 내리는 실수를 많이 한다는 것입니다. 


어릴때 많이 하던 게임이 생각나더군요. 

"링컨"을 열번 말해보라고 하고 "미국 초대 대통령은?"하고 물으면 십중팔구 링컨이라고 답하는 걸 보고 웃었던 장난이었는데요. 

이런 것도 Anchoring Trap에 해당하지 않을까 합니다. ^^


이런 오류를 줄이기 위해서는 다양한 관점에서 문제를 살펴봐야 하고, 다른 사람의 의견을 듣기 전에 스스로 문제점을 생각 해보라고 하네요. 

조언을 구할 때는 상대방이 이 오류에 빠지지 않도록 자신의 주장을 하기보다는 많이 듣는게 좋다고 합니다. 

특히 협상을 할 때는 다른 사람이 먼저 이야기 하는 것이 기준점이 되지 않도록 미리 자신의 입장을 정리해 두고 

상대방에게 기준점을 먼저 제시해서 선행 지표가 되도록 유도하는 것도 협상 전략상 필요할 수도 있다네요. 


2. The Status-Quo Trap

현재의 상황을 유지하려고 하는 오류라고 할 수 있습니다. 

많은 사람들이 의사결정을 할 때, 현재 상황을 유지하려는 편견을 가지게 된다는 것인데요. 

현상 유지만 하면 해당 의사 결정에 책임을 지지 않을 수 있다는 안일한 생각에서 시작하는 것 같다고 합니다. 


일반적으로 사람들이 변화를 두려워하는 것과도 일맥 상통하지 않을까 생각합니다. 

또한 나중에 생각해보겠다고 하고 결코 다시 생각하지 않는 것도 현상 유지 오류의 하나라고 하네요. (뜨끔~)


이 오류를 줄이기 위해서 항상 목표를 생각하고 현재 상태가 목표 달성에 도움이 되는지 장애가 되는지 확인하라고 하네요. 

그리고 현재 상태가 대안이 아니라고 생각하고 다른 대안들도 동등하게 고려해 보고, 주저하기 보다는 다른 대안을 선택해서 직접 행동해 보라는 것입니다. 

현재 상태에서 다른 대안으로 이동하는 것을 과장하는 것도 조심하라고 하네요. 

(개발자들 중에 변화를 요청하면 비용, 일정 등의 이유를 들어 안된다고 하는 경우도 있기는 하지요.. ㅠㅠ)


3. The Sunk-Cost Trap

매몰비용의 오류라고 하는데요. 

과거의 결정이 잘못된 것임을 알더라도 과거의 결정을 정당화 하는 방향으로 잘못된 의사결정을 내리는 경우를 말합니다. 

주로 이전의 실수를 인정하지 않으려는 경향에서 발생하는 것인데요. 


이를 해결하기 위해서는 초기 의사결정에 참여하지 않은 사람들의 의견을 경청하고, 현명한 결정도 나쁜 결과를 가져올 수 있다고 생각하라고 하네요. 

특히 "실패를 용납하지 않는 문화"가 아닌 의사결정의 질에 따라 사람들을 평가하고 보상하는 문화를 갖추라고 합니다.

실패에서 배운다는 이야기처럼 우리 사회도 실수한 사람들이 떳떳하게 실수를 인정하고 그 경험을 토대로 다시 일어설 수 있도록 하면 좋을 듯 하네요. 

워렌 버핏의 이야기도 나오네요. 

When you find yourself in a hole, the best thing you can do is stop digging.


4. The Confirming-Evidence Trap

스스로 확신하는 것을 증명하려는 오류인데요. 

의사결정을 할 때 자신의 믿음과 선호에 부합하는 정보만을 찾아서 참고하고 결정하는 것을 말한다고 합니다. 


이 오류를 피하기 위해서는 모든 대안을 똑같은 기준으로 평가했는지 스스로 자문하고, 제 3자를 통해 자신이 믿는 결정에 대한 비판을 경청해야 한다고 합니다. 

스스로 현명한 의사결정을 위해 정보를 모았는지? 아니면 자신의 의견을 지지하는 정보를 모았는지? 확인하고 

특히 주변을 예스맨으로만 채우지 말라고 하네요.. 


5. The Framing Trap

문제의 구성방식에 따라 의사결정에 영향을 준다는 것인데요. 

즉, 이익이 될 때는 공격적인 대안을 선택하고, 손해가 될 때는 방어적인 대안을 선택하는 경향이 있다는 것입니다. 


그러므로 항상 문제를 재구성해보고 이익과 손해를 결합시켜 문제를 해석해 보거나 다른 기준을 통해 문제를 설명해 보라고 합니다. 

자신의 의사결정 프로세스에서 문제에 대한 프레임이 바뀐다면 생각이 어떻게 바뀌는지 스스로 질문해 보고, 

다른 사람이 결정할 때, 문제를 정의한 방식을 검토해보고, 다른 방식으로도 문제 설정을 해서 생각해 보라고 하네요. 


6. Estimating and Forecasting Traps

마지막은 추정과 예측에 따른 오류인데요. 

불확실한 미래에 대한 예측에 있어서 과도하게 확신하거나(The Overconfidence Trap), 너무 신중하거나(The Prudence Trap), 개인적인 경험으로 확대 해석하는 상황(The Recallability Trap)을 이야기 합니다. 


먼저 과도한 확신을 방지하기 위해 예측 할 때 극단(상한, 하한)을 함께 고려해 보라고 합니다. 

(특히 최악의 상황을 가정하고 원칙을 세운다면 과도한 확신은 방지할 수 있겠죠. 그러나 새로운 의사결정에 있어서 어느정도의 확신은 필요하지 않을까 합니다.)

신중함을 방지하기 위해서는 추정치를 정직하게 서술하고 다른 사람들에게 정직한 추정치에 대해 강조하라고 하네요. 

(정확한 입력을 통해 결정함으로써 주저하다가 결정이 늦어지는 경우를 방지하라는 것 같습니다.)

마지막으로 개인적인 경험으로 확대해석하는 것을 방지하기 위해 실제 통계를 얻어서 참고하라고 합니다. 


이상으로 간략하게 내용을 정리해봤습니다. 

의사 결정이라는 것이 늦어져도 또 너무 빨라도 안되는 것이라고 생각합니다. 

또한 실패를 두려워해서 아무것도 하지 않는 것은 더더욱 나쁘다고 보구요. 

다만 과도한 확신으로 의사결정의 오류에 빠지지 않도록 항상 고려해야겠지요. 


그러나 일단 스스로에게 물어봤을때는 좀더 확신을 가지고 의사결정을 하는 역량이 필요할 듯 합니다. 

개인적으로는 Status-Quo Trap에 빠져 있지 않나 생각해 봅니다. 





Trackback 0 And Comment 0
prev | 1 | next