해결된 질문
작성
·
275
1
답변 4
0
안녕하세요.
개인사정으로 답변이 늦어진 점 죄송합니다.
방금 학습자님이 짜주신 전체 코드 리뷰를 해봤습니다 :)
그런데 모델을 테스트 셋으로 측정하는 "score module"에 문제가 있는것을 발견하였습니다.
마지막 부분에 y_pred만 있고 실제 y_true 값을 산출하는 부분 및 RMSE를 구하는 부분이 빠져있는 것 같습니다.
# 유사집단의 크기를 미리 정하기 위해서 기존 score 함수에 neighbor_size 인자값 추가
def score(model,neighbor_size=0):
# 테스트 데이터의 user_id와 movie_id 간 pair를 맞춰 튜플형원소 리스트데이터를 만듬
id_pairs = zip(x_test['user_id'],x_test['movie_id'])
# 모든 사용자-영화 짝에 대해서 주어진 예측모델에 의해 예측값 계산 및 리스트형 데이터 생성
y_pred = np.array([model(user,movie,neighbor_size) for (user,movie) in id_pairs])
# 실제 평점값
y_true = np.array(x_test['rating'])
return RMSE(y_true, y_pred)
예시코드 같이 보내드리겠습니다.
학습자님의 성공적인 학습을 기원합니다.
질문은 언제든 환영합니다 :)
감사합니다.
-거친코딩 드림-
0
거친코딩 선생님
아무리 봐도 찾을수가 없습니다 ㅠ ㅠ
도움을 부탁 드립니다.
0
빠르게 답변주셔서 감사합니다.
이웃을 고려한 cf가 정상적으로 작동하는데 이는 1~6번이 정상적으로 작동했기에 가능한 것이 아닐까 싶습니다.
송구스럽지만 코드 샘플을 송부하여 주시면
구체적으로 비교하여 보도록 하겠습니다
감사합니다
0
안녕하세요.
올려주신 코드를 보면 강의에 나온대로 잘 짜주셨네요!
학습자님이 열심히 해주신 모델(CF_knn) 에는 아무 이상이 없네요.!
다만, 예상되는 문제라고 하면 다음과 같습니다.
1. 데이터 불러오기
2. RMSE 모듈 확인
3. score 모듈 확인
4. train set과 test set을 잘 구분 하셨는지
5. train set을 통해 rating matrix(pivot)을 잘 만드셨는지
6. rating matrix를 통해 사용자간 유사도(user_similarity)를 잘 구하셨는지
혹시 1~6번까지 아무 이상없는데, 동작이 안되신다고 하면 제가 샘플 코드를 보내드리겠습니다 :)
ps. 샘플코드(모델 앞 부분 코드) + 학습자님 모델은 정상적으로 잘 동작하였습니다:)
감사합니다.
-거친코딩 드림-
오 감사합니다!!해결되었습니다!!!