본문으로 건너뛰기
실습하기

직선으로 데이터를 예측하는 선형 회귀

선형 회귀(Linear Regression)는 데이터를 이용해 직선(또는 다차원에서는 평면)을 만들어 패턴을 학습하고, 새로운 데이터를 입력하면 그에 맞는 숫자 값을 예측하는 방식입니다.

가장 단순한 형태인 단순 선형 회귀(Simple Linear Regression)는 다음과 같은 수식으로 표현됩니다.

Y=WX+BY = W X + B

여기서 각 변수의 의미는 다음과 같습니다.

  • XX : 입력 데이터 (예: 공부 시간)

  • YY : 예측하고자 하는 값 (예: 시험 점수)

  • WW : 기울기(Weight), 입력 값이 증가할 때 결과 값이 어떻게 변하는지 결정

  • BB : 절편(Bias), 그래프가 Y축과 만나는 지점

이 방정식을 이용하면, 특정 XX 값이 주어졌을 때 YY 값을 예측할 수 있습니다.

예를 들어 기본 점수가 10점인 시험에서 한 학생이 1시간 공부했을 떄 40점을 받고 2시간 공부했을 때 60점을 받았다면, $W$$B$ 값은 다음과 같이 계산됩니다.

예제 데이터
B = 10
W = (60 - 40) / (2 - 1) = 20

위와 같은 정보를 바탕으로 선형 회귀 모델은 Y = 20X + 10와 같이 학습됩니다.

이제 공부 시간이 3시간인 경우, 시험 점수는 다음과 같이 계산됩니다.

예제 데이터
Y = 20 * 3 + 10 = 70

회귀 모델에 따라 이 학생이 3시간 공부할 경우, 70점을 받을 것이라고 예측할 수 있습니다.

위 예시는 간편한 이해를 위해 2개의 데이터만 사용했지만, 실제 데이터는 수 많은 데이터를 이용해 선형 회귀 모델을 학습합니다.


선형 회귀의 동작 방식

선형 회귀는 주어진 데이터에서 최적의 직선을 찾는 과정으로 학습이 이루어집니다.

이를 위해 손실 함수를 최소화하는 최적의 W와 B 값을 찾아야 합니다.

이 과정에서 가장 많이 사용되는 손실 함수는 이전 수업에서 배운 MSE(평균 제곱 오차)입니다.

MSE는 모델의 예측값과 실제 값 사이의 차이를 제곱하여 평균을 구하는 방식으로, 값이 작을수록 모델이 잘 학습되었다는 것을 의미합니다.

머신러닝 모델은 경사 하강법(Gradient Descent)이라는 알고리즘을 사용하여 손실을 줄이면서 최적의 W와 B를 찾아갑니다.


선형 회귀의 한계

선형 회귀는 간단하고 해석이 쉬운 알고리즘이지만, 몇 가지 한계가 있습니다.


1. 직선 형태의 관계만 학습 가능

데이터가 선형적인 관계를 따르지 않는다면, 선형 회귀 모델의 예측 성능이 떨어질 수 있습니다.

예를 들어, U자형 또는 S자형의 데이터 패턴을 가진 경우 선형 회귀는 적절하지 않습니다.


2. 이상치(Outlier)에 민감

일부 극단적인 데이터(이상치)가 존재하면, 모델이 크게 영향을 받을 수 있습니다.


3. 설명 변수(Feature)가 부족하면 예측력이 낮음

현실 세계에서는 하나의 변수(X)만으로 결과(Y)를 결정하기 어려운 경우가 많습니다.

이런 경우, 다중 선형 회귀(Multiple Linear Regression)를 사용하여 여러 개의 입력 변수를 활용할 수 있습니다.


선형 회귀는 머신러닝에서 가장 기본적인 알고리즘 중 하나로, 데이터를 직선의 형태로 분석하여 숫자 값을 예측하는 방식입니다.

다음 수업에서는 로지스틱 회귀(Logistic Regression)에 대해 알아보겠습니다.

다음 내용이 궁금하다면?

코드프렌즈 PLUS 멤버십 가입 or 강의를 등록해 주세요!