본문 바로가기
Pattern Classification [수업]

Ch9.4 Algorithm-independent machine learning - Resampling for estimating statistics

by Keep It Simple, Stupid! 2020. 12. 9.

2020-2학기 서강대 김경환 교수님 강의 내용 및 패턴인식 교재를 바탕으로 본 글을 작성하였습니다.

 

9.4 Resampling for estimating statistics (통계 추정을 위한 재표본화)


▶ For a new pattern recognition problem with unknown distribution, how can we determine the bias and variance?

  • An inspiration for “resampling” methods: Fig. 9.4-9.5 [교재 그림]
  • the ultimate goal: using resampling and related techniques to improve classification.

 어떤 학습 알고리즘을 분포를 모르는 경우(e.g. data의 분포를 모르는 경우) 새로운 패턴 인식 문제에 적용할 때, bias와 variance를 어떻게 결정할까? Ch9.3에서의 [그림 2] 및 [그림 3]은, resampling 방법들에 대한 영감을 주는 다중 샘플들을 사용하는 방법을 제안하며, 궁극적인 목표(분류를 개선시키기 위해 resamling 및 관련 기법들을 사용하는 것)는 Ch9.5에서 살펴보기로 하자.

 

9.4.1 Jackknife

▶ An example of how resampling can be used to yield a more informative estimate of a general statistics.

 더 정보제공적인 일반적 통계랑의 추정을 산출하는 데 resampling이 어떻게 사용될 수 있는가에 관한 에를 갖고 시작하자. 

 어떤 1-차원 분포로부터 샘플링된 $n$개의 data point $x_i$ ($i=1, 2, ..., n$의 집합 $D$가 있다고 하자. $mu$에 대한 추정은 식 (1)과 같다.

$$\hat{\mu}=\frac{1}{n} \sum_{i=1}^{n} x_{i} \tag{1}\label{1}$$

 마찬가지로 $\sigma$(평균의 정확도, 샘플 분산)에 대한 추정은 식 (2)와 같다.

$$\hat{\sigma}^{2}=\frac{(n-1)}{n} \sum_{i=1}^{n}\left(x_{i}-\hat{\mu}\right)^{2}  \tag{2}\label{2}$$

 

▶ Suppose we were interested in the median, mode, or any of a large number of statistics other than the mean.

  • A measure of the error or spread of our estimation?

 mean(평균)이외에 median(중앙값), mode(빈도수가 가장 큰 값) 등의 많은 통계(추정치)에 관심이 있다고 가정하면, 이런 추정치의 오차 및 확산의 척도는 무엇인가?

 

The jackknife and bootstrap are two of the most popular and theoretically grounded resampling techniques for extending the above approach to arbitrary statistics.

 Jackknife 와 bootstrap 기법들은 임의의 통계량들에 확장시키기 위한 가장 인기 있고 이론적 배경을 갖춘 resampling 기법에 속한다. 

 

step 1 : Leave-one-out mean

  재표본화 이론에서 한 데이터 점이 데이터로부터 삭제되는 통계량을 자주 사용하는데, 예를 들면, leave-one-out mean은 다음과 같다. 

$$
\mu_{(i)}=\frac{1}{n-1} \sum_{j \neq i} x_{j}=\frac{n \bar{x}-x_{i}}{n-1} \tag{3}\label{3}
$$

 즉, $i$번째 data point를 제외한 $D$ 집합의 샘플 산술 평균을 의미함. 더 나아가 Jackknikfe estimate를 진행해보자.

 

 step 2 : Jackknife estimate of the mean the mean of the leave-one-out means

 위에서 모든 data point ($i = 1, ... , n$)에서의 leave-one-out-mean을 구한 $\mu_{(i)}$에 대한 평균을 구하는 식은 다음과 같다.

$$\mu_{(.)} = \frac{1}{n}\sum_{i=1}^{n} \mu_{(i)} \tag{4}\label{4}$$

$$\hat{\mu} = \mu_{(.)} \tag{5}\label{5}$$

 

▶ The jackknife estimate of the variance of the estimate obeys

 마찬가지로 variance를 추정하기 위한 Jackknife 추정은 아래와 같다.

$$
\operatorname{Var}[\hat{\mu}]=\frac{n-1}{n} \sum_{i=1}^{1}\left(\mu_{(i)}-\mu_{(\cdot)}\right)^{2} \tag{6}\label{6}
$$

 

The benefit of expressing the variance in the form is that it can be generalized to any other estimator, such as the median or mode.

 variance를 식 (6)으로 표현할 때의 이점은 median, mode 등의 다른 추정자 $\hat{\theta}$로도 일반화될 수 있다는 것이다. 그렇게 하기 위해서는 통계랑을 한 데이터 점을 "빼 놓고" 계산할 필요가 있다. 따라서 위의 식 (4), 식(5)에서

$$
\hat{\theta}_{(i)}=\hat{\theta}\left(x_{1}, x_{2}, \cdots, x_{i-1}, x_{i+1}, \cdots, x_{n}\right) \tag{7}\label{7}
$$

이 $\mu_{(i)}$를 대체하게 하고, $\hat{\theta}_{(.)}$이 $\mu_{(.)}$를 대체하게 한다. 

▶ Jackknife Bias Estimate

 bias의 개념은 ch9.3절에 기술된 것보다 더 일반적으로 다음과 같이 표현할 수 있다. 추정치 $\theta$의 $bias$는 그것의 True 값($\theta$)과 기대값 간의 차이, 즉 

$$ bias = \theta - E[\hat{\theta}] \tag{8}\label{8}$$

 이다. 

 위 bias의 개념을 이용하여 Jackknife의 bias를 추정하는 데 사용될 수 있다. 

$$ bias_{jack} = (n-1)(\hat{\theta}_{(.)} - \hat{\theta}) \tag{9}\label{9}$$

 항을 재배치하면 $\hat{\theta}$의 jackknife 추정이 

$$
\tilde{\theta}=\hat{\theta}-\text { bias }_{\text {jack}}=n \hat{\theta}-(n-1) \hat{\theta}_{(\cdot)} \tag{10}\label{10}
$$

임을 알 수 있다. 식 (10)을 사용할 때의 이점은 True Bias를 추정할 때 bias되지 않는다는 것이다.

▶ Jackknife Variance Estimate

 임의의 통계량 $\theta$의 variance의 jackknife 추정을 구해보자. 우선 일반적인 variance는 아래 (좌)과 같다. 식 (6)으로부터 유추해서 정의되는 분산의 jackknife 추정은 아래 (우)와 같다.

$$
\operatorname{Var}[\hat{\theta}]=E\left[\left[\hat{\theta}\left(x_{1}, x_{2}, \cdots, x_{n}\right)-E[\hat{\theta}]^{2}\right] ,\quad \operatorname{Var}_{\text {jack}}[\hat{\theta}]=\frac{n-1}{n} \sum_{i=1}^{n}\left[\hat{\theta}_{(i)}-\hat{\theta}_{(\cdot)}\right]^{2}\right.
$$

 jackknife resampling 기법은 계산적으로 더 복잡하기는 하지만, 전통적 방법들보다는 mode 같은 통계량에 대해 흔히 더 만족스러운 추정을 제공하고 있다.

Example 2 : Jackknife estimate of bias and variance of the mode

 

9.4.2. Bootstrap

A bootstrap data set is one created by randomly selecting $n$ points from the training set $D$, with replacement.

 "Bootstrap" 데이터 집합은 훈련 집합 $D$로부터 $n$개의 point를 랜덤하게 선택하여 생성되는 것이다. (이미 뽑힌 것을 다시 넣고 뽑는 방식, 즉 복원추출). ($D$ 자체가 $n$개의 point를 포함하기 때문에, bootstrap data set에는 거의 항상 중복되는 점들이 있음)

The selection process is independently repeated $B$ times to yield B bootstrap data sets.

 bootstrap 추정에서 이 선택 프로세스는 독립적으로 $B$회 반박되어 독립적 집합들로 다루어지는 $B$개의 bootstrap data set을 만든다.

$$
\hat{\theta}^{*(\cdot)}=\frac{1}{B} \sum_{b=1}^{B} \hat{\theta}^{*(b)} \quad \text { where } \hat{\theta}^{*(b)} \text { is the estimate on bootstrap sample } b \tag{13}\label{13}
$$

▶ Bootstrap Bias Estimate

$$\text { bias }_{\text {boot}}=\frac{1}{B} \sum_{b=1}^{B} \hat{\theta}^{*(b)}-\hat{\theta}=\hat{\theta}^{*(\cdot)}-\hat{\theta} \tag{14}\label{14}$$

▶ Bootstrap Variance Estimate

$$\text{Var}_{\text{boot}}[\theta]=\frac{1}{\beta} \sum_{b=1}^{B}\left[\hat{\theta}^{*(b)}-\hat{\theta}^{*(\cdot)}\right]^{2} \tag{15}\label{15}$$

One of the benefits of bootstrap estimation is that B can be adjusted to the computational resources.

Jackknife estimate requires exactly $n$ repetitions.

만일 통계량 $\theta$가 평균이면, $B \rightarrow \infty$의 극한에서 variance의 bootstrap 추정은 평균의 전통적 variance와 같다. 일반적으로 말하면, bootstrap sample 수인 $B$가 클수록, 어떤 통계량의 추정과 그 분산이 더 만족스러울 것이다. (Bootstrap은 $B$번을 요구하지만, 앞서다룬 $Jackknife$는 총 $n$회의 반복을 요구함)

 

 

Reference


댓글