추천 엔진 구축을 위한 기본

추천 엔진이라 함은 사용자가 해당 항목을 얼마나 좋아할지를 통계적으로 추론하기 위해 수학적 모델을 개발하여 아이템에 대한 사용자 선호도를 예측하는 것이다.

추천 엔진을 크게 나누면 휴리스틱 기반과 모델기반 추천 시스템으로 나눌수 있는데 먼저 휴리스틱 기반부터 살펴보겠다.

휴리스틱 기반 추천 시스템은 흔히 메모리 기반 모델(메모리에 로딩한 후 계산한다고 해서 메모리 기반 모델)으로 불린다. 휴리스틱 기반 추천 시스템은 이웃기반 추천(collaborative Filtering, CF)과 Content-Based 추천(Content Based Filtering, CBF)이 존재한다

  • 이웃 기반 추천 : 사용자간 유사도를 바탕으로 추천하는 사용자 기반과 아이템간의 유사도를 기반으로 추천하는 아이템 기반 필터링이 존재
  • Content Based 추천 : 아이템 프로필(tfidf를 이용해 생성)과 사용자 프로필의 유사도를 계산하여 추천

과거 CF 기반의 추천엔진에서 콜드스타트 문제와 높은 개인화 수준을 만족하기 위해 CF에서 CBF로 추천엔진 로직이 발전해가는 추세이다.

이외에 날씨,장소,시간 등을 고려하는 상황인식 추천 시스템, CF와 CBF를 조합한 하이브리드 시스템 이 존재한다.

모델기반 추천 시스템에는 확률 모델, 머신러닝 모델, 수학적 모델 같은 다양한 모델들이 존재하는 이는 휴리스틱 접근법보다 정확하고 강력한 성능을 보여준다.

참고 : 추천 엔진을 구축하기 위한 기본서@수레시 고라칼라


%d 블로거가 이것을 좋아합니다: