[파이썬] lightgbm 회귀 문제의 평가 지표 설정

LightGBM은 효율적인 부스팅 알고리즘을 사용하는 머신러닝 라이브러리입니다. 이제 회귀 문제에 LightGBM을 적용하여 모델을 학습하고 평가하기 위해 평가 지표를 설정하는 방법에 대해 알아보겠습니다.

평가 지표 종류

일반적으로 회귀 문제에서 사용되는 평가 지표는 다음과 같습니다:

  1. 평균 제곱 오차 (Mean Squared Error, MSE): 예측 값과 실제 값의 차이를 제곱하여 평균한 값입니다.

  2. 평균 절대 오차 (Mean Absolute Error, MAE): 예측 값과 실제 값의 차이의 절댓값을 평균한 값입니다.

  3. r2 (결정 계수, R-squared): 예측 값과 실제 값 사이의 상관 관계를 나타내는 지표로, 1에 가까울수록 예측이 잘된 것을 의미합니다.

LightGBM에서 평가 지표 설정하기

LightGBM은 LightGBMRegressor 클래스를 사용하여 회귀 모델을 학습합니다. 이 클래스의 score 매소드를 이용하여 모델의 성능을 평가할 수 있습니다.

평균 제곱 오차 (MSE) 예시

from lightgbm import LGBMRegressor
from sklearn.metrics import mean_squared_error

# LightGBM 회귀 모델 생성 및 학습
model = LGBMRegressor()
model.fit(X_train, y_train)

# 테스트 데이터에 대한 예측 값 계산
y_pred = model.predict(X_test)

# MSE 계산
mse = mean_squared_error(y_test, y_pred)
print("Mean Squared Error:", mse)

평균 절대 오차 (MAE) 예시

from lightgbm import LGBMRegressor
from sklearn.metrics import mean_absolute_error

# LightGBM 회귀 모델 생성 및 학습
model = LGBMRegressor()
model.fit(X_train, y_train)

# 테스트 데이터에 대한 예측 값 계산
y_pred = model.predict(X_test)

# MAE 계산
mae = mean_absolute_error(y_test, y_pred)
print("Mean Absolute Error:", mae)

r2 (결정 계수, R-squared) 예시

from lightgbm import LGBMRegressor
from sklearn.metrics import r2_score

# LightGBM 회귀 모델 생성 및 학습
model = LGBMRegressor()
model.fit(X_train, y_train)

# 테스트 데이터에 대한 예측 값 계산
y_pred = model.predict(X_test)

# r2 계수 계산
r2 = r2_score(y_test, y_pred)
print("R-squared:", r2)

위 예시 코드에서는 LightGBMRegressor 모델을 생성하고 학습시킨 후, 테스트 데이터에 대한 예측 값 계산을 수행합니다. 그리고 각각 MSE, MAE, r2을 계산하여 출력합니다.

회귀 문제에서 사용되는 평가 지표는 데이터의 특성에 따라 선택할 수 있습니다. 적절한 평가 지표를 사용하여 모델의 성능을 평가하고 비교하여 최적의 모델을 선택하는 것이 좋습니다.