Offline Test
새로운 추천 모델 검증을 위한 가장 우선적으로 수행되는 단계
유저로부터 수집한 데이터를 train/valid/test로 나누어 모델의 성능을 객관적인 지표로 평가
평가 지표
- 랭킹 문제: Precision@K, Recall@K, MAP@K, NDCG@K, Hit Rate
- 예측 문제: RMSE, MAE
Precision@K
- 추천한 아이템 중 유저가 관심있는 아이템의 비율 (k는 추천한 아이템 수)
- Precision = (True Positives) / (True Positives + False Positives)
Recall@K
- 유저가 관심있는 전체 아이템 중 추천한 아이템의 비율 (k는 추천한 아이템 수)
- Recall = (True Positives) / (True Positives + False Negatives)
Average Precision(AP)@K
- Precision@1 부터 Precision@K 까지의 평균값
- 관련 아이템을 더 높은 순위에 추천할수록 점수가 상승함
AP@K=m1i=1∑kPrecision@i
Mean Average Precision(MAP)@K
- 모든 유저에 대한 Average Precision 값의 평균
MAP@K=∣U∣1u=1∑∣U∣(AP@K)u
Cumulative Gain
- 상위 K개 아이템의 관련도를 추천 순서와 무관하게 합한 값
CGk=i=1∑Kreli
Discounted Cumulative Gain
- 상위 K개 아이템의 관련도를 추천 순서에 따라 합한 값
DCGk=i=1∑Klog2(i+1)reli
Ideal DCG
- 이상적인 추천에 대한 DCG값 (가능한 DCG 값 중에 제일 큰 값)
IDCGk=i=1∑Klog2(i+1)reliopt
Normalized DCG
- 실제 추천 결과에 대한 DCG를 IDCG로 나눈 값
NDCG=IDCGDCG
Online Test
추천 시스템 변경 전후의 성능을 비교하는 것이 아닌 동시에 동일한 환경의 대조군(A)과 실험군(B)의 성능을 평가
실제 서비스를 통해 얻어지는 결과(매출, CTR 등의 비즈니스/서비스 지표)를 통해 최종 의사결정이 이루어짐