2

입니다. 추천 알고리즘을 사용하고 있습니다. 사용할 수있는 모든 유사 클래스 간의 차이점은 무엇입니까? 신청할 때 가장 좋은 선택은 무엇입니까? 다음은 내 선택입니다.Mahout의 유사성 전략 차이점은

SIMILARITY_COOCCURRENCE 
SIMILARITY_LOGLIKELIHOOD 
SIMILARITY_TANIMOTO_COEFFICIENT 
SIMILARITY_CITY_BLOCK 
SIMILARITY_COSINE 
SIMILARITY_PEARSON_CORRELATION  
SIMILARITY_EUCLIDEAN_DISTANCE 

각각의 의미는 무엇입니까?

답변

3

나는 이들 모두에 익숙하지 않지만 일부는 도울 수 있습니다.

Cooccurrence는 동일한 사용자가 두 항목을 얼마나 자주 발생시키는지를 나타냅니다. http://en.wikipedia.org/wiki/Co-occurrence

로그 가능성은 추천하는 특성에 따라 항목을 권장 할 확률의 로그입니다. 당신이 checkboard 스타일의 도시에있는 것처럼 만 이동할 수 가정하면 타니 모토에 대한 http://en.wikipedia.org/wiki/Log-likelihood

확실하지

도시 블록은 두 인스턴스 사이의 거리입니다. http://en.wikipedia.org/wiki/Taxicab_geometry

코사인 유사도는 두 특징 벡터 간의 각도의 코사인입니다. http://en.wikipedia.org/wiki/Cosine_similarity

피어슨 상관은 표준 편차로 표준화 된 피처의 공분산입니다. http://en.wikipedia.org/wiki/Pearson_correlation_coefficient

유클리드 거리는 두 점 사이의 표준 직선 거리입니다. http://en.wikipedia.org/wiki/Euclidean_distance

응용 프로그램에 가장 적합한 응용 프로그램을 결정하려면 데이터에 대한 직관력과 의미를 이해해야합니다. 귀하의 데이터가 유클리드 거리 또는 피어슨 상관 관계와 같은 무언가보다 지속적인 가치 기능이라면 말이됩니다. 도시 블록이나 코사인 유사선을 따라 무언가보다 더 많은 이산 값을 가진다면 더 합리적 일 수 있습니다.

또 다른 옵션은 각 유사성 측정 항목이 원하는 출력 값을 예측하고 상호 유효성 검사 결과에서 가장 잘 작동하는 측정 항목을 선택하는 방법을 잘 보여주는 교차 확인 실험을 설정하는 것입니다.