시작하기무료로 시작하기

추천이 타당해 보이나요

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

원본 평점 데이터는 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()
코드 편집 및 실행