Personal Perspective

Decision Theory

2017-01-12


주어진 데이터로부터 각각 상황이 얼마나 그럴싸한지 posterior 분포 계산을 통해 완벽하게 표현했다고 가정하자. 하지만 이것만으로는 합리적인 결정을 내리기에 충분하지 않다.

Card Example

100장의 카드가 있다. 모두 뒷면은 같은 모양이지만 앞면은 80장은 파란색, 20장은 빨간색이다. 매번 카드를 섞어서 한 장을 뽑는데 이를 맞추면 1점을 얻고 틀리면 0점을 얻는다. 이를 100회 반복한다고 가정하자. 가장 점수를 많이 얻을 수 있는 전략은 무엇인가?

가장 먼저 떠오르는 방법은 80%의 확률로 파란색을 부르고 20%의 확률로 빨간색을 부르는 것이다. 이런 전략을 전략 1이라 부르자. 이제 전략 1의 기대 점수를 계산해보자.

  1. 파란 카드가 나오고 파란색이라고 부른 경우 -- $0.8 \times 0.8 \times 1 = 0.64$
  2. 파란 카드가 나오고 빨간색이라고 부른 경우 -- $0.8 \times 0.2 \times 0 = 0$
  3. 빨간 카드가 나오고 파란색이라고 부른 경우 -- $0.2 \times 0.8 \times 0 = 0$
  4. 빨간 카드가 나오고 빨간색이라고 부른 경우 -- $0.2 \times 0.2 \times 1 = 0.04$

그러므로 기대 점수가 0.68이다.

무조건 파란색만 부르는 전략을 전략 2라 하자. 전략 2의 기대 점수도 살펴보자.

  1. 파란 카드가 나오고 파란색이라고 부른 경우 -- $0.8 \times 1 \times 1 = 0.8$
  2. 빨간 카드가 나오고 파란색이라고 부른 경우 -- $0.2 \times 0 \times 0 = 0$

그러므로 기대 점수가 0.8이다.

양쪽 전략 모두 불확실성에 대한 모델은 완벽하다. 즉, 파란색이 전체의 80%를 차지하고 빨간색이 전체의 20%를 차지한다는 사실을 잘 알고 있다. 하지만 그렇다고 하더라도 주어진 상황에 좋은 선택이 무엇인지 알아내는 것은 간단한 문제가 아닌 것으로 보인다.

von Neumann-Morgenstern Axiom

합리적인 결정이란 무엇인지 살펴보자.

von Neumann과 Morgenstern이 만든 합리성에 대한 공리를 먼저 논하자.

개인의 선호도가 위의 네 가지 공리를 만족한다면 결과 $A$에 적용할 수 있는 어떤 함수 $u$가 존재하여 $u(A)$를 실수로 사상하며 다음을 만족한다.

$$L \prec M \Leftrightarrow E[u(L)] < E[u(M)]$$

여기서 $E[u(L)]$은 $L$의 기대값으로 다음과 같다.

$$E[u(p_1 A_1 + \cdots + p_n A_n)] = p_1 u(A_1) + \cdots + p_n u(A_n)$$

함수 $u$는 선호 관계로 인해 유일하게 결정된다. 반대로 $u$의 기대값을 극대화하려는 개인은 위의 공리를 모두 지켜야 한다.

이로부터 한 가지 결과를 도출하자면, 선호도는 실수값 하나로 표현하고 더 선호하는 선택이 더 큰 값을 갖도록 하는 것이 정당하다는 것이다.

Utility/Loss Function

위 논의의 결과를 받아들이기로 하자. 즉, 선호도는 실수값으로 표현되며 더 큰 값을 지니는 선택안을 더 선호한다는 것이다. 이를 위에서 효용utility 함수라 불렀다. 위의 카드 예제에서 전략 1의 효용은 0.68이고 전략 2의 효용은 0.8이므로 둘 중 하나를 선택한다면 전략 2일 것이다.

비슷하게 효용에 음수를 취하면 손실loss 함수가 되며 이때에는 손실을 최소화하는 전략을 찾고자 할 것이다. 효용의 극대화보다는 손실의 최소화로 표현되는 접근을 더 자주 보게 될 것이다.

이제 이를 표현하는 일반적인 방법을 살펴보자.

$$\sum_{c \in \mathscr{C}} p(c) u(a, c)$$

여기서 $\mathscr{C}$는 모든 가능한 카드 색을 의미한다.

위에서 채택한 효용 함수를 사용해서 식을 다시 정리해보면 아래와 같다.

$$\sum_{c \in \mathscr{C}} p(c) (p(a=c) \times 1 + p(a \neq c) \times 0)$$

여기에서 두 부분을 분리해서 생각해보자. $p(c)$는 카드가 어떤 식으로 등장하게 될지를 표현한 것이다. 우리가 만약 추론을 통해 이를 알게 되었다면 이는 모델의 posterior가 된다.

뒤의 $u(a, c)$는 선택과 현실이 어떻게 결정되었는지에 따른 효용을 의미한다. 잘 생각해보면 이 효용 함수의 꼴에 따라 위의 식을 최대화하는 문제가 쉬워질 수도 어려워질 수도 있다.

Basic Framework

보통 우리가 추론하고 결정을 하는 과정을 거칠 때 두 번의 문제 풀이를 거치게 된다. 현실을 모델링 하는 posterior 계산 단계가 있고, 이로부터 좋은 결정을 내리기 위한 posterior expected loss minimization 단계가 있다.

추론 방법에 따라 위의 posterior 계산에서도 최적화 문제를 풀어야 할 때가 있고, 당연히 뒤의 posterior expected loss minimization 문제를 풀 때도 최적화 문제를 풀어야 한다.

아직 잘 와 닿지 않을 수 있지만 이는 매우 중요하다.

예를 통해서 살펴보자.

스팸 메일을 분류하는 시스템을 만들고 싶다고 하자. 이는 위의 프레임워크에 따르면 다음의 두 단계를 거치게 된다.

데이터를 바탕으로 스팸 메일과 일반 메일을 모델링 하는 모델 패러미터의 posterior 분포를 계산한다. 이는 즉, $x$가 메일의 내용, $y$가 스팸인지를 나타낸다고 하면 전체의 데이터 $D$는 $D = \{(x_1, y_1), \ldots, (x_n, y_n)\}$이고 데이터가 주어졌을 때 패러미터 $\theta$로 표현되는 각 모델의 그럴싸한 정도는 모델의 posterior 분포 $p(\theta|D)$를 계산함을 의미한다. 이 과정은 다양하게 접근할 수 있으며 여기에서 한 차례 최적화 문제를 풀어야 할 수 있다.

그다음에 posterior expected loss를 최소화하는 최적화 문제를 한 차례 더 푼다. 스팸 메일을 일반 메일이라고 분류하는 것보다 일반 메일을 스팸 메일로 분류하는 것이 훨씬 비싸므로 단순히 스팸 메일인지 일반 메일인지 잘 맞추는 것으로는 부족하다. 가령 스팸 메일을 일반 메일이라고 분류하는 것은 -1점이고 일반 메일을 스팸 메일이라고 분류하는 것은 -100점이라면 특정 메일이 주어졌을 때 내가 얼마나 해당 메일이 스팸 메일인지 확신하는지를 함께 고려해서 결정(분류)해야지 단순히 스팸 메일일 확률이 높다고 스팸 메일로 분류하는 것은 결과적으로 최적의 선택이 아닐 수 있다는 말이다. 그래서 이 과정에서도 한 차례 더 최적화 문제를 풀어야 한다. 이는 아래의 식으로 표현된다.

$$\mathrm{argmin}_{\delta} E_{\theta \in \Theta} [L(\theta, \delta)] = \mathrm{argmin}_{\delta} \int_{\theta \in \Theta} L(\theta, \delta) p(\theta) d\theta$$

여기서 $\delta$는 우리가 내리는 결정을 이야기하며 뒤의 $p(\theta)$는 결국 위에서 계산한 모델의 posterior 분포이다. 즉, 가능한 모든 모델의 그럴싸함을 염두에 두고 이에 대한 가중치를 곱한 loss를 계산하여 그 기대값이 가장 낮은 결정을 내리겠다는 것을 의미한다.

References

합리적인 행동을 효용 극대화의 관점에서 바라보고 이를 수학적으로 전개하는 것이 게임 이론의 탄생으로 이어졌다. 그 시작을 알린 John von Neumann과 Oskar Morgenstern의 기념비적인 책 Theory of Games and Economic Behavior를 참고하기 바란다. 물론 VNM-합리성의 정당성에 대한 의문도 꾸준히 지적되었다. 특히 사람은 VNM-합리적이지 않은 것으로 보인다. 이에 대한 탐구가 Kahneman과 Tversky의 prospect theory로 이어졌다. 인간의 판단 및 결정에 대한 내용은 Reid Hastie와 Robyn M. Dawes의 Rational Choice in an Uncertain World를 참고하기 바란다.

Decision theory와 관련된 설명으로 mathematicalmonk의 (ML 3.1) Decision theory (Basic Framework) 영상을 추천한다.

위에서 소개한 decision theory는 굳이 말하면 Bayesian decision theory이다. Frequentist의 decision theory도 있으며 특히 empirical risk minimization은 알아두는 편이 좋다. 이와 관련된 내용은 Kevin Murphy의 Machine Learning: a Probabilistic Perspective의 5, 6장을 참고하기 바란다.