2014년 4월 15일 화요일

Machine Learning : 모델 선택 방법. 3. Bayesian statistics and regularization

이 글에서는 overfitting 에 대응하는 또하나의 툴에 대해 다룬다.
maximum likelihood (ML)을 이용하여 parameter fitting 하는 방법이 있다. 그리고 parameter는 다음에 따라 선택한다.
여기서 theta 는 constant-valued but unknown 으로 frequentist statistics내에서 취해진다. 이 파라메터를 유추하기 위해 maximum likelihood와 같은 통계적 절차(statistics procedure)를 따르는 것이 우리의 할 일이다.
parameter 유추 문제에 접근하는 또다른 방법은, Bayesian view를 갖는 것이다. 그리고 theta를 random variable로 생각하는 것이다. 이 방법에서, 파라메터에 대한 "prior beliefs" (미리 이럴 것이다라고 유추하는 것)을 적용하여, 확률분포 prior distribution p(theta)를 사용한다. training set S

가 주어지고, x의 새로운 값을 예측하려고 하면, 다음과 같은 posterior distribution 를 계산할 수 있다.

       (1)

위 식에서, p(y^(i),x^(i),theta) 는 사용하는 러닝 모델로 부터 나온다. 예를 들어, Bayesian logistic regression을 사용한다면, p(y^(i),x^(i),theta) 는 다음과 같이 될 것이다.


여기서 새로운 테스트 예제 x가 주어지고, 그것을 예측하여야 한다면, theta에 대한 posterior distribution을 사용하여 class label에 대한 posterior distribution를 다음과 같이 계산할 수 있다.
     (2)
위 식에서 p(theta|S) 는 수식(1) 로부터 얻는다. 따라서 x가 주어질때 y 값을 예측하는 경우, 다음과 같은 결과를 얻을 수 있다.
이러한 과정을, "fully Bayesian" prediction 을 수행하는 것으로 생각할 수 있다.  그것은 theta에 대한 posterior p(theta|S) 를 반영하는 평균치를 취하여 계산하는 것을 말한다. 그런데, 일반적으로, 이 posterior distribution 을 계산하는 것은 계산상으로 무척 어렵다. 왜냐하면, 수식(1)의 theta는 보통 매우 높은 차원이고 이것에 대해 적분(integral)을 해야 하기 때문이다. 게다가 이것은 보통 closed-form으로 되지 않을 수 있다.
그래서, 실제적으로는, theta에 대한 posterior distribution을 approximate 한다. 하나의 예로, 수식(2)와 같은 posterior distribution를 single point estimate 로 대치하는 것이다. MAP (maximum a posterior) estimate는 다음과 같다.
   (3)
이것은 theta에 대한 ML(maximum likelihood) estimate를 위한 공식과 같다. 단지 끝에 prior p(theta) 가 있는 것을 제외하고 말이다.
실제적인 응용에서, prior p(theta) 에 대한 일반적인 선택은, 다음을 가정하는 것이다.
이러한 prior 선택을 사용하여, fitted parameters theta_MAP 은 maximum likelihood에 의해 선택된 것보다 더 작은 norm 을 갖는다. 실제로, Bayesian MAP estimate 가 ML estimate보다 overfitting에 대해 덜 취약(susceptible)하게 된다. 예를 들어, Bayesian logistic regression 은, n>>m 인 경우에도 text classification에 효과적인 알고리즘으로 밝혀졌다.

(참조 Andrew Ng 강의노트)