Python 튜토리얼

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

2021.10.20 09:22 6,993 Views

안녕하세요 ! 이번시간에는 하이퍼 파라미터를 튜닝하는 방법인 grid search에 대해 알아보도록 하겠습니다.


하이퍼 파라미터란 모델 정의시 사람이 직접 지정 해주는 값 이라고 이전 시간에 설명 드렸습니다. 👩‍🏫👩‍🏫


💥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'])

---------------------------------------------------------------------------------------------------------------------------------------------------------------


[Colab 실습 링크]


↩️ 오늘의 파이썬 리스트


#데이콘_101 #AI #머신러닝 #딥러닝 #파이썬 #파이선 #데이터분석 #데이터사이언티스트 #코랩 #Python #colab #kaggle #pandas #numpy #sckit-learn  # train_test_split()


로그인이 필요합니다
0 / 1000
왼쪽눈썹왁싱
2021.11.03 12:31

moran
2022.01.04 16:00

acebed
2022.03.11 14:52

done

비회원
2022.04.07 12:18

jaka
2022.06.12 02:50

DACON.NPC
2022.06.29 09:27


qprz
2022.07.12 20:14

컨텐츠는 좋은데 문제수정 안하나여?

코튼클린
2023.01.17 16:25

done

highllight
2023.02.12 21:47