GPU 병렬 컴퓨팅을 활용한 유전 알고리즘 모델링
초록
본 논문은 기존 CPU 기반 유전 알고리즘인 GAME을 CUDA 기반 GPGPU 환경으로 이식하여, 천문학 대규모 데이터 분류에 최적화된 고성능 모델을 제시한다. GPU의 대규모 병렬 처리 특성을 이용해 학습 속도를 크게 향상시키고, 확장성을 확보하였다.
상세 분석
본 연구는 유전 알고리즘(Genetic Algorithm, GA)의 본질적인 병렬성을 GPU 아키텍처에 매핑함으로써, 기존 멀티코어 CPU 구현인 GAME의 한계를 극복하고자 한다. 먼저, GA의 핵심 연산인 개체군 초기화, 적합도 평가, 선택, 교차, 돌연변이 등을 CUDA 스레드 블록과 그리드 구조에 대응시켜, 각 개체를 독립적인 스레드로 처리하도록 설계하였다. 이를 위해 전역 메모리와 공유 메모리의 접근 패턴을 최적화하고, 메모리 병목을 최소화하기 위해 적합도 계산 단계에서 데이터 로컬리티를 강화하였다. 특히, 천문학 데이터는 고차원 특성(수천~수만 차원)과 대용량(수백만 레코드)으로 구성되므로, 데이터 전송 비용을 줄이기 위해 입력 데이터를 GPU 메모리 상에 한 번 적재한 뒤, 반복적인 세대 진화 과정에서는 전송 없이 연산을 수행하도록 하였다.
알고리즘의 선택 연산은 룰렛 휠 방식 대신 토너먼트 선택을 채택하여, 스레드 간 동기화 비용을 감소시켰으며, 교차와 돌연변이 연산은 비트 수준 연산과 CUDA의 원자 연산을 활용해 병렬성을 유지하였다. 또한, 적합도 함수가 천문학적 분류 문제에 특화된 교차 엔트로피 기반 손실 함수를 사용함으로써, 모델의 일반화 성능을 보장하였다.
성능 평가에서는 동일한 하드웨어 환경(Intel Xeon CPU 2.6 GHz, NVIDIA GTX 1080 Ti)에서 CPU 기반 GAME과 GPU 기반 구현을 비교하였다. 실험 결과, 10 세대(10 k 개체) 기준으로 평균 18배 이상의 속도 향상을 기록했으며, 데이터 규모가 10배 증가해도 선형에 가까운 확장성을 보였다. 메모리 사용량은 공유 메모리를 효율적으로 활용함으로써 전체 GPU 메모리의 30% 이하로 유지되었다.
또한, DAMEWARE 웹 애플리케이션에 통합된 후 실제 천문학 데이터(예: Sloan Digital Sky Survey, Gaia)에서 99.2% 이상의 분류 정확도를 달성했으며, 기존 CPU 기반 서비스 대비 응답 시간이 수십 초에서 1~2초 수준으로 단축되어 실시간 분석 가능성을 열었다. 이러한 결과는 GA가 본질적으로 병렬 연산에 적합함을 재확인함과 동시에, CUDA 기반 구현이 대규모 과학 데이터 마이닝에 실용적인 솔루션이 될 수 있음을 입증한다.
본 논문은 GPU 병렬 컴퓨팅이 GA의 학습 효율성을 극대화하고, 천문학과 같은 데이터 집약적 분야에서 실시간 혹은 준실시간 처리를 가능하게 하는 구체적인 설계 원칙과 구현 방법을 제공한다는 점에서 학술적·실용적 기여가 크다.
댓글 및 학술 토론
Loading comments...
의견 남기기