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

선형 모델을 활용한 회귀

회귀(Regression)연속적인 수치 값을 예측하는 지도학습의 한 종류입니다.

분류가 범주를 예측하는 것과 달리, 회귀는 입력 특성에 기반해 숫자 형태의 출력을 추정합니다.

회귀 활용 분야 예시는 다음과 같습니다.

  • 전용면적(㎡)을 바탕으로 아파트 가격 예측
  • 기상 데이터로 기온 추정
  • 과거 추세로 편의점/온라인 쇼핑몰 매출 예측

선형 회귀의 종류

  • 단순 선형 회귀: 하나의 특성으로 목표값을 예측합니다.
  • 다중 선형 회귀: 여러 특성으로 목표값을 예측합니다.
  • 규제가 적용된 선형 회귀: 과적합을 줄이기 위해 페널티를 추가합니다(예: Ridge, Lasso).

예제: 아파트 가격 예측

아래 예제는 선형 회귀를 사용해 아파트 가격을 예측하는 방법을 보여줍니다.

선형 회귀 예제
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error, r2_score
import numpy as np

# 예시 데이터셋
# 전용면적(㎡)
X = np.array([[34], [59], [84], [101], [132]])
# 아파트 가격(원)
y = np.array([350000000, 520000000, 690000000, 850000000, 1100000000])

# 학습/검증 데이터 분리
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 모델 생성 및 학습
model = LinearRegression()
model.fit(X_train, y_train)

# 예측
y_pred = model.predict(X_test)

# 평가
mse = mean_squared_error(y_test, y_pred)
r2 = r2_score(y_test, y_pred)

print("평균제곱오차(MSE):", mse)
print("결정계수(R²):", r2)

다음 내용이 궁금하다면?

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