CBF: Content Based Filtering

item Profile

추천 대상이 되는 아이템의 feature들로 구성

아이템이 가진 다양한 속성은 Vector 형태로 표현된다.

user profile

유저가 과거에 선호했던 Item List가 있고 개별 Item은 TF-IDF를 통해 벡터로 표현된다.

각 유저의 Item List안에 있는 Item의 벡터들을 통합하면 User Profile이 된다.

유저가 선호한 아이템의 종류만 확인이 가능한 경우

Simple Vector: 유저가 선호한 Item Vector의 평균값

유저가 선호한 아이템의 종류와 함께 유저의 선호도가 나타난 경우

Variant Vector: 유저가 나타낸 선호도값을 가중치로 활용한 가중평균값

유저와 아이템 사이의 거리를 계산하기 위해 User Vector와 Item Vector의 Cosine Similarity를 활용한다.

User Vector는 Item Vector의 합으로 구성되었기 때문에, 차원이 동일하다.

만약 item 추천 문제가 아니라, 유저의 특정 item에 대한 선호도를 예측하고자 한다면?

대상 아이템($\tt i'$)의 Vector을 이용하여 유저의 평점 예측하기

  1. 해당 유저가 과거에 선호하던 모든 아이템들과 대상 아이템간의 유사도들을 구한다.
  2. 유사도들과 기존에 유저가 다른 아이템에 남긴 평점 정보를 활용하여 가중평균을 계산한다.