반응형

Linear Regression에서 SSE의 쓰임

$$ SSE=\sum(\epsilon_i^2) = \sum(Y_i-\alpha-\beta x_i)^2 $$
 회귀모형에서 SSE는 미지수 $\alpha$와 $\beta$를 구할 때 사용된다. SSE를 최소화하는 $\alpha$와 $\beta$가 해가 된다.
 
$$ \hat \beta =  \frac {\sum (x_i - \bar x)(Y_i - \bar Y)}{\sum (x_i - \bar x)^2}, \quad \hat a = \bar Y - \hat \beta \bar x $$
 최소제곱법을 이용해 SSE의 최소값이 되는 지점으로부터 $\hat \alpha$와 $\hat \beta$를 구하면 위와 같다.
 

Multiple Regression

$$ Y=X \cdot \beta+\varepsilon $$
 다중 회귀모형은 다수의 독립변수가 존재하는 회귀모형으로, 일반화한 식으로 나타내면 위와 같다.
 
$X$는 독립변수이고 $Y$는 종속변수이며, $\varepsilon$는 오차항이다. $\beta$는 독립변수들의 계수를 의미하는 수로, 미지모수라고도 불린다. 오차항 $\varepsilon$은 설명할 수 없는 영역을 나타내는 수이고, 이와 반대로 미지모수 $\beta$는 설명할 수 있는 영역, 즉 예측이 가능한 영역을 나타내는 수이다.
 
$$ \hat \beta = (X^{T}X)^{-1}X^TY $$
 SSE로부터 미지모수 $\beta$를 행렬 연산의 최소제곱법으로 얻으면 위와 같이 나타난다.
 

Logistic Regression

 일반적인 회귀분석에서는 종속변수 Y의 값이 연속형 변수이기 때문에 $\hat Y$의 치역은 무한대가 된다. 그러나, 만약 Y값으로 의도한 값이 0 또는 1인 이진 모델의 경우에는 $\hat Y$의 추정 범위를 무한대로 둘 필요가 없다. 이 경우 사용하는 것이 Logistic Function이다.

Logistic Function은 Sigmoid Function 중 하나이며, 0부터 1 사이의 결과값을 갖게 하는 함수이다. 이러한 Logistic Function을 이용하여 회귀분석을 수행하는 것을 Logistic Regression이라고 한다. 
 
이러한 Logistic Regression이 필요한 예로는 어느 학생의 공부 시간이 $X$라고 할 때, 이 학생이 시험에 합격 여부를 0과 1로 분류하여 $Y$로 나타내는 경우가 될 수 있을 것 같다.
 

Logistic Function 식 변환

$$ p = \frac{1}{1 + e^{-z}}, \quad z = X\cdot \beta $$
라고 할 때,
$$ ln\frac{p}{1-p}=ln\frac{\frac{1}{1+e^{-z}}}{1-\frac{1}{1+e^{-z}}} =ln\frac{1}{e^{-z}}=ln(e^{-z}) =z$$
$$\therefore ln\frac{p}{1-p}=X\cdot\beta$$
위와 같은 과정을 통해 Logistic Function을 로그 형태로 나타낼 수 있다. 로지스틱 함수를 로그 함수로 나타내는 이유는 최적화를 더욱 효율적으로 수행할 수 있기 때문이라고 한다.

Convexity

비용함수는 모델의 성능을 평가하거나 모델에 사용되는 파라미터를 조정할 때 사용된다. 후에 배울 Gradient Descent(경사 하강법)의 비용함수로 사용되기 적합한 조건이 몇 가지 있다. 첫 째는 정답일 때 결과가 작아지고, 오답일 때는 결과가 커지는 함수여야 한다. 둘 째는 Convex 해야 한다.
 
함수가 Convex 해야 한다는 의미는 함수가 그래프 상에서 임의의 두 점을 이었을 때, 그 선분이 함수의 그래프 위에 놓인다면 그래프와의 교차점이 없거나 하나만 가지는 성질을 말한다.
 

Convex한 함수의 예를 그림으로 나타내면 위와 같다. 쉽게 설명하자면 어떤 함수를 그래프로 나타내고, 그 위에 구슬을 올려놓았을 때 구슬이 흘러 내려오는 부분이 일정하게 나타난다면 그 함수는 Convex하다고 이야기할 수 있다.
 
이러한 성질이 필요한 이유는 나중에 Gradient Descent Algorithm을 사용할 때, Convex한 비용함수를 이용하여 기울기가 0이 되는 지점을 찾아갈 것이다. 해당 지점은 곧 모델의 파라미터 값을 업데이트할 때 가장 적합한 값임을 의미한다.
 
참고로, 앞서 언급한 SSE가 Gradient Descent Algorithm의 비용함수가 될 수 없는 이유는 Convex하지 않기 때문이다.
 

Cross Entropy Function

$$ Cost(w) = \sum -T_i log(Y_i) - (1 - T_i)log(1 - Y_i) $$
Cross Entropy Function은 Cost Function 중 하나이다. 주로 이진 분류 모델에서 사용되는 비용함수로, 예측값과 실제값이 일치할 때 0을 갖고, 일치하지 않을 때는 무한대로 발산하는 특징이 있다.
 
결국, Cross Entropy Function을 최소화할 수록 좋은 것이다!
 

MLE(Maximum LikeLihood Estimation)

MLE란 최대우도함수(Maximum Likelihood Function)을 이용해 주어진 데이터에서 가장 높은 가능성을 가지는 모수의 값을 찾는 방법이다.
 
이와 관련하여 참고할 내용은 아래에 접어두겠다.

더보기

참고1) 모수란, 평균과 표준편차 같이 모집단의 특성을 나타내는 값이나 분포의 형태를 결정하는 변수를 의미한다.

참고2) MLE는 모집단의 분포에 따라 사용하는 Maximum Likelihood Function이 달라진다. Logistic Regression의 Maximum Likelihood Function은 Cross Entropy Function이다.

 
흥미로운 점은, 우리가 배우기로 좋은 결과를 얻기 위해서는 비용함수의 결과는 작아져야 하지만 최대우도함수의 결과는 커야 한다고 했다. 그런데 Logistic Regression에서는 비용함수와 최대우도함수로 쓰이는 함수가 Cross Entropy Function으로 같다.
 
$$ lnL(\beta_o,\beta_1)=\sum^{n}_{i=1}lnp_i+(1-y_i)ln(1-p_i) $$
위 식은 Logistic Regression에서의 Maximum Likelihood Function을 다루기 용이하게 나타낸 결과다. 이를 통해 결과적으로 우리가 알아야 할 내용은 Logistic Regression에서의 Maximum Likelihood Function을 최대화한다는 의미와 Cross Entropy Function을 최소화한다는 의미가 같다는 것이다.
 

Gradient Descent Algorithm

기존의 수학적인 방법으로는 Cross Entropy Function을 최소화하는 미지 모수를 구할 수 없다는 문제가 있었다. 이러한 문제를 수치해석적인 방법으로 풀고자 고안된 알고리즘이 Descent Algorithm이다. 
 
$$ W=W-\alpha\cdot\frac{\partial Cost(W)}{\partial W} $$
특히 Gradient Descent Algorithm은 위와 같이 기울기가 0인 지점을 찾기 위해 임의의 초기값 W에서 기울기의 반대 방향으로 $\alpha$(Learning Rate)의 속도로 움직이는 방법을 말한다.
 

 Gradient Descent Algorithm의 조건으로는 앞서 말했듯이 비용함수가 Convex해야 한다는 점이다.
왼쪽 사진과 같이 Convex하지 않은 함수에서는 기울기가 0인 지점이 최저점이라고 단정 지을 수 없다. 이처럼 최저점이 아닌데 답으로 확정지어버리는 Local Minimum 오류가 발생할 수 있다. 반면에, 오른쪽 사진과 같이 Convex한 함수에서는 기울기가 0인 지점이 곧 최저점, Global Minimum Point가 된다.
 
Gradient Descent Algorithm은 초기값 W가 해로부터 너무 멀면 주어진 반복 횟수 안에 수렴하지 못할 수 있다는 문제점과, Learning Rate가 너무 클 때 최저점을 찾는 과정에서 이동하는 범위가 너무 커서 해를 구하지 못할 수 있다는 문제점이 있다.
 

반응형

+ Recent posts