시작하기무료로 시작하기

추천이 타당해 보이나요

이제 모델 성능을 어느 정도 파악했고, 사용자의 관심사에 맞는 추천을 제공할 수 있다는 확신도 생겼으니, 실제로 특정 사용자에게 제공된 추천을 살펴보고 타당한지 확인해 보겠습니다.

원본 평점 데이터는 original_ratings로 제공됩니다. 사용자 60과 사용자 63의 원본 평점을 확인하고, ALS가 이들에게 추천한 항목과 비교해 보세요. 추천이 이들의 기존 선호와 일관된가요?

이 연습은 강의의 일부입니다

PySpark로 추천 엔진 만들기

강의 보기

연습 안내

  • original_ratings 데이터프레임에서 .filter()를 사용해 col("userId")60과 같은 행만 선택해 사용자 60의 원본 평점을 확인하세요. 그런 다음 .sort() 메서드를 호출해 rating 기준으로 정렬하고, 가장 높은 평점이 먼저 보이도록 ascending 인수를 False로 설정하세요.
  • 사용자 60의 추천 결과를 확인하려면 recommendations 데이터셋에 .filter().show() 메서드를 사용하세요. ALS가 생성한 추천은 기본적으로 userId 기준 내림차순으로 제공되므로, 따로 정렬할 필요가 없습니다.
  • 사용자 63에 대해서도 동일하게 수행하세요.
  • 각 사용자에게 추천된 장르가 원본 평점과 어느 정도 일관성이 있나요?

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Look at user 60's ratings
print("User 60's Ratings:")
original_ratings.filter(col("____") == 60).____("rating", ____ = False).show()

# Look at the movies recommended to user 60
print("User 60s Recommendations:")
____.____(col("userId") == ____).show()

# Look at user 63's ratings
print("User 63's Ratings:")
original_ratings.filter(col("____") == ____).____("rating", ____ = False).show()

# Look at the movies recommended to user 63
print("User 63's Recommendations:")
____.____(col("userId") == ____).show()
코드 편집 및 실행