그리드 서치 (Grid Search)

컴퓨터과학·AI
한 줄 정의: 미리 정한 하이퍼파라미터 값들의 모든 조합을 하나씩 시도해 최적의 조합을 찾는 탐색 방법.

쉽게 풀면

모델을 학습시킬 때는 학습률, 트리 개수처럼 사람이 미리 정해야 하는 값들이 있는데 이를 하이퍼파라미터라고 해요. 그리드 서치는 각 하이퍼파라미터가 가질 수 있는 후보 값들을 격자(그리드) 형태로 나열하고, 가능한 모든 조합을 빠짐없이 시도해 성능을 비교합니다. 마치 요리 레시피의 소금, 설탕 비율을 정해진 값들로 하나씩 다 바꿔보며 가장 맛있는 조합을 찾는 것과 비슷해요. 조합 수가 많아지면 시도해야 할 경우의 수가 기하급수적으로 늘어난다는 단점이 있습니다.

왜 중요한가

그리드 서치는 모델 성능이 하이퍼파라미터 설정에 크게 좌우되는 머신러닝 연구에서 가장 기본적인 재현 가능한 튜닝 절차로 취급됩니다. 실험 결과를 비교하는 논문에서는 어떤 탐색 방법으로 하이퍼파라미터를 정했는지가 성능 비교의 공정성을 좌우하기 때문에, 단순하고 투명한 그리드 서치가 베이스라인 실험 설계로 자주 채택됩니다. 또한 딥러닝, 전통적 머신러닝, 신호처리 등 하이퍼파라미터를 다루는 거의 모든 응용 분야 논문에서 표준적인 최적화 절차로 언급됩니다.

논문에서는 이렇게 쓰입니다

"하이퍼파라미터 최적화를 위해 학습률과 배치 크기에 대해 그리드 서치를 적용하였다."

학습률과 배치 크기 후보값들의 모든 조합을 각각 학습·평가해 가장 좋은 조합을 골랐다는 뜻이다.

"서포트벡터머신의 커널 계수와 정규화 파라미터를 5겹 교차검증과 결합한 그리드 서치로 탐색하여 과적합을 최소화하였다."

전통적 머신러닝 모델에서 하이퍼파라미터 조합마다 교차검증 성능을 비교해, 특정 데이터에만 치우치지 않는 조합을 선택했다는 뜻이다.

"신호 필터의 차단 주파수와 필터 차수를 소규모 그리드 서치로 스캔하여 잡음 제거 성능이 가장 우수한 설정을 결정하였다."

신호처리 연구에서 필터 설계에 필요한 몇 가지 파라미터의 후보 값을 모두 시도해 최적의 필터 설정을 찾았다는 뜻이다.

조금 더 깊게 보면

그리드 서치는 흔히 교차검증과 함께 사용되어, 각 하이퍼파라미터 조합마다 여러 데이터 분할에 대한 평균 성능을 비교함으로써 특정 검증셋에 우연히 잘 맞는 조합을 고르는 위험을 줄입니다. 탐색 범위(그리드의 간격과 범위)를 어떻게 설정하느냐에 따라 결과가 크게 달라질 수 있어, 넓은 범위를 성긴 간격으로 먼저 탐색한 뒤 유망한 영역을 좁혀 다시 탐색하는 단계적 방식도 흔히 쓰입니다. 하이퍼파라미터 수가 많아지면 조합 수가 지수적으로 늘어나는 "차원의 저주" 문제가 있어, 이 한계를 보완하기 위해 랜덤 서치나 베이지안 최적화 같은 대안이 함께 비교 대상으로 다뤄지는 경우가 많습니다.

주의할 점

하이퍼파라미터 개수가 늘어날수록 계산 비용이 폭발적으로 커지므로, 이런 경우 랜덤 서치베이지안 최적화가 더 효율적일 수 있다.

관련 용어