Ch 03-2. 추천시스템 평가 - RMSE

Yeonghyeon·2022년 7월 16일
0

Recommender System

목록 보기
4/33
post-custom-banner

본 포스팅은 Fastcampus 강의를 수강하며 일부 내용을 정리한 글임을 밝힙니다. 보다 자세한 내용은 아래 강의를 통해 확인해주세요.
참고 : Fastcampus 딥러닝을 활용한 추천시스템 구현 올인원 패키지 Online


Root Mean Square Error(RMSE)

  • 평균 제곱근 편차

    RMSE=1ni=1n(yiyi^)2RMSE = \sqrt{\frac{1}{n}\sum_{i=1}^n(y_i - \hat{y_i})^2}

  • 실제 값과 모델의 예측 값의 차이를 하나의 숫자로 나타냄

  • 예측 대상 값에 영향을 받는다 (Scale-dependant)

    • 같은 0.01의 에러값도 어떤 y_pred와 y_actual을 사용했느냐에 따라 다른 의미 가짐
    • ex) A 플랫폼: 1~10의 평점 / B 플랫폼: 1~100의 평점
      ➡️ 두 플랫폼의 평점 스케일이 다르므로 같은 RMSE 값을 가진다해서 A,B 플랫폼이 동일하고 같은 추천 알고리즘을 사용해도된다라는 것은 아님!
  • 평점 등 prediction problem의 추천 성능을 평가할 때 주로 사용되는 지표

  • 제곱하여 더 큰 오차 만들고(오차가 작으면 틀렸는데 모델이 맞췄다고 평가될 수 있음), 제곱근을 씌워 원래 scale의 의미있는 숫자로 돌아감

  • RMSE는 낮을수록 추천 알고리즘의 성능이 더 좋다고 정량적 평가 가능

    • but, 성능이 좋다고해서 꼭 좋은 추천하는 것 아님!
    • ex) 1.2에서 0.9로 RMSE가 25% 향상되었음 ➡️ 추천시스템 성능이 25% 향상되었다? 절대 아님!
  • 잔차(residual)의 제곱을 산술평균한 값의 제곱근 = 표준편차 = RMSE

예시

  • Model A: 모든 영화의 평점을 3.5라고 예측 ➡️ RMSE=0.9186RMSE = 0.9186
  • Model B: 각 영화를 1~5까지 골고루 예측 ➡️ RMSE=1.3463RMSE = 1.3463
  • Y_actual: 1~5까지 골고루 된 평점

이때, 다음 영화에 대해 model A는 3.5점이라고 또 예측을 할텐데, 이와 반대로 model B는 model A보다 RMSE 값이 더 높지만(성능 안 좋지만) model B는 실제로 높은 평점의 영화에 대해선 높게, 낮은 평점의 영화에 대해선 상대적으로 낮게 평가를 주었기 때문에 비록 model A보다 RMSE 값은 더 높지만 더 신뢰도 있는 결과로 예측할 것임

➡️ 누누히 말했듯이 추천시스템에서는 정답이 없기 때문에 경진대회에 참가한 것이 아닌 이상 무조건 RMSE가 낮은 model을 선택하는 것이 아닌, 실제 정답과 예측 정답과의 관계를 함께 고려하여 데이터로 분석해보는 것도 매우 중요한 과정!

post-custom-banner

0개의 댓글