1. 딥러닝의 기초- 선형 회귀 (Linear Regression) 핵심 개념 정리

Summary
선형 회귀의 3가지 핵심 요소인 모델 함수(Hypothesis), 비용 함수(Cost Function), 그리고 경사 하강법(Gradient Descent)에 대해 알아봅니다.
카테고리
Machine Learning
Original creation date
Dec 1, 2025
생성일
Jan 30, 2026 11:55 AM
태그
ML
deeplearning
딥러닝과 머신러닝의 가장 기본이 되는 모델 중 하나인 선형 회귀(Linear Regression)의 핵심 개념을 정리합니다. 주어진 데이터를 가장 잘 설명하는 하나의 직선을 찾는 과정을 통해, 모델이 어떻게 학습하는지 이해할 수 있습니다. 이 글에서는 선형 회귀를 구성하는 세 가지 핵심 요소인 모델 함수, 비용 함수, 경사 하강법에 대해 자세히 다룹니다.

1. 모델 함수 (Model Function or Hypothesis)

Linear Regression의 목표는 주어진 데이터(x)를 가장 잘 설명하는 직선을 찾는 것입니다. 이 직선을 수학적으로 표현한 것이 바로 모델 함수이며, 가설(Hypothesis)이라고도 부릅니다.
가장 단순한 형태인, 하나의 입력 변수(x)로 하나의 출력 변수(y)를 예측하는 모델 함수는 다음과 같습니다.
H(x) = Wx + b
여기서 각 요소의 의미는 다음과 같습니다.
  • H(x): 모델이 입력 x에 대해 예측한 값입니다.
  • W (Weight): 가중치. 직선의 기울기에 해당합니다. 이 값이 클수록 x가 y에 미치는 영향이 크다고 해석할 수 있습니다.
  • b (bias): 편향. 직선의 y절편에 해당합니다. 입력 x가 0일 때의 기본 출력값이라고 볼 수 있습니다.
머신러닝 모델을 훈련시킨다는 것은, 결국 주어진 데이터(x, y 쌍)에 대해 예측값 H(x)가 실제값 y와 가장 비슷해지도록 하는 최적의 Wb를 찾아내는 과정입니다.

2. 비용 함수 (Cost Function or Loss Function)

비용 함수는 우리 모델이 얼마나 "틀렸는지"를 측정하는 함수입니다. 즉, 모델의 예측값(H(x))과 실제 정답(y) 사이의 오차를 계산합니다. Linear Regression에서는 이 오차를 측정하기 위해 주로 **평균 제곱 오차(Mean Squared Error, MSE)를 사용합니다.
비용 함수의 수식은 다음과 같습니다.
cost(W, b) = (1/m) * Σ [ H(xᵢ) - yᵢ ]²
수식을 하나씩 풀어보겠습니다.
  • m: 전체 데이터의 개수입니다.
  • H(xᵢ) - yᵢ: i번째 데이터에 대한 모델의 예측값과 실제값의 차이, 즉 **오차(Error)**입니다.
  • [ ... ]²: 오차를 제곱합니다. 오차가 음수(-)가 나오는 것을 방지하고, 오차가 클수록 더 큰 패널티를 부여하는 효과가 있습니다.
  • Σ: 모든 데이터(i=1부터 m까지)의 제곱 오차를 모두 더합니다.
  • (1/m): 더한 값을 전체 데이터 개수 m으로 나누어 평균을 냅니다.
결론적으로, 비용 함수 cost(W, b)는 **"모든 데이터에 대한 오차 제곱의 평균"**을 의미합니다. 이 비용(Cost)이 작을수록 모델이 데이터를 잘 설명하고 있다는 뜻이므로, 우리의 목표는 이 비용 함수를 최소화하는 Wb를 찾는 것이 됩니다.

3. 경사 하강법 (Gradient Descent)

그렇다면 어떻게 비용 함수를 최소화하는 Wb를 찾을 수 있을까요? 바로 경사 하강법을 사용합니다.
경사 하강법은 비용 함수의 값이 가장 낮아지는 지점을 찾아 한 걸음씩 점진적으로 이동하는 최적화 알고리즘입니다. 마치 안개가 낀 산에서 가장 낮은 지점을 찾아 내려갈 때, 현재 위치에서 가장 가파른 경사를 따라 한 발짝씩 내려가는 것과 같습니다.
단계
설명
1. 시작점 설정
Wb를 임의의 값(보통 0 또는 무작위 값)으로 초기화합니다.
2. 경사(기울기) 계산
현재 Wb 지점에서 비용 함수 cost(W, b)의 **기울기(Gradient)**를 계산합니다. 이 기울기는 각 변수(W, b)에 대해 비용 함수를 편미분하여 구합니다.
3. 파라미터 업데이트
계산된 기울기의 반대 방향으로 Wb를 아주 조금 이동시킵니다. 기울기가 양수(+)이면 값을 줄이고, 음수(-)이면 값을 늘립니다. 이때 얼마나 이동할지를 결정하는 것이 **학습률(Learning Rate, α)**입니다.
4. 반복
비용 함수의 값이 더 이상 줄어들지 않고 수렴할 때까지 2~3번 단계를 반복합니다.
이를 수식으로 표현하면 다음과 같습니다.
W := W - α * (∂/∂W) cost(W, b)b := b - α * (∂/∂b) cost(W, b)
  • := : 오른쪽의 값으로 왼쪽의 변수를 업데이트한다는 의미입니다.
  • α (alpha): 학습률(Learning Rate). 한 번에 얼마나 이동할지 보폭을 결정합니다. 너무 크면 최저점을 지나쳐 버리고, 너무 작으면 학습 시간이 매우 오래 걸립니다.
  • (∂/∂W) cost(W, b): 비용 함수를 W에 대해 편미분한 값, 즉 W 방향으로의 기울기입니다.
이 과정을 반복하면 Wb는 점차 비용이 최소가 되는 지점으로 수렴하게 되고, 우리는 데이터를 가장 잘 설명하는 최적의 모델을 얻게 됩니다.