inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

2장 사용자집단별 추천 코드 질문

해결된 질문

320

작성자 없음

작성한 질문수 0

0

안녕하세요

좋은 강의 감사합니다.

2장 사용자집단별 추천 부분 코드 질문이 있어서 문의드립니다.

def score(model):
    id_pairs = zip(x_test['user_id'], x_test['movie_id'])
    y_pred = np.array([model(user,movie) for (user, movie) in id_pairs]) 
    y_true = np.array(x_test['rating'])  
    return RMSE(y_true, y_pred)

부분에서요

id_pairs는 25000개 인데, 코드를 돌리고 y_pred나 y_true를 출력해보면 168개밖에 안나오더라고요. 이게 무슨 이유 때문인지 잘 이해가 가지 않는데 설명이 가능하실까요?

 

감사합니다!

딥러닝 추천-시스템

답변 1

0

거친코딩

안녕하세요. 거친코딩입니다.

질문주신 코드를 제가 다시 확인해봤는데,

제 코드 쪽에서는 y_pred의 경우 25,000개가 정상적으로 나옵니다.

코드에 오류가 없는지 확인이 가능하실까요?

아래는 강의 내용에 나와있는 코드 자료입니다.

감사합니다.

거친코딩 드림.

# 데이터 train, test set 분리
from sklearn.model_selection import train_test_split
import numpy as np
x = ratings.copy()
y = ratings['user_id']

x_train,x_test,y_train,y_test = train_test_split(x,y,
                                                 test_size=0.25,
                                                 stratify=y)

# 정확도(RMSE)를 계산하는 함수
def RMSE(y_true,y_pred):
  return np.sqrt(np.mean((np.array(y_true) - np.array(y_pred))**2))

# 모델별 RMSE를 계산하는 함수
def score(model):
  id_pairs = zip(x_test['user_id'],x_test['movie_id'])
  y_pred = np.array([model(user,movie) for (user,movie) in id_pairs])
  y_true = np.array(x_test['rating'])
  return RMSE(y_true,y_pred)

# best_seller 함수를 이용한 정확도 계산
train_mean = x_train.groupby(['movie_id'])['rating'].mean()
def best_seller(user_id,movie_id):
  try:
    rating = train_mean[movie_id]

  except:
    rating = 3.0
  return rating

score(best_seller)

강의 자료 이게 맞나요?

0

69

3

6장 Keras로 MF 구현하기 학습 결과

0

166

2

초심자의 질문

0

122

1

코드 공유 폴더가 비어 있습니다.

0

187

1

코드 공유 관련 부탁드립니다.

1

260

2

section 4 네번째 강의에서 pd.merge(x_train, users) 에러 발생

0

289

1

section 2 네번째 강의 score(cf_gender) 실행하면 Error 발생합니다.

0

201

1

MF알고리즘에서 질문이있습니다.

0

365

1

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

0

310

1

score를 실행하면 항상 nan이 출력됩니다

0

328

1

user_id가 인덱스범위를 벗어난 값으로 들어옵니다

0

255

1

인덱스 칼럼은 어떻게 접근해야하나요

0

227

1

제공해주신 데이터링크에 들어가면 404가 뜨는데요?

0

365

1

코드 자동완성 속도가 상당히 느린데 개선할 방법이 있을까요?

0

304

1

ValueError: setting an array element with a sequence

0

475

1

users에 대한 인덱스 설정 기준

0

290

1

ppt 자료

0

286

1

train_test_split에 관한 질문입니다.

0

332

1

Timestamp 제거 이유

0

398

1

사용자 집단별 추천 강의 11:56 부분에 성별에 따른 예측값 계산에서 MergeError가 발생합니다.

0

436

1

local variable 'movie_ratings' referenced before assignment

0

260

2

3장 CF_knn 코드 질문

0

264

1

실습 중 에러 'numpy.ndarray' object has no attribute 'drop'

0

1169

2

IntCastingNaNError: 관련 에러

0

438

1