본문 바로가기
패턴인식과 머신러닝/Ch 03. Linear Models for Regression

[베이지안 딥러닝] Ch3.1 Linear models for Regression (MLE)

by Keep It Simple, Stupid! 2021. 1. 18.

2020-2학기 이화여대 김정태 교수님 강의 내용을 바탕으로 본 글을 작성하였습니다.

 

Overview


  • Linear regressoin (MLE)
  • Bias-Variance Decomposition
  • Bayeisan linear regression 
  • Bayesian model comparison
  • The evidence approximation
  • Limit, of fixed basis functions

 

 

Linear regression


▶ Regression problem

  • Given a training data set comprising $N$ observations $\bf{x}_n$ together with corresponding target values $\{t_n\}$, we would like to predict the value of $t$ for a new value of $\bf{x}$.
  • In the simplest approach, this can be done by directly constructing $y(\bf{x})$ for the corresponding value of $t$.
  • More generally, we aim to model the predictive distribution $p(t|\bf{x})$ because this expresses our uncertainty about the value of $t$ for each vlaue of $\bf{x}$.

 회귀 모델의 목표는 $D$차원의 벡터 $\bf{x}$들이 입력(input) 변수로 주어졌을 때, 그에 해당하는 연속 목표(taget) 변수 $t$를 예측하는 것. 

 가장 간단한 접근법은 새 입력값 $\bf{x}$에 대해 해당 표적값 $t$를 출력하도록 하는 적잘한 함수 $y(\bf{x})$를 직접 만들어 내는 것

 확률적인 측면에서 말하자면 예측 분포 $p(t|\bf{x})$를 만들어 내는 것이 목표이며, 예측 분포를 통해서 각각의 입력값 $\bf{x}$에 대한 표적값 $t$의 불확실성을 알 수 없기 때문이며, 조건부 분포를 이용하면 새로운 $\bf{x}$값에 대해서든 손실 함수의 기댓값을 최소화하는 표적값 $t$를 예측해낼 수 있다.

 

▶ 3.1 Linear Basis function models

  • Linear combinations of input variable $\bf{x} = (x_0, x_1, ... , x_D)^T$

$$
y(\mathbf{x}, \mathbf{w})=w_{0}+w_{1} x_{1}+\ldots+w_{D} x_{D} \tag{1}\label{1}
$$

 가장 단순한 형태의 linear regression은 입력 변수들의 선형 결합을 바탕으로 한 모델이다. (식 1) 하지만, 선형 회귀 모델의 가장 중요한 성질은 바로 이 모델이 매개변수 $w_0, w_1, ... , w_D$의 선형 함수라는 것이다. (또는 입력 변수 $x_i$의 선형 함수) 이런, 선형 성질 때문에 선형 회귀 모델에는 심각한 한계점 존재

  • A linear function of input is too much restricted model.
  • We can extend the class of model by considering linear combinations of fixed nonlinear functions of input variables using basis functions $\phi_j (\bf{x})$.

 위 한계점을 극복하기 위해 아래처럼 입력 변수에 대한 고정 비선형 함수($\phi_{j}(\bf{x})$)들의 선형 결합을 사용할 수 있음

$$
y(\mathbf{x}, \mathbf{w})=w_{0}+\sum_{j=1}^{M-1} w_{j} \phi_{j}(\mathbf{x}) \tag{2}\label{2}
$$

 $w_0$를 bias (편향) 매개변수 [주의 : not to be confused with ‘bias’ in a statistical sense] 또는 고정된 offset을 표현한다. 편의를 위해 $\phi_0(\bf{x}) = 1$로 정의하면, 식 (3)으로 표현할 수 있다.

$$
y(\mathbf{x}, \mathbf{w})=\sum_{j=0}^{M-1} w_{j} \phi_{j}(\mathbf{x}) = \bf{w}^T\bf{\phi}(\bf{x}) \tag{3}\label{3}
$$ 

where $\phi_{0}(\bf{x})=1$

  • For many cases, fixed pre-processing for feature extraction is applied leading to fixed basis functions

 많은 패턴인식의 응용 분야에서 $\bf{x}$(원 데이터)에 전처리 / 특징 추출 과정을 적용하게 된다. 만약, 원래 변수가 벡터라면, 특징들은 basis function $\phi_j{(\bf{x})}$를 바탕으로 표현할 수 있음

  • Polynomial regression used basis functions take the form of powers of $x$ so that $\phi_j (x) = x^j$.
  • One limitation of polynomial basis function is that they are global functions of the input variable, sop that changes in one region of input space affect all other regions.

 Ch1에서 살펴본 다항 회귀 문제는 입력 변수 $x$고, basis function은 $x$의 거듭제곱 $\phi_j (x) = x^j$이다. 다항 기저 함수의 한 가지 문제점은 이 함수가 입력 변수에 대한 전역적인 함수이기 때문에 입력 공간의 한 영역에서 발생한 변화가 다른 영역들에까지 영향을 미친다는 것이다. 입력 공간을 여러 영역들로 나누고 각 영역에 대해서 서로 다른 다항식을 피팅함으로써 위의 문제를 해결할 수 있으며, 이 아이디어를 바탕으로 한 것이 spline function [Figure 1] 이다. 여기서는 자세히 다루지 않음 (해결 방법만 참고)

[Figure 1] Examples of spline function

  • Other possible choices for the basis functions such as Gaussian basis function (식 4), sigmoidal basis function (식 5)

대표적인 basis function은 다음과 같다.

$$\phi_{j}(x) =\exp \left\{-\frac{\left(x-\mu_{j}\right)^{2}}{2 s^{2}}\right\} \tag{4}\label{4}$$

$$\phi_{j}(x) = \sigma\left(\frac{x-\mu_{j}}{s}\right) \tag{5}\label{5}$$

where $\sigma (a)$ is the logistic sigmoid function defined by

$$
\sigma(a)=\frac{1}{1+\exp (-a)} \tag{6}\label{6}
$$

[Figure 2] Examples of basis functions, showing polynomials on the left, Gaussians of the form (식 4) in the centre, and sigmoidal of the form (삭 5) on the right.

 사실 이번 장에서는 어떤 basis function을 사용하는지와는 무관하며, 따라서 수치적인 해석이 필요한 예제를 제외하고는 어떤 basis function를 특정하지 않는다. 

▶ 3.1.1 Maximum likelihood and least squares

  • Assume that the target variable $t$ is given by a deterministic function $y(\bf{x}, \bf{w})$ with additive Gaussian noise such that

$$
t = y(\bf{x}, \bf{w}) + \epsilon \tag{7}\label{7} 
$$

where $\epsilon$은 0을 평균으로, $\beta$를 정밀도(분산의 역)로 가지는 가우시안 확률 변수다. 따라서 다음과 같이 적을 수 있다.

  • Thus the conditional probability is

$$
p(t | \mathbf{x}, \mathbf{w}, \beta)=\mathcal{N}\left(t \mid y(\mathbf{x}, \mathbf{w}), \beta^{-1}\right) \tag{8}\label{8}
$$

 제곱 오류 함수를 가정할 경우 새 변수 $\bf{x}$에 대한 최적의 예측값은 target 변수의 조건부 평균으로 주어질 것이다. (식 8)의 형태의 가우시안 조건부 분포의 경우에 조건부 평균은 다음과 같다.

  • The minimizer of squared loss function is conditional mean, which is

$$
E[t | \mathbf{x}]=y(\mathbf{x}, \mathbf{w}) \tag{9}\label{9}
$$

참고 : Ch1의 Loss function for regression 부분에서 다뤘으니, 필요에 따라 확인

  • Note that the Gaussian noise assumption implies the conditional distribution is unimodal, which may not be appropriate for some applications

 noise의 분포가 가우시안이라는 가정은 $\bf{x}$가 주어졌을 때의 $t$의 조건부 분포가 unimodal (단봉 형태)임을 내포하고 있다. multimodal을 형태를 가지는 조건부 분포를 표현하기 위해서 가능한 방법 중 하나는 조건부 가우시안 분포들을 혼합하는 것 (추후 다룰 예정)

  • Consider a data set of inputs $\bf{X} = \{ \bf{x}_1, ... , \bf{x}_n \}$ with corresponding target values $\bf{t} = \{t_1, ... , t_n \}$
  • $\mathbf{X}$ : inpu data 집합 $\mathbf{x}_1, \mathbf{x}_2, ... , \mathbf{x}_N$
  • $\mathbf{t}$ : input data에 해당하는 target variable $t_1, ... , t_N$
  • $t_n = y(\mathbf{x}_n, \mathbf{w}) + \epsilon$
  • $y(\mathbf{x}_n, \mathbf{w}) = \mathbf{w}^T\phi(\mathbf{x})$

$$
p(\mathbf{t} | \mathbf{X}, \mathbf{w}, \beta)=\prod_{n=1}^{N} \mathcal{N}\left(t_{n} \mid \mathbf{w}^{T} \phi\left(\mathbf{x}_{n}\right), \beta^{-1}\right) \tag{10}\label{10}
$$

 위 데이터 포인터들이 식 (7)의 분포로부터 독립적으로 추출되었다는 가정하에 위의 형태의 가능도 함수 식 (10)을 얻을 수 있다. 이 가능도 함수의 조절 가능한 매개변수는 $\mathbf{w}$와 $\beta$이다. 

  • Log-likelihood function

$$
\begin{aligned}
\ln p(\mathbf{t} | \mathbf{w}, \beta) &=\sum_{n=1}^{N} \ln \mathcal{N}\left(t_{n} \mid \mathbf{w}^{T} \phi\left(\mathbf{x}_{n}\right), \beta^{-1}\right) \\
&=\frac{N}{2} \ln \beta-\frac{N}{2} \ln (2 \pi)-\beta E_{D}(\mathbf{w})
\end{aligned} \tag{11}\label{11}
$$

where the sum of squares error

$$
E_{D}(\mathbf{w})=\frac{1}{2} \sum_{n=1}^{N}\left\{t_{n}-\mathbf{w}^{T} \phi\left(\mathbf{x}_{n}\right)\right\}^{2} \tag{12}\label{12}
$$

이제 가능도 함수로 표현되었으니, 최대 가능도 방법(MLE)을 적용하여 $\mathbf{w}$와 $\beta$를 구할 수 있다. 

  • The gradient of the log-likelihood function

$$\nabla \ln p(\mathbf{t} | \mathbf{w}, \beta) = \beta \sum^N_{n=1} \{t_n - \mathbf{w}^T \phi(\mathbf{x}_n) \} \phi(\mathbf{x}_n)^T \tag{13}\label{13}$$

우선, $\mathbf{w}$에 대해 극대화하는 경우를 고려해보자.

  • Setting the gradient to zero gives

$$0 = \sum^N_{n=1} t_n \phi(\mathbf{x}_n)^T - \mathbf{w}^T (\sum_{n=1}^N \phi(\mathbf{x}_n) \phi(\mathbf{x}_n)^T) \tag{14}\label{14}$$

 이를 $\mathbf{w}$에 대해 풀면 다음을 얻을 수 있다.

  • The maximum likelihood estimator (The normal equation)

$$\mathbf{w}_{ML} = (\Phi^T \Phi)^{-1}\Phi^T\mathbf{t} \tag{15}\label{15}$$

마찬가지로, $\beta$(정밀도 매개변수)에 대해  최대화하면 다음을 얻게 된다.

$$\frac{1}{\beta_{ML}} = \frac{1}{N} \sum^{N}_{n=1} \{t_n - \mathbf{w}_{ML}^T \phi(\mathbf{x}_n) \}^2 \tag{16}\label{16}$$ 

 식 (16)은 $\frac{1}{\beta_{ML}}$(노이즈의 정밀도의 역)이 회귀 함수 근처 target variable들의 잔차 분산으로 주어진다는 것을 알 수 있음

  • $(\Phi^T \Phi)^{-1}\Phi^T$ is Moore-Penrose pseudo inverse
  • The design matrix

[Figure 3] MLE를 활용한 w 추정
[Figure 4] degsing matrix를 활용한 ① 전개
[Figure 5] degsing matrix를 활용한 ② 전개

 위에서 구한 식 (15)를 최소 제곱 문제의 정규 방정식 (The normal equation)이라고 부른다. 여기서 $\Phi$는 $N \times M$ 행렬로, 설계 행렬(design matrix)이라 불린다. 설계행렬의 각 원소는 $\mathbf{\phi}_{nj} = \phi_j (\mathbf{x}_n)$으로 주어진다.

 

▶ 3.1.2 Geometry of least squares-Projection theorem

  • $N$ dimensional vector space whose axes are given by the $t_n$
  • Column vector of $\Phi$, denoted by $\phi_j$ can be represented as a vector in the same space

 $\mathbf{t} = (t_1, ... , t_N)^T$을 축으로 가지는 $N$ 차원의 공간을 생각해보자. 각각의 basis function (기저함수) $\phi_j(\mathbf{x}_n)$들을 $N$개의 데이터 포인트들에 대해 계산한 값 역시 같은 공간상의 벡터로 표현 가능하다. 

  • If the number $M$ of basis function is smaller than the number $N$ of data points, then the $M$ vectors of $\phi_j$ will span a linear subspace $S$ of dimensionality $M$.

  basis function의 수 $M$이 데이터 포인트의 수 $N$보다 작을 경우 $M$개의 벡터 $\phi_j$은 $M$차원의 선형 부분 공간 $S$에 펼쳐지게 될 것이다.

  • Define $\mathbf{y}$ to be an $N$ dimensional vector whose $n$-th element is given by $y(\mathbf{x}_n, \mathbf{w})$

 $\mathbf{y}$를 $n$번째 원소가 $y(\mathbf{x}_n, \mathbf{w})$로 주어지는 $N$차원의 벡터라고 정의해보자 ($n=1, ..., N$)

  • Since $\mathbf{y}$ is an arbitrary linear combination of the vectors $\phi_j$, it can live anywhere in $S$. Thus the least squares solution for $\mathbf{w}$ corresponds to the choice of $\mathbf{y}$ that is closest to $\mathbf{t}$

 $\mathbf{y}$는 $\phi_j$들의 임의의 선형 결합이기 때문에 $M$차원 부분 공간상에서 어디든 존재할 수 있다. 이 경우, .식 (12)의 제곱합 오류는 ($\frac{1}{2}$ 제외) $\mathbf{y}$와 $\mathbf{t}$ 사이의 제곱 유클리드 거리에 해당하게 된다. 따라서, $\mathbf{w}$에 대한 최소 제곱 해는 부분 공간 $S$상의 $\mathbf{y}$와 이에 가장 가까운 $\mathbf{t}$에 의해 결졍된다. [Figure 6]를 바탕으로 생각하면, 이 solution(해)는 $\mathbf{t}$를 부분 공간 $S$에 직교적으로 투영한 것에 해당한다고 생각해도 된다. 

참고 : 표기가 부정확한 부분이 있어, 검증 후 다시 수정하도록 하겠습니다. (2021.02.11)

[Figure 6] 최소 제곱의 기하학적 의미

 실제 사례에서는 $\Phi^T \Phi$가 Sigular matrix(비정칙 행렬)에 가까울 경우에는 정규 방정식의 해를 직접 구하는 것이 수치적으로 어렵다. (해가 무수히 많음?) 해결 방안은 주로 아래 다음 방법 가능

  •  SVD (특잇값 분해)
  • 정규화항 추가함으로써 nonsingular matrix 되도록 함

 

▶ 3.1.3 Sequential learning

  • For many case, the maximum likelihood solution cannot be determined analytically
  • In such case, sequential learning can be used to determine the solution
  • Moreover, if data size is large, methods such as stochastic gradient descent can be used
  • For a error function comprises a sum over data points $E = \sum_n E_n$

$$\mathbf{w}^{\tau+1} = \mathbf{w}^{\tau} - \eta \nabla E_n \tag{17}\label{17}$$

 MLE를 이용해 식 (15)를 일괄적으로 계산하기 위해서는 전체 훈련 집합을 한번에 처리해야 한다. 큰 데이터 집합에 대해서는 이러한 방식이 계산적으로 실행하기에 복잡하므로, 순차적(sequential) 알고리즘을 활용하는 것이 유용할 수도 있다. 이를 온라인(on-line) 알고리즘이라고도 부르며, 한 번에 하나의 데이터 포인으를 고려하여 모델의 매개변수를 업데이트 할 수 있다. 

 식 (13)의 제곱합 오류 함수의 경우에 식 (17)은 아래와 같다.

  • For the case of the sum of squares

$$\mathbf{w}^{\tau+1} = \mathbf{w}^{\tau} - \eta (t_n - \mathbf{w}^{(\tau)T} \phi_n)\phi_n \tag{18}\label{18}$$

 여기서 $\phi_n = \phi(\mathbf{x}_n)$이다. 이를 최소 제곱 평균 (least mean square, LMS) 알고리즘이라 한다.

참고 : non-linear regression의 경우에는 closed 가 아니므로, 해를 한번에 구할 수 없음, 즉 sequential learning이 필수적이다. (e.g. deep learning)

 

▶ 3.1.4 Regularized least squares

  • Total error function considering prior distribution

$$E_D(\mathbf{w}) + \lambda E_{w}(\mathbf{w}) \tag{19}\label{19}$$

참고 : $\lambda$ : 정규화 상수 (regularization constant) 로, 데이터에 종속적인 에러 $E_D(\mathbf{w})$와 정규화항 $E_w(\mathbf{w})$의 상대적인 중요도를 조절하기 위함. 가장 단순한 형태의 정규화항은 다음과 같음

  • Weight decay regularizier

$$E_W(\mathbf{W}) = \frac{1}{2} \mathbf{w}^T\mathbf{w} \tag{20}\label{20}$$

  • If we consider the sum of squares error function, the total error function is

$$\frac{1}{2} \sum_{n=1}^{N}\{t_n - \mathbf{w}^T\phi(\mathbf{x}_n))\}^2 + \lambda \mathbf{w}^T\mathbf{w} \tag{21}\label{21}$$

 제곱합 오류 함수와 정규화항을 함께 고려하면 전체 오류 함수는 식(21)과 같다. 위 식의 정규화항은 머신 러닝에서 weight decay라고 불린다. 순차 학습 알고리즘에서 해당 정규화항을 사용할 경우 데이터에 의해 지지되지 않는 한 가중치의 값을 0으로 향해 감소하기 때문에 부른다고 한다. 통계학에서는 매개변수 축소(parameter shrainkage) 방법의 한 예시다. 이 정규화항을 사용하는 것의 한 가지 이점은 오류 함수가 $\mathbf{w}$의 이차 함수의 형태로 유지되며, 따라서 오류 함수를 최소화하는 값을 닫힌 형태로 찾아낼 수 있다는 점이다. 식 (21)을 $\mathbf{w}$에 대한 기울기를 0으로 놓고 $\mathbf{w}$에 대해 풀면 다음을 구할 수 있음

  • The minimizer of total error function is

$$\mathbf{w} = (\lambda \mathbf{I} + \Phi^T\Phi)^{-1}\Phi^T \mathbf{t} \tag{22}\label{22}$$

  •  More general regularizer

$$\frac{1}{2} \sum_{n=1}^{N}\{t_n - \mathbf{w}^T\phi(\mathbf{x}_n))\}^2 + \frac{\lambda}{2}\sum_{j=1}^{M} |w_j|^q \tag{23}\label{23}$$

 일반적인 형태의 정규화항을 선택하여 사용하기도 함

  • Above formulation is equivalent to find minimizer of unregularized least squares subject to the constraint

$$\sum_{j=1}^{M} |w_j|^q \tag{24}\label{24}$$

 $q=2$인 경우 이차 정규화항에 해당됨, 아래 그림에서 각각의 다른 $q$에 따른 정규화 함수의 윤곽성을 확인할 수 있음 

[Figure 7] Contours of the regularization term in (23) for various values of the parameter q.

 

Example : Lasso-Least absolute shrinkage and selection operator (LASSO)

  • Regularize of $q = 1$
  • If $\lambda$ is sufficiently large, some coefficients wj are driven to zero, leading to a sparse model
  • Regularization allows complex models to be trained on data sets of limited size without severe over-fitting, essentially by limiting the effective model complexity

[Figure 8] q = 2 (left plot, Ridge), q = 1 (right plot, Lasso)

 정규화는 유효한 모델의 복잡도를 제한함으로써 복잡한 모델들이 제한된 수의 데이터 집합을 이용해서도 심각한 과적합 없이 피팅될 수 있도록 한다. 하지만, 이 경우에는 최적의 모델 복잡도를 찾는 문제가 적절한 basis function의 수를 정하는 문제에서 적절한 정규화 계수 $\lambda$를 찾는 문제로 변경됨. 

 

 

Reference


댓글