본문 바로가기
카테고리 없음

(10/14일) 머신러닝 학습 정리 앙상블·XGBoost·스태킹·선형 회귀 규제

by proprocess-manager 2026. 10. 14.
반응형

이번 학습에서는 여러 머신러닝 모델을 결합하는 앙상블 학습, 분류와 회귀, XGBoost, 스태킹, 선형 회귀와 규제 기법을 공부했습니다. 당뇨병 건강 지표 데이터의 탐색적 분석과 시각화 개념도 함께 정리합니다.

1. 앙상블 학습(Ensemble Learning)

앙상블 학습은 여러 머신러닝 모델의 예측을 결합해 하나의 모델만 사용할 때보다 예측의 안정성이나 일반화 성능을 높이려는 방법입니다.

종류 정의 핵심 기억
Random Forest 여러 의사결정나무를 학습시키고 각 나무의 예측을 결합하는 방법 여러 나무의 예측 결합
Boosting 모델을 순차적으로 학습하며 이전 단계의 오차를 보완하도록 개선하는 방법 순차적 성능 개선
Stacking 여러 기본 모델의 예측 결과를 새로운 모델의 입력으로 사용하는 방법 모델 예측을 다시 학습

랜덤 포레스트는 여러 나무의 예측을 결합하고, 부스팅은 모델을 순차적으로 개선합니다. 스태킹은 서로 다른 모델의 예측 결과를 메타 모델이 학습한다는 점에서 차이가 있습니다.

2. 분류(Classification)와 회귀(Regression)

분류는 데이터를 정해진 범주로 구분하는 예측 문제입니다. 당뇨병 여부처럼 결과가 특정 클래스에 해당하는지 예측할 때 사용합니다.

회귀는 연속적인 숫자를 예측하는 문제입니다. 주택 가격이나 매출액처럼 수치로 표현되는 값을 예측할 때 사용합니다.

구분 분류 회귀
예측 결과 범주 또는 클래스 연속적인 숫자
실습에서 다룬 모델 RandomForestClassifier, XGBClassifier RandomForestRegressor, XGBRegressor, LinearRegression
평가 예시 Accuracy RMSE

3. 머신러닝 문법의 역할

실제 파이썬 코드는 VS Code에서 확인하고, 여기서는 자주 사용하는 문법이 어떤 역할을 하는지만 정리합니다.

문법·속성 의미 기억할 점
train_test_split 데이터를 학습용과 평가용으로 나누는 기능 학습 데이터와 시험 데이터 분리
X_data 모델의 예측에 사용하는 입력 특성 데이터 예측에 필요한 정보
y_data 모델이 예측하도록 학습시키는 정답 데이터 예측할 목표
fit() 입력 데이터와 정답 데이터를 이용해 모델을 학습하는 메서드 모델 학습
predict() 학습한 모델을 이용해 새로운 데이터의 결과를 예측하는 메서드 모델 예측
random_state 난수 생성 상태를 고정해 실행 결과의 재현성을 높이는 설정 실험 결과 재현
stratify 분류 데이터 분할 시 클래스별 비율을 유지하도록 돕는 설정 클래스 비율 유지
accuracy_score 분류 예측 중 실제 정답과 일치한 비율을 계산하는 함수 정확도 평가

기본 흐름: 데이터 분리 → 모델 생성 → 학습 → 예측 → 성능 평가

4. XGBoost

XGBoost는 그래디언트 부스팅을 기반으로 하는 머신러닝 라이브러리입니다. 여러 모델을 순차적으로 학습해 예측 성능을 개선하며, 표 형태의 데이터 분석에서 널리 활용됩니다.

모델 용도 기억할 점
XGBClassifier 분류 범주 예측
XGBRegressor 회귀 숫자 예측

XGBoost라는 이름만 기억하기보다, 현재 해결하려는 문제가 분류인지 회귀인지 먼저 판단하고 적합한 모델을 선택하는 것이 중요합니다.

5. 스태킹(Stacking)

스태킹은 여러 모델의 예측 결과를 조합해 최종 예측을 수행하는 앙상블 기법입니다.

용어 정의
Base Model 처음 입력 데이터를 학습하고 예측 결과를 만드는 기본 모델
Meta Model 기본 모델들의 예측 결과를 입력으로 받아 최종 결과를 예측하는 모델
Cross-validation 데이터를 여러 부분으로 나누어 학습과 검증을 반복하는 평가 방법

스태킹에서는 기본 모델의 예측값을 메타 모델이 학습합니다. 학습 데이터에 과도하게 맞춰지는 문제를 줄이기 위해 교차검증으로 만든 예측값을 활용할 수 있습니다.

6. 선형 회귀(Linear Regression)

선형 회귀는 입력 특성과 예측할 값 사이의 관계를 선형식으로 표현하는 회귀 모델입니다. 입력 특성에 가중치를 적용하고 절편을 더해 예측값을 계산합니다.

용어 정의
Feature 예측에 활용하는 입력 특성 또는 변수
Target 모델이 예측하려는 목표값
Coefficient 각 입력 특성이 예측값에 반영되는 정도를 나타내는 계수
Intercept 선형식에서 입력 특성의 영향을 제외한 기본 절편

선형 회귀는 이해하기 쉽고 해석이 비교적 간단하지만, 데이터의 관계가 선형식으로 충분히 설명되지 않으면 예측 성능에 한계가 있을 수 있습니다.

7. 규제(Regularization): Lasso와 Ridge

규제는 모델의 계수가 지나치게 커지는 것을 제한해 과적합을 줄이고 모델의 일반화 성능을 개선하려는 방법입니다.

모델 규제 방식 특징
Linear Regression 기본 선형 회귀 잔차 제곱합을 최소화
Lasso L1 규제 일부 계수를 0으로 만들어 특성 선택 효과를 낼 수 있음
Ridge L2 규제 계수 크기를 줄여 모델을 안정화하며, 일반적으로 계수를 정확히 0으로 만들지는 않음

Lasso와 Ridge의 차이: Lasso는 중요도가 낮은 특성의 계수를 0으로 만들 수 있고, Ridge는 계수의 크기를 줄이는 데 초점을 둡니다.

8. 데이터 표준화(Standardization)

StandardScaler는 각 특성의 평균을 0, 표준편차를 1로 맞추는 표준화 도구입니다. 특성마다 측정 단위나 값의 범위가 크게 다를 때 유용합니다.

용어 의미
fit_transform() 데이터에서 변환 기준을 학습하고 해당 데이터에 변환을 적용
transform() 이미 학습한 변환 기준을 새로운 데이터에 적용

학습 데이터에서 표준화 기준을 계산한 뒤 평가 데이터에도 같은 기준을 적용해야 합니다. 평가 데이터까지 포함해 변환 기준을 학습하면 데이터 누수(Data Leakage)가 발생할 수 있습니다.

9. 모델 평가: Accuracy와 RMSE

평가 지표 적용 문제 의미 해석
Accuracy 분류 전체 예측 중 정답과 일치한 비율 일반적으로 높을수록 좋음
RMSE 회귀 예측 오차를 제곱해 평균한 뒤 제곱근을 계산한 값 일반적으로 낮을수록 좋음

RMSE는 큰 오차에 상대적으로 큰 불이익을 줍니다. 다만 RMSE의 크기는 예측 대상의 단위와 범위에 영향을 받으므로, 서로 다른 데이터나 단위의 모델을 단순 비교해서는 안 됩니다.

10. 당뇨병 데이터 EDA와 시각화

EDA(Exploratory Data Analysis)는 모델을 만들기 전에 데이터의 구조, 분포, 이상치, 변수 간 관계 등을 탐색하는 과정입니다.

당뇨병 건강 지표 데이터에서는 당뇨병 여부와 건강 관련 변수의 분포를 살펴보고, 변수별 차이나 연관성이 관찰되는지 확인할 수 있습니다.

문법·도구 역할
value_counts() 범주별 데이터 개수를 집계
reset_index() 인덱스를 일반 컬럼으로 변환하거나 새로운 기본 인덱스를 설정
Plotly Express 파이썬에서 다양한 대화형 그래프를 간편하게 생성하는 시각화 인터페이스
px.bar() 범주별 수치나 빈도를 비교하는 막대그래프 생성

데이터 분석에서는 그래프를 통해 패턴을 확인할 수 있지만, 두 변수 사이의 연관성이 관찰된다는 이유만으로 한 변수가 다른 변수의 원인이라고 결론 내릴 수는 없습니다.

11. 오늘의 학습 용어 정리

대분류 중분류 소분류·용어 핵심 기억
앙상블 배깅 Random Forest 여러 나무의 예측 결합
앙상블 부스팅 Boosting 순차적으로 모델 개선
앙상블 부스팅 XGBoost 그래디언트 부스팅 라이브러리
앙상블 스태킹 Base Model 기본 예측 모델
앙상블 스태킹 Meta Model 최종 예측 모델
지도학습 분류 Classifier 범주 예측
지도학습 회귀 Regressor 숫자 예측
모델 평가 분류 지표 Accuracy 정답 일치 비율
모델 평가 회귀 지표 RMSE 예측 오차 크기
선형 모델 기본 회귀 Linear Regression 선형 관계로 숫자 예측
선형 모델 L1 규제 Lasso 일부 계수를 0으로 만들 수 있음
선형 모델 L2 규제 Ridge 계수 크기 축소
전처리 데이터 분할 train_test_split 학습용·평가용 데이터 분리
전처리 표준화 StandardScaler 평균 0, 표준편차 1
데이터 분석 EDA value_counts 범주별 빈도 확인
데이터 분석 전처리 reset_index 인덱스와 컬럼 구조 정리
시각화 막대그래프 Plotly Express 대화형 그래프 생성

마무리

오늘의 핵심은 모델 이름을 외우는 것보다 문제 유형에 맞는 모델을 선택하고, 학습·예측·평가의 흐름을 이해하는 것입니다.

  • 분류는 범주를 예측하고, 회귀는 숫자를 예측합니다.
  • 앙상블은 여러 모델의 예측을 결합합니다.
  • 스태킹은 기본 모델의 예측을 메타 모델이 다시 학습합니다.
  • Lasso는 L1, Ridge는 L2 규제를 사용합니다.
  • EDA는 모델 학습 전 데이터의 특성과 패턴을 파악하는 과정입니다.

참고 자료

반응형