시작하기무료로 시작하기

최적 비행 시간 모델 분석하기

방금 비행 시간 예측을 위한 선형 회귀 모델의 좋은 하이퍼파라미터를 찾도록 CrossValidator를 설정했어요.

모델 파이프라인에는 여러 단계(StringIndexer, OneHotEncoder, VectorAssembler, LinearRegression 타입의 객체)가 있으며, 순차적으로 작동합니다. 파이프라인 객체의 stages 속성에서 이 단계를 확인할 수 있어요. 이는 리스트로 표현되며, 리스트에 나타난 순서대로 단계가 실행됩니다.

이제 파이프라인을 자세히 살펴보고, 각 단계를 분리해서 테스트 데이터에 대한 예측을 만들어 보겠습니다.

다음 객체는 이미 생성되어 있습니다.

  • cv — 학습된 CrossValidatorModel 객체
  • evaluatorRegressionEvaluator 객체

비행 데이터는 무작위로 flights_trainflights_test로 분할되어 있어요.

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

PySpark로 하는 Machine Learning

강의 보기

연습 안내

  • 최적 모델을 가져오세요.
  • 최적 모델의 단계를 확인하세요.
  • 선형 회귀 단계를 분리하여 그 파라미터를 추출하세요.
  • 최적 모델로 테스트 데이터에 대한 예측을 생성하고 RMSE를 계산하세요.

실습형 인터랙티브 연습

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

# Get the best model from cross validation
best_model = cv.____

# Look at the stages in the best model
print(best_model.____)

# Get the parameters for the LinearRegression object in the best model
best_model.____.extractParamMap()

# Generate predictions on testing data using the best model then calculate RMSE
predictions = ____.____(____)
print("RMSE =", ____.____(____))
코드 편집 및 실행