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

독풍대인님의 프로필 이미지
독풍대인

작성한 질문수

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

model.predict에 특정 user id로 상위 movie 5개 출력?

해결된 질문

작성

·

293

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

 

안녕하세요. 추천시스템을 다양한 방법을 통하여 쉽게 설명해 주셔서 감사합니다.

질문과 같이, compile -> fit 해서 생성된 model에

특정 user id 를 입력하여 추천된 상위 movie 5개를 출력해보려고 합니다.

 

강의 예제의 아래 부분의 user_id와 movie_id 그리고 직업을 입력해서

해당 predictions 값에서 상위 movie를 가져올 수 있지 않을까 생각중 입니다.

 

predictions = model.predict([user_ids, movie_ids, user_occ]) + mu

 

문제는, 딱 여기서 막혔습니다. 예제에는 6개의 사용자, 영화, 직업 받아서

Predictions: [[4.0556927] [3.5347672] [2.4461157] [4.1715736] [3.9802952] [3.9247046]]

 

이렇게 보여지는 것같아서, 저것을 어떻게 사용해서, 영화 목록 5개면 5개 ,10개면 10개를 가져올 수 있을까요?

답변 3

0

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

안녕하세요.

image

prediction 값에서 나온 결과 값의 인덱스를 Input 값으로 넣은 movie_id와 매핑해서 보실 수 있지 않을까요?

예를 들어 현재 51,780,489,69,1350,195 movie_id를 test set으로 넣어서

Prediction 값이 동일하게 6개가 나왔으니,

prediction의 인덱스 값에 따라서 똑같이 매핑시켜주면 될 것같습니다.

 

답변이 부족하다면 추가 댓글 남겨주시면 감사하겠습니다.

 

감사합니다.

 

거친코딩 드림.

0

독풍대인님의 프로필 이미지
독풍대인
질문자

6 장 강의 중에 "직업변수" 추가 부분입니다.

직업을 추가해서 model.fit 을 한 후에 prediction 을 하는 코드 아래와 같이 있습니다.

그것의 결과셋을 찍어보면, 확율값이 나오는 것 까지 강의에서 확인했습니다.

predictions = model.predict([user_ids, movie_ids, user_occ]) + mu

 

(질문)은 해당 predict 의 결과값 의 index 가 movie id 와 mapping 이 될 수 있는가?에 대한 질문입니다. kaggle 에 동일한 예제가 올라와 있긴한데, 해당 예제에서는 저렇게 나온 결과셋의 index가 movie id 로 해서, movie 정보를 불러오더군요.

 

0

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

안녕하세요.

거친코딩입니다.

개인적 사정으로 답변이 늦어진점 사과말씀드립니다.

질문하신 부분이 정확히 어디부분의 내용을 말씀하시는지 알려주실 수 있으실까요?

감사합니다.

거친코딩 드림.

독풍대인님의 프로필 이미지
독풍대인

작성한 질문수

질문하기