이 글은 선형 회귀로 풀고자 하는 문제를 간단히 이해하기 위해 작성했습니다.
※ 참고: 1차원 선형 회귀내용만 있습니다. 이 외에도 다양한 형태의 회귀 모델이 존재합니다.
- 입력 변수가 여러 개인 다변수 회귀
- 곡선 형태를 학습하는 다항 회귀 등
목차
1. 선형 회귀란 무엇인가?
2. 선형 회귀 한계
3. 선형 회귀 수식
4. 선형 회귀가 왜 필요한가?
5. 선형 회귀의 핵심: 오차 최소화
6. 오차를 줄이는 대표적인 방법: 경사 하강법 (Gradient Descent)
7. 요약
1. 선형 회귀란 무엇인가?
선형 회귀(Linear Regression)는 주어진 데이터를 가장 잘 설명하는 직선 형태의 함수를 찾아, 새로운 값을 예측하는 기계학습 알고리즘입니다.
즉, 독립 변수(x)와 종속 변수(y) 사이의 선형적 관계를 수학적으로 모델링하여 미래 입력에 대한 예측을 수행하는 지도 학습(Supervised Learning) 방식입니다.
예시: 공부 시간과 시험 점수
공부 시간과 시험 점수 간의 관계가 아래와 같다고 가정했습니다.
| 공부 시간 (x) | 시험 점수 (y) |
| 1시간 | 50점 |
| 2시간 | 60점 |
| 3시간 | 65점 |
| 4시간 | 70점 |
이 데이터를 바탕으로 선형 회귀는 다음과 같은 직선 모델을 찾습니다.
y=5x+45
이를 통해 "5시간 공부하면 약 75점을 받을 것"이라고 예측할 수 있습니다.
2. 선형 회귀 한계
그렇다면 12시간 이상 공부하면 무조건 100점을 받을 수 있을까요?
→ 아닙니다.
선형 회귀는 전체적인 추세(경향성)를 설명하는 데는 유용합니다.
하지만 관측 범위를 벗어난 극단적인 입력값(out-of-range)에 대해서는 비현실적인 예측(overgeneralization)이 발생할 수 있습니다.
따라서 선형 회귀는 학습된 데이터 범위 내에서는 의미 있는 예측을 하지만, 관측되지 않은 영역에서는 결과를 맹신하면 안됩니다.
그리고 선형 회귀는 모든 데이터를 정확히 맞추는 것이 목적이 아닙니다.
현실 세계는 변수도 많고 복잡하므로, 단 하나의 직선으로 모든 데이터를 설명할 수 없습니다.
요약하자면
- 선형 회귀는 추세(trend)를 포착하는 데 중점을 둔 모델입니다.
- 선형 회귀 목표는 (직선이) 모든 점을 정확히 통과하는 것이 아니라, 추세(trend) 오차를 가장 적게 만드는 직선을 찾는 것입니다.
일차 함수 vs 선형 회귀
| 항목 | 일차 함수 | 선형 회귀 |
| 수식 형태 | y = ax+b | y = wx+b |
| 입력 대상 | 임의의 x | 실제 관측된 데이터 x |
| 목적 | 수학적 관계 표현 | 데이터 기반 예측 모델링 |
| 해석 | 정확한 선형식 | 오차가 최소화되는 추세선 |
| 오차 고려 | 없음 | 있음 |
→ 즉, 선형 회귀는 "일차 함수의 형태로 데이터를 설명하려는 통계적 방법"입니다.
3. 선형 회귀 수식
선형 회귀의 기본 수식은 다음과 같습니다.
y = wx+b
- x: 독립 변수 (입력값)
- y: 종속 변수 (예측값)
- w: 기울기 (slope) → x가 변할 때 y가 얼마나 변하는지
- b: 절편 (bias) → x=0일 때 y의 예측값
4. 선형 회귀가 왜 필요한가?
선형 회귀는 머신러닝에서 가장 기본적이면서도 널리 쓰이는 알고리즘입니다.
다음과 같은 상황에서 특히 유용합니다.
- 미래 예측: 기존 데이터를 기반으로 새로운 값을 예측
예시:
광고비를 많이 쓴다 (돈) → 매출
공부를 오래 한다 (시간) → 점수
평수가 크다 (크기) → 집값 - 데이터 경향 파악: 변수 간 관계를 시각화하거나 분석
- 빠르고 해석이 쉬움: 결과가 일차 함수와 비슷한 수식으로 나타나기 때문에, 왜 그런 예측이 나왔는지 쉽게 이해 가능
5. 선형 회귀의 핵심: 오차 최소화
선형 회귀의 목표는 예측값과 실제값의 차이인 오차(error)를 최소화하는 것입니다.
이를 수치로 나타내는 대표적인 지표는 MSE(Mean Squared Error, 평균제곱오차)입니다.

- y_i: 실제 값
- y^_i: 예측 값
왜 제곱을 사용할까?

오차를 작게 만드는 방식은 꼭 제곱이 아니어도 됩니다. 예를 들어 절댓값의 평균(MAE)도 하나의 선택지입니다.
하지만 대부분의 머신러닝 모델에서 MSE를 더 선호한다고 합니다.
| 항목 | MAE (절댓값 오차) | MSE (제곱 오차) |
| 오차 방향 구분 | 안 됨 (음수/양수 모두 양수 처리) | 동일 |
| 큰 오차 처리 | 동일한 가중치 | 더 큰 오차에 비례해 더 큰 패널티 부여 |
| 민감도 | 완만하게 증가 (선형적) | 오차가 커질수록 더 빠르게 증가 (비선형적) |
| 경사 하강법 사용 | 미분 불연속 (x=0에서 기울기 정의 불가) | 미분 가능 → 경사 하강법에 유리 |
예측 오차가 -5, 0, +5일 때 예시
- MAE 평균 = (5 + 0 + 5) / 3 = 3.33
- MSE 평균 = (25 + 0 + 25) / 3 = 16.67
→ MSE는 큰 오차에 더 민감하게 반응하여, 모델이 극단적인 오차를 줄이도록 유도합니다.
여기서 주의할 점은 MSE는 손실 함수이지, 목표가 아닙니다.
- MSE는 "벌점의 기준"입니다.
(예시: 벌점이 큰 학생일수록, 교사가 더 강한 피드백을 줌 -> 교사는 벌점을 줄이는 방식으로 지도를 계속함) - 최소화하려는 것은 이 손실 함수의 값입니다.
- 즉, 오차가 크면 손실도 커지고 → 그걸 줄이기 위해 더 많이 학습 방향이 조정됩니다.
예를 들어 두 예측 결과가 있습니다.
| 샘플 | 실제값 | 예측값 | 오차 | MSE 손실 |
| A | 100 | 98 | -2 | 4 |
| B | 100 | 130 | +30 | 900 |
- 샘플 A는 오차가 작으니 모델이 적당히 수정
- 샘플 B는 오차가 크고 손실이 900 → 모델은 이 샘플의 예측을 더 크게 보정하려고 시도합니다.
이렇게 손실이 커질수록 모델이 더 많이 학습하려고 하게 만들기 때문에 결국 전체 평균 오차(MSE)를 줄이려는 방향으로 수렴합니다.
따라서 MSE가 클수록
→ 모델이 오차를 크게 낸다는 뜻이고
→ 그 오차를 줄이기 위해
→ 가중치 w, b를 바꾸며 학습을 진행합니다.
6. 오차를 줄이는 대표적인 방법: 경사 하강법 (Gradient Descent)
경사 하강법은 MSE를 최소화하기 사용하는 대표적인 최적화 방법으로, 기울기를 따라 손실(loss)을 줄여가며 최적의 w(기울기), b(절편)를 찾는 과정입니다.
경사 하강법 과정
- w, b를 임의의 값으로 초기화
- 현재 w, b로 예측 → 오차 계산
- 오차에 따라 w, b를 미분한 값을 이용해 업데이트
- 오차가 거의 줄지 않으면 반복 중단 → 최적의 직선 도출
이를 직관적으로 이해하기 위해 "사람", "개미", "거인"의 시야로 비유해 볼 수 있습니다.
개미: 매우 좁은 시야와 작은 보폭
- 개미는 발밑만 보기 때문에 전체 지형의 윤곽을 알기 어렵고
- 학습률이 너무 작아 이동 속도가 매우 느림
- 수천 번 반복해도 진전이 거의 없거나, 지역 최솟값(local minimum)에 머무를 수 있음
→ 학습률이 너무 작을 경우, 수렴 속도가 느려 학습 효율이 매우 떨어짐
사람: 적절한 시야와 보폭
- 사람은 언덕 전체를 볼 수는 없지만, 주변 기울기를 인식하고 어느 방향이 내려가는지 판단할 수 있음
- 학습률(learning rate)이 적절하여, 손실이 줄어드는 방향으로 조금씩 이동함
- 시간이 걸리더라도 결국 손실이 가장 작은 지점에 도달 가능
→ 경사 하강법의 이상적인 형태를 잘 보여주는 예시
거인: 넓은 시야지만 과도한 보폭
- 거인은 높은 곳에서 전체 지형을 대략적으로 파악할 수 있으나
- 보폭(학습률)이 너무 커서, 최소 지점을 지나쳐버리거나 왔다 갔다 하며 수렴하지 않음
- 경우에 따라 오차가 점점 커지는 발산(divergence) 현상 발생
→ 학습률이 너무 크면 학습이 불안정하고, 최적값에 도달하지 못할 수 있음
이를 그래프로 나타내면 다음과 같습니다.

- 파란색 (개미, η(학습률)=0.01): 매우 느리게 천천히 이동합니다. 수렴 속도가 매우 느립니다.
- 초록색 (사람, η=0.1): 적절한 속도로 안정적으로 최소 지점에 도달합니다.
- 빨간색 (거인, η=0.5): 보폭이 너무 커서 최소 지점을 지나쳐 흔들리거나 발산할 수 있습니다.
7. 요약
| 항목 | 요약 |
| 선형 회귀란? | 데이터를 가장 잘 설명하는 직선을 찾는 방법 |
| 왜 필요? | 예측과 트렌드 분석, 빠른 학습과 쉬운 해석 가능 |
| 일차함수와의 차이 | 선형회귀는 데이터 기반의 통계적 모델 |
| 선형 회귀 핵심 목표 | 예측 오차 (MSE)를 최소화 |
| 오차 최소화 대표 방법 | 경사 하강법 (Gradient Descent): 반복적으로 w, b를 조정 |
'AI > 머신러닝' 카테고리의 다른 글
| 지도·비지도·강화 학습 개념 정리 (1) | 2025.08.20 |
|---|