하이퍼파라미터 튜닝 / grid search
Data Analyst

빅데이터 관련 자료/Dacon

하이퍼파라미터 튜닝 / grid search

carpe08 2021. 12. 13. 00:34
320x100
320x100

하이퍼 파라미터란 모델 정의시 사람이 직접 지정 해주는 값

 

Grid Search

Grid Search란 하이퍼 파라미터로 지정할 수 있는 값들을 순차적으로 입력한뒤 가장 높은 성능을 보이는 하이퍼 파라미터를 찾는 탐색 방법입니다.

 

예를 들어 Grid Search 를 통해 모델 깊이와 모델 넓이 라는 두개의 하이퍼 파라미터를 튜닝 한다고 가정해봅시다.

우선, 하이퍼 파라미터로 지정할 값들을 다음과 같이 설정해 줍니다. 모델 깊이 = [1, 2, 3] , 모델 넓이 = [a, b]

모델 깊이는 1 ,2, 3 중 하나의 값이고, 모델 넓이는 a, b 중 하나의 값으로 지정 하고자 합니다.

 

grid search를 이용한다면 다음 순서대로 하이퍼 파라미터를 지정해 학습과 검증을 거치며, 그중 성능이 가장 높은 하이퍼 파라미터를 선택하게 됩니다.

이제 grid search 사용법에 대해 알아보겠습니다.

  1. 튜닝할 파라미터의 후보 값들을 dictionary 형태로 지정합니다.
  2. GridSearchCV("모델", param_grid = "dictionary형태의 파라미터", CV = "교차검증 수")
    from sklearn.model_selection import GridSearchCV
    
    
    
    # parameter 들을 dictionary 형태로 설정
    
    # max_depth 와 min_samples_split 를 튜닝
    
    parameters = {'max_depth':[1,2,3], 'min_samples_split':[2,3]}
    
    
    
    
    
    # GridSearchCV 를 이용해 하이퍼 파리미터 튜닝(cv = 5 로 지정)
    
    Grid = GridSearchCV(model, param_grid=parameters, cv=5)
    
    
    
    # fit() 메소드를 이용해 학습
    
    Grid.fit(train_x,train['category'])​
320x100
320x100

'빅데이터 관련 자료 > Dacon' 카테고리의 다른 글

파라미터/하이퍼파라미터  (0) 2021.12.10
train_test_split / LGBM (2)  (0) 2021.12.09
train_test_split / LGBM (1)  (0) 2021.12.08
train_test_split() - (4)  (0) 2021.12.07
train_test_split() - (3)  (0) 2021.12.06