5. 선형 회귀 (Linear Regression)
선형 회귀는 실수형 입력 데이터 $X$와 연속형 종속 변수 $Y$가 선형 관계를 가질 것이라 보고, 이 관계를 가장 잘 설명하는 회귀 계수Regression Coefficient를 데이터로부터 찾아내는 모델이다.
특히, 입력 데이터가 벡터 형태로 여러 값이 주어질 경우 다중 선형 회귀Multiple Linear Regression라 한다.
다중 선형 회귀 모델
$$ y = \beta X + \varepsilon$$
$\beta$는 회귀 계수, $\varepsilon$은 오차항이라고 하는데, 최근 딥러닝에서는 아래와 같은 노테이션을 사용하기도 한다.
$$ y = WX+b $$
$W$는 가중치weight, $b$는 편향bias이라고 하는데, 역할은 위의 식과 똑같다.
필자는 이 노테이션이 익숙한 관계로, 앞으로 포스트에서 이 노테이션을 사용하도록 하겠다.
회귀 계수 결정하기
회귀 계수는 모델의 예측값 $y'$와 $y$의 오차 제곱합이 0이 되도록 식을 회귀 계수에 대해 미분하여 구할 수 있다.
$$ \beta = (X^TX)^{-1}X^Ty $$
그러나, 대부분의 상황에서 모델을 미분하는 것이 불가능하거나 미분이 정확하게 떨어지지 않을 것이다. 이럴 때 사용가능한 방법이 Numerical Search의 하나인, 경사 하강법이다.
경사하강법Gradient Descent
경사하강법은 수치 미분을 통해 점진적으로 모델의 회귀 계수를 최적화하는 방법이다.
$X,Y$로 구성된 데이터셋을 이용하여 모델의 오차값을 최소화하는 회귀 계수를 미분을 통해 찾아낸다.
$$ W_{n+1} = W_n - \frac{d\epsilon}{dw} \cdot lr$$
$\epsilon$은 에러값, $lr$은 러닝 레이트라는 임의의 아주 작은 값이다.
경사하강법과, 배치 기반 경사하강법등에 대한 설명은 본 블로그의 아래 포스트들에 잘 설명되어있으니 생략하도록 하겠다.
로지스틱 회귀
회귀 문제를 분류에 활용할 수 있다.
$$ \text{Sigmoid}(x) = \frac{1}{1+e^{-x}}$$
위 시그모이드 함수(로지스틱 함수라고도 한다.)를 모델의 출력에 씌우면, 값은 0~1 사이로 제한된다.
이는 확률밀도함수의 조건에 부합한다.
그러므로, 어떤 $X$가 범주 $c$에 속할 확률을 회귀하도록 모델을 학습시켜, 분류에 선형회귀를 응용할 수 있다.
'학부 수업 > 머신러닝' 카테고리의 다른 글
7. 판별 분석 (Discriminant Analysis) (0) | 2020.10.21 |
---|---|
6. 규제, 정규화 (Regularization) (0) | 2020.10.21 |
4.5. 머신러닝의 정확도, 정밀도, 재현율 (Accuracy, Precision, Recall) (0) | 2020.09.23 |
4. K-최근접 이웃 알고리즘 (K-Nearest Neighbor) (0) | 2020.09.23 |
3. 데이터 변환, 정제, 통합, 균형 (Data Transformation, Cleaning, Integration and Balancing) (0) | 2020.09.13 |
댓글
이 글 공유하기
다른 글
-
7. 판별 분석 (Discriminant Analysis)
7. 판별 분석 (Discriminant Analysis)
2020.10.21 -
6. 규제, 정규화 (Regularization)
6. 규제, 정규화 (Regularization)
2020.10.21 -
4.5. 머신러닝의 정확도, 정밀도, 재현율 (Accuracy, Precision, Recall)
4.5. 머신러닝의 정확도, 정밀도, 재현율 (Accuracy, Precision, Recall)
2020.09.23 -
4. K-최근접 이웃 알고리즘 (K-Nearest Neighbor)
4. K-최근접 이웃 알고리즘 (K-Nearest Neighbor)
2020.09.23