본문 바로가기
Python/Data Visualization

랜덤 포레스트 모델 검증 시각화

by ISLA! 2023. 8. 30.

▶︎ 랜덤 포레스트 모델의 실제값(y_valid)과 예측값(predict)의 차이 를 그래프로 시각화

결과 이미지

▶︎ 시각화 코드

  • 평가지표 함수 만들기 : RMSE
from sklearn.metrics import mean_squared_error

def rmse(real, pred):    
    return mean_squared_error(real, pred)**0.5

RMSE = rmse(y_valid, predict)
RMSE
  • 시각화 라이브러리 임포트
  • 한글폰트 설정
  • RMSE : 앞의 함수에서 만든 RMSE 불러오기
  • 그래프 그리기 
# 시각화를 위한 라이브러리
import matplotlib.pyplot as plt
import matplotlib.font_manager as fm

# 한글 폰트를 사용하기 위한 코드
fe = fm.FontEntry(fname = 'NotoSansKR-Regular.otf', name = 'NotoSansKR')
fm.fontManager.ttflist.insert(0, fe)
plt.rc('font', family='NotoSansKR')

# 평가지표 불러오기
RMSE = rmse(y_valid, predict)

# 그래프 그리기
plt.figure(dpi=150)

plt.title('RMSE : ' + str(RMSE)[:8])

plt.plot(y_valid.reset_index(drop=True), alpha=0.6, label='real')
plt.plot(predict, alpha=0.6, label='pred')

plt.legend()
plt.show()

 

 

▶︎ 회귀 모델을 평가하는 평가 지표

  • MAE(Mean Absolute Error) : 모델의 예측값과 실제값 차이의 절대값의 평균
  • MSE(Mean Squared Error) : 모델의 예측값과 실제값 차이의 제곱의 평균
    • 오차를 제곱하기 때문에 값이 작을 경우에는 오차가 강조되고
    • 값이 클 경우에는 큰 오차가 지나치게 강조되는 문제가 생김
  • RMSE(Root Mean Squared Error) : MSE에 루트를 씌운 것
    • MSE의 단점인 오차 크기 왜곡 문제를 해결하기 위해 사용
728x90