Limitation of Collaborative Filtering
CF는 기본적으로 user-item interaction matrix가 주어졌을 때, 이로부터 사용자와 아이템 간의 숨겨진 패턴을 찾아내고 이를 추천에 활용한다. 하지만 실제로 이런 가정이 성립하지 않는 추천도 존재한다.
- cold-start
interaction data가 충분하지 않아서 user-item의 latent vector를 잘 학습할 수 없게 되는 cold-start problem이 존재한다. 새로운 사용자에게는 most popular item이 추천되는 현상이 일어난다.
그래서 이를 보완하기 위해서 item의 side-information을 활용하는 content-based 추천을 사용하면 된다. - temporal evolution
시간의 특성을 반영하지 않는 compatibility function을 사용하면 temporal evolution을 반영할 수 없기도 하다. 현실에서는 temporal evolution이 존재하기 때문에 일반적인 compatibility function을 확장해서 temporal factor를 고려하게 해야한다. - interpretability
추천결과가 왜 이렇게 나왔는지 설명이 필요할 때에도 CF는 적절하지 않다. - social recommendation
user-item 추천이 아닌 친구 추천 등의 social recommendation 상황에서도 CF가 잘 작동하지 않는다. - online advertising
광고 예산 등 제약조건이 존재하면 CF가 잘 작동하지 않는다.
Content-based Methods
user나 item에 관련된 side information(=content, feature)을 활용해서 cold start를 완화한다. 이력이 존재하지 않는 새로운 item을 추천할 때 효과적이다. 하지만 일반적인 직관을 벗어나지 않는 뻔한 추천결과가 나오게 된다. (ex. 첫 번째 아이템이 로맨스 영화였다면 content based 를 하면 비슷한 로맨스 영화가 추천되는 결과가 나오게 된다) 또한 이력이 존재하지 않는 새로운 user에게 추천할 때는 여전히 cold start problem이 존재한다.
user이나 item과 연관된 historical interation data가 없는 상황에서는 user feature과 item feature간의 regression 을 통해 추천하기도 한다. 또한 각 장단점으로 보완적인 특정을 지닉 때문에 두 방법을 함께 사용하는 hybrid method(=CF+CB) 를 사용한다. 특히 CB는 개별적으로 사용되기 보다는 다른 방법들과 결합을 많이 한다.
Context-aware Recommendations
'부스트캠프 AI Tech 3기 > 이론 : U-stage' 카테고리의 다른 글
[Day36] Github 특강 1-2 폴더를 저장소로 지정하기/로컬에서 버전관리 하기 git add/stage/commit (0) | 2022.03.27 |
---|---|
[Day36] Github 특강 1-1 레포지토리 만들기 (0) | 2022.03.27 |
[Day38] Bandit for Recommendation 10-2 : MAB 알고리즘 심화 : Thompson Samling, LinUCB (0) | 2022.03.17 |
[Day38] Bandit for Recommendation 10-1 : MAB 개요 & MAB 알고리즘 기초 (0) | 2022.03.17 |
[Day38] DeepCTR 9-2 : DIN & BST (0) | 2022.03.17 |