6.4.1 그리드 서치를 사용한 하이퍼파라미터 튜닝

    그리드 서치를 사용하는 방법은 아주 간단합니다. 리스트로 지정된 여러 가지 하이퍼파라미터 값 전체를 모두 조사합니다. 이 리스트에 있는 값의 모든 조합에 대해 모델 성능을 평가하여 최적의 조합을 찾습니다.

    >>> from sklearn.model_selection import GridSearchCV
    >>> from sklearn.svm import SVC
    
    >>> pipe_svc = make_pipeline(StandardScaler(),
    ...                          SVC(random_state=1))
    >>> param_range = [0.0001, 0.001, 0.01, 0.1,
    ...                1.0, 10.0, 100.0, 1000.0]
    >>> param_grid = [{'svc___C': param_range,
    ...                'svc__kernel': ['linear']},
    ...               {'svc__C': param_range,
    ...                'svc__gamma': param_range,
    ...                'svc__kernel': ['rbf']}]
    
    >>> gs = GridSearchCV(estimator=pipe_svc,
    ...                   param_grid=param_grid,
    ...                   scoring='accuracy',
    ...                   cv=10,
    ...                   refit=True,
    ...                   n_jobs=-1)
    >>> gs = gs.fit(X_train, y_train)
    >>> print(gs.best_score_)
    0.9846859903381642
    >>> print(gs.best_params_)
    {'svc__C': 100.0, 'svc__gamma': 0.001, 'svc__kernel': 'rbf'}
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.