Linear Model

Computer Vision Lecture 5: Linear model

  ·  2 min read

Machine Learning #

ML의 목표는 데이터를 분석하고 그 속에서 유의미한 정보를 도출해내는 것이다. ML을 통해 objective function을 최소화하거나 최대화하는 transformation을 찾아야 한다.

Notation #

  • Input: x $\rightarrow$ Feature Vector or Data Point
  • Output: y $\rightarrow$ Label or Target

Example #

  • Input: $x \in \mathbf{R}^N$
  • Output: $y$
block-beta
        columns 3
        block:main["input x\n\n\n\n\n\n\n\n\n\n"]
            columns 2
            space space
            Blood_Pressure 50 Heart_Rate 60 .... ... Glucose_Level 0.2
            space space
        end
        blockArrow<["&nbsp;f(w·x)"]>(right)
        block:result["output x\n\n\n\n\n\n\n\n\n\n"]
            columns 1
            space
        P_of_Has_Diabetes P_of_No_Diabetes
        space space
        end
        

해당 그래프는 Linear Regression을 표현한 것이다. Regression은 Supervised이며 Continous하다.

ML Problem은 아래와 같은 기준으로 나눌 수 있다.

OUTPUT의 연속성여부와 Supervised의 여부이다.

  1. Classification (Supervised + Discrete Date)
  2. Regression (Supervised + Continuous Data)
  3. Clustering (Unsupervised + Discrete Data)
  4. Dimensional Reduction(Unsupervised + Continuous Data)

다시 Regression의 예제로 돌아가보면 아래와 같이 모델을 설정할 수 있다.

  • Data: $(x_1,y_1),\ (x_2,y_2),\ \dots ,\ (x_k,y_k)$
  • Model: $(m,b)\ y_i = mx_i+b\ Or\ (w)\ y_i=w^Tx_i$
  • Objective function: $(y_i-w^Tx_i)^2$

$$ \sum_{i=1}^k(y_i-w^Tx_i)^2 \longrightarrow ||y-Xw||_2^2\newline \newline $$ 위 식을 이용해서 최적의 weighted sum을 찾아야 한다. $$ \argmin_w||y-Xw||_2^2 $$ 위 식을 통해 Objective function은 Loss function와 동일함을 할 수 있다. $w$는 perceptron learning rule로 구할수도 있고 행렬의 역산으로 아래와 같이 구할 수도 있다.

$$ w^* = (X^TX)^{-1}X^Ty $$

Training이 모두 종료되면 Inference(Test)과정을 거친다. $$ w^Tx= w_1x_1 + \cdots + w_fx_f $$

input이 $X_{5\times 4}$이고 output이 $y_{5\times 1}$이라면 입력에서 3개의 feature과 1개의 bias로 이루어짐을 알 수 있다. 그렇다면 $y = xw$를 만족해야 하므로 $w_{4\times 1}$이 되어야 한다. 이제 input의 사이즈를 키워서 $X_{5\times 7}$이라고 가정해보자 이 때 $w=(X^TX)^{-1}X^Ty$를 만족한다. $X^TX$는 $7\times 7$의 사이즈이며 이는 rank1 deficient2이다.

$$ \argmin_w ||y-Xw||_2^2 + \lambda ||w||_2^2 $$

위 식을 통해 더욱 심플한 모델을 w에 대한 penalty를 통해 도출할 수 있다. $$ W^* = (X^TX+\lambda I)^{-1}X^Ty $$

이 때의 $\lambda$는 trade-off hyperparameter로서 validation process를 통해 최적의 $\lambda$를 고를 수 있다.


  1. $rank(A) \le min(m,n)$이며 $rank(A) = min(m,n)$인 경우 full rank를 가진다고 한다. 이 때 $min(m,n)$은 행렬 $A\in \mathbb{R}^{m\times n}$에서 선형 독립인 행 또는 열의 개수를 의미한다. ↩︎

  2. full rank를 가지지 않는 경우를 rank deficient라고 한다. 즉 $A \in \mathbb{R}^{m \times n}$인데, $\text{rank}(A) < \min(m, n)$일 때 rank deficient 상태이다. rank deficient의 경우 역행렬을 가질 수 없다. 따라서 아래와 같이 Regularization을 해주어야 한다. ↩︎