시작하기무료로 시작하기

그리드 만들기

이제 최적의 하이퍼파라미터를 찾을 때 탐색할 값의 그리드를 만들어야 해요. 서브모듈 pyspark.ml.tuning에는 이를 위한 ParamGridBuilder 클래스가 포함되어 있습니다(눈치채셨겠지만, PySpark에는 거의 모든 작업을 위한 서브모듈이 있어요!).

교차 검증에 사용할 그리드를 만들려면 .addGrid().build() 메서드를 사용하면 됩니다. .addGrid() 메서드는 모델 파라미터(몇 개 연습 문제 전에 만든 Estimator인 모델 lr의 속성)와 시도해 볼 값들의 목록을 받습니다. .build() 메서드는 인수를 받지 않으며, 이후에 사용할 그리드를 반환합니다.

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

PySpark 기초

강의 보기

연습 안내

  • 서브모듈 pyspark.ml.tuning을 별칭 tune으로 임포트하세요.
  • 인수 없이 클래스 생성자 ParamGridBuilder()를 호출하고, 이를 grid로 저장하세요.
  • grid에서 .addGrid()를 호출하되 첫 번째 인수는 lr.regParam, 두 번째 인수는 np.arange(0, .1, .01)로 하세요. 두 번째 인수는 numpy 모듈(별칭 np)의 함수로, 0부터 .1 미만까지 .01 간격의 숫자 목록을 만듭니다. 반환값으로 grid를 덮어쓰세요.
  • .addGrid()를 한 번 더 호출해 lr.elasticNetParam에 대한 그리드를 만들고 값은 [0, 1]만 포함하도록 하여 grid를 다시 업데이트하세요.
  • grid에서 .build() 메서드를 호출하고, 결과로 grid를 덮어쓰세요.

실습형 인터랙티브 연습

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

# Import the tuning submodule
import ____ as ____

# Create the parameter grid
grid = tune.____

# Add the hyperparameter
grid = grid.addGrid(____, np.arange(0, .1, .01))
grid = grid.addGrid(____, ____)

# Build the grid
grid = grid.build()
코드 편집 및 실행