벡터 공간 : 어떻게 간단한 음악 추천 시스템을 구현하는 방법?

벡터 공간 : 어떻게 간단한 음악 추천 시스템을 구현하는 방법?

뿐만 아니라 듣고 노래를 선택,하지만 당신이 좋아할만한 노래의 맛을 취향에 따라 노래를 추천 할 수 있습니다

구문 분석 알고리즘

  • 당신은 그들이 당신에게 추천하는 노래를 듣고 싶어, 유사한 사용자 입맛에 발견
  • 노래와 유사한 특성을 가진 당신의 마음에 드는 노래를 찾아,이 노래는 당신에게 추천합니다

비슷한 사용자를 기반으로 1. 메이크업 권장

더-공동 좋아하는 노래와 사용자의 맛과 비슷한으로 볼 사람들의 노래를 듣고 유사, 누가 맛이 비슷합니다 말한다. 사용자는 사용자와 사용자가 좋아하는 노래의 번호 함께이 임계 값이 사용자의 즐겨 찾기를 초과하지만 경우에 당신이 들었하지 않은, 임계 값을 함께 좋아하는 노래와 각 사용자의 수에 비해 모두를 통과해야하고, 설정 노래 추천

어떻게 노래에 대한 사용자 열정의 수준을 정의?

사랑의 사용자가 좋아하는 행동으로 정의하는 범위 내에서 각 작업이 점수를 정의하는, 점수가 높을수록, 더 높은 정도

단일 사이클 수집 검색 청문회 후 허드 건너 뛰기
5 4 1 0 -1

사용자와 두 개의 사용자 경우 좋아하는 노래 대응표 후 어느 정도를 확인하는 유사 맛이 있는지?

다른 거리를 사용할 수있는 두 사용자 간의 유사도를 들어, 유클리드 거리는, 유클리드 거리를 두 개의 벡터 사이의 거리를 계산하기 위해 사용된다.

벡터와 거리 :

일차원 라인은 단일 일차원 번호 1,2,3의 위치를 ​​나타내고, 2 차원 평면이 (1,3)과, 인 또는 2 차원 공간 위치를 나타내는 같이, 3 차원 공간을 3 차원 공간 위치 K 차원 공간 등에 의해 (1,3,5)에 의해 사용될 수있다 (X1은 X2가, ..., XK)이 어떻게 두 벡터 그 사이의 거리를 계산하기 위해, 벡터 표현했다?
차원 ( 엑스 1 , 엑스 ) ( 1 , ) d = ( x 1 y 1 ) 2 + ( x 2 y 2 ) 2 상기 이차원 (X1, X2) 사이의 거리 (d) 및 (Y1, Y2) = \ SQRT {(X1-Y1) ^ 2 + (X2-Y2) ^ 2}

( x 1 , x 2 , x 3 ) ( y 1 , y 2 , y 3 ) d = ( x 1 y 1 ) 2 + ( x 2 y 2 ) 2 + ( x 3 y 3 ) 2 (Y1, Y2, Y3) 입체 거리 (d) (X1, X2, X3) = \ SQRT {(X1-Y1) ^ 2 + (X2-Y2) ^ 2 + (X3-Y3) ^ 2} 사이

K ( x 1 , x 2 , x 3 x k ) ( y 1 , y 2 y k ) d = ( x 1 y 1 ) 2 + ( x 2 y 2 ) 2 + + ( x k y k ) 2 제 (X1, X2, X3 ... XK) K 차원 사이의 거리 (d) (Y1, Y2 ... YK) = \ SQRT {(X1-Y1) ^ 2 + (X2-Y2) ^ 2 + ... + (XK-YK ) ^ 2}

모든 노래의 사용자 열정의 모든 수준은 벡터로 표시하려면, 정도의 두 개의 사용자의 취향에 유사한 조치로, 두 벡터 사이의 유클리드 거리를 계산 만약 당신이 밥과 유클리드 거리 최소, 가장 유사한 당신의 취향에 설명

당신 : (5,3 ...)

소명 : (4,5 ...)

왕 : (1,0 ...)

레드 : (3,0 ...)

화이트 : (0,0 ...)

당신과 샤오 밍, 왕, 레드, 화이트 유클리드 거리가 있습니다 :

38 \ SQRT {38} , 117 \ SQRT {117} , 61 \ SQRT {61} , 118 \ SQRT {118} 가장 유사한 맛 샤오 명나라에 따라서

이 비슷한 노래를 기반으로 추천을합니다

이 새로운 사용자 인 경우, 노래가 좋아하는 노래와 유사한 경우 충분한 데이터의 동작은, 유사한 기반으로 음악을 추천 할 수 있습니다 수집하지, 당신에게 추천 넣어

어떻게 두 곡 사이의 유사성의 정도를 정량화하기 위해?

당신은 사람들이 듣고 좋아하면 두 곡은, 비슷 매우 유사, 사용자 기반 기준이 사랑의 정도를 정의하는 것입니다 노래의 두 가지 측면을 반영, 각 사용자가 사랑의 정도를 정의, 사랑 노래의 다른 학위를, 권장되는 방법에 따라 각 사용자에 대해, 각각의 노래, 노래를 추천 유사한 아이디어를 기반으로, 벡터로 각 노래의 정도를 사랑합니다, 사용자와 유사하다, 각 노래와 벡터 각 사용자의 점수, 벡터 계산 사이의 유클리드 거리에 의해 표현 벡터, 두 곡 더 유사한 작은 거리가, 사용자가 음악을 듣고,하고 알아내는 한 자신의 좋아하는 노래의 높은 수준을 찾아 이 노래는 아주 다른 노래와 유사한 추천입니다

확장 요약

그것은 가장 일반적인 문제 권장 시스템입니다

게시 75 개 원래 기사 · 원의 찬양 9 · 전망 9168

추천

출처blog.csdn.net/ywangjiyl/article/details/104770386