-
카테고리
-
세부 분야
딥러닝 · 머신러닝
-
해결 여부
해결됨
CF 관련 질문
22.05.05 01:01 작성 조회수 183
1
안녕하세요.
제가 보다가 궁금증이 생겼습니다!
sim_scores를 할 때 자기 자신에 대한 값은 제외하지 않고 하나요??
좋은 강의 감사합니다!
답변을 작성해보세요.
1
거친코딩
지식공유자2022.05.08
안녕하세요.
개인적 사정으로 답변 늦게 드린점 죄송합니다.
말씀하신대로 단순 cosine_similarity를 해서 유사한 집단에서 가장 유사한 군을 뽑게 되면 본인이 나올 수 있습니다.
하지만 강의에서는 단순 cosine_similarity로 추천 결과물을 내는 것이 아니라,
cosine_similarity 와 movie_ratings간의 가중평균을 통해서 결과물을 내게 됩니다.
그래서 학습자님께서 질문하신 것을 정리해서 답변드리면 다음과 같습니다.
1) user_id를 빼고 구하게 되면 movie_ratings와 가중 평균 연산을 할 수 없게 된다.
2) cosine_similarity는 유저간 유사도를 구하는 것이지, 추천 결과물의 직접적인 산출물은 아니다.
답변이 되셨으면 좋겠습니다.
감사합니다.
-거친코딩 드림-
0
HAHA
질문자2022.05.05
cosine similarity를 하게 되면 행렬에서 대각행렬(자신과 자신에 유사도를 구한 값)이 가장 높을 것이라고 생각됩니다!
argsort를 하면 동일한 값이 많지 않는 한 자기 자신이 무조건 상위에 n개 안에 포함될 것이라고 예상이 됩니다.
제가 보는 코드에서는 대각행렬을 제외하는 코드가 없었던 것 같아서 질문 남겼습니다!
0
거친코딩
지식공유자2022.05.05
안녕하세요!
거친코딩입니다.
학습자님의 질문이 완전히 이해가 되지 않았지만,
제가 이해한바로 답변을 드리자면,
만약 자기 자신을 제외하게 되면, 추천받게 되는 대상의 추천을 위한 score를 계산할 수 없게 됩니다.
답변이 되셨기를 바라면서, 부족하다고 느껴지신다면 조금만 더 구체적으로 남겨주시면 감사하겠습니다.
감사합니다.
-거친코딩 드림-
답변 3