1. 학습
  2. /
  3. 강의
  4. /
  5. Python에서의 하이퍼파라미터 튜닝

Connected

연습 문제

Scikit Learn에서의 RandomizedSearchCV

Scikit Learn을 사용해 RandomizedSearchCV 객체를 만들어 보세요.

하이퍼파라미터 그리드는 max_depth(5부터 25까지, 양 끝 포함)와 max_features('auto'와 'sqrt')에 대해 설정하세요.

RandomizedSearchCV 객체에 설정할 옵션은 다음과 같아요.

  • n_estimators가 80인 RandomForestClassifier 추정기
  • 3-겹 교차 검증(cv)
  • 모델 점수는 roc_auc 사용
  • 병렬 처리를 위해 코어 4개 사용(n_jobs)
  • 최적 모델을 다시 학습(refit)하고 훈련 점수를 반환하도록 설정
  • 효율성을 위해 모델 5개만 샘플링(n_iter)

X_train과 y_train 데이터셋은 이미 로드되어 있어요.

선택된 하이퍼파라미터를 추출하려면 cv_results_에서 하이퍼파라미터별로 한 컬럼씩 제공돼요. 예를 들어, 하이퍼파라미터 criterion의 컬럼은 param_criterion입니다.

지침

100 XP
  • 위 컨텍스트에 맞춰 하이퍼파라미터 그리드를 만드세요.
  • 위 컨텍스트에 따라 RandomizedSearchCV 객체를 생성하세요.
  • 학습 데이터에 RandomizedSearchCV 객체를 학습(fit)하세요.
  • cv_results_에 인덱싱하여 두 하이퍼파라미터(max_depth, max_features)에 대해 모델링 과정에서 선택된 값을 출력하세요.