AI: 하이퍼파라미터 탐색 – Population Based Training (PBT)
ㅁ 하이퍼파라미터 탐색
ㅇ 정의:
모델 학습 과정에서 하이퍼파라미터를 고정하지 않고, 여러 개의 모델 집단(population)을 병렬로 학습시키면서 주기적으로 성능이 좋은 모델의 파라미터와 하이퍼파라미터를 다른 모델에 복제하고 변이(mutation)를 적용하여 점진적으로 최적값을 탐색하는 방법.
ㅇ 특징:
– 초기 하이퍼파라미터를 무작위로 설정한 여러 개의 모델을 동시에 학습.
– 일정 주기마다 성능을 평가해 상위 성능 모델의 파라미터와 하이퍼파라미터를 하위 성능 모델에 복제.
– 복제 후 일부 하이퍼파라미터를 무작위로 변이시켜 탐색 범위를 확장.
– 탐색과 학습을 동시에 진행하여 전체 학습 시간을 단축.
ㅇ 적합한 경우:
– 하이퍼파라미터가 학습 중간에도 최적값이 변할 수 있는 비정형 문제.
– 강화학습, 대규모 신경망 학습 등에서 효율적인 탐색이 필요한 경우.
ㅇ 시험 함정:
– PBT는 모든 경우에 Grid Search보다 빠르다고 단정할 수 없음(O/X 문제에서 ‘항상’이라는 표현 주의).
– 하이퍼파라미터를 학습 중 변경하지 않는다고 설명하면 오답.
– 유전 알고리즘과 혼동할 수 있으나, PBT는 학습과 탐색을 병행한다는 점이 차이.
ㅇ 시험 대비 “패턴 보기” 예시:
– O: “PBT는 학습 중 하이퍼파라미터를 동적으로 조정한다.”
– X: “PBT는 학습 시작 시 설정한 하이퍼파라미터를 끝까지 유지한다.”
– O: “PBT는 성능이 좋은 개체의 파라미터를 다른 개체에 전달하고 변이를 적용한다.”
– X: “PBT는 학습이 끝난 후에만 하이퍼파라미터를 변경한다.”
ㅁ 추가 학습 내용
PBT는 DeepMind에서 제안된 기법으로, 강화학습에서 정책 네트워크의 하이퍼파라미터를 동적으로 조정하는 데 효과적이다.
PBT는 탐색과 이용을 동시에 수행하는 구조를 가지고 있으며, 변이는 보통 일정 범위 내에서 무작위 샘플링을 통해 이루어진다. 이 변이는 학습률, 배치 크기, 감가율 등 다양한 파라미터에 적용될 수 있다.
병렬 자원 사용이 필수적이므로, 자원 제약 환경에서는 비효율적일 수 있다.
전통적인 Random Search, Grid Search, Bayesian Optimization과 달리, PBT는 학습 도중 파라미터를 조정하는 ‘online’ 탐색 방식에 속한다.
또한 PBT는 진화 알고리즘의 아이디어를 차용하였지만, 목적은 하이퍼파라미터 최적화라는 점을 구분해야 한다.