get_params 메서드에서 반환되는 값을 살펴보면 개별 분류기의 속성에 접근하는 방법을 알 수 있습니다. 예시를 보이기 위해 그리드 서치로 로지스틱 회귀 분류기의 규제 매개변수 C와 결정 트리의 깊이를 튜닝해 보죠.

    >>> from sklearn.model_selection import GridSearchCV
    >>> params = {'decisiontreeclassifier__max_depth': [1, 2],
    ...           'pipeline-1__clf__C': [0.001, 0.1, 100.0]}
    >>> grid = GridSearchCV(estimator=mv_clf,
    ...                     param_grid=params,
    ...                     cv=10,
    ...                     scoring='roc_auc')
    >>> grid.fit(X_train, y_train)

    그리드 서치 실행이 완료되면 각각의 하이퍼파라미터 조합과 10-겹 교차 검증으로 계산한 평균 ROC AUC 점수를 다음과 같이 출력할 수 있습니다.

    >>> for params, mean_score, scores in grid.grid_scores_:
    ...     print("%0.3f+/-%0.2f %r"
    ...         % (mean_score, scores.std() / 2, params))
    0.983 +/- 0.02 {'decisiontreeclassifier__max_depth': 1, 'pipeline-1__clf__C': 0.001}
    0.983 +/- 0.02 {'decisiontreeclassifier__max_depth': 1, 'pipeline-1__clf__C': 0.1}
    0.967 +/- 0.05 {'decisiontreeclassifier__max_depth': 1, 'pipeline-1__clf__C': 100.0}
    0.983 +/- 0.02 {'decisiontreeclassifier__max_depth': 2, 'pipeline-1__clf__C': 0.001}
    0.983 +/- 0.02 {'decisiontreeclassifier__max_depth': 2, 'pipeline-1__clf__C': 0.1}
    0.967 +/- 0.05 {'decisiontreeclassifier__max_depth': 2, 'pipeline-1__clf__C': 100.0}
    
    >>> print('최적의 매개변수: %s' % grid.best_params_)
    최적의 매개변수: {'decisiontreeclassifier__max_depth': 1, 'pipeline-1__clf__C': 0.001}
    
    >>> print(' 정확도 : %.2f' % grid.best_score_)
    정확도: 0.98
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.