시작하기무료로 시작하기

테스트/훈련 데이터 분할 후 ALS 모델 만들기

이전 장에서 이미 ALS 모델을 만들어 보셨죠. 이번에도 다시 만들어 보되, 교차 검증을 완전히 구성하기 위해 몇 가지 단계를 더 진행하겠습니다.

먼저, 필요한 함수를 임포트하고 교차 검증을 준비하기 위해 훈련용과 테스트용 데이터 세트를 만들어요.

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

PySpark로 추천 엔진 만들기

강의 보기

연습 안내

  • ml.evaluation에서 RegressionEvaluator, ml.recommendation에서 ALS, ml.tuning에서 ParamGridBuilderCrossValidator를 임포트하세요.
  • randomSplit 메서드를 사용해 ratings 데이터에 대해 0.80/0.20 비율로 train/test 분할을 만드세요. 데이터 세트 이름은 각각 train, test로 하고, 랜덤 시드는 1234로 설정하세요.
  • ALS 모델을 구성하면서, ratings 데이터프레임에서 userCol, itemCol, ratingCol에 해당하는 컬럼 이름을 Spark에 알려주세요. nonnegative 인자는 True, coldStartStrategy"drop", 그리고 implicitPrefs가 아님을 알리기 위해 implicitPrefs 인자는 False로 설정하세요. 이 모델의 이름은 als로 하세요.
  • als에 대해 type() 함수를 호출해 모델이 생성되었는지 확인하세요. 출력에는 모델의 타입이 표시되어야 해요.

실습형 인터랙티브 연습

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

# Import the required functions
from pyspark.ml.evaluation import ____
from pyspark.ml.recommendation import ____
from pyspark.ml.tuning import ____, ____

# Create test and train set
(train, test) = ratings.___([0.____, 0.____], seed = ____)

# Create ALS model
als = ALS(userCol="____", itemCol="____", ratingCol="____", nonnegative = ____, implicitPrefs = ____)

# Confirm that a model called "als" was created
type(____)
코드 편집 및 실행