inflearn logo
講義

講義

知識共有

wannawayさんの投稿

wannaway wannaway

@wannaway

レビュー投稿数
-
平均評価
-

投稿 2

Q&A

CF_knn_bias 실습에서 not in index error 발생합니다.

# 사용자 평가 경향을 고려한 함수 # # full matrix 에서 사용자의 평점 평균을 구한다. rating_mean = rating_matrix.mean(axis=1) # 영화 평점과 각 사용자의평균과의 차이 (평점편차)를 구한다. rating_bias = (rating_matrix.T - rating_mean).T # 사용자 평가 경향을 고려한 함수 def CF_knn_bias(user_id, movie_id, neighbor_size=0): if movie_id in rating_bias.columns: sim_scores = user_similarity[user_id].copy() movie_ratings = rating_bias[movie_id].copy() none_rating_idx = movie_ratings[movie_ratings.isnull()].index movie_ratings = movie_ratings.drop(none_rating_idx) # CF_knn에서는 dropna() 사용했었음 sim_scores = sim_scores.drop(none_rating_idx) if neighbor_size==0: prediction = np.dot(sim_scores, movie_ratings) / sim_scores.sum() prediction = prediction + rating_mean[user_id] else: if len(sim_scores) > 1: neighbor_size = min(neighbor_size, len(sim_scores)) sim_scores = np.array(sim_scores) movie_raitngs = np.array(movie_ratings) user_idx = np.argsort(sim_scores) sim_scores = sim_scores[user_idx][-neighbor_size:] movie_ratings = movie_ratings[user_idx][-neighbor_size:] prediction = np.dot(sim_scores, movie_ratings) / sim_scores.sum() prediction = prediction + rating_mean[user_id] else: prediction = rating_mean[user_id] else: prediction = rating_mean[user_id] return prediction score(CF_knn_bias, 30) CF_knn은 정상 동작합니다! 코드 첨부드리니 한번 확인 부탁드립니다. 감사합니다.

いいね数
0
コメント数
3
閲覧数
718

Q&A

MergeError가 납니다

set index가 되어있는 상태였네요. 해결했습니다.

いいね数
0
コメント数
2
閲覧数
570