https://arxiv.org/pdf/2412.04692
논문 "SMOOTHIE: Label-Free Language Model Routing"(Neel Guha et al., Stanford, 2024)은 라벨 없이 LLM을 선택하거나 라우팅할 수 있는 새로운 기법(SMOOTHIE)을 제안합니다. 아래에 핵심 내용을 구조화하여 자세히 설명드리겠습니다.
🧩 개요
❓ 문제 정의
- 여러 개의 사전학습된 LLM들을 가지고 있을 때, 입력 샘플마다 어떤 LLM이 가장 잘 작동할지를 선택(라우팅)해야 함.
- 하지만 대부분 기존 라우팅 기법은 라벨이 있는 데이터를 필요로 함.
- 이 논문은 라벨이 전혀 없이(=label-free) 최적의 LLM을 선택하는 문제를 해결하고자 함.
🚀 제안: SMOOTHIE
📌 주요 아이디어
- 여러 LLM의 출력이 '투표자(voter)' 역할을 하고,
- *잠재 참값(latent true output)**과 각 LLM의 출력 간 임베딩 거리 차이를 기반으로
- *각 LLM의 품질 점수(quality score)**를 추정하여 가장 좋은 모델을 선택함.
🔧 방법론 구성
🧠 1. 라우팅을 위한 그래프 모델
- 각 LLM의 출력과 잠재 참값(y)을 임베딩하여 벡터 공간상에서 비교.
z_gi(x) : 입력 x와 해당 LLM 출력 gi(x)를 Sentence-BERT 등으로 임베딩
z*(x) : 입력 x와 참값 y를 임베딩한 (숨겨진) 임베딩
- 모든 임베딩 간의 관계를 가우시안 확률 그래프 모델로 정의하고, 각 LLM의 품질 θi(x)를 학습함.
✨ 2. 품질 점수 추정 공식
- 세 개의 모델 출력 (i, j, k)에 대해 유클리디안 거리 간의 관계를 이용하여, θi(x)=δij(x)+δik(x)−δjk(x)d 여기서 δij(x)=∥zgi(x)−zgj(x)∥2
- 모든 조합을 평균하여 안정적인 추정치를 얻음.
🧭 3. 두 가지 변형
| 이름 | 설명 |
|---|
| SMOOTHIE-GLOBAL | 전체 test 데이터셋을 이용해 θi를 전역적으로 추정 |
| SMOOTHIE-LOCAL | 특정 입력 x의 이웃 샘플(KNN)만 이용하여 θi(x)를 국소적으로 추정 |
📊 실험 결과 요약
🎯 1. Single-task 성능 (7개 NLG task, AlpacaEval 등)
- SMOOTHIE-GLOBAL은 라벨 없이도 최적 모델을 9/14 task에서 정확히 선택함
- 평균적으로 Spearman 순위 상관 계수 0.72로 실제 성능과 잘 일치
- 일부 task에서는 라벨이 있는 best-on-val 방법보다 우수
📦 2. Multi-task 라우팅 (DISTR-ACC, DISTR-ROUGE2)
- SMOOTHIE-LOCAL은:
- 라벨이 있는 KNN 기반 라우팅보다 성능 우수
- PAIRRM 등 reward model 기반 방법보다도 우수
- 3B/7B 모델 모두에서 최고 성능
| Metric | RANDOM | LABELED-KNN | SMOOTHIE-LOCAL |
|---|
| DISTR-ACC (3B) | 48.7 | 51.0 | 58.7 |
| DISTR-ROUGE2 (7B) | 25.0 | 26.2 | 26.9 |
🧪 3. Prompt 선택 문제에도 확장 가능
- 동일한 LLM에서 여러 프롬프트 중 최적의 템플릿 선택 가능
- Falcon-1B, LLaMA-2(7B)에서 실험
- 일부 경우에는 소형 모델로 대형 모델 성능을 넘음 (e.g., 410M → 6.9B 수준까지 향상)
🧮 알고리즘 요약
Algorithm 1: SMOOTHIE Score Estimation
- 모든 LLM 출력에 대해 임베딩 λi(x) 추출
- 각 LLM 쌍 간 거리 δij(x) 계산
- 3개 조합 (i, j, k)으로부터 θ 추정
- 모든 조합에 대해 평균 → 최종 θ^i(x)
- argmaxiθ^i(x)을 선택하여 라우팅
💬 장점
- 완전한 라벨 프리 방식
- 전통적인 약한 감독 기법(Weak Supervision)과 연결
- 프롬프트 선택까지 확장 가능
- 간단한 수학적 구조와 계산 효율성 (예: 1000개 샘플 기준 몇 초 내 실행)
⚠️ 한계
- 가우시안 모델에서 공분산 행렬이 대각선 형태(독립 가정) → 잠재 종속성 반영 어려움
- 모델 크기 차이로 인한 비용 trade-off는 고려 안됨
- 임베딩 기반 유사성은 문장 구조 외의 요소는 반영 어려움
🔚 결론
SMOOTHIE는 라벨 없이도 LLM 간 성능을 정량화하고, 가장 성능 좋은 모델을 정확히 선택하거나 라우팅할 수 있는 강력한 방법론으로, multi-agent LLM 시스템에서 매우 실용적인 기여를 함.
쿼리와 LLM 출력을 임베딩하고 비교를 하고 이를 가지고 학습을 하는거야?
좋은 질문입니다. 핵심을 짚으셨고, 이 논문의 가장 흥미로운 포인트는 다음과 같은 "비지도적 라우팅(score 기반 선택)" 방식입니다.
🤔 요약: SMOOTHIE는 학습이 아니라 추정 기반 라우팅 방식입니다.
쿼리와 LLM 출력의 임베딩을 사용해서, “어떤 LLM 출력이 진짜 정답에 더 가까운가?”를 추정하고, 이 추정을 통해 LLM을 선택(라우팅)합니다.
📌 핵심 질문: 쿼리와 LLM 출력을 임베딩하고 비교해서 학습하는 구조인가?
❌ 아니요, supervised learning처럼 라우터를 학습하진 않습니다.
✅ 대신, 잠재적인 정답(ground-truth)에 가장 가까운 출력을 가진 LLM이 어떤 것인지를 임베딩 거리 기반으로 추론합니다.
🧠 구체적인 방법 구조: 라벨 없는 품질 추정
1️⃣ 임베딩 생성
- 여러 LLM (g₁, g₂, ..., gₙ)이 같은 쿼리 x에 대해 생성한 출력 텍스트를 임베딩합니다.
- 임베딩 함수는 예를 들어
Sentence-BERT, MPNet 같은 고정된 문장 임베더.
- 결과적으로 각 LLM의 출력 zgi(x)∈Rd
- 동시에, "진짜 정답"이 존재한다고 가정되는 잠재 임베딩 z∗(x)이 있다고 가정함.
- 이건 실제로는 주어지지 않고, 간접적으로 추론함.
2️⃣ 거리 기반 추정
아이디어
- 만약 LLM i의 출력이 진짜 정답에 더 가깝다면, → 임베딩 zgi(x)는 z∗(x) 와 더 가까울 것임.
- 문제는 z∗(x)가 없다는 점이지만, 다른 LLM들의 출력 간 상대 거리 차이로 추정 가능.
수식
- δij(x)=∥zgi(x)−zgj(x)∥2 (LLM i와 j의 출력 임베딩 간 거리 제곱)
- 임의의 세 LLM (i, j, k)에 대해 다음의 유사 품질 추정 식 사용:
θ^i(x)=δij(x)+δik(x)−δjk(x)d
- 여기서 dd는 임베딩 공간의 차원 수.
- 모든 가능한 조합 (i, j, k)에 대해 평균을 내서 θ^i(x)를 얻고, → 가장 높은 θ^i(x) 값을 가지는 LLM을 선택함.
3️⃣ 글로벌 vs 로컬 방식
| 방식 | 설명 | 특징 |
|---|
| SMOOTHIE-GLOBAL | 전체 입력 샘플 집합을 통해 LLM별 평균 θ 추정 | 전체 성능 순위 평가에 유용 |
| SMOOTHIE-LOCAL | 쿼리 x에 가까운 샘플 K개만 사용하여 국소 θ 추정 | 실제 라우팅에 사용됨 (입력별로 최적 LLM 선택) |
🧮 학습이 아닌 이유
- 논문에는 라벨된 데이터가 전혀 사용되지 않으며,
- router 모델도 학습되지 않고, 단지 추론 과정에서 거리 기반 계산만 수행됨.
📌 비유로 설명
🎯 "누가 정답에 가장 가까운 말을 했는가?"를 사람(라벨자) 없이 판단하는 방식입니다.
여러 사람이 한 말(=LLM들), 그리고 진짜 정답이 있다고 가정했을 때,
"이 세 사람 중에서 누가 두 사람보다 중심에 가깝게 말했는가?"
→ 이를 통해 "가장 믿을 만한 사람(LLM)"을 선택하는 구조입니다.
✅ 요약
| 항목 | 내용 |
|---|
| 라벨 사용 여부 | ❌ 사용하지 않음 (label-free) |
| 라우터 학습 여부 | ❌ 학습하지 않음 |
| 사용 정보 | 쿼리 x와 LLM들의 출력 임베딩 거리 |
| 품질 추정 방식 | 세 모델의 임베딩 거리 조합을 통해 상대 품질 θ 추정 |
| 결과 | θ가 가장 높은 모델 선택 (혹은 Top-k 선택) |
🔷 Abstract
대형 언어 모델(LLMs)은 점점 더 다양한 작업을 처리해야 하는 응용 환경에서 사용되고 있습니다. 최근 연구에서는 LLM 선택이 결과에 중대한 영향을 미친다는 점, 그리고 서로 다른 입력 샘플에 대해 서로 다른 LLM이 더 나은 성능을 낼 수 있다는 점을 발견했습니다. 기존의 접근 방식은 각 샘플마다 어떤 LLM을 사용할지를 선택하는 방법, 즉 라우팅(routing)을 연구해왔습니다. 이러한 기존 방법은 대개 사람의 주석이 포함된 데이터나 라벨이 지정된 데이터를 사용하는 보조 모델 학습을 필요로 합니다.
본 논문에서는 라벨이 전혀 없는 상태에서도 LLM을 라우팅할 수 있는지를 탐구합니다. 이를 위해 우리는 SMOOTHIE라는 약한 감독(weak supervision) 기반 라우팅 접근 방식을 제안합니다. SMOOTHIE는 라벨이 없는 상태에서, 서로 다른 LLM으로부터의 출력들을 기반으로 잠재 변수 그래픽 모델을 구성하여 LLM의 출력 표현과 미지의 “정답” 사이의 관계를 학습합니다. 이 모델을 이용해 각 샘플마다 각 LLM의 품질 점수를 추정하고, 가장 높은 점수를 가진 LLM으로 샘플을 라우팅합니다.
우리는 다음을 입증합니다:
- SMOOTHIE가 계산한 LLM 품질 점수는 실제 정답과의 상관관계가 높고, 실제 모델 품질을 잘 식별하며(14개 중 9개 태스크에서 최적 LLM 식별 성공),
- 최대 10포인트까지 라우팅 성능을 기존 방식보다 향상시킵니다.
🔷 1. Introduction
LLMs는 현재 다양한 능력을 요구하는 multi-capability 환경에서 점점 더 자주 활용되고 있습니다. 예를 들어, LLM 기반 챗봇은 다음과 같은 여러 작업을 수행할 수 있어야 합니다:
- 코드 작성,
- 도메인 간 질문 응답,
- 문서 요약,
- 정보 추출 등.
이처럼 각 태스크마다 요구되는 LLM의 능력은 매우 다양합니다. 엔지니어들은 다양한 사전 학습된 LLM에 접근할 수는 있지만, 어떤 LLM이 주어진 입력에 가장 적합한지는 알기 어렵습니다. LLM의 출력 품질은 샘플마다 매우 다르기 때문에, 매번 최적의 LLM을 선택하는 것은 성능 확보에 매우 중요합니다.
기존 연구에서는 다음 두 가지 방향을 탐색해 왔습니다:
- 다양한 품질의 LLM을 수집하고,
- 각 입력 샘플에 어떤 LLM을 라우팅할지 결정.
그러나 대부분의 방식은 라벨이 있는 데이터가 필요합니다. 즉,
- 보조 모델을 학습하거나,
- 각 샘플에 대해 최적의 LLM을 직접 라벨링하여 선택합니다.
이는 실제 환경에서 라벨을 구성하는 데 드는 비용 때문에 비현실적입니다.
우리가 직면한 두 가지 기술적 도전 과제:
- LLM 품질 불확실성: 라벨이 없을 때, 각 LLM의 품질을 어떻게 추정할 수 있을까?
- 샘플 의존적 LLM 선택 문제: 샘플마다 LLM 성능이 달라질 수 있으므로, 각 샘플에 가장 적합한 LLM을 어떻게 고를까?
🔷 우리가 제안하는 해결책: SMOOTHIE
SMOOTHIE는 라벨 없이 각 샘플을 LLM에 할당할 수 있는 라우팅 기법입니다. 이를 위해 다음과 같은 과정을 따릅니다:
🔹 품질 추정 (Quality Estimation)
- 각 샘플을 “투표자(voter)”로 간주하여 여러 LLM 출력을 조합합니다.
- 약한 감독 기반 학습(Weak Supervision) 기법을 사용하여, 잠재 그래픽 모델을 학습합니다.
- 각 LLM 출력과 가상의 정답 사이의 관계를 가우시안 모델로 설정하여 닫힌 형태의 품질 추정식을 도출합니다.
🔹 조건화 (Conditioning)
- 각 샘플에 대해 test sample과 가장 유사한 training 샘플의 출력을 기반으로 예측 (커널 스무딩).
- 이 방식은 테스트 샘플의 최근접 이웃을 기반으로 품질 점수를 추정하는 SMOOTHIE-LOCAL, 전체를 사용하는 버전을 SMOOTHIE-GLOBAL이라 부릅니다.
🔷 실험 구성 및 결과 요약
우리는 SMOOTHIE를 세 가지 방식으로 실험적으로 평가했습니다:
- LLM 선택 (SMOOTHIE-GLOBAL):
- 다양한 LLM 후보 중 어떤 LLM이 특정 태스크에서 최적인지를 평가.
- 예: 요약, 독해, 데이터-텍스트 생성 등에서 실제 모델 성능과 ρ = 0.72 수준의 상관관계를 보여줌.
- AlpacaEval 벤치마크에서는 최적 LLM을 70% 정확도로 선택.
- 이는 라벨 없이도 최고 성능 모델을 최대 15점까지 더 잘 선택 가능함.
- 라우팅 (SMOOTHIE-LOCAL):
- 샘플 기반 LLM 선택 구조.
- 최대 7포인트 정확도 개선.
- 기존 비지도 학습 또는 감독 기반 라우팅보다 최대 10포인트 더 우수함.
- 프롬프트 선택:
- 고정된 LLM 하에서, 프롬프트 템플릿을 최적화하는 데도 품질 추정이 활용됨.
- 프롬프트 선택 정확도에서 최대 18포인트 개선, 더 작은 LLM으로도 6.9B 성능 달성 가능.
🔷 실험적 평가 및 요약 (SMOOTHIE 평가: 세 단계)
우리는 SMOOTHIE를 다음 세 가지 단계에서 평가합니다:
1. ✅ LLM 선택 (LLM Selection)
먼저, SMOOTHIE-GLOBAL의 능력을 평가하여 혼합 품질을 가진 LLM들 중에서 특정 작업에 가장 적합한 LLM(최적의 LLM) 을 식별할 수 있는지를 확인합니다.
- 예를 들어 요약, 독해, 데이터-텍스트 생성과 같은 전통적인 생성 작업에서, SMOOTHIE-GLOBAL이 학습한 LLM 품질 가중치는 실제 LLM 성능과 ρ = 0.72 수준의 상관관계를 보였습니다.
- AlpacaEval 벤치마크에서 SMOOTHIE-GLOBAL은 70%의 경우에서 최고 성능 instruction 모델을 선택했습니다.
- 이는 라벨 없이 계산된 것이며, AlpacaEval에서는 랜덤 선택 대비 최대 15점, SQuAD에서는 최대 8점 더 높은 성능을 보였습니다.
2. 🚀 라우팅 (Routing)
다음으로, SMOOTHIE-LOCAL의 샘플 조건 기반 점수화 메커니즘이 혼합 태스크 데이터셋에서 각 샘플을 더 높은 성능의 LLM으로 라우팅할 수 있는지를 평가합니다.
- SMOOTHIE-LOCAL은 최대 7점 정확도 향상을 이끌어냅니다.
- 기존 비지도 학습 기반 라우팅보다 최대 10점,
- 감독 학습 기반 라우팅보다 최대 5점 더 높은 정확도를 보여줍니다.
3. 📝 프롬프트 선택 (Prompt Selection)
마지막으로, SMOOTHIE의 품질 추정 메커니즘을 사용하여 고정된 LLM 내에서 최적의 프롬프트 템플릿을 선택할 수 있는지를 평가합니다.
- SMOOTHIE-GLOBAL은 기존 프롬프트 선택 방식들보다 최대 18점 더 높은 성능을 보여주었으며,
- 작은 410M 모델이 6.9B 파라미터 모델과 유사한 성능을 달성하도록 만들 수 있었습니다.
🔷 3. Preliminaries (기초 개념)
3.1 문제 설정 (Problem Setup)
- 𝒱: 토큰 vocabulary 공간.
- 𝒱̄ = 𝒱 × 𝒱 × ... × 𝒱: 모든 단어 시퀀스 공간.
우리는 입력 텍스트 x ∈ 𝒱̄ 와 참조 출력 y ∈ 𝒱̄가 주어질 때 생성 모델 g가 x로부터 출력 y를 생성하는 문제를 다룹니다.
- *LLM 후보 집합 G = {g₁, ..., gₘ}**이 존재하며, 각 gᵢ는 x를 받아 gᵢ(x)를 생성합니다.
- *테스트 셋 Dtest = {xᵢ}ⁿ{i=1}는 ground-truth 참조 출력이 주어지지 않은 라벨 없는 데이터셋**입니다.
우리의 목표는 각 테스트 샘플 x를 G의 LLM 중 하나로 라우팅하는 것입니다. 다시 말해, 어떤 LLM이 x에 대해 가장 높은 품질의 출력을 생성하는지를 선택하는 라우터 G^m × 𝒳 → G 를 학습합니다.
3.2 그래프 모델 (Graphical Model)
우리는 확률 그래프 모델을 구성하여 LLM 출력 g₁(x), ..., gₘ(x)가 참 정답 y와 어떻게 관련되어 있는지를 모델링합니다.
- g₀: SentenceBERT와 같은 공통 임베딩 모델.
- 각 LLM 출력 gᵢ(x)는 임베딩 λᵢ(x) = z_g₀([x, gᵢ(x)])로 변환됩니다.
- z_g₀([x, y])는 x와 y의 잠재 ground-truth 임베딩으로 간주되며, 이를 z*라고 표기합니다.
확률 분포 모델링:
Pr(z∗(x),λ1(x),...,λm(x)∣x)=Z1exp(−∑i=1mθi(x)∥λi(x)−z∗(x)∥2)
- 여기서 Z는 정규화 상수(log partition function).
- *θᵢ(x)**는 LLM gᵢ의 품질 점수 (그래프 모델의 파라미터).
- λᵢ(x) - z(x)의 차이가 클수록, 해당 LLM의 출력은 정답과 거리가 멉니다. 즉, θᵢ(x)가 클수록 해당 LLM은 z*(x)**에 더 가까운 출력을 만들려 하며, 이는 품질이 높은 것으로 간주됩니다.
이 모델은 Gaussian 분포를 기반으로 하며,
[λ1(x)−z∗(x),...,λm(x)−z∗(x)]∈Rdm
의 벡터는 평균이 0이고 공분산 행렬 Σ = diag(σᵢ² I_d)의 가우시안 분포를 따른다고 가정합니다.
따라서, 우리의 목적은 라벨 없는 데이터로부터 각 θᵢ(x)를 학습하고 이를 통해 품질 추정과 라우팅을 수행하는 것입니다.
🔷 4. 방법 (Method)
라벨이 없는 테스트 데이터셋 Dtest 와 LLM 집합 G가 주어졌을 때, SMOOTHIE는 두 단계로 구성됩니다:
- 추정(Estimation): 각 x∈Dtest에 대해 LLM 품질 점수θ1(x),…,θm(x)를 학습합니다. (4.1절, 알고리즘 1)
- 라우팅(Routing): 점수가 가장 높은 LLM을 선택하고, 그 출력을 최종 예측값으로 사용합니다. (4.2절)
Algorithm 1: 점수 추정 (Estimate Scores)
입력:
- 라벨이 없는 테스트셋 Dtest,
- LLM 집합 G,
- 최근접 이웃 수 n0,
- 차원 d를 갖는 임베딩 모델 g0
단계:
- 각 x∈Dtest, gi∈G 대해, 생성기 출력gi(x)를 얻고,g_0을 이용해 임베딩 $\lambda_i(x) := z{g_0}([x, g_i(x)])$ 계산
- 모든x∈Dtest,gi∈G에 대해:
- 서로 다른 =i∈[m]j,에 대해:
- δij(x):=n01∑x′∈NNn0(x)∥λj(x′)−λj(x)∥2 계산
- θ^ijk(x):=δij(x)+δik(x)−δjk(x)d
- 평균 추정값 계산:θ^i(x):=(2m−1)1∑j,k=iθ^ijk(x)
출력:
- 각x∈Dtest,gi∈G에 대해 θ^i(x) 반환
🔷 4.1 LLM 점수 추정 (LLM Score Estimation)
우리는 그래프 모델 (식 1)과 라벨 없는 데이터 Dtest만을 사용하여 각 θi(x)를 어떻게 추정하는지를 설명합니다.
▶️ θi(x) 계산
Proposition 1 ([85] 참조):
모든i,j∈[m] 대해, 다음 식이 성립합니다:
E[∥λi(x)−λj(x)∥2]=E[∥λi(x)−z∗(x)∥2]+E[∥λj(x)−z∗(x)∥2]
즉, LLM 임베딩 간 거리의 기대값은 각각의 품질 손실 기대값의 합으로 표현됩니다.
여기서 z∗(x)는 ground-truth에 대한 임베딩이며, 식을 통해 삼각형 구조의 연립방정식을 구성하여 E[∥λi(x)−z∗(x)∥2] 를 풀 수 있습니다:
E[∥λi(x)−z∗(x)∥2]=21(δij(x)+δik(x)−δjk(x))∀(i,j,k)∈[m]
▶️ θi(x)로의 변환
가우시안 가정에 따라 Σjj=2θj(x)/d1 따라서:
E[∥λi(x)−z∗(x)∥2]=∑j=1dVar(λi,j(x)−zj∗(x))=2θi(x)d
즉, 최종적으로:
θijk(x)=δij(x)+δik(x)−δjk(x)d
이를 모든 j,k=i 에 대해 평균내어 θi(x) 추정.
📌 샘플 조건 기반 추정 (Sample-conditional estimation)
- δij(x)=E[∥λi(x)−λj(x)∥2] 는 실제로는 전체 데이터 평균.
- 이를 전 데이터로 계산하면 SMOOTHIE-GLOBAL.
- 더 나은 결과를 위해, x 주변의 최근접 n_0개의 이웃만 사용하여 샘플 의존적으로 계산하는 방법을 SMOOTHIE-LOCAL이라고 명명.
예:
- NNn0(x): x의 최근접 이웃
- δij(x):=n01∑x′∈NNn0(x)∥λj(x′)−λj(x)∥2
이렇게 하여 각 샘플에 대해 θi(x)를 더욱 미세하게 추정 가능.
🔷 5. 결과 (Results)
우리는 SMOOTHIE-GLOBAL과 SMOOTHIE-LOCAL을 실험적으로 분석하며, 다음 네 가지 핵심 질문에 중점을 둡니다:
- SMOOTHIE-GLOBAL은 동일 태스크 샘플에서 실제 LLM 순위를 얼마나 잘 복원하는가? (5.1절)
- SMOOTHIE-LOCAL은 다태스크 데이터셋에서 비지도 라우팅으로 얼마나 잘 작동하는가? (5.2절)
- SMOOTHIE-GLOBAL과 LOCAL은 다양한 프롬프트 선택 또는 라우팅에도 사용할 수 있는가? (5.3절)
- 이들의 성능은 알고리즘 구성에 따라 어떻게 변화하는가? (5.4절)
🔶 5.1 단일 태스크 LLM 점수화 (Single-Task LLM Scoring)
🔸 설정 (Setup)
SMOOTHIE-GLOBAL이 서로 다른 LLM의 상대적 성능을 잘 식별할 수 있는지 평가합니다.
- 세 가지 작업군:
- 일반 NLG 작업 (CNN/DailyMail, XSum, SQuAD, TriviaQA, E2E, WebNLG, LegalBench 등)
- 지시 수행형 벤치마크: AlpacaEval, MixInstruct (10개 모델 사용)
- 추론 중심 작업: GSM8K (Gemma, Phi-2, LLaMA-7b)
- LLM 크기별로 3B (Pythia, Gemma, Incite, Dolly), 7B (LLaMA-2, Mistral, Vicuna, Nous 등) 사용
- 각 태스크에 단일 프롬프트를 사용하며, 모든 생성 결과에 SMOOTHIE-GLOBAL을 적용 (SentenceBERT 임베딩 사용)
🔸 결과 (Results)
- 정답 모델과 일치 여부:
- 3B: 7개 NLG 태스크 중 6개에서 최고 성능 LLM 선택
- 7B: 7개 중 7개 성공
- AlpacaEval: 10회 중 7회 최고 모델 선택
- 랭킹 상관관계:
- MixInstruct: ρ = 0.94
- AlpacaEval: ρ = 0.46
- 비교 실험:
- RANDOM: 무작위 선택과 비교
- BEST-ON-VAL: 소규모 라벨링 데이터로 선택한 모델
- NLG 태스크에서:
- RANDOM 대비 최대 7점 (Rouge2 기준), 12점 (정확도 기준) 성능 향상
- GSM8K: solve-rate 37.5% (BEST-ON-VAL 동일), RANDOM은 28.3%
- 지시 수행형 태스크:
- MixInstruct에서 ChatGPT rank 3.91 (RANDOM은 5.95)
- AlpacaEval에서 10개 중 9개에서 RANDOM 대비 우위
🔶 5.2 다태스크 라우팅 (Multi-task Routing)
🔸 설정 (Setup)
SMOOTHIE-LOCAL의 샘플 조건 점수화가 다태스크 환경에서 얼마나 효과적인지 평가합니다.
- 두 종류의 태스크 묶음:
- DISTR-ACC: 정확도로 평가 (SQuAD, TriviaQA, LegalBench)
- DISTR-ROUGE2: Rouge2로 평가 (CNN, XSum, WebNLG 등)
- 세 가지 비교 기준:
- RANDOM: 무작위 선택
- LABELED-KNN: 라벨링 기반 KNN
- PAIRRM: 학습된 리워드 모델 기반 선택
- 비교 대상:
- BEST-MODEL (단일 LLM 최고 성능),
- SMOOTHIE-GLOBAL,
- SMOOTHIE-LOCAL (SentenceBERT 기반, 최근접 이웃 n₀=1)
🔸 결과 (Results)
- 3B와 7B 모두에서 SMOOTHIE-LOCAL이 세 기준 모두를 능가
- 라벨 없이도 LABELED-KNN 및 PAIRRM보다 우수
- SMOOTHIE-GLOBAL과 비교 시에도, 샘플 조건 기반인 SMOOTHIE-LOCAL이 더 높은 성능
- BEST-MODEL보다 성능이 높음 (매 샘플에서 가장 높은 품질의 LLM을 잘 선택함)
🔶 5.3 프롬프트 선택 (Prompt Selection)
🔸 설정 (Setup)
프롬프트 템플릿 선택에 SMOOTHIE-LOCAL 및 GLOBAL이 활용 가능한지를 평가합니다.
- 각 작업에 대해 3~5개의 템플릿을 수동으로 구성 (명령 스타일 및 in-context 예시를 다양화)
- 두 LLM 크기:
🔸 결과 (Results)
- 최적 프롬프트 선택 성공률:
- Falcon-1B: 2/7에서 SMOOTHIE-GLOBAL 성공
- LLaMA-2: 3/7에서 성공
- 전체적으로 RANDOM보다 우수
- 총 7개 모델/태스크 조합 중 6개에서 SMOOTHIE-LOCAL 또는 GLOBAL이 라벨 기반보다 동등하거나 더 우수
- 성능 향상:
- E2E 태스크에서 410M 모델이 SMOOTHIE-GLOBAL을 사용하면 6.9B 모델보다 더 나은 성능 달성 가능
🔷 5.4 절편 분석 (Ablations)
마지막으로, 우리는 SMOOTHIE-GLOBAL 및 SMOOTHIE-LOCAL의 다양한 측면을 분석합니다:
- 효율성 향상,
- 최근접 이웃 수 조정,
- 임베딩 모델 변경,
- LLM 앙상블 구성 다양화.
🔸 효율성 향상 (Improving Efficiency)
- SMOOTHIE는 학습이나 SGD가 필요 없는 폐쇄형 수식으로 weight를 계산합니다.
- 예: 7B 앙상블에서 SMOOTHIE-LOCAL은 1,000개 샘플 기준 약 2.14초, SMOOTHIE-GLOBAL은 0.03초 이내 소요.
- 사전 주석 데이터도 필요 없음.
- 다만, 모든 모델로부터의 생성이 필요하므로n×m개의 출력이 요구됨.
➡ 이를 줄이기 위해 SMOOTHIE-TRAIN이라는 개선 기법 제안:
- 학습 셋 D_{\text{train}}에서 각 모델의 출력을 미리 생성해두고,
- 테스트 샘플과 가장 유사한 Dtrain내 샘플을 선택해 해당 모델 점수를 사용하는 방식 (KNN 기반).
- Dtrain×m개의 생성 결과만 있으면 됨 (즉, 테스트마다 새 생성 필요 없음).
▶️ 실험 결과
- ntrain=250일 때, SMOOTHIE-GLOBAL-TRAIN은 14개 중 12개 태스크에서 기존과 동일 성능, 2개는 더 낮음.
- SMOOTHIE-LOCAL-TRAIN도 여전히 RANDOM보다 좋고, 감독 방식과 경쟁 가능.
🔸 이웃 수 (Neighborhood Size)
- n0∈{1,5,10,20,50,100}에 대해 실험.
- 결과:
- 성능은 n0 증가에 따라 감소,
- 최적 값은 n0=1
🔸 임베딩 모델 선택 (Choice of Embeddings)
- SentenceBERT vs BGE (bge-small-en-v1.5) 비교.
- SMOOTHIE-LOCAL은 다양한 임베딩 모델에서도 강건한 성능을 보임.
- 일부 조합에서는 BGE가 더 우수, 일부에서는 SentenceBERT가 우수.
- 예: DISTR-ACC에선 SentenceBERT가 우세, DISTR-ROUGE2에선 BGE가 우세.
🔸 다양한 앙상블 (Different Ensembles)
- SMOOTHIE-GLOBAL을 7B 앙상블과 3B 앙상블 포함한 17개 모델에 적용.
- 각 태스크/세팅마다 4~7개 LLM 중 최적 모델 선택을 평가.
- 350개 태스크 샘플에서:
- *60.2%**에서 최고 모델 선택 성공 (3B),
- *83.6%**에서 상위 2위 안 모델 선택 성공 (7B)
🔷 6. 결론 (Conclusion)
이 논문에서는 라벨 없이 작동하는 라우터 학습 알고리즘을 제안하였으며, 다양한 평가 설정에서 기존 비지도 방식보다 안정적으로 우수한 성능을 보였고, 때로는 감독 방식보다도 뛰어남을 보였습니다.
📌 한계점 (Limitations)
- 가우시안 그래프 모델은 대각 공분산 행렬만 사용, 즉 각 출력의 오차 벡터가 독립적이라고 가정함. 향후 의존성 모델링 확장 가능.
- 성능만 최적화, 비용 고려 없음. 예: 작은 모델 vs 큰 모델 간 trade-off 미고려.
- 임베딩 의존성: 의미적 유사성만 반영될 수 있음.
- 다양한 임베딩 모델과 휴리스틱을 추가하면 더욱 풍부한 입력 표현이 가능할 것.