추천 시스템의 성과측정지표

김민영·2024년 1월 12일
post-thumbnail

추천 시스템의 성과 측정 지표

데이터를 train set과 test set으로 분리
train set을 사용해서 학습하고, test set으로 평가
예상 평점과 실제 평점 차이를 계산 후 정확도 측정

그렇지만, 정확도라는 것이 train set과 test set에 어떤 사용자가 들어가고 몇 명의 사용자와 몇 개의 아이템을 넣느냐에 따라서 많이 달라질 수 있기 때문에
좀 더 명확하고 Robust(어떤 데이터를 넣어도 비슷한 정확도를 보이는, 민감하지 않은)한 평가를 위해서
cross validation처럼 train set과 test set을 여러가지로 바꿔가면서 정확도를 측정하면서 모델에 대한 전반적인 성능을 평가해볼 필요가 있다.

성과 측정 지표

  • 각 아이템의 예상 평점과 실제 평점 차이
    - RMSE, 연속적인 값에 대해서 활용할 수 있다.(회귀)
  • 추천한 아이템과 사용자 실제 선택과 비교
    - 장바구니에서 그 아이템을 샀다 안 샀다와 같은 이진 데이터를 비교할 수 있다.(분류)
    • 정확도, 정밀도, 재현율, 정밀도와 재현율의 조화 평균(F1 score), 범위

confusion matrix 혼동 행렬

TP (True Positive) = 모델은 True로 예측했고, 실제 데이터도 True인 경우 / 양성으로 올바르게 예측
FP (False Positive) = 모델은 True로 예측했지만, 실제 데이터는 False / 양성으로 잘못 예측
TN (True Negative) = 모델은 False로 예측했고, 실제 데이터도 False인 경우 / 음성으로 올바르게 예측
FN (False Negative) = 모델은 False로 예측했지만, 실제 데이터는 True인 경우 / 음성으로 잘못 예측

정확도 Accuracy

정확도 = 정확히 예측한 비율 (True를 True로 잘 예측 + False를 False로 잘 예측)

정밀도 Precision

정밀도 = 모델이 True로 예측한 것 중 실제 데이터도 True인 비율

재현율 Recall

재현율 = 실제 True인 데이터 중 모델이 True로 예측한 비율

정밀도와 재현율은 trade-off의 관계.

F1-score

정밀도와 재현율의 조화평균

F1 score는 이 두 평가 지표를 모두 고려하여 모델의 예측 성능을 평가하기 때문에, 정확한 예측과 재현율의 평균을 동시에 고려할 수 있는 장점이 있다.
F1 Score는 이 두 가지의 지표의 조화평균을 구한 것이다. 조화평균을 사용하는 이유는 두 metric 중 더 작은 값에 영향을 많이 받기 위함이다. F1 Score는 0.0~1.0 사이의 값을 가지는데, Precision과 Recall 값이 모두 갖춰져야만 높은 지표를 얻을 수 있다. 불균형 데이터에 취약한 모습을 보였던 Accuray 보다 훨씬 더 모델 성능을 구체적으로 가늠할 수 있다.

[블로그 참고]
정리를 위해 참고했습니다!(이미지, 설명)
https://www.thedatahunt.com/trend-insight/f1-score
https://bhcboy100.medium.com/머신러닝-분류-평가지표-이해하기-정확도-정밀도-재현율-f1-스코어-6bf91535a01a

범위

추천이 가능한 사용자의 비율이나 추천이 가능한 아이템의 비율.
정밀도와 반대의 관계

best-seller 방식의 경우, 모든 집단을 전체로 두어 추천하기 때문에 범위는 커지지만 정밀도는 떨어진다.

profile
data analysis, data science

0개의 댓글