인프런 커뮤니티 질문&답변

he님의 프로필 이미지
he

작성한 질문수

Python을 이용한 개인화 추천시스템 | 추천알고리즘 | 추천인공지능

이웃을 고려한 CF

ean_rating = np.dot(sim_scores,movie_ratings) / sim_scores.sum() 부분에서 질문이있습니다.

해결된 질문

작성

·

222

0

ean_rating = np.dot(sim_scores,movie_ratings) / sim_scores.sum()

이부분에서 sim_scores.sum()값은 항상 0이 아닌게 보장이 되는건가요? 직접 데이터를 생성해서 테스트 해보면 음수이거나 0일때도 있더라구요!... 데이터가 잘못된건지 아니면 0일수도 있는건지 궁금합니다.

답변 1

1

거친코딩님의 프로필 이미지
거친코딩
지식공유자

안녕하세요.

sim_scores값은 코사인유사도를 통해 산출된 값이므로 -1~1사이의 값을 가질 수 있습니다.

그리고 sum의 값이 0인경우는 두 벡터가 서로 수직이라는 것을 의미하고, 즉 두 벡터사이에 아무런 상관관계가 없거나 관련성이 없다는 것을 나타냅니다.

질문에 대한 답이 되었으면 합니다.

감사합니다.

he님의 프로필 이미지
he
질문자

답변 감사합니다!

he님의 프로필 이미지
he

작성한 질문수

질문하기