본문 바로가기

Dev/AI 인공지능

[RecSys] 추천 시스템이란 | 추천 시스템 평가 지표 | Precision@K | Recall@K | MAP@K | NDCG@K

728x90
반응형

검색과 추천의 차이

  • 유저의 검색(Search): 사용자의 의도가 담긴 Query를 사용하여 데이터를 당겨옴 (Pull)
  • 시스템의 추천 (Recommendation): 사용자의 취향을 분석한 데이터를 기반으로 상품을 추천 (Push)

 

 

추천 시스템에서 사용하는 정보

  • 유저 관련 정보: 유저 프로파일링 → 식별자, 데모그래픽 정보, 행동 정보
  • 아이템 관련 정보: 아이템 프로파일링 → 아이템 식별자, 아이템 고유 정보
  • 유저 — 아이템 상호작용 정보: 유저가 아이템과 상호작용한 log → 추천 시스템을 학습하는 Feedback Data로 역할을 수행
    • Explicit Feedback Data: 명시적 피드백 데이터 — 평점, 좋아요 여부 등
    • Implicit Feedbakc Data: 암시적 피드백 데이터 — 클릭, 구매 여부 등
    → 위 정보들을 토대로 유저 — 아이템 상호작용을 평가하는 score 값을 계산하여, 특정 유저에게 적합한 아이템 혹은 특정 아이템에게 적합한 유저를 추천

 

 

추천 시스템의 수행 역할

  • 랭킹 (Ranking): 유저에게 적합한 아이템 Top K개를 추천
    • Top K 선정을 위한 기준 및 스코어 필요! 정확한 선호도를 구할 필요는 없음
    • 예) Precision@K, Recall@K, MAP@K, NDCG@K
  • 예측 (Prediction): 유저의 아이템 선호도를 예측 (평점 등)
    • 유저가 아이템을 평가할 값 혹은 구매할 확률 값들을 정확하게 예측하여, 유저 — 아이템 행렬을 채워야 함
    • 예) MAE, RMSE, AUC

 

 

추천 시스템의 성능은 어떻게 평가할까?

  • 비즈니스적 관점: 추천 시스템 적용으로 인한 매출 및 PV, CTR 증가 등
  • 품질 관점: 연관성, 다양성, 새로움, 참신함

 

 

추천 시스템의 Offline Test

추천 모델을 검증하기 위해 가장 우선적으로 시행하는 단계 → 객관적인 성능 지표로 평가

랭킹 문제: Precision@K, Recall@K, MAP@K, NDCG@K, Hit Rate

예측 문제: RMSE, MAE — 머신러닝 메트릭과 유사

  • Precision@K: 우리가 추천한 K개의 아이템 가운데 실제 유저가 관심있는 아이템의 비율
  • Recall@K: 유저가 관심있어 하는 아이템 가운데 시스템이 추천한 아이템의 비율
  • AP@K의 계산 과정: Average Precision, Precision@1부터 Precision @K까지의 평균값
    • Precision K와 달리, 관련 아이템을 더 높은 순위에 추천할수록 Score가 상승함 → 아이템의 추천 순서를 고려할 수 있는 metric
    • 해당 아이템을 사용자가 좋아했는지 여부를 나타내는 relevence 값이 곱해지는 경우도 있음

 

  • MAP@K: 모든 유저에 대한 AP@K 값의 평균

 

  • NDCG@K: 검색(Information Retrieval)에서 등장했지만, 추천 시스템에서 많이 사용되는 지표
    • Top K 리스트 생성 → 순서에 따른 가중치 비교 → 성능 평가
    • 성능 값이 1에 가까울 수록 좋음
    • 연관성을 이진(binary)값이 아닌 수치로도 사용 가능 → 그에 따라 관련성 있는 아이템 상위 노출 가능

 

추천 시스템의 Onlline Test

Offline Test에서 검증된 가설 및 모델을 통해 실제 추천 결과를 서빙 → 동시에 대조군과 실험군의 실제 서비스 성능을 평가하여 결정 → 현업에서는 정량적 수치보다는 매출, CTR 등의 비즈니스 지표를 통해 최종 결정됨

 

 

728x90
반응형