추천이란

추천 시스템에 대해 검색을 해보면 추천에 대해서 다양하게 정의가 되어 있는데 이번 포스팅에서는 추천의 개념에 대해 알아보겠습니다. 서비스 관점에서 추천의 개념은 다음과 같습니다.

고객이 좋아할만한 아이템을 제공하는 것

여기서 말하는 아이템은 도메인에 따라 상품, 영화, 뉴스, 이미지, 노래 등이 될 수 있습니다. 이를 문제 해결 관점에서 재정의하면,

전체 item 중에서 좋아할 만한 item을 고객 정보, item 정보 등을 통해 추정하는 것

선호하는 item을 추정하기 위해선 일종의 선호도 점수가 필요하겠죠?

추천은 결국 접하지 않은 item에 대한 선호도(유사도)를 추론하는 것

기본적인 추천의 개념은 좋아할 만한 아이템을 찾는 것이며, 추천 알고리즘 관점에서의 추천은 선호도/유사도를 구하는 것입니다. 위에 살펴본 정의를 그림으로 살펴보겠습니다.


추천 알고리즘의 input은 고객 정보아이템 정보이며, 추천 알고리즘을 통한 ouput은 접하지 않은 아이템 중 연관성이 높은 추천 아이템 목록 혹은 이를 점수화한 관심도(점수)가 됩니다. 그림에서와 같이 고객 정보는 고객과 관련된 정보이며, 아이템 정보는 아이템의 특징을 나타내는 정보라고 생각하시면 될 거 같습니다. 여기서 아이템 정보는 도메인에 따라 다르게 되는데요. 영화의 경우에는 영화의 배우, 장르 등이 아이템 정보가 되며, 상품의 경우에는 가격, 종류 등이 아이템 정보가 됩니다.

고객 정보와 아이템 정보의 유무 및 추천 목적에 따라 적용하는 추천 알고리즘이 달라지며, 일반적으로는 고객 정보에 기반한 추천 알고리즘을 Collaborative Filtering(CF)이라고 하며, 아이템 정보에 기반한 추천 알고리즘 방법을 Contents Based Filtering(CBF)라고 합니다. 알고리즘의 상세 내용은 이후 포스트에서 자세히 알아보겠습니다.

Leave a comment