1. Construction of a Probability Space

 

Construction of a Probability Space

확률 이론은 실험에서 무작위로 발생하는 결과를 설명하는 수학적 구조를 정의하는데 그 목적을 둡니다. 예를 들어, 하나의 동전을 던질 때, 우리는 결과를 확정할 수는 없습니다. 하지만 여러 번 동전을 던졌을 때, 평균적인 결과에서 regularity를 관측할 수 있습니다. 이러한 확률의 수학적 구조를 사용하여 자동화된 추론(automated reasoning)을 수행하는 것이 목표이며, 이러한 의미에서 확률은 논리적 추론(logical reasoning)을 일반화합니다.

Philosophical Issues

Automated reasoning system을 구축할 때, 고전적인 boolean logic은 plausible reasoning 방식을 표현하지 못했습니다. 다음의 경우를 생각해봅시다.

A라는 것이 false라고 관측했습니다. 그러면 비록 고전적인 논리(classical logic)으로부터 어떠한 결론도 이끌어낼 수 없지만, B가 덜 그럴듯(less plausible; 아마도 false라고 생각할 수 있다는 의미인 것 같습니다) 하다고 생각할 수 있습니다. B가 true라고 관측했다면 A는 더 그럴듯(more plausible; true라고 생각할 수 있다는 의미인 것 같습니다) 하다고 보일 수 있습니다.

이러한 형태의 추론은 일상에서도 발견할 수 있습니다. 만약 친구를 기다리는 상황에서 다음의 3가지 가능성을 생각할 수 있습니다.

  • H1: 친구가 제 시간에 오는 경우
  • H2: 친구가 교통 체증으로 늦는 경우
  • H3: 외계인에게 납치되는 경우

만약 친구가 늦었다고 관측한 경우에는 논리적으로 H1은 제외해야 합니다. 그리고 논리적으로 꼭 그렇지는 않지만, 일반적으로 H2가 더 가능성이 높다고 생각합니다. 또한, H3이 가능은 하다고 생각하지만, 그럴 가능성은 매우 낮다고 생각합니다.

우리가 H2가 가장 그럴듯한 답이라고 결론짓는 이유는 무엇인가요? 이러한 방식을 봤을 때, 확률 이론은 boolean logic의 일반화라고 생각될 수 있습니다. 머신러닝의 맥락에서는 종종 automated reasoning systems의 설계를 공식화하기 위해서 이러한 방식이 적용됩니다.

확률의 철학적 기초(philosophical basis)와 (논리적인 의미에서) 우리가 참이라고 생각하는 것과 어떻게 연관되어야 하는지에 대해 Cox라는 사람이 연구했습니다. 이에 대해 생각하는 또 다른 방법은 우리가 만약 우리의 common sense가 명확하면 결국 확률을 구성한다는 것입니다. E.T. Jaynes는 3가지 수학적 기준을 정의했는데, 이는 반드시 모든 plausibilities에 적용되어야 합니다.

  1. Degrees of plausibility는 실수(real numbers)로 표현된다.
  2. 이러한 수치는 common sense에 근거해야 한다.
  3. 추론 결과는 아래에서 설명하는 ‘consistent’라는 단어의 세 가지 의미와 일치해야 한다.
    (a) Consistency or non-contradiction : 다른 수단을 통해 동일한 결과에 도달할 수 있을 때, 동일한 plausibility가 모든 경우에 대해 발견되어야 한다.
    (b) Honesty : 이용가능한 모든 데이터가 반드시 고려되어야 한다.
    (c) Reproducibility : 두 가지 문제에 대해 우리 지식의 상태(state of knowledge)가 같다면, 그 두 가지 문제에 대해 동일한 정도의 plausibility가 할당되어야 한다.

Cox-Jaynes theorem은 이러한 plausibilities가 보편적인 수학적 규칙을 정의하는데 충분한다는 것을 증명합니다. 결정적으로 이러한 규칙은 확률(probability)의 규칙입니다.

Remark. 머신러닝(machine learning)과 통계(statistics)에는 확률에 대한 두 가지 major한 해석이 있는데, 이는 베이지안(bayesian) 해석과 빈도주의적(frequentist) 해석입니다. 베이지안 해석은 사용자가 사건(event)에 대해 가지고 있는 불확실성의 정도를 지정합니다. 이는 "subjective probability" 또는 "degree of belief"라고도 칭합니다. 빈도주의적 해석은 발생한 사건의 총 횟수에 대한 관심있는 사건의 상대적인 빈도를 고려합니다. 사건의 확률(probability of an event)은 무한한 데이터를 가지고 있을 때 극한에서 사건의 상대적인 빈도로 정의됩니다.

일부 머신러닝 교재들은 확률 모델(probabilistic models)에 대해 혼동을 주는 lazy notation/jargon을 사용하며, 이 교재도 예외는 아닙니다. 여러 별개의 개념들은 모두 “probability distribution”(확률 분포)라고 하며, 때때로 문맥으로부터 의미를 분리해야 합니다. 확률 분포를 이해하는데 한 가지 도움이 되는 트릭은 categorical(a discrete random variable)로 모델링하는지 또는 continuous(a continuous random variable)로 모델링하는지 확인하는 것입니다. 머신러닝에서 우리가 마주하는 질문들은 우리가 categorical or continuous models를 고려하는지와 밀접하게 관련이 있습니다.

Probability and Random Variables

확률을 논할 때 혼동되는 세 가지 개념이 있습니다. 첫 번째는 바로 probability space 이며, 이는 확률이라는 개념을 정량화합니다. 하지만, 대부분 이 기본적인 probability space을 직접적으로 다루지는 않습니다. 대신 두 번째 개념인 random variables (확률 변수)를 사용하여 확률을 다룹니다. 이는 확률을 좀 더 편리한 space(일반적으로 numerical space)로 전환시켜줍니다. 세 번째 개념은 확률 변수와 관련된 distribution (분포) 입니다. 6.1장에서는 첫 번째와 두 번째 개념에 대해 살펴보고, 세 번째 개념은 6.2장에서 살펴보도록 하겠습니다.

현대 확률은 Kolmogorov가 제안한 공리 집합을 기반으로 합니다. 여기서는 sample space, event space, probability measure를 도입했습니다. Probability space는 무작위 결과의 real-world process(실험이라고 칭함)를 모델링합니다.


The sample space $\Omega$

Sample space 는 실험에서 나올 수 있는 모든 가능한 결과들의 집합이며, 보통 $\Omega$ 로 표기합니다. 예를 들어, 동전 두 개를 던지는 실험에서는 {hh, tt, ht, th} 의 sample space를 가집니다 (h: heads(앞면), t: tails(뒷면)).

The event space $\mathcal{A}$

Event space 는 실험에서 잠재적으로 나올 수 있는 결과에 대한 공간입니다. 만약 실험이 끝날 때 특정 결과 $\omega \in \Omega$ 가 $A$ 에 있는지 없는지 관측할 수 있는 경우, sample space $\Omega$ 의 부분집합(subset) $A$ 는 event space $\mathcal{A}$ 에 있습니다. Event space $\mathcal{A}$ 는 $\Omega$ 의 부분집합들의 모임으로 얻어지며, 이산 확률 분포(discrete probability distributions)에서 $\mathcal{A}$ 는 종종 $\Omega$ 의 power set 입니다.

The probability $P$

각 사건(event) $A\in\mathcal{A}$ 에서, $P(A)$ 는 사건이 발생할 확률 또는 사건이 발생할 믿음의 정도를 측정하는 숫자입니다. $P(A)$ 는 $A$ 의 확률(probability) 라고 부릅니다.


단일 사건의 확률은 반드시 [0, 1] 구간 위에 놓여 있으며, sample space $\Omega$ 의 모든 결과들의 확률 합은 반드시 1입니다. 즉, $P(\Omega) = 1$ 입니다.

Probability space $(\Omega, \mathcal{A}, P)$ 가 주어졌을 떄, 우리는 이를 사용하여 어떤 real-world phenomenon을 모델링하고 싶습니다. 머신러닝에서는 명시적으로 probability space라고 부르기 보다는 $\mathcal{T}$ 로 표기하는 probabilities on quantities of interest라고 부릅니다. 이 교재에서는 $\mathcal{T}$ 를 target space라고 부르고, $\mathcal{T}$ 의 요소(elements)를 states라고 부릅니다. 우리는 $\Omega$ 의 요소(an outcome)을 받아서 $\mathcal{T}$ 의 값인 particular quantity of interest $x$ 를 리턴하는 함수 $X:\Omega\rightarrow\mathcal{T}$ 를 도입합니다. 이러한 $\Omega$ 에서 $\mathcal{T}$ 로의 mapping을 random variable 이라고 부릅니다.

예를 들어, 두 개의 동전을 던져서 앞면이 나오는 횟수를 세는 경우를 살펴보겠습니다. 이때, random variable $X$ 는 앞면이 나오는 횟수이며, 가능한 결과는 3가지 입니다: $X(hh) = 2, X(ht) = 1, X(th) = 1, X(tt) = 0$ . 이 경우 $\mathcal{T}$ 는 {0, 1, 2} 이며, 이는 우리가 관심있는 $\mathcal{T}$ 의 요소에 대한 확률입니다.

유한한 sample space $\Omega$ 와 유한한 $\mathcal{T}$ 에 대해, 확률 변수에 대응되는 함수는 본질적으로 lookup table 입니다. 임의의 부분집합 $S\in\mathcal{T}$ 에 대해, $P_X(S)\in\lbrack0,1\rbrack$ (the probability)는 확률 변수 $X$ 에 대응되어 발생하는 특정 사건과 연관됩니다.

아래의 Example 6.1에서 이러한 용어들에 대한 구체적으로 설명합니다.

Example 6.1

가방에서 동전 두 개를 뽑는 게임을 모델링하는 통계적 실험(statistical experiment)을 생각해보겠습니다. 가방에는 USA 달러($\$$)와 UK 파운드($\pounds$) 동전이 있고, 따라서 동전을 두 개를 뽑으면 총 4가지의 결과가 존재하게 됩니다. 따라서, 이 실험의 state sample 또는 sample space $\Omega$ 는 ($\$$, $\$$), ($\$$, $\pounds$), ($\pounds$, $\$$), ($\pounds$, $\pounds$) 입니다. 그리고, 주머니에서 $\$$ 동전을 뽑을 확률은 0.3이라고 가정합니다.

여기서 우리가 관심있는 사건(event)은 반복해서 동전을 뽑을 때 동전이 나오는 총 횟수입니다. 이제 sample space $\Omega$ 에서 $\mathcal{T}$ 로 매핑하는 확률 변수(random variable) $X$ 를 정의해봅시다. 이때, $\mathcal{T}$ (target space)는 달러가 주머니에서 나온 횟수를 나타냅니다. 위에서 살펴본 sample space를 통해서 달러는 0번, 1번, 2번 나올 수 있다는 것을 봤습니다. 따라서 $\mathcal{T}$ 는 {0, 1, 2} 입니다. 확률 변수 $X$ (function or lookup table)는 다음과 같이 표현할 수 있습니다.

\[\begin{align*} X((\$, \$)) &= 2 \tag{6.1} \\ X((\$, \pounds)) &= 1 \tag{6.2} \\ X((\pounds, \$)) &= 1 \tag{6.3} \\ X((\pounds, \pounds)) &= 0 \tag{6.4} \end{align*}\]

동전을 첫 번째 뽑는 것과 두 번째 뽑는 것은 서로 영향을 미치지 않기 때문에 두 번의 동전 뽑기는 독립적(independent)이라는 것을 의미합니다. 6.2.1장에서 살펴볼 probability mass function(질량 밀도 함수)는 다음과 같이 주어집니다.

\[\begin{align*} P(X=2) &= P((\$, \$)) \\ &= P(\$)\cdot P(\$) \\ &= 0.3\cdot0.3 = 0.09 \tag{6.5} \\ P(X=1) &= P((\$, \pounds) \cup (\pounds, \$)) \\ &= P((\$, \pounds)) + P((\pounds, \$)) \\ &= 0.3\cdot(1-0.3) + (1-0.3)\cdot0.3 = 0.42 \tag{6.6} \\ P(X=0) &= P((\pounds, \pounds)) \\ &= P(\pounds)\cdot P(\pounds) \\ &= (1-0.3)\cdot(1-0.3) = 0.49 \tag{6.7} \end{align*}\]

Example 6.1에서 두 가지 다른 개념, $X$ 의 output의 확률과 $\Omega$ 내에 있는 sample의 확률을 동일시했습니다. 즉, (6.7)에서 $P(X=0) = P((\pounds,\pounds))$ 라고 했습니다.

확률 변수 $X : \Omega \rightarrow \mathcal{T}$ 와 부분집합 $S\subseteq \mathcal{T}$ 에 대해 고려해보겠습니다. ($S$ 는 동전을 2번 던졌을 때 앞면이 1번 나오는 결과와 같이 $\mathcal{T}$ 의 single element라고 보면 됩니다.)

그리고, $X^{-1}(S)$ 를 $X$ 에 의한 $S$ 의 pre-image(원상), 즉, $X$ 아래서 $S$ 로 매핑하는 $\Omega$ 의 요소들의 집합 (= $\lbrace w\in\Omega : X(w) \in S\rbrace$ )이라고 둡니다. $\Omega$ 로부터 확률 변수 $X$ 로의 변환을 이해하는 한 가지 방법은 이를 $S$ 의 pre-image에 대한 확률과 연관시키는 것입니다. $S\subseteq \mathcal{T}$ 에 대해, 이는 아래의 수식으로 정리됩니다.

\[P_X(S) = P(X\in S) = P(X^{-1}(S)) = P(\lbrace w\in\Omega : X(w)\in S\rbrace) \tag{6.8}\]

(6.8)의 좌항은 우리가 관심있는 가능한 결과 집합의 확률입니다. 예를 들어, Example 6.1의 경우에는 달러가 나올 수 있는 횟수(e.g. 1) 입니다. States를 결과에 매핑하는 확률 변수 $X$ 를 통해, (6.8) 식의 우항에서 속성(e.g. $\$\pounds, \pounds\$$)을 갖는 states(in $\Omega$) 집합의 확률이라는 것을 알 수 있습니다.

여기서 확률 변수 $X$ 를 특정 확률 분포(probability distribution) $P_X$ 를 따라 분포한다고 말합니다. 이 분포는 event와 확률 변수의 결과의 확률 사이를 매핑하는 확률(probability)를 정의합니다. 즉, 함수 $P_X$ 또는 이와 동일한 $P\circ X^{-1}$ 는 law or distribution of random variable $X$ 입니다.


Statistics

Probability theory와 statistics는 일반적으로 함께 언급되지만, 불확실성(uncertainty)에 대해 다른 측면을 고려합니다. 이들은 서로 고려하는 문제의 종류가 다릅니다. 확률 이론에서는 근본적인 불확실성이 확률 변수에 의해 캡처되는 프로세스의 모델(a model of some process)을 고려하고, 확률 규칙(rules of probability)을 사용하여 무엇이 발생하는지 도출합니다. 통계에서는 어떤 일이 발생했는지 관측하고, 이러한 관측을 설명하는 근본적인 프로세스를 찾아내려고 합니다.

이런 의미에서 머신러닝은 데이터를 생성하는 프로세스를 적절하게 표현하는 모델을 구성한다는 측면에서 통계에 가깝습니다. 다만, 확률 규칙을 사용하여 어떤 데이터에 가장 잘 맞는 모델을 얻을 수도 있습니다.

머신러닝 시스템의 또 다른 측면은 generalization error(8장 참조)에 관심이 있다는 것 입니다. 이는 우리가 이때까지 본 것과 같지 않은 미래에 관측할 인스턴스에 대한 시스템의 성능에 관심이 있다는 것을 의미합니다. 미래의 성능에 대한 이러한 분석은 확률과 통계에 의존하며, 대부분은 이번 장에서 살펴볼 내용을 넘어섭니다.