* Learning to Rank가 대체 무엇인지 간단하게 알아보고자 한다.
추천 시스템의 목적으로 돌아가기
추천 시스템은 결국 사용자에게, 사용자가 좋아할만한 아이템을 추천해 주는 것이 목표이다.
추천 시스템의 문제 풀이 방향 2개를 복습하면 다음과 같다.
1) rating matrix 자체를 예측하는 것
2) rating 대신 top-k개를 예측하는 것
그런데 이전에 추천 시스템의 평가에 대한 내용을 상기해보면, 추천의 순서도 유의미할 것이다.
예를들어, top-5를 예측 후 사후에 확인해보니, 사용자가 top-5에 10점, 9점, 8점, 7점, 6점 순서로 5개에 평점을 매겼다. 그런데, 6점짜리를 가장 먼저 추천해줬다면? 아쉬운 결과일 것이다.
Learning by Rank의 가장 궁극적인 목표는, 더 좋아할만한 아이템을 더 우선적으로 추천하는 것을 목표로 두고 있다.
즉 위의 상황에서 10-9-8-7-6 순서로 추천 리스트에 주어졌다면, 가장 이상적인 상황이 되었을 것이다.
중요한 것은 여기서는 10-9-8-7-6 점수 자체를 맞히는 것이 아닌 이 "순서"를 맞히는 것에 핵심을 두어야 한다.
랭킹모델의 분류
랭킹 모델은 크게 3가지로 나눌 수 있다. 분류 기준은 '얼마나 많은 아이템을 1회의 비교 대상으로 고려하는가' 이다.
1) Pointwise approach
이는 개별 아이템에 대한 접근으로, regression 문제로 귀결된다. 즉 하나의 아이템을 학습하기 때문에
결국 점수를 모두 구하고 sorting하는 가장 기본적인 방식이다.
이는 ranking에 대한 prediction과는 거리가 멀어보일 수 있다.
2) Pairwise approach
아이템을 하나의 쌍으로 보는 접근법으로, pair, 즉 2개씩 아이템을 묶어 순서를 분류하는 방법이다.
3) Listwise approach
랭킹의 정답 리스트 전체를 한번에 비교하여 푸는 방법으로 복잡도 자체는 높으나 결과가 가장 좋은 방법이라고 합니다.
'Archive > 추천시스템' 카테고리의 다른 글
[Rec] Alternating Least Square와 Implicit Data를 활용한 추천 (0) | 2022.01.17 |
---|---|
[Rec] Factorization Machine이란? - 개괄잡기 (0) | 2021.12.29 |
[Rec] Neural Collaborative Filtering 리뷰(1) (0) | 2021.12.26 |
[추천] 추천 시스템의 평가 (0) | 2021.09.15 |
[추천] 추천 시스템과 Word2Vec (0) | 2021.08.19 |