GPU 가속 비선형 분기한계 프레임워크 기반 희소 선형 회귀
초록
본 논문은 ℓ₀‑ℓ₂ 페널티를 갖는 정확한 희소 선형 회귀 문제를 해결하기 위해, GPU에 최적화된 비선형 분기‑한계(Branch‑and‑Bound, BnB) 알고리즘을 제안한다. 관점 재구성을 이용한 구간 완화와 ADMM 기반의 폐쇄형 업데이트를 배치 연산으로 변환하고, 후보 지원 집합에 대한 투사 경사법을 배치 방식으로 구현함으로써 노드 수준과 트리 수준 모두에서 대규모 병렬성을 확보한다. 실험 결과, 기존 CPU 기반 구현 및 상용 MIP 솔버에 비해 10배 이상 빠른 성능을 보였다.
상세 분석
이 논문은 고차원 데이터에서 ℓ₀‑ℓ₂ 정규화를 적용한 선형 회귀 모델을 정확히 풀기 위한 새로운 BnB 프레임워크를 설계한다. 핵심 아이디어는 두 단계로 나뉜다. 첫째, 문제 (1)의 관점(perspective) 재구성을 통해 이진 변수 z와 연속 보조 변수 s를 도입하고, 큰 상수 M을 이용해 β의 절대값을 제한한다. 이렇게 하면 원래의 비선형 정수 2차 원뿔 문제를 이진 변수에 대한 구간 완화 형태로 변환할 수 있다. 둘째, 각 BnB 노드에서 ADMM을 적용해 구간 완화 문제를 풀 때, 변수별 업데이트가 완전한 닫힌 형태를 갖도록 스플리팅을 설계하였다. 구체적으로, β‑업데이트는 XᵀX와 같은 공통 행렬을 이용한 행렬‑벡터 곱으로 표현되며, 이는 배치 연산으로 한 번에 수천 개의 노드에 대해 동시에 수행될 수 있다. 또한, z와 s에 대한 투사 연산도 좌표별로 독립적이어서 GPU의 SIMD 구조에 최적화된다.
노드 수준 병렬성 외에도, 저자들은 트리 수준에서 “배치 B” 전략을 도입한다. CPU는 현재 전역 상한·하한을 기준으로 가장 유망한 K개의 활성 노드를 선택하고, 이들을 GPU에 전달한다. GPU는 선택된 노드들의 ADMM 반복과 투사 경사법을 동시에 실행해 각각의 하한(LB)과 상한(UB), 그리고 실현 가능한 β를 반환한다. 이렇게 하면 전통적인 BnB에서 발생하는 순차적 노드 탐색 병목을 완화하면서도, 전역 바운드 업데이트는 여전히 CPU에서 수행해 알고리즘의 정확성을 유지한다.
메모리 레이아웃 측면에서는, 데이터 행렬 X를 열 우선 순서로 저장하고, 각 노드의 변수 벡터를 연속 메모리 블록에 배치함으로써 공동 메모리와 전역 메모리 접근을 최소화했다. 또한, 부하 균형을 위해 노드가 조기에 수렴하거나 정수 해를 얻은 경우 즉시 배치에서 제외하고, 남은 노드에 더 많은 연산 자원을 할당한다. 이러한 설계는 최신 NVIDIA GPU(예: A100)에서 코어 활용률을 80 % 이상 유지하게 만든다.
실험에서는 합성 데이터와 실제 고차원 데이터셋(예: n=10⁴, p=10⁵)을 사용해 비교하였다. CPU 기반 CPUBnB와 기존 특화 BnB(L0BnB) 대비, GPU 기반 GPUBnB는 노드당 평균 해결 시간에서 6~35배 가속을 보였으며, 메모리 제한에 걸리던 상용 MIP 솔버는 대규모 인스턴스에서 실행조차 불가능했다. 특히 노드 병렬화를 적용했을 때는 초당 처리 노드 수가 25배 이상 증가해 전체 최적화 시간은 수시간에서 수분 수준으로 단축되었다.
이 논문의 주요 공헌은 (1) ADMM 기반 구간 완화를 GPU 친화적인 배치 연산으로 변환한 점, (2) 상한 탐색을 위한 투사 경사법을 배치화하여 다중 지원 집합을 동시에 업데이트한 점, (3) 전통적인 BnB 트리 로직과 고성능 GPU 연산을 효과적으로 분리해 전체 파이프라인의 병목을 최소화한 점이다. 이러한 접근은 ℓ₀‑ℓ₂ 정규화 외에도 이진 변수와 연속 보조 변수를 포함하는 다양한 MIP·MINLP 문제에 확장 가능할 것으로 기대된다.
댓글 및 학술 토론
Loading comments...
의견 남기기