[Machine Learning] 그리드 서치

하이퍼 파라미터

하이퍼 파라미터는 학습 전에 미리 정해줘야하는 변수 떠는 파라미터를 뜻합니다.

Lasso 모델을 만들 때를 생각해보세요.
alpha나 max_iter를 전달해줬었죠.
이 두 값은 모델이 학습해서 정하는 게 아니라 사람이 미리 정해줘야 했었죠.
이런 것들을 하이퍼 파라미터라고 합니다.

하이퍼 파라미터로 어떤 값을 사용하냐에 따라 모델의 성능이 크게 달라질 수 있습니다.
따라서, 모델의 성능을 최대한 높여주는 좋은 하이퍼 파라미터를 고르는 것이 굉장히 중요한데,
좋은 하이퍼 파라미터를 고르는 방법 중 하나인 그리드 서치를 알아보겠습니다.

그리드 서치는 꽤나 직관적인데,
우선 정해줘야 하는 각 하이퍼 파라미터에 넣어 볼 후보 값을 몇 개씩 정하고,
각 후보 값으로 모델을 학습시켰을 때 가장 성능이 좋았던 하이퍼 파라미터 조합을 선택합니다.

후보 값은 어떻게 정하는 걸까요?

하나의 팁이 있다면
sklearn에서 사용되는 디폴트 값과 비슷한 값들을 후보 값으로 설정하는 것입니다.

예를 들어 디폴트로 설정되어 있는 max_iter이 1000이라면 1000, 2000, 3000 이런식으로 후보값들을 정해보는 거죠.

scikit-learn으로 그리드 서치 해보기

Updated:

Leave a comment