먼저 닿고 나서 넓히기: 수렴과 다양성을 떼어놓은 다목적 베이지안 최적화

수렴과 다양성을 동시에 노리던 다목적 베이지안 최적화를 두 단계로 나눈 Converge Then Diversify 접근법을 해설합니다. 빠듯한 예산에서 먼저 한 점에 닿고 옆으로 퍼지는 순서가 왜 유리한지 짚어봅니다.

원문 논문 보기
'먼저 닿고 나서 넓히기: 수렴과 다양성을 떼어놓은 다목적 베이지안 최적화' 기사 커버 이미지

Converge Then Diversify: Decoupling Convergence and Diversity in Multi-Objective Bayesian Optimisation이라는 제목의 논문이 arXiv에 공개됐습니다 (arXiv 번호 2609.13396). 이 논문은 다목적 베이지안 최적화에서 수렴과 다양성을 따로 떼어 먼저 수렴한 뒤에 다양성을 확보하자고 제안합니다. 원문 논문 링크는 제목 아래에 걸려 있으니, 자세한 수식과 실험 설정은 그곳에서 확인하시면 됩니다.

왜 이 논문이 눈에 들어왔을까

안녕하세요, 패트릭입니다.

저는 평소에 최적화 논문을 볼 때 숫자보다 먼저 순서를 봅니다. 무엇을 먼저 하고 무엇을 나중에 하는지, 그 순서가 바뀌면 결과가 어떻게 달라지는지가 궁금하기 때문입니다. 그런데 이번 논문은 제목부터 순서에 대한 이야기라서 자꾸 눈이 갔습니다. 먼저 수렴하고, 그다음에 다양화하라는 말은 얼핏 들으면 너무 당연해 보이는데, 막상 기존 방법들은 그렇게 하지 않았다고 하니까요.

제가 이 논문에서 가장 흥미롭게 본 부분은 문제를 푸는 기술보다 문제를 나누는 방식이었습니다. 다목적 베이지안 최적화, 줄여서 MOBO는 평가 한 번이 비싼 블랙박스 함수를 적은 횟수로 최적화하면서 여러 목적을 함께 만족하는 해를 찾는 분야입니다. 여기서 목표는 파레토 프론트를 잘 근사하는 것인데, 이 말은 이상적인 절충안들의 집합에 가깝게 다가가면서도 그 집합을 골고루 덮는 것을 뜻합니다. 가깝게 다가가는 쪽이 수렴이고, 골고루 덮는 쪽이 다양성입니다. 그렇다면 이 두 가지를 왜 굳이 동시에 해야 할까요. 논문은 바로 그 질문에서 출발합니다.

비슷한 고민은 일상에서도 자주 만납니다. 이사를 갈 때를 떠올려 보면, 동네를 정하기도 전에 모든 동네의 모든 매물을 조금씩 보는 사람은 결정을 오래 못 내립니다. 반대로 먼저 출퇴근이 가능한 동네 하나를 정해 놓고, 그 안에서 조건을 넓혀가는 사람은 같은 발품으로도 더 빨리 감을 잡죠. 물론 이사는 최적화가 아니고, 동네 하나에 너무 일찍 갇히면 더 좋은 동네를 놓칠 수도 있습니다. 그래서 저는 여기서 멈칫했습니다. 순서를 나눈다는 발상은 직관적으로는 맞는데, 처음에 닿은 그 한 점이 잘못된 곳이면 어떻게 되는 걸까요. 그 답을 찾기 위해 논문을 조금 더 들여다봤습니다.

두 마리 토끼를 한 번에 잡으려다 놓치는 일

기존 MOBO 방법들은 대체로 수렴과 다양성을 동시에 추구하면서 프론트 전체에 조금씩 다가가는 전략을 써왔습니다. 매번 새로운 점을 고를 때마다, 앞에 나가 있는지도 보고 옆으로 퍼져 있는지도 함께 따지는 방식이죠. 이 접근은 예산이 넉넉할 때는 꽤 자연스럽습니다. 여러 번 평가할 수 있으니 탐색점이 서서히 프론트 전체 모양을 따라가면서 자리를 잡을 수 있기 때문입니다.

문제는 예산이 아주 빠듯할 때 생깁니다. 평가 횟수가 몇 번 없다면, 처음부터 전체를 덮으려던 시도는 어디에도 닿지 못한 채로 끝날 수 있습니다. 제가 보기에는 이 지점이 논문이 파고든 틈새입니다. 논문은 동시 추구가 정교한 설계를 요구하고, 해가 프론트 전체를 덮기에 턱없이 부족한 조건에서는 실패할 수 있다고 지적합니다. 표현을 바꿔 보면, 한 번에 두 가지를 잘하려다 두 가지 모두를 반만 하게 되는 상태랄까요.

생각해보면 사람도 비슷하게 배웁니다. 시험 범위가 넓을 때 처음부터 모든 단원을 조금씩 훑는 학생보다, 한 단원을 먼저 끝까지 이해한 뒤에 옆 단원으로 확장하는 학생이 단기간에는 더 안정적인 점수를 받습니다. 물론 장기적으로는 전체를 봐야 하지만, 시간이 없을수록 순서는 성적을 가릅니다. 그렇다면 최적화에서도 수렴을 먼저 고정하고 다양성을 나중에 붙이는 순서가 통할까요. 논문의 답은 그렇다는 쪽이고, 그 순서를 이름 그대로 converge-then-diversify, 줄여서 CTD라고 부릅니다.

동시 접근과 순차 접근의 대비 개념도
동시 접근과 순차 접근의 대비 개념도

파레토 프론트라는 말, 이렇게 이해하면 됩니다

여기서 잠깐, 파레토 프론트라는 말이 낯선 분들을 위해 그림을 그려보겠습니다. 두 가지 목표가 서로 충돌한다고 해보죠. 예를 들어 자동차를 설계할 때 연비는 높이고 싶은데 출력도 높이고 싶다면, 한쪽을 올리면 다른 쪽이 내려가는 구간이 생깁니다. 그럴 때 어느 쪽도 상대보다 모든 면에서 뒤지지 않는 해들만 모아 놓은 경계가 바로 프론트입니다. 이 경계에 가까워지는 것이 수렴이고, 경계 위의 여러 지점을 고르게 갖는 것이 다양성입니다.

그런데 이 두 가지는 성격이 꽤 다릅니다. 수렴은 깊이의 문제이고, 다양성은 너비의 문제입니다. 깊이는 한 점을 파고들면 되고, 너비는 여러 점을 벌려 놓아야 합니다. 하나의 선택 기준으로 깊이와 너비를 동시에 재려니 기준 자체가 복잡해질 수밖에 없는데, 기존 방법들이 정교한 설계를 필요로 했던 이유도 여기에 있다고 저는 봅니다. 매번 깊이와 너비를 저울질하다 보면, 정작 깊이도 얕고 너비도 좁은 어중간한 점들만 모일 수 있기 때문입니다.

저는 이 숫자보다 그 뒤의 구조가 더 중요하다고 봅니다. 논문이 말하는 MOBO의 목표는 결국 프론트를 제대로 근사하는 것인데, 제대로라는 말 안에는 가깝다는 뜻과 고르다는 뜻이 함께 들어 있습니다. 두 뜻을 한 문장으로 묶어두면 편해 보이지만, 알고리즘 입장에서는 한 번의 선택으로 두 가지 일을 해야 한다는 뜻이라서 부담이 커집니다. 그렇다면 일을 나누면 어떨까. 이 질문이 CTD의 출발점이고, 다음 절에서 그 나누는 방식을 구체적으로 보겠습니다.

먼저 한 점에 닿고 나서 넓히는 순서

CTD의 제안은 말 그대로 단순합니다. 1단계에서는 수렴에만 집중해서 탐색을 파레토 프론트 위의 한 점으로 빠르게 몰아갑니다. 2단계에서는 그 수렴된 영역에서 출발해 해들을 프론트를 따라 옆으로 퍼뜨리면서 다양성을 확보합니다. 동시에 두 가지를 보던 눈을, 앞에서는 깊이만 보고 뒤에서는 너비만 보는 순서로 바꾼 것이죠.

이 순서를 처음 들으면 이런 의문이 생깁니다. 처음에 닿은 한 점이 잘못된 위치면, 그 뒤의 다양화도 전부 어긋나는 것 아닐까요. 저도 같은 걱정을 했는데요. 논문의 관점에서 보면 1단계의 목표는 가장 좋은 점을 찾는 것이 아니라 프론트 위의 어느 한 점에라도 빨리 닿는 것입니다. 프론트라는 경계에 발을 올리는 것 자체가 성과라는 이야기죠. 발을 올린 뒤에는 그 발을 기준으로 옆으로 이동하면서 경계 전체를 그려나가면 되니까요.

등산에 비유하면 이해가 쉽습니다. 능선이 길게 이어져 있을 때, 처음부터 능선 전체를 조망하려다 보면 산 입구에서 시간만 보냅니다. 대신 일단 가장 가까운 지점으로 능선에 올라선 뒤에 좌우로 이동하면, 같은 체력으로도 능선의 모양을 훨씬 빨리 파악할 수 있습니다. 물론 처음 오른 지점이 능선의 끝자락일 수도 있습니다. 하지만 능선에 올라선 상태에서의 이동은, 아래에서 올려다보며 짐작하는 것과는 효율이 다르죠. 저는 그래서 이 순서 나누기가 단순한 요령이 아니라 탐색의 물리학을 바꾼 셈이라고 느꼈습니다.

1단계 수렴 과정을 보여주는 순차적 탐색 다이어그램
1단계 수렴 과정을 보여주는 순차적 탐색 다이어그램

이 방법은 단순한 요령이 아닙니다

여기서 오해를 하나 바로잡고 싶습니다. CTD를 들으면 그냥 탐욕적으로 한 점만 파고드는 방법으로 오해할 수 있는데, 실제로는 정반대에 가깝습니다. 탐욕적인 방법은 끝까지 한 점만 파는 반면, CTD는 한 점에 닿는 것을 다양화를 위한 발판으로 삼기 때문입니다. 순서가 전부라는 점에서, 두 단계 중 하나만 떼어놓고 보면 논문이 하려는 말을 놓치게 됩니다.

또 하나 짚을 점은, CTD가 새로운 acquisition function을 발명했다는 이야기가 아니라는 것입니다. 논문은 널리 쓰이던 acquisition function들을 이용해 CTD를 두 가지 단순한 형태로 구현했다고 밝히고 있습니다. 저는 이 대목이 오히려 마음에 들었습니다. 새로운 부품을 만들었다는 주장보다, 기존 부품을 다른 순서로 조립했더니 더 잘 돌아갔다는 주장이 실무적으로는 더 묵직하기 때문입니다. 부품이 낯설면 도입 비용을 따져야 하지만, 순서가 바뀌는 것은 기존 파이프라인에 얹기 쉽거든요.

그렇다면 왜 이런 단순한 순서가 지금까지 표준이 아니었을까요. 제 생각에는 동시 추구가 이론적으로는 더 우아해 보이기 때문입니다. 한 번의 선택으로 두 마리 토끼를 잡는 그림은 논문으로도 쓰기 좋고, 직관적으로도 낭비가 없어 보입니다. 하지만 예산이 빠듯해지면 우아함과 효율은 갈라집니다. 우아한 기준은 여러 번 평가해야 빛이 나는데, 그 여러 번이 없을 때는 오히려 독이 되죠. 논문이 두 단계 분리를 내세운 배경에는 이런 현실적인 계산이 깔려 있다고 봅니다.

1단계에서는 어떻게 한 점으로 모일까

이제 1단계를 조금 더 들여다보겠습니다. 1단계의 임무는 프론트 위의 한 점으로 빨리 다가가는 것이고, 이때 다양성에 대한 걱정은 잠시 내려놓습니다. 매번 다음 평가점을 고를 때 옆으로 얼마나 퍼졌는지를 따지지 않으니, 선택 기준이 단순해지고 탐색은 깊이 방향으로 힘을 모읍니다. 제한된 평가 횟수를 여러 방향으로 쪼개 쓰지 않고 한 방향으로 몰아주는 셈이죠.

이 방식이 예산이 적을 때 유리한 이유는 계산해보면 분명해집니다. 다섯 번만 평가할 수 있는데 그 다섯 번으로 열 군데의 프론트를 동시에 노리면, 각 방향에는 1번도 채 못 쓰는 셈이 됩니다. 반면 다섯 번을 한 방향으로 쓰면 적어도 한 곳에서는 프론트에 닿을 가능성이 생깁니다. 0개의 희미한 후보보다 1개의 확실한 발판이 낫다는 것이 1단계의 철학인데, 저는 이 판단이 꽤 실무적이라고 느꼈습니다. 실제 시스템 관점에서 보면 다음 질문이 바로 생깁니다. 발판 하나를 만드는 데 몇 번의 평가가 필요하고, 그 뒤에 남은 예산으로 얼마나 넓힐 수 있을까. 논문은 이 물음을 2단계 설계로 이어갑니다.

(참고로 논문은 1단계를 위해 새로운 수식을 들고오지 않고, 현장에서 이미 쓰이던 acquisition function을 수렴용으로 배치합니다. 익숙한 도구를 낯선 순서에 놓는 선택이죠.) 그 선택 덕분에 1단계는 이해하기도, 구현하기도 어렵지 않습니다. 어렵지 않다는 말은 얕다는 말이 아니라, 검증된 부품을 그대로 쓴다는 뜻입니다. 저는 연구의 기여를 이런 식으로 나누는 태도가 좋습니다. 새로움은 순서에서 나오고, 신뢰성은 기존 도구에서 가져오는 것이죠.

수렴된 점 주변에서 2단계 다양성 확보가 옆으로 퍼지는 다이어그램
수렴된 점 주변에서 2단계 다양성 확보가 옆으로 퍼지는 다이어그램

2단계에서는 어떻게 옆으로 퍼질까

1단계가 끝난 뒤에는 상황이 달라집니다. 이미 프론트 위에 발을 올린 상태라서, 이제는 그 발을 기준으로 옆으로 이동하면서 경계 전체를 그려나갈 수 있습니다. 2단계의 임무는 바로 이 다양성 확보이고, 이때는 반대로 수렴에 대한 부담을 덜어냅니다. 이미 닿아 있으니, 닿았는지보다 얼마나 고르게 퍼졌는지를 보면 되기 때문입니다.

여기서 재미있는 질문이 생깁니다. 옆으로 퍼지는 탐색은 아래에서 위로 올라가는 탐색보다 왜 쉬울까요. 이유는 프론트 근처에서는 평가 한 번의 정보 가치가 크기 때문입니다. 프론트에서 멀리 떨어진 상태에서는 어디가 위쪽인지조차 불확실하지만, 일단 경계에 붙은 뒤에는 옆 점들의 상대적인 위치를 비교하면서 경계를 따라가기가 수월해집니다. 등산 비유로 돌아가면, 능선에 올라선 뒤의 좌우 이동은 입구에서 능선을 짐작하며 오르는 것과는 운동량이 다르다는 이야기와 같습니다.

문제는 그다음입니다. 1단계에서 너무 오래 머물면 2단계에 쓸 예산이 남지 않고, 너무 빨리 넘어가면 발판이 흔들립니다. 언제 수렴을 멈추고 다양화로 넘어갈지가 실제 성능을 가르는 손잡이가 되는데, 논문은 이 전환을 포함한 전체 절차를 단순한 구현으로 정리합니다. 저는 이 단순함이 장점이자 한계라고 봅니다. 단순해서 도입하기는 쉽지만, 문제의 모양에 따라 전환 시점을 어떻게 잡아야 하는지는 여전히 현장의 몫으로 남기 때문입니다. 그럼에도 방향 자체는 분명합니다. 닿지도 않은 상태에서 넓히느라 힘을 빼지 말라는 것이죠.

숫자가 말하는 것과 말하지 않는 것

이제 실험 결과를 보겠습니다. 논문은 총 446번의 pairwise 비교에서 CTD가 최신 방법들을 통계적으로 앞선 경우가 72.9%, 동률이 21.1%, 뒤진 경우가 6.1%였다고 보고합니다. 일반 파일에만 남겼을 때와 달리 조건을 바꿔가며 여러 번 겨룬 셈인데, 같은 조건에서 맞붙였을 때 10번 중 7번 이상은 이겼다는 이야기가 됩니다. 저는 이 숫자보다 그 뒤의 구조가 더 중요하다고 봅니다만, 그래도 6.1%라는 패배율은 눈에 들어옵니다. 완승은 아니지만, 한쪽으로 크게 기운 결과라는 점은 분명하니까요.

이 숫자는 그대로 믿기 전에 조건을 봐야 합니다. 논문이 강점을 특히 budge가 아주 빠듯한 경우와 고차원 문제에서 두드러진다고 밝히고 있기 때문입니다. 다시 말해 평균적인 조건에서의 승리라기보다, 어려운 조건에서 더 벌어지는 승리라는 뜻입니다. 이는 CTD의 설계와도 잘 맞아떨어집니다. 예산이 적을수록 한 방향으로 모으는 1단계의 이득이 커지고, 차원이 높을수록 처음부터 전체를 덮으려는 시도의 부담이 커지기 때문입니다.

여기서는 조금 조심해서 읽을 필요가 있습니다. 446번이라는 비교 횟수는 인상적이지만, 그 안에는 어떤 문제 분포가 들어 있는지, 최신 방법이라는 말 안에 정확히 무엇이 포함됐는지가 결과의 해석을 좌우합니다. 논문은 두 가지 단순한 구현으로 결과를 냈다고 말하는데, 이는 재현과 도입에는 좋은 소식이지만 뒤집어 보면 비교 대상의 설정에 따라 숫자가 움직일 여지도 있다는 뜻입니다. 그럼에도 72.9% 대 6.1%라는 비대칭은 우연으로 치우기에는 기울기가 큽니다. 저는 그래서 이 결과를 설계의 방향이 맞았다는 신호로 읽되, 모든 조건에서의 보편적 승리 선언으로까지는 읽지 않았습니다.

승률과 무승부 및 패배 비중과 빠듯한 예산에서의 강점을 담은 개념도
승률과 무승부 및 패배 비중과 빠듯한 예산에서의 강점을 담은 개념도

예산이 빠듯할수록 순서가 중요한 이유

실무자 입장에서 이 논문을 다시 읽으면, 예산 이야기가 가장 크게 남습니다. 블랙박스 최적화가 비싼 이유는 평가 한 번에 시간과 돈이 들기 때문인데, 현장에서는 평가를 몇 번 못 하는 경우가 오히려 흔합니다. 시뮬레이션 한 번에 몇 시간이 걸리거나, 실제 장비를 써야 하거나, 사람의 검토가 들어가면 예산은 금방 바닥나죠. 이런 조건에서 처음부터 전체 프론트를 노리는 것은, 지도도 없이 여러 길을 동시에 파는 것과 비슷합니다.

CTD가 이런 조건에서 유리한 이유는 일을 나누면서 각 단계의 선택을 단순하게 만들기 때문입니다. 1단계에서는 다양성을 따지지 않으니 깊이 있는 점을 빨리 고르고, 2단계에서는 수렴을 따지지 않으니 옆으로 벌리는 점을 고르면 됩니다. 각 단계의 acquisition function이 한 가지 일만 하니 판단이 빠르고, 판단이 빠르니 적은 평가로도 앞으로 나아갑니다. 운영 측면에서 보면 이 차이는 상당히 큽니다. 밤사이 돌릴 수 있는 시뮬레이션이 세 번뿐이라면, 세 번을 어디에 쓸지가 다음 날의 실험 계획을 통째로 바꾸기 때문입니다.

저희가 새로운 최적화 기법을 볼 때도 숫자만 보지는 않습니다. 실제로 무엇이 바뀌었고, 그 변화가 시스템에서 어떤 비용 구조를 만드는지를 함께 봅니다. 그런 눈으로 보면 CTD의 변화는 비용 구조의 변화입니다. 평가 횟수라는 가장 비싼 자원을, 처음에는 깊이에 쓰고 나중에는 너비에 쓰는 순서로 재배치한 것이죠. 좋은 건 알겠는데, 이걸 실제로 어떻게 서빙할까요라는 질문이 나온다면, 답은 의외로 가볍습니다. 기존 acquisition function을 그대로 쓰면서 단계만 나누면 되니, 파이프라인을 갈아엎을 필요가 적기 때문입니다. 물론 전환 시점 같은 세부 조정은 남지만, 도입의 문턱 자체는 낮다고 봅니다.

제한된 평가 예산을 먼저 집중한 뒤 분산하는 실무 개념도
제한된 평가 예산을 먼저 집중한 뒤 분산하는 실무 개념도

제가 다음에 보고 싶은 장면

그렇다면 이 흐름은 어디까지 이어질 수 있을까요. 논문이 두 단계 분리의 효과를 보여준 뒤에도, 현장에서 바로 써먹으려면 몇 가지 질문이 남습니다. 언제 1단계에서 2단계로 넘어갈지, 1단계가 닿은 점이 프론트의 어느 위치인지에 따라 2단계의 효율이 얼마나 달라지는지, 그리고 문제의 차원이나 목적의 개수가 바뀌면 전환 시점도 함께 바꿔야 하는지가 그것입니다. 논문이 단순한 구현으로 길을 열었다면, 다음 연구는 그 길 위의 표지판을 세우는 일이 될 것 같습니다.

제가 앞으로 보고 싶은 것은 실패 사례의 지도입니다. CTD가 뒤진 6.1%의 조건은 어떤 모양이었는지, 1단계의 발판이 잘못 놓였을 때 2단계가 이를 얼마나 만회하는지, 그리고 예산이 넉넉해지면 동시 추구와의 격차가 줄어드는지가 궁금합니다. 이 질문들에 답이 쌓이면, 현장에서는 예산과 차원을 보고 순서를 고르는 기준이 생깁니다. 예산이 빠듯하면 먼저 닿고 나서 넓히고, 예산이 넉넉하면 처음부터 넓게 보는 식의 선택지가 말이죠.

이 논문이 남긴 더 큰 의미는 방법 하나를 넘어섭니다. 최적화에서 수렴과 다양성을 한 덩어리로 보던 습관을, 순서의 문제로 다시 묻게 만들었기 때문입니다. 질문도 바뀌었습니다. 어떻게 하면 한 번의 선택으로 두 가지를 다 잡을 수 있는가에서, 어떤 순서로 나누면 적은 평가로 더 멀리 가는가로 말이죠. 저는 그래서 이 논문을 점수표보다 설계도로 읽었습니다. 당장 도입할 수 있는 절차이자, 다음 설계를 위한 질문 묶음이기 때문입니다. 예산이 빠듯한 현장에서 일하는 분이라면, 다음 최적화를 돌리기 전에 한 번 떠올려 보시면 어떨까요. 지금 내 탐색은 닿지도 않은 상태에서 넓히느라 힘을 빼고 있지는 않은지 말입니다.

참고 자료

  1. Converge Then Diversify: Decoupling Convergence and Diversity in Multi-Objective Bayesian Optimisation · arxiv.org

    리뷰 원문