회귀(Regression)는 입력 변수와 출력 변수 사이의 관계를 모델링하여, 새로운 입력에 대한 연속형 값을 예측하는 기법이다.
가장 기본적인 형태는 선형회귀(Linear Regression)로, 입력 x와 출력 y의 관계를 직선 형태로 표현한다.
입력 변수가 여러 개일 경우 다중회귀(Multiple Linear Regression)를 사용한다.
변수와 출력 간의 관계가 곡선 형태라면 다항회귀(Polynomial Regression)를 사용한다. 이는 입력 변수의 거듭제곱 항을 포함하는 방식이다.
여러 입력 변수가 있고 각 변수의 거듭제곱과 상호작용 항까지 포함하면 다중다항회귀(Multiple Polynomial Regression)가 되며, 예를 들어 다음과 같이 쓸 수 있다.
다중회귀와 다항회귀는 본질적으로 모든 항을 새로운 feature로 보고 학습한다는 점에서 동일하다.
다항회귀에서는 스케일링(scaling) 방식이 성능에 영향을 준다. 한 가지 방법은 Min-Max Scaling을 먼저 적용한 후 다항항을 생성하는 것이고, 다른 방법은 다항항을 생성한 후 Standard Scaler로 평균 0, 표준편차 1로 변환하는 것이다. 일반적으로 두 번째 방식이 경사하강법 수렴 안정성 측면에서 더 유리한 경우가 많다.
가설 함수의 평가는 평균제곱오차(MSE)를 사용한다.
머신러닝에서 모델 학습은 손실함수를 최소화하는 방향으로 파라미터를 갱신하는데, 이를 위해 경사하강법(Gradient Descent)을 사용한다. 파라미터는 다음과 같이 갱신되며, \alpha는 학습률이다.