유사도 측정법

추천 시스템 구축을 위해 CF 혹은 CBF의 모델을 만들기 위해서는 각 아이템/사용자 간 유사도 측정이 중요하다.

유사도 측정을 위한 다양한 방법이 존재하지만 몇가지 유사도 측정법을 정리해본다

  1. 유클리드 유사도
    – 두점이나 백터 사이의 거리를 계산하는데 가장 일반적인 유사도 측정 방식
    – 백터 공간에서의 두점이나 백터 사이의 경로에 대한 거리
    – 간단한 계산을 통한 거리 측정으로 유사도 계산이 가능
  2. 코사인 유사도
    – 두 백터 사이의 사이값에 대한 코사인을 측정하여 백터들의 유사도를 측정
    – 유클리드 유사도와 달리 길이가 다른 백터들에 대한 유사도 측정시 정확한 값을 보여줌
  3. 자카드 유사도(Jaccard index)
    – 사용자와 아이템 사이의 합집합에 대한 교집합의 비율
    – 샘플 집합의 유사도와 다양도를 찾는데 사용
  4. 피어슨 상관계수
    – 각 대상의 데이터 집합이 얼마나 한 직선으로 표현되는지에 대한 측정값
    – 두 변수에 대한 선형관계를 파악하기 위해 사용

각 유사도 계산을 위한 수식은 구글링을 통해 쉽게 찾을 수 있으므로 따로 정리하지 않음

 

참고 : http://bigbigdata.tistory.com/99, http://docs.likejazz.com/cosine-sim/ , 추천엔진을 구축하기 위한 기본서


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