작은 모델에게 생각할 시간을 더 주면 큰 모델을 능가하는 성과를 낼 수 있습니다.
최근 업계에서는 소형 모델이 성능 면에서 대형 모델을 능가할 수 있는 몇 가지 '실용적인 트릭'을 통해 소형 모델에 대한 열기가 전례 없이 뜨거워지고 있습니다.
소규모 모델의 성능을 개선하는 데 집중하는 데는 당연한 귀결이 있다고 주장할 수 있습니다. 대규모 언어 모델의 경우, 훈련 시간 컴퓨팅의 확장이 모델 개발을 지배해 왔습니다. 이 패러다임은 매우 효과적인 것으로 입증되었지만, 점점 더 큰 규모의 모델을 사전 학습하는 데 필요한 리소스가 엄청나게 비싸지면서 수십억 달러 규모의 클러스터가 등장했습니다.
그 결과, 이러한 추세는 테스트 시간 컴퓨팅 스케일링이라는 또 다른 보완적 접근 방식에 대한 많은 관심을 불러일으켰습니다. 테스트 시간 방식은 점점 더 많은 사전 학습 예산에 의존하는 대신 동적 추론 전략을 사용하여 모델이 더 어려운 문제에 대해 '더 오래 생각할 수 있도록' 합니다. 대표적인 예로 테스트 시간 계산량이 증가함에 따라 어려운 수학 문제에서 일관된 진전을 보인 OpenAI의 o1 모델을 들 수 있습니다.

o1이 어떻게 훈련되는지는 정확히 알 수 없지만, 딥마인드의 최근 연구에 따르면 반복적인 자기 개선이나 보상 모델을 사용한 솔루션 공간 탐색과 같은 전략을 통해 테스트 시간 계산을 최적으로 확장할 수 있다고 합니다. 프롬프트별로 테스트 시간 계산을 적응적으로 할당함으로써 소규모 모델은 리소스 집약적인 대규모 모델과 비교할 수 있으며 때로는 이를 능가할 수도 있습니다. 계산 시간 확장은 메모리가 제한되어 있고 사용 가능한 하드웨어가 더 큰 모델을 실행하기에 충분하지 않은 경우에 특히 유용합니다. 그러나 이 유망한 접근 방식은 비공개 소스 모델을 사용하여 시연되었으며 구현 세부 사항이나 코드는 공개되지 않았습니다.
딥마인드 논문: https://arxiv.org/pdf/2408.03314
지난 몇 달 동안 HuggingFace는 이러한 결과를 리버스 엔지니어링하고 재현하기 위해 노력해왔습니다. 이 블로그 게시물에서 그 결과를 발표할 예정입니다:
- 컴퓨팅 최적 스케일링(컴퓨팅 최적 스케일링):딥마인드 트릭을 구현하여 테스트 시 오픈 모델의 수학적 성능을 향상하세요.
- 다양성 유효성 검사기 트리 검색(DVTS):유효성 검사기 부트스트랩 트리 검색 기법을 위해 개발된 확장 기능입니다. 이 간단하고 효율적인 접근 방식은 다양성을 높이고 특히 대규모 계산 예산으로 테스트할 때 더 나은 성능을 제공합니다.
- 검색하고 배우세요:LLM을 사용하여 검색 전략을 구현하기 위한 경량 툴킷입니다. vLLM 속도 향상을 달성하세요.
그렇다면 계산적으로 최적의 스케일링은 실제로 얼마나 잘 작동할까요? 아래 그래프에서 아주 작은 1B 및 3B 라마 인스트럭트 모델은 충분한 '사고 시간'을 주면 까다로운 MATH-500 벤치마크에서 훨씬 큰 8B, 70B 모델보다 성능이 뛰어납니다.

OpenAI o1이 공개된 지 불과 10일 만에 그 성공의 배경이 된 획기적인 기술인 확장된 테스트 시간 컴퓨팅의 오픈 소스 버전을 공개하게 되어 기쁩니다."라고 허깅페이스의 공동 창립자 겸 CEO인 클렘 델랑그(Clem Delangue)는 말합니다. 모델에 더 긴 '사고 시간'을 부여함으로써 1B 모델은 8B를, 3B 모델은 70B를 이길 수 있습니다. 물론 전체 레시피는 오픈 소스입니다.

각계각층의 네티즌들은 이 결과를 보고 믿을 수 없다며 미니어처의 승리라며 냉담한 반응을 보이고 있습니다.


다음으로, 허깅페이스는 이러한 결과의 이면에 숨겨진 이유를 살펴보고 테스트 중에 계산 확장을 구현하기 위한 실질적인 전략을 독자가 이해할 수 있도록 도와줍니다.
테스트 시간 연장 계산 전략
테스트 시간 계산을 연장하는 데는 크게 두 가지 전략이 있습니다:
- 자기 개선: 모델은 후속 반복에서 오류를 식별하고 수정하여 출력 또는 '아이디어'를 반복적으로 개선합니다. 이 전략은 일부 작업에는 효과적이지만, 일반적으로 모델에 자체 개선 메커니즘이 내장되어 있어야 하므로 적용 가능성에 제한이 있을 수 있습니다.
- 검증자에 대한 검색: 이 접근 방식은 여러 개의 후보 답변을 생성하고 검증자를 사용하여 최상의 답변을 선택하는 데 중점을 둡니다. 검증자는 하드 코딩된 휴리스틱 또는 학습된 보상 모델을 기반으로 할 수 있습니다. 이 백서에서는 Best-of-N 샘플링 및 트리 검색과 같은 기술을 포함하는 학습된 유효성 검사기에 초점을 맞출 것입니다. 이러한 검색 전략은 보다 유연하고 문제의 난이도에 맞게 조정할 수 있지만, 검증자의 품질에 따라 성능이 제한됩니다.
허깅페이스는 테스트 시 계산 최적화를 위한 실용적이고 확장 가능한 솔루션인 검색 기반 방법을 전문으로 합니다. 세 가지 전략이 있습니다:

- Best-of-N: 일반적으로 보상 모델을 사용하여 각 질문에 대해 여러 개의 답변을 생성하고 각 후보 답변에 점수를 부여한 다음 가장 높은 보상(또는 나중에 설명하는 가중치가 부여된 변형)을 가진 답변을 선택합니다. 이 접근 방식은 답변의 빈도보다는 답변의 품질을 강조합니다.
- 클러스터 검색: 솔루션 공간을 탐색하기 위한 체계적인 검색 방법으로, 문제 해결의 중간 단계의 샘플링과 평가를 최적화하기 위해 PRM(프로세스 보상 모델)과 함께 자주 사용됩니다. 최종 정답에 대해 단일 점수를 부여하는 기존의 보상 모델과 달리, PRM은 추론 과정의 각 단계에 대해 하나씩 일련의 점수를 제공합니다. 이러한 세분화된 피드백 기능 덕분에 PRM은 LLM 검색 방식에 자연스럽게 선택됩니다.
- 다양성 검증자 트리 검색(DVTS): 초기 클러스터를 별도의 하위 트리로 분할한 다음 PRM을 사용하여 이러한 하위 트리를 탐욕스럽게 확장하는 HuggingFace에서 개발한 클러스터 검색 확장 기능입니다. 이 접근 방식은 특히 테스트 시 계산 예산이 많은 경우 솔루션의 다양성과 전반적인 성능을 향상시킵니다.
실험 설정

실험 설정은 다음 단계로 구성되었습니다:
- LLM은 먼저 수학적 문제(예: 유도 과정의 중간 단계)를 주어 N개의 부분 해를 생성합니다.
- 각 단계는 각 단계가 정답으로 끝날 확률을 추정하는 PRM에 의해 점수가 매겨집니다.
- 검색 전략이 완료되면 최종 후보 솔루션이 PRM에 의해 정렬되어 최종 답변을 생성합니다.
다양한 검색 전략을 비교하기 위해 이 백서에서는 다음과 같은 오픈 소스 모델과 데이터 세트가 사용됩니다:
- 모델: 확장된 테스트 시간 계산을 위한 기본 모델로 메타-llama/Llama-3.2-1B-Instruct를 사용합니다;
- 프로세스 보상 모델 PRM: 이 백서에서는 검색 전략을 안내하기 위해 프로세스 감독을 통해 훈련된 80억 개의 보상 모델인 RLHFlow/Llama3.1-8B-PRM-Deepseek-Data를 사용합니다. 프로세스 감독이란 모델이 최종 결과뿐만 아니라 추론 과정의 모든 단계에서 피드백을 받는 훈련 방법입니다;
- 데이터 세트: 이 논문은 OpenAI가 프로세스 감독 연구의 일환으로 공개한 수학 벤치마크 데이터 세트인 MATH-500 하위 집합을 대상으로 평가되었습니다. 이 수학 문제는 7가지 주제를 다루며 인간과 대부분의 대규모 언어 모델 모두에게 도전적인 문제입니다.
이 문서에서는 간단한 기준선부터 시작하여 점차 다른 기술을 통합하여 성능을 개선하는 방법을 설명합니다.
다수결 투표
다수결 투표는 LLM 결과를 집계하는 가장 간단한 방법입니다. 주어진 수학 문제에 대해 N개의 후보 해를 생성하고 발생 빈도가 가장 높은 해를 선택합니다. 모든 실험에서 본 논문은 온도 매개변수 T=0.8을 사용하여 최대 N=256개의 후보 솔루션을 샘플링하고 각 문제에 대해 최대 2048개의 토큰을 생성합니다.
다음은 라마 3.2 1B 인스트럭트에 적용했을 때 과반수 이상의 득표율을 기록한 결과입니다:

결과에 따르면 다수결 투표는 욕심 많은 디코딩 기준선에 비해 상당한 개선을 제공하지만, 약 N=64 세대 이후에는 이득이 평준화되기 시작합니다. 이러한 한계는 다수결 투표가 신중한 추론이 필요한 문제를 해결하기 어렵기 때문에 발생합니다.
다수결 투표의 한계를 바탕으로 성과 향상을 위해 보상 모델을 어떻게 통합할 수 있는지 살펴봅시다.
과반수를 넘어서: Best-of-N
Best-of-N은 보상 모델을 사용하여 가장 합리적인 답변을 결정하는 다수결 투표 알고리즘을 간단하고 효율적으로 확장한 것입니다. 이 방법에는 두 가지 주요 변형이 있습니다:
일반 베스트 오브 N: N개의 독립적인 답변을 생성하고 RM 보상이 가장 높은 답변을 최종 답변으로 선택합니다. 이렇게 하면 신뢰도가 가장 높은 응답이 선택되지만 응답 간의 일관성은 고려되지 않습니다.
가중 베스트 오브 N: 모든 동일한 응답의 점수를 합산하여 총 보상이 가장 높은 응답을 선택합니다. 이 방식은 반복되는 응답을 통해 점수를 높임으로써 고품질의 응답을 우선시합니다. 수학적으로 응답에는 가중치 a_i가 적용됩니다:

여기서 RM(p,s_i)는 문제 p의 i번째 해법 s_i에 대한 보상 모델 점수입니다.
일반적으로 결과 보상 모델(ORM)을 사용하여 개별 솔루션 수준의 점수를 얻습니다. 그러나 다른 검색 전략과의 공정한 비교를 위해 동일한 PRM을 사용하여 Best-of-N 솔루션의 점수를 매깁니다. 아래 그림에서 볼 수 있듯이 PRM은 각 솔루션에 대해 누적된 일련의 단계별 점수를 생성하므로 개별 솔루션 수준 점수를 얻으려면 단계를 통계적으로 (환원적으로) 점수화해야 합니다:

가장 일반적인 법령은 다음과 같습니다:
- 최소: 모든 단계에서 가장 낮은 점수를 사용합니다.
- 프로드: 단계 분수의 곱을 사용합니다.
- 마지막: 단계의 최종 점수를 사용합니다. 이 점수에는 이전 모든 단계의 누적 정보가 포함되어 있으므로 PRM을 부분적인 솔루션에 점수를 매길 수 있는 ORM으로 효과적으로 생각하세요.
다음은 두 가지 변형 Best-of-N을 적용하여 얻은 결과입니다:

그 결과, 가중치가 적용된 Best-of-N이 일반 Best-of-N보다 특히 더 큰 규모의 예산에서 일관되게 더 나은 성능을 보인다는 분명한 이점이 드러났습니다. 동일한 답변의 점수를 합산하는 기능을 통해 빈도는 낮지만 품질이 높은 답변의 우선순위를 효과적으로 지정할 수 있습니다.
그러나 이러한 개선에도 불구하고 여전히 라마 8B 모델의 성능에는 미치지 못하며, Best-of-N 방식은 N=256에서 안정화되기 시작합니다.
검색 프로세스를 점진적으로 모니터링하여 경계를 더 넓힐 수 있을까요?
PRM을 사용한 클러스터 검색
구조화된 검색 방법인 클러스터 검색은 솔루션 공간을 체계적으로 탐색할 수 있어 테스트 시 모델 출력을 개선하는 데 강력한 도구가 됩니다. 클러스터 검색을 PRM과 함께 사용하면 문제 해결의 중간 단계 생성 및 평가를 최적화할 수 있습니다. 클러스터 검색은 다음과 같은 방식으로 작동합니다:
- 여러 후보 솔루션은 고정된 수의 '클러스터' 또는 활성 경로 N 을 유지하여 반복적으로 생성됩니다.
- 첫 번째 반복에서는 응답에 다양성을 도입하기 위해 온도 T의 LLM에서 N개의 독립적인 단계를 수행합니다. 이러한 단계는 일반적으로 새로운 행 n 또는 두 배의 새로운 행 n에서 종료와 같은 중지 기준에 의해 정의됩니다.
- 각 단계는 PRM을 사용하여 점수를 매기고 상위 N/M 단계가 다음 세대를 위한 후보로 선택됩니다. 여기서 M은 주어진 활동 경로의 '클러스터 폭'을 나타냅니다. Best-of-N과 마찬가지로, 각 반복에 대한 부분 솔루션의 점수를 매기는 데 "마지막" 법령이 사용됩니다.
- 솔루션의 후속 단계를 샘플링하여 (3)단계에서 선택한 단계를 확장합니다.
- EOS가 달성될 때까지 (3)과 (4)단계를 반복합니다. 토큰 또는 최대 검색 깊이를 초과합니다.
PRM이 중간 단계의 정확성을 평가할 수 있도록 함으로써 클러스터 검색은 프로세스 초기에 유망한 경로를 식별하고 우선순위를 지정할 수 있습니다. 이 단계별 평가 전략은 부분적인 솔루션을 검증하면 최종 결과를 크게 향상시킬 수 있기 때문에 수학과 같은 복잡한 추론 작업에 특히 유용합니다.
구현 세부 정보
실험에서 허깅페이스는 딥마인드의 하이퍼파라미터 선택을 따라 다음과 같이 클러스터 검색을 실행했습니다:
- 4, 16, 64, 256으로 확장할 때 N 클러스터 계산하기
- 고정 클러스터 폭 M=4
- 온도 T=0.8에서 샘플링
- 최대 40회 반복, 즉 최대 깊이가 40단계인 트리의 경우
아래 그림에서 볼 수 있듯이, 테스트 시간 예산이 N=4인 경우 클러스터 검색은 N=16인 Best-of-N과 동일한 정확도, 즉 계산 효율이 4배 향상되는 놀라운 결과를 얻었습니다! 또한, 클러스터 검색의 성능은 문제당 N=32개의 솔루션만 필요로 하는 Llama 3.1 8B의 성능과 비슷합니다. 컴퓨터 공학 박사 과정 학생들의 평균 수학 실력은 약 40%이므로, 1B 모델의 경우 55%에 가까운 성능이면 충분합니다!

클러스터 검색으로 가장 잘 해결되는 문제
클러스터 검색이 Best-of-N 또는 다수결 투표보다 더 나은 검색 전략이라는 것은 전반적으로 분명하지만, 딥마인드의 논문은 문제의 난이도와 테스트 당시의 계산 예산에 따라 각 전략마다 장단점이 있다는 것을 보여줍니다.
어떤 문제가 어떤 전략에 가장 적합한지 파악하기 위해 딥마인드는 예상 문제 난이도 분포를 계산하고 그 결과를 사분위수로 나누었습니다. 즉, 각 문제는 5개의 레벨 중 하나에 할당되었으며, 레벨 1은 쉬운 문제를 나타내고 레벨 5는 가장 어려운 문제를 나타냅니다. 문제 난이도를 추정하기 위해 딥마인드는 표준 샘플링을 통해 각 문제에 대해 2048개의 후보 솔루션을 생성한 다음 다음과 같은 휴리스틱을 제안했습니다:
- Oracle: 기본 팩트 레이블을 사용하여 각 문제에 대한 예상 합격@1 점수를 계산하고, 합격@1 점수의 분포를 분류하여 사분위수를 결정했습니다.
- 모델링: 사 분위수는 각 문제에 대한 평균 PRM 점수의 분포를 사용하여 결정됩니다. 여기서 직관적으로 알 수 있는 것은 어려운 문제일수록 점수가 낮다는 것입니다.
아래 그림은 합격@1 점수와 네 번의 시험에서 계산된 예산 N=[4,16,64,256]을 기준으로 다양한 방법을 분석한 결과입니다:

보시다시피 각 막대는 테스트 시점에 계산된 예산을 나타내며 각 막대 내에 각 방법의 상대적 정확도가 표시됩니다. 예를 들어 난이도 2의 경우 4개의 막대가 있습니다:
다수결 투표는 N=256(클러스터 검색이 가장 성능이 좋지 않음)을 제외한 모든 계산 예산 중 가장 성능이 좋지 않은 방법입니다.
클러스터 검색은 N=[4,16,64]에 가장 적합하지만, Best-of-N은 N=256에 가장 적합합니다.
클러스터 검색은 보통 난이도 문제(레벨 3~5)에서는 꾸준히 발전해 왔지만, 특히 계산 예산이 큰 간단한 문제에서는 베스트 오브 N(또는 다수결 투표)보다 성능이 떨어지는 경향이 있다는 점에 유의해야 합니다.
클러스터 검색으로 생성된 결과 트리를 살펴본 HuggingFace는 한 단계에 높은 보상이 할당되면 전체 트리가 그 궤적에서 붕괴되어 다양성에 영향을 미친다는 사실을 깨달았습니다. 이에 따라 다양성을 극대화하는 클러스터 검색 확장을 모색하게 되었습니다.
DVTS: 다양성을 통한 성능 향상
위에서 살펴본 바와 같이 클러스터 검색은 Best-of-N보다 더 나은 성능을 제공하지만, 테스트 당시 간단한 문제와 대규모 계산 예산을 처리할 때는 성능이 떨어지는 경향이 있습니다.
이 문제를 해결하기 위해 허깅페이스는 N이 클 때 다양성을 극대화하는 것을 목표로 하는 '다양성 검증자 트리 검색(DVTS)'이라는 확장 기능을 개발했습니다.
DVTS는 클러스터 검색과 비슷한 방식으로 작동하지만 다음과 같은 수정 사항이 있습니다:
- 주어진 N과 M에 대해 초기 집합은 N/M 독립 하위 트리로 확장됩니다.
- 각 하위 트리에 대해 PRM 점수가 가장 높은 단계를 선택합니다.
- (2)단계에서 선택한 노드에서 M개의 새 스텝을 생성하고 PRM 점수가 가장 높은 스텝을 선택합니다.
- EOS 토큰 또는 최대 트리 깊이에 도달할 때까지 (3)단계를 반복합니다.
다음 그래프는 라마 1B에 DVTS를 적용한 결과를 보여줍니다:

작은 N에서는 클러스터 검색이 올바른 솔루션을 찾는 데 더 효과적이지만, 큰 N에서는 DVTS 후보의 다양성이 작용하여 더 나은 성능을 얻을 수 있다는 점에서 DVTS가 클러스터 검색과 상호 보완적인 전략을 제공한다는 것을 알 수 있습니다.
또한 문제 난이도 분류에서 DVTS는 N이 큰 단순/중간 문제에서 성능을 향상시키는 반면, 클러스터 검색은 N이 작은 문제에서 가장 좋은 성능을 보입니다.

컴퓨팅 최적 스케일링(컴퓨팅 최적 스케일링)
다양한 검색 전략이 존재하는 상황에서 어떤 전략이 가장 좋은가 하는 것은 당연한 질문입니다. 딥마인드의 논문(Scaling LLM Test-Time Compute 최적으로 계산하는 것이 모델 파라미터를 확장하는 것보다 더 효과적일 수 있다)에서는 주어진 계산 예산 N : 1을 달성하기 위해 검색 방법과 하이퍼 파라미터 θ를 선택하여 주어진 계산 예산 N 에 대해 최적의 성능을 달성하는 계산 최적 스케일링 전략을 제안합니다:

여기에는 다음이 포함됩니다. 가 질문 Q의 정답입니다.
표현 컴퓨팅 - 최적의 확장 전략. 계산이 간단하기 때문에
다소 까다롭기는 하지만, 딥마인드는 문제의 난이도에 따라 근사치를 제안합니다. 즉, 주어진 난이도에서 어떤 검색 전략이 최고의 성능을 달성하는지에 따라 테스트 중에 계산 리소스를 할당하는 것입니다.
예를 들어, 문제가 간단하고 계산 예산이 적은 경우에는 Best-of-N과 같은 전략을 사용하는 것이 좋으며, 어려운 문제에서는 집합 슈 검색을 사용하는 것이 더 나은 선택입니다. 아래 그림은 계산 최적화 곡선을 보여줍니다!

더 큰 모델로 확장
이 백서에서는 또한 계산 최적 접근 방식을 Llama 3.2 3B Instruct 모델로 확장하여 정책 자체의 용량과 비교했을 때 PRM이 약화되기 시작하는 시점을 살펴봅니다. 그 결과, 계산 최적 확장 방식이 매우 잘 작동하며, 3B 모델이 (전자의 22배 크기인) Llama 3.1 70B Instruct보다 성능이 더 뛰어나다는 것을 보여줍니다. .

다음 단계는 무엇인가요?
테스트 시간 계산 확장에 대한 탐색을 통해 검색 기반 접근 방식 활용의 잠재력과 과제를 확인할 수 있습니다. 앞으로 이 백서에서는 몇 가지 흥미로운 방향을 제시합니다:
- 강력한 검증자: 강력한 검증자는 성능 개선에 핵심적인 역할을 하며, 검증자의 견고성과 다양성을 개선하는 것은 이러한 접근 방식을 발전시키는 데 매우 중요합니다;
- 자체 검증: 궁극적인 목표는 자체 검증을 달성하는 것, 즉 모델이 자율적으로 자신의 결과를 검증할 수 있도록 하는 것입니다. 이 접근 방식은 o1과 같은 모델이 수행하는 것처럼 보이지만 실제로는 여전히 달성하기 어렵습니다. 표준 감독 미세 조정(SFT)과 달리 자체 검증에는 보다 미묘한 전략이 필요합니다;
- (a) 프로세스에 사고 통합: 명시적인 중간 단계나 사고를 생성 프로세스에 통합하면 추론과 의사 결정을 더욱 향상시킬 수 있습니다. 구조화된 추론을 검색 프로세스에 통합하면 복잡한 작업에서 더 나은 성과를 거둘 수 있습니다;
- 데이터 생성 도구로서의 검색: 이 방법은 고품질의 학습 데이터 세트를 생성하는 강력한 데이터 생성 프로세스 역할도 할 수 있습니다. 예를 들어, 검색을 통해 생성된 정확한 궤적을 기반으로 Llama 1B와 같은 모델을 미세 조정하면 상당한 이점을 얻을 수 있습니다. 이 전략 기반 접근 방식은 ReST 또는 V-StaR과 같은 기법과 유사하지만 검색의 이점이 추가되어 반복적인 개선을 위한 유망한 방향을 제공합니다;
- 더 많은 PRM 호출: 상대적으로 적은 수의 PRM으로 인해 더 폭넓은 적용에 한계가 있습니다. 다양한 도메인에 대해 더 많은 PRM을 개발하고 공유하는 것은 커뮤니티가 크게 기여할 수 있는 핵심 영역입니다.
© 저작권 정책
기사 저작권 AI 공유 서클 모두 무단 복제하지 마세요.
관련 문서
댓글 없음...