Large Language Model Routing with Benchmark Datasets

하임·2024년 11월 28일

Routing

목록 보기
6/10

https://arxiv.org/pdf/2309.15789

간단 요약

이 논문은 다양한 작업(task)에 대해 새로운 작업을 수행할 때 최적의 LLM(Large Language Model)을 선택하는 문제를 다룹니다. 이 논문은 기존의 벤치마크 데이터셋을 활용하여 모델 라우터(router)를 학습하는 방식을 제안하며, 이를 통해 특정 작업에 대해 적합한 LLM을 효율적으로 선택합니다.

논문의 주요 내용 및 방법

  1. 문제 정의:
    • 각 LLM의 강점과 약점을 분석하여 새로운 작업에 적합한 모델을 선택하는 문제를 해결.
    • 이를 "모델의 강점을 학습하는 이진 분류 문제"로 정의.
  2. 모델 라우팅 학습:
    • 벤치마크 데이터셋으로부터 LLM 성능 정보를 수집.
    • 입력 텍스트를 임베딩한 후, k-NN 분류기를 사용하여 각 모델의 정확성을 예측하는 라우터를 학습.
  3. 정확성 예측기:
    • 입력 텍스트와 작업(task)에 따라 각 모델이 "정답을 생성할 가능성"을 예측하는 점수를 생성.
    • 모델 선택 기준:
      • S1S_1 : 모델의 예상 정확도를 직접 계산.
      • S2S_2 : 임계값(예: 0.5) 이상인 경우만 고려.
      • S3S_3 : 예측기의 불완전성을 반영한 새로운 점수.
  4. OOD(Out-of-Distribution) 문제 해결:
    • 새로운 작업의 데이터가 기존 벤치마크와 다를 경우 정확성 예측기의 일반화 성능이 저하될 수 있음.
    • 이를 해결하기 위해, Gaussian 커널 스무더를 사용하여 새로운 작업의 정확성을 보정.
  5. 실험:
    • HELM과 MixInstruct라는 두 가지 주요 벤치마크에서 실험.
    • HELM에서는 29개의 데이터셋, 18개의 LLM(모델 크기 3B~70B)을 평가.
    • MixInstruct에서는 모델 간 점수 비교 및 새로운 작업의 데이터와 기존 데이터 간 거리(distance)를 활용한 성능 분석.
  6. 결과:
    • S3S_3 점수를 사용하면 새로운 작업에 대해 더 나은 모델 선택 가능.
    • 일부 작업에서는 더 작은 모델을 선택해도 비용과 성능 간의 균형을 유지 가능.
  7. 결론 및 향후 연구:
    • 더 많은 벤치마크를 활용하거나 OOD 일반화를 개선하는 방법 제안.
    • 특정 도메인에 최적화된 "전문가 모델"의 라우팅 가능성 논의.

이 논문의 기여

  • 실용성: 벤치마크 데이터셋을 재활용하여 새로운 데이터 없이도 LLM 라우팅 가능.
  • 효율성: 테스트 시 선택된 모델 하나만 호출, 계산 비용 절감.
  • 확장성: 추가 벤치마크 및 라우팅 알고리즘 개선 가능.

주요 알고리즘 및 접근 방식

  1. 기본 입력 처리:

    • 문장 임베딩: Sentence Transformer를 사용하여 데이터셋의 입력을 임베딩.
    • k-최근접 이웃(kNN) 분류기: 각 모델의 정확성을 예측하기 위해 비모수적 방식으로 설계된 kNN 분류기 활용.
  2. 정확성 예측기 학습:

    • 목적 함수:

    mingmd=1Di=1nd(gm(xid),y(xid,m))\text{min}{g_m} \sum{d=1}^D \sum_{i=1}^{n_d} \ell(g_m(x^d_i), y(x^d_i, m))

    여기서, gm(x)g_m(x) 는 모델 mm 의 정확성을 추정하는 확률적 분류기입니다.

  3. 라우팅 점수 계산:

    • S1S_1 : 단순 정확도 기반 점수.
    • S2S_2 : 정확성 예측기의 임계값 기반 이진화.
    • S3S_3 : OOD 데이터 정확도 보정을 포함한 복합 점수.
  4. OOD(Out-of-Distribution) 문제 해결:

    • 데이터셋 거리를 정의하여 새로운 작업에 대해 기존 벤치마크 데이터셋과의 연관성을 추정.
    • Gaussian Kernel Smoothing을 사용하여 보정된 정확도 예측.
  • 예시

    학습 과정: 예시를 통해 설명

    이 논문에서는 벤치마크 데이터를 활용하여 새로운 작업에서 가장 적합한 LLM을 선택하는 라우터 모델을 학습합니다. 학습 과정을 예시와 함께 단계별로 설명하겠습니다.

    1. 데이터 준비

    예시:
    • 작업(task): 텍스트 분류와 질문 응답.

    • 데이터셋: HELM 벤치마크에서 29개의 데이터셋 사용.

      • 텍스트 분류: 뉴스 제목 분류.
      • 질문 응답: MMLU의 수학 관련 질문 응답.
    • 각 데이터셋에는 입력(x)과 기준 답변(rr)이 있음.

      학습 목표:

    • 각 입력(xx)에 대해 여러 LLM(mm)의 성능을 비교하고, 가장 적합한 모델을 선택하도록 라우터 모델을 학습.


      2. LLM 응답 생성 및 평가

      예시:

    1. 입력 데이터 x1x_1 (예: "Breaking news: Stock prices rise sharply.")

      • 기준 답변: "뉴스".
    2. 여러 LLM을 사용하여 x1x_1에 대한 응답을 생성:

      • LLM1 (3B): "스포츠" (부정확).
      • LLM2 (7B): "경제" (정확).
      • LLM3 (70B): "경제" (정확).
    3. 각 응답을 평가:
      - 평가 메트릭(FdF_d)을 사용해 각 응답의 정확성을 점수화.
      - LLM1: 0, LLM2: 1, LLM3: 1.


      3. 정확성 레이블 생성

      각 모델 m에 대해 이진 레이블 y(x, m)을 생성:

    • y(x, m) = 1: 모델 m이 입력 x에 대해 "정확한 응답"을 생성했을 때.

    • y(x, m) = 0: 그렇지 않을 때.

      예시:

    • x1x_1에 대해:
      - LLM1: y(x1x_1, LLM1) = 0 (오답).
      - LLM2: y(x1x_1, LLM2) = 1 (정답).
      - LLM3: y(x1x_1, LLM3) = 1 (정답).


      4. 입력 데이터 임베딩

      입력 x를 벡터화하여 학습에 사용:

    • 방법: Sentence Transformer 같은 모델 사용.

    • 결과: x1임베딩 벡터[0.1,0.3,0.7,]x_1 \rightarrow \text{임베딩 벡터} [0.1, 0.3, 0.7, \dots].


      5. 정확성 예측기 학습

      각 LLM m에 대해 gm(x)g_m(x)를 학습:

    • gm(x)g_m(x): 입력 x에 대해 모델 m이 정답을 생성할 확률을 예측하는 함수.

    • 방법:
      - 이진 분류 문제로 정의.
      - 손실 함수: 이진 교차 엔트로피(binary cross-entropy).
      - 분류기: k-최근접 이웃(kNN), 로지스틱 회귀 등.

      예시:

    • g2(x1)g_2(x_1)는 입력 x1x_1에 대해 LLM2가 "정확한 응답"을 생성할 확률을 예측.

    • 학습 데이터:
      - x1x_1: y(x1,LLM2)=1y(x_1, LLM2) = 1.
      - x2x_2: y(x2,LLM2)=0y(x_2, LLM2) = 0.
      - ...


      6. 새로운 작업에서 라우팅

      학습된 라우터 모델을 사용하여 새로운 작업에서 적합한 LLM 선택:

    1. 새로운 입력 xx'에 대해 gm(x)g_m(x') 값을 계산.

    2. 각 모델의 점수 S1,S2,S3S_1, S_2, S_3를 기반으로 최적의 모델 선택.

      예시:

    • 새로운 입력 x=x' = "Who discovered gravity?”
      - g1(x)=0.3g_1(x') = 0.3 (LLM1의 정확도 예측).
      - g2(x)=0.8g_2(x') = 0.8 (LLM2의 정확도 예측).
      - g3(x)=0.9g_3(x') = 0.9 (LLM3의 정확도 예측).

      결과: S3S_3 점수 기반으로 LLM3LLM3 선택.


      7. 작은 LLM 선택 및 OOD 일반화

    • 비용 절감을 위해 작은 LLM을 우선적으로 선택.

    • OOD 데이터에서 정확성을 높이기 위해 벤치마크 데이터를 확장하거나 일부 레이블 데이터를 추가.


      핵심 요약

    1. 데이터 준비: LLM 응답 생성 및 정확성 평가.
    2. 정확성 예측기 학습: 각 LLM의 성능을 예측하는 모델 학습.
    3. 라우팅: 새로운 작업에서 적합한 LLM 선택.
    4. 효율성: 작은 모델을 사용하여 비용 절감과 성능 최적화.

초록(Abstract)

오픈 소스 대규모 언어 모델(LLM)의 수와 이를 비교하기 위한 벤치마크 데이터셋이 급격히 증가하고 있습니다. 특정 모델들이 이러한 벤치마크에서 우위를 점하기는 하지만, 단일 모델이 모든 작업과 사용 사례에서 최고 정확도를 달성하는 경우는 거의 없습니다. 본 연구에서는 새로운 작업을 위해 여러 모델 중 최적의 LLM을 선택하는 문제를 다룹니다. 이를 위해, 기존 벤치마크 데이터셋을 재활용하여 LLM 선택을 위한 "라우터(router)" 모델을 학습하는 새로운 문제 구성을 제안하며, 이 문제가 이진 분류 작업들의 모음으로 축소될 수 있음을 보여줍니다. 다양한 벤치마크 데이터셋에서 모델 라우터를 학습하는 방법의 유용성과 한계를 실험을 통해 입증하며, 단일 모델을 모든 작업에 사용하는 것보다 성능을 일관되게 향상시킵니다.


서론(Introduction)

대규모 언어 모델(LLMs)은 다양한 자연어 처리(NLP) 영역에서 놀라운 성과를 보여 왔습니다(Devlin et al., 2018; Brown et al., 2020). 오늘날, 학계와 산업계 모두에서 매일 새로운 LLM이 출시되고 있습니다. 이러한 모델들은 텍스트 분류, 질문 응답, 요약, 대화 등 다양한 작업을 수행할 수 있습니다.

오픈 소스 LLM의 증가와 잠재적 사용 사례의 다양성은 LLM을 비교하기 위한 포괄적인 벤치마크의 필요성을 촉진했습니다. 예를 들어, HELM(Liang et al., 2022)은 42가지 시나리오를 포함하며, MMLU(Hendrycks et al., 2020)는 57개의 주제로 구성된 다중 선택 질문 응답 벤치마크입니다. Open LLM Leaderboard(Beeching et al., 2023)는 MMLU를 다른 질문 응답 데이터셋과 결합하며, LM Evaluation Harness(Gao et al., 2021)는 200개 이상의 작업을 지원합니다. 벤치마크 평균 성능이 가장 좋은 LLM은 존재하지만, 수백 개의 다양한 데이터셋에서 항상 최고인 모델은 거의 없습니다. 한편, 실제 사용자는 특정 작업에 가장 적합한 모델을 알고 싶어 하며, 다양한 데이터셋에서의 평균 성능에는 상대적으로 관심이 적습니다.

이 논문에서는 새로운 작업에 가장 적합한 LLM을 식별하는 문제를 연구합니다. 후보 LLM의 강점과 약점을 학습하기 위해, 작업과 도메인 전반에서 LLM의 성능에 대한 통찰을 제공하는 벤치마크 데이터셋을 사용합니다. 예를 들어, 새로운 작업이 수학 문제를 푸는 것이라면, STEM 관련 질문 응답 데이터셋에서 성능이 좋은 모델을 고려하고, 사회학이나 유해성 탐지 성능은 제외하는 것이 더 직관적입니다. 이러한 아이디어를 모델 강점 학습을 이진 지도 학습 문제로 정의함으로써 구체화합니다. 여기서 특징은 작업 전반의 샘플 입력 임베딩이며, 레이블은 모델이 해당 입력에서 "잘 수행했는지" 여부(예: 정확한 클래스 레이블 생성, 질문에 올바르게 응답, 입력 지침을 충분히 잘 따름)입니다. 이는 벤치마크 평가 중에 수집된 정보를 기반으로 하며, 비싼 LLM 추론 과정을 반복하지 않고도 모델 라우터를 학습하는 데 재사용될 수 있습니다. 결과적으로 생성된 라우터는 테스트 시 효율적이며, 선택된 LLM 하나만 호출하면 됩니다.


기여(Contributions)

  • LLM의 강점과 약점을 학습하는 문제를 공식화: 이를 다운스트림 라우팅(즉, 최적의 모델 선택)을 위한 이진 분류 문제 모음으로 정의. 각 분류 문제의 목표는 주어진 LLM이 입력에 대해 "정확할" 가능성을 예측하는 것.
  • 새로운 작업을 위한 LLM 선택 점수 제안: 세 가지 점수를 제안하며, 세 번째 점수는 새로운 작업의 데이터가 기존 벤치마크와 다를 때 발생할 수 있는 정확성 예측기의 오류를 고려하도록 설계.
  • 29개의 HELM 데이터셋 및 MixInstruct에서 라우팅 점수 효율성 검증: HELM(Liang et al., 2022)은 질문 응답, 텍스트 분류, 지식, 추론 등 다양한 시나리오를 포함하며, MixInstruct(Jiang et al., 2023)는 LLM의 지침 준수 능력을 평가하기 위한 데이터셋.
  • LLM 라우터 학습의 효과 및 활용도 조사: 새로운 작업에 대한 정확성 예측기의 일반화, 더 큰 벤치마크 풀의 중요성, 더 작은 LLM 라우팅을 통한 비용 절감 가능성 등을 논의.

2. 관련 연구(Related Work)

벤치마크 (Benchmarking)

머신러닝(ML) 및 인공지능(AI) 연구에서는 다양한 작업에 걸쳐 모델 또는 알고리즘을 비교하는 것이 표준 관행입니다. 기반 모델(Foundation Models)이 등장하기 이전에는 동일한 학습 알고리즘을 사용해 각 데이터셋에서 모델을 학습하고, 다른 학습 알고리즘과 성능을 비교하는 방식이 일반적이었습니다.

대표적인 예로 UCI Machine Learning Repository(Kelly et al., 2023)는 다양한 데이터셋을 제공하며 학습 알고리즘 비교에 자주 사용되었습니다.

기반 모델의 등장 이후, 즉 대규모 데이터셋에서 수십억 개의 파라미터로 구성된 모델이 대형 컴퓨팅 클러스터를 통해 학습되면서, 평가 패러다임이 변화했습니다. 이제는 동일한 모델(또는 일부 작업에 맞게 튜닝된 모델)을 다양한 작업에 평가하는 방식으로 발전했습니다(Bojar et al., 2014; Goyal et al., 2019; Li et al., 2022).

대규모 언어 모델(LLM)의 경우, 다양한 벤치마크가 제안되었습니다(Wang et al., 2018, 2019; Hendrycks et al., 2020; Gao et al., 2021; Srivastava et al., 2022; Liang et al., 2022; Beeching et al., 2023; Jiang et al., 2023). 이 벤치마크들은 모델의 성능을 비교하고 가장 강력한 LLM을 판별하기 위해 사용됩니다.

그러나 이러한 벤치마크는 작업 전반의 성능 평균을 계산하고 최종 순위를 제공하는 데 그치며, 나머지 정보는 폐기됩니다. 본 연구에서는 벤치마크 평가 과정에서 생성된 데이터, 즉 다양한 작업에 걸쳐 각 LLM의 샘플별 성능 데이터를 활용해 개별 모델의 강점을 학습하고, 새로운 작업에서 최적의 LLM을 식별하고자 합니다.


모델 선택 (Model Selection)

모델 선택은 통계 및 머신러닝 분야에서 전통적인 주제입니다(Bishop and Nasrabadi, 2006; Hastie et al., 2009; Raschka, 2018). 그러나 전형적인 문제 설정은 본 연구와 다릅니다.

전통적인 방법, 예를 들어 교차 검증(cross-validation)은 모집단 분포에서 샘플링된 데이터를 사용하여 학습한 모델의 모집단 오차를 추정하는 것을 목표로 합니다. 즉, 훈련 데이터와 동일한 분포에서 샘플링된 인 분포(in-distribution) 테스트 데이터에 대해 최적의 모델을 찾는 것입니다.

하지만 LLM의 경우, “훈련 데이터”의 개념이 모호합니다. LLM은 수조 개의 토큰으로 구성된 대규모 데이터셋에서 단순한 다음 토큰 예측(next token prediction) 작업으로 학습됩니다(Radford et al., 2019; Brown et al., 2020).

반면, 우리가 평가하는 작업들은 종종 분류나 질문 응답과 같이 구조화된 형태를 가지며, 훈련 데이터에 충분히 포함되지 않은 특정 도메인을 대상으로 할 수도 있습니다.

또한, k-폴드 교차 검증(k-fold cross-validation)과 같은 기술은 모델을 여러 번 학습해야 하므로 LLM에 대해 적용하기에는 현실적이지 않습니다.


분포 외 모델 선택 (Out-of-distribution Model Selection)

인 분포 데이터에 대한 모델 선택 방법의 한계를 인식하면서(Gulrajani and Lopez-Paz, 2021; Koh et al., 2021), 최근 연구에서는 훈련 데이터와 다를 수 있는 데이터에 배포된 모델을 선택하기 위한 다양한 방법을 제안했습니다.

이러한 방법에는 다음과 같은 아이디어들이 포함됩니다:

  • 부트스트래핑(Bootstrapping) (Xu and Tibshirani, 2022)
  • 가중치 조정(Reweighting) (Chen et al., 2021b; Maity et al., 2023)
  • 모델 또는 앙상블의 합의(Agreement) (Jiang et al., 2021; Chen et al., 2021a; Ng et al., 2023)
  • 모델 정확도와 신뢰도 기준 정렬 (Guillory et al., 2021; Garg et al., 2022; Yu et al., 2022)

그러나 이러한 방법 중 다수는 LLM의 생성(generation) 사용 사례에 확장하기 어렵습니다.

예를 들어, 일부 방법은 다수의 모델을 학습해야 하며, 일부는 새로운 작업과 관련된 잘 정의된 인 분포 데이터를 필요로 합니다.


LLM 라우팅 (Routing LLMs)

기존 연구에서는 주어진 입력에 대해 가장 적합한 출력을 생성하는 LLM을 선택하는 데 중점을 둡니다.

Liu and Liu (2021), Ravaut et al. (2022), Jiang et al. (2023)은 모델의 생성 결과를 평가할 수 있는 전용 점수 산정 또는 랭킹 모델(scoring or ranking models)을 학습합니다.

그러나 이러한 접근법은 모든 후보 LLM으로 출력을 생성해야 하므로, 후보 LLM 풀이 큰 경우 계산 비용이 지나치게 높아질 수 있습니다.

예를 들어, FrugalGPT(Chen et al., 2023)는 전용 점수 산정 모델이 생성 결과를 허용 가능하다고 판단할 때까지 순차적으로 LLM을 호출합니다.

하지만 이러한 연구들은 각 작업과 도메인을 충분히 대표하는 학습 데이터를 필요로 합니다.

본 연구에서는 대신 벤치마크 데이터를 활용하여 작업과 도메인 전반에서 LLM의 강점과 약점을 학습합니다.

결과적으로 생성된 모델 라우터는 테스트 시 선택된 LLM만으로 출력을 생성하면 되므로 효율적입니다.


3. 벤치마크를 활용한 학습 (Learning from Benchmarks)

NLP 벤치마크 소개

다양한 NLP 벤치마크를 설명하기 위해 다음과 같은 표기법을 사용합니다:

  • {x1d,,xndd}d=1D\{x^d_1, \dots, x^d_{n_d}\}_{d=1}^D: D개의 작업(task)에 걸쳐 수집된 입력 데이터 모음.
  • 각 입력 xidx^d_i: 해당 작업의 기준 답변 r^d_i에 매핑됩니다. 즉, ridr^d_i는 이상적인 출력.
  • 작업별로 다른 메트릭 Fd(x,o,r)F_d(x, o, r): 입력 x에 대한 응답 o가 기준 답변 rr에 얼마나 잘 부합하는지를 측정.

특정 LLM mm (m{1,,M}m \in \{1, \dots, M\})을 벤치마크에서 테스트할 때, 각 작업 d=1,,Dd = 1, \dots, D에 대해 다음을 수행합니다:

  1. 응답 생성: {oimd=LLMm(xid)}i=1nd\{o^d_{im} = \text{LLM}m(x^d_i)\}{i=1}^{n_d}.
  2. 성능 측정: 생성된 응답을 기준 답변과 비교하여 메트릭 값을 계산 {fimd=Fd(xid,oimd,rid)}i=1nd\{f^d_{im} = F_d(x^d_i, o^d_{im}, r^d_i)\}_{i=1}^{n_d}.

대부분의 벤치마크 연구는 이러한 메트릭 값을 평균 내어 모델 순위를 매기지만, 본 연구는 각 LLM의 데이터를 활용하여 작업별 강점과 약점을 학습하는 지도 학습 문제로 재구성합니다.


벤치마크를 활용한 지도 학습

목표:
각 LLM m (m{1,,M}m \in \{1, \dots, M\})에 대해 간단한 라우팅 함수 gm(x)g_m(x)를 학습하여 새로운 작업 dd'에서 해당 LLM의 성능 {fdim}i=1nd\{f^{d'}{im}\}{i=1}^{n_{d'}}를 예측. 이렇게 하면 새로운 작업에서 최적의 LLM을 쉽게 선택할 수 있습니다.

효율성:
테스트 시, 라우팅 함수 {gm}m=1M\{g_m\}_{m=1}^M는 입력 x에만 의존하도록 제한합니다. 이는 모든 후보 LLM에 대해 출력을 생성한 뒤 가장 좋은 모델을 선택하는 기존 방법(Liu and Liu, 2021; Ravaut et al., 2022; Jiang et al., 2023)과 다릅니다. 수천 개의 LLM이 있는 상황에서, 테스트 시 모든 입력에 대해 모든 LLM을 호출하는 것은 비현실적입니다.


“정확성” 정의

모델 m이 입력 x에서 올바른지 여부를 y(x,m){0,1}y(x, m) \in \{0, 1\}로 나타냅니다:

  1. 모델 m이 입력 xidx^d_i에 대해 응답 oimdo^d_{im}을 생성.
  2. 이를 기준 답변 r^d_i와 비교.
  3. 해당 메트릭 fimdf^d_{im}이 특정 임계값 ηd\eta_d보다 크면 y(xid,m)=1y(x^d_i, m) = 1 (올바름), 그렇지 않으면 y(xid,m)=0y(x^d_i, m) = 0.

이 y(x, m) 정의는 작업에 따라 다릅니다:

  • 분류 또는 다중 선택 QA: y(xid,m)=fimdy(x^d_i, m) = f^d_{im}.
  • 요약 또는 지침 준수 작업: 다양한 메트릭(Zhang et al., 2020; Sellam et al., 2020; Yuan et al., 2021)을 고려하여 정의.

5.2절에서는 원시 메트릭(raw metrics)을 사용하는 결과도 제시합니다.


LLM 정확성 예측기의 학습

각 LLM mm (m{1,,M}m \in \{1, \dots, M\})에 대해 다음 최적화 문제를 해결합니다:

mingmd=1Di=1nd(gm(xid),y(xid,m)),\min_{g_m} \sum_{d=1}^D \sum_{i=1}^{n_d} \ell(g_m(x^d_i), y(x^d_i, m)),

여기서:

  • \ell: 이진 교차 엔트로피 손실(binary cross-entropy loss).
  • gm(x)g_m(x): 모델 m이 입력 x에서 올바른 응답을 생성할 확률 P(y(x,m)=1x)P(y(x, m) = 1|x)을 추정하는 확률적 분류기.

분포 외 데이터에 대한 일반화

LLM 정확성 예측기는 훈련 중 보지 못한 새로운 작업 d'에 대해 일반화해야 합니다.

다중 도메인 데이터로 훈련된 모델이 보지 못한 도메인에 대해 일반화하도록 학습하는 것은 머신러닝 연구의 활발한 주제입니다(Sun and Saenko, 2016; Arjovsky et al., 2019).

예를 들어:

  • Sun and Saenko(2016): 다중 도메인에서 OOD 일반화를 개선하기 위한 방법 제안.
  • Koh et al.(2021): OOD 일반화 성능 평가를 위한 벤치마크 제안.

정확성 예측기를 위한 단순 모델 선택

본 연구에서는 다음과 같은 단순한 모델을 사용합니다:

  • 입력 임베딩: Sentence Transformer(Reimers and Gurevych, 2019).
  • 분류기: k-최근접 이웃(kNN, Cover and Hart, 1967).
    • kNN은 비모수적(non-parametric) 분류기로, 과도한 하이퍼파라미터 튜닝 없이 여러 작업에 걸쳐 모델의 정확성에 대한 복잡한 결정 경계를 학습할 수 있습니다.

4. 정확성 예측기를 활용한 LLM 라우팅 (LLM Routing with (Imperfect) Correctness Predictors)


LLM 라우팅의 목표

LLM 라우팅의 목표는 주어진 새로운 작업 dd'에서 입력 데이터 {xdi}i=1nd\{x^{d'}i\}{i=1}^{n_{d'}}에 대해 가장 높은 정확성을 보이는 LLM m을 식별하는 것입니다. 이는 다음 식으로 표현됩니다:

arg maxmS~(m,d)=1ndi=1ndy(xid,m),\underset{m}{\text{arg max}} \, \tilde{S}(m, d') = \frac{1}{n_{d'}} \sum_{i=1}^{n_{d'}} y(x^{d'}_i, m),

여기서 S~(m,d)\tilde{S}(m, d')는 새로운 작업에서의 "정답(oracle)" 점수를 나타냅니다.


점수 계산 방식

  1. S1S_1: 기본 정확성 예측기 기반 점수

S1(m,d)=1ndi=1ndgm(xid),S_1(m, d') = \frac{1}{n_{d'}} \sum_{i=1}^{n_{d'}} g_m(x^{d'}_i),

여기서 gm(x)g_m(x)는 입력 x에 대한 LLM m의 정확도를 예측하는 모델입니다. 그러나, 기존 연구(Ovadia et al., 2019)에 따르면, OOD(Out-of-Distribution) 데이터에서 P(yx)P(y|x)를 정확히 추정하는 것은 어려우며, 이는 LLM의 성능 평가에 한계를 초래할 수 있습니다.


  1. S2S_2: 임계값 기반 점수

S2(m,d)=1ndi=1ndgˉm(xid),S_2(m, d') = \frac{1}{n_{d'}} \sum_{i=1}^{n_{d'}} \bar{g}_m(x^{d'}_i),

여기서:

  • gˉm(x)=I(gm(x)>t)\bar{g}_m(x) = I(g_m(x) > t), t는 임계값(예: t = 0.5).
  • II는 지시 함수로, gm(x)g_m(x)가 t를 초과하면 1을 반환.

임계값을 사용하면 gmg_m의 확률이 완벽하지 않더라도 정확성을 유지할 가능성이 증가합니다. 그러나, 이 방법은 OOD 데이터에서 gmg_m의 낮은 정확도를 고려하지 않습니다.


  1. S_3: OOD 자신감 기반 점수

OOD 데이터에서 gmg_m의 부정확성을 보완하기 위해, LLM 정확도를 확률 모델로 정의합니다:

y(x,m)x,dBern(gˉm(x)p(d,m)+(1gˉm(x))(1p(d,m))),y(x, m)|x, d' \sim \text{Bern}(\bar{g}_m(x)p(d', m) + (1 - \bar{g}_m(x))(1 - p(d', m))),

여기서:

  • p(d,m)p(d', m): 작업 dd'에서 gˉm\bar{g}_m의 정확도를 나타내는 확률.

이를 통해 최종 점수 S3S_3를 계산합니다:

S3(m,d)=S2(m,d)p(d,m)+(1S2(m,d))(1p(d,m)).S_3(m, d') = S_2(m, d')p(d', m) + (1 - S_2(m, d'))(1 - p(d', m)).

이는 S1S_1이나 S2S_2보다 더 정교한 방식으로 OOD 데이터에서의 불확실성을 반영합니다.


OOD 자신감 모델

OOD에서 정확성을 예측하기 위해, 작업 간 유사성을 기반으로 p(d, m)를 학습합니다:

  • 각 작업 d에 대해 작업 설명자 u(d)u(d)를 정의, 이는 작업 dd와 다른 작업들 간의 "거리"를 측정.
  • p(d,m)p(d, m): 작업 d에서 gˉm\bar{g}_m의 정확도.
  • 회귀 모델(예: Gaussian Kernel Smoother)을 사용하여 p(d,m)p(d, m)u(d)u(d)로부터 추정.

새로운 작업 dd'에서는 u(d)u(d')를 계산하여 p(d,m)p(d', m)를 예측합니다.


최종 LLM 선택 기준

LLM 선택 시, S3S_3를 기준으로 다음과 같은 방법을 사용합니다:

  • m3=arg maxmS3(m,d)m_3 = \underset{m}{\text{arg max}} S_3(m, d'): S3S_3 기반 최적 LLM.
  • m=arg maxmd=1DS~(m,d)m^* = \underset{m}{\text{arg max}} \sum_{d=1}^D \tilde{S}(m, d): 벤치마크 데이터 전반에서 가장 좋은 LLM.

자신감이 충분하지 않은 경우(P(S~(m3,d)>S~(m,d))<ηP(\tilde{S}(m_3, d') > \tilde{S}(m, d')) < \eta, 예: η=0.6\eta = 0.6), mm를 선택.


메타 러닝과의 연관성

OOD 자신감 모델(식 6)은 메타 러닝의 한 형태로 해석됩니다. 이를 통해 다음과 같은 결과를 얻습니다:

  • 적응적 라우팅(adaptive routing): gˉm\bar{g}_mp(d,m)p(d, m)를 결합하여 더 정밀한 라우팅 가능.
  • 이론적 분석(Lemma 4.1): 적응적 라우팅이 비적응적 방법보다 오라클 라우터를 더 잘 근사함.

실험 결과 (HELM 데이터셋)

  • S3S_3S1S_1이나 S2S_2보다 높은 정확도를 달성.
  • 평균적으로 S3S_3 기반 라우팅이 벤치마크 전반에서 더 나은 결과를 제공.

5. 실험 (Experiments)


5.1 HELM에서의 모델 라우팅

목적:
HELM(Liang et al., 2022) 벤치마크를 사용하여 벤치마크 데이터를 통해 학습한 모델 라우터의 성능을 평가하고, 평균적으로 가장 좋은 모델(BMA, Best Model on Average)을 능가하면서 특정 작업에서 더 작은 LLM을 선택하여 추론 비용을 줄일 수 있는지 검증.


데이터 및 모델

  1. 데이터:
    • 29개의 데이터셋 사용.
    • 질문 응답(MMLU 포함), 텍스트 분류, 언어, 지식, 추론 등 다양한 시나리오를 포함.
  2. 모델:
    • 크기가 3B에서 70B에 이르는 18개의 오픈 소스 모델 평가.
    • Llama 2의 base 및 chat 변형 포함(Table 4 참조).
  3. BMA 모델:
    • 평균적으로 가장 성능이 좋은 모델은 llama-2-70b이며, 그 다음은 llama-2-70b-chat.

모델 라우팅 방법

  • 점수 비교:
    • S1S_1, S2S_2, S3S_3 점수를 사용하여 모델 선택 성능을 비교.
    • S3S_3p(d,m)p(d', m) 값을 포함하여 OOD 데이터를 보정.
  • 비교 기준:
    • "오라클" 점수 S~(m,d)\tilde{S}(m, d'): 라우팅에서 달성 가능한 성능의 상한.
    • S3true pS_3 \, \text{true } p: 새로운 작업에서의 정확한 p(d,m)p(d', m) 값을 사용한 S3S_3.
    • LL 점수: 테스트 입력에 대해 모든 후보 LLM의 응답을 생성한 후 평가.
    • gmg_m: kk-최근접 이웃(kNN) 분류기(k=5) 사용.

결과

  1. 전반적 결과:
    • S3S_3BMA 모델(llama-2-70b)보다 더 나은 성능을 보이며, 일부 작업에서는 더 작은 모델을 선택.
    • S2S_2는 정확성을 약간 희생하지만 더 작은 모델을 선택.
    • LL 점수는 좋은 성능을 보이지만, 테스트 입력마다 모든 LLM의 응답을 생성해야 하므로 비용이 높음.
  2. 29개의 실험 결과(Table 1 요약):
    • 평균 정확도(Acc.): S3>BMAS_3 > BMA.
    • Best-to-Ratio: S3S_3 기반 라우팅이 더 높은 비율로 최적 모델에 근접.
    • S3true pS_3 \, \text{true } p는 모든 점수를 능가.
    • 선택된 모델의 평균 파라미터 수: S3S_3가 BMA보다 적은 파라미터를 가진 모델을 선택하는 경향.
  3. OOD 격차 감소:
    • 정확성 예측기의 평균 정확도는 0.59로 낮았지만, 적은 양의 인 분포 샘플(α=0.05\alpha = 0.05)만 추가해도 정확도가 0.65로 상승.
    • S1S_1 점수는 인 분포에서 S3S_3를 능가할 수 있음(kNN의 특성 때문).

5.2 Mix-Instruct에서의 모델 라우팅

Mix-Instruct 벤치마크(Jiang et al., 2023):

  • 작업: 지침 준수(instruction following) 작업.
  • 데이터셋: 100K/5K/5K의 훈련/검증/테스트 세트로 구성.
  • 평가지표: BERTScore(Zhang et al., 2020), BARTScore(Yuan et al., 2021), BLEURT(Sellam et al., 2020).

결과 분석

  1. Table 2 요약:
    • S1S_1: 단순하지만 효율적, 다른 방법보다 적은 모델 호출로 좋은 결과.
    • 랜덤(Random): 가장 낮은 점수.
    • BMA(Open-Assistant, Vicuna): 적절한 성능.
    • Oracle: 최상의 성능.
  2. 효율성:
    • S1S_1: 단일 모델 호출로 테스트 세트 평가 가능.
    • LL 및 다른 방법: 모든 모델에 대해 응답을 생성해야 함.
  3. 참조 데이터 스파스성:
    • 테스트 데이터와 참조 데이터 간 평균 거리가 감소할수록 S1S_1 점수와 오라클 점수 간 격차가 줄어듬.
    • 결론: 참조 데이터셋의 밀도를 높이면 라우팅 성능이 향상될 가능성.

6. 토론 및 결론 (Discussion and Conclusion)


작은 LLM의 유용성

  • 대규모 LLM은 평균적으로 가장 좋은 성능을 보일 수 있지만, 비용과 계산 자원이 많이 소모됩니다.
  • 더 작은 LLM이 특정 작업에서 충분히 적합하다면, 비용, 계산 시간, 지연 시간을 줄일 수 있습니다.
  • 작은 LLM이 적합한 작업을 식별하면, 자동화 비용이 감소하여 기존에 비용 문제로 인해 자동화되지 않았던 새로운 작업도 자동화할 수 있는 가능성을 열어줍니다.

HELM 실험: 작은 LLM과의 비교

  • 실험 설정:
    • HELM 데이터를 기반으로, 파라미터가 13B 이하인 모델만 사용하여 라우팅 수행.
    • 결과를 Llama 2 70B 모델과 비교.
  • 결과:
    • Oracle 모델: 작은 모델만으로도 대규모 모델 성능을 능가하는 것이 가능함을 개념적으로 보여줌.
    • S1S_1, S2S_2 점수:
      • 벤치마크 학습과 함께 새로운 작업에서 2~40개의 소량 레이블 데이터를 제공하면 70B 모델과 성능을 일치시킬 수 있음.
      • 이는 작은 LLM을 활용하여 추론 비용을 절감할 수 있음을 시사.

더 많은 벤치마크 데이터로 학습

  • 핵심 가설:
    • 새로운 작업이 기존 벤치마크 작업과 유사할수록 라우팅 품질이 높아짐.
    • 벤치마크 데이터를 통해 OOD(Out-of-Distribution) 격차를 줄일 수 있다면, 라벨링 작업 없이도 라우팅 성능이 향상될 가능성.
  • 실험 결과:
    • 모델 라우팅 품질:
      • S_3 점수의 Pearson 상관 계수와 작업 간 거리 u(d') 간의 관계를 시각화.
      • 새로운 작업이 벤치마크 작업에 가까울수록 상관 계수가 1에 가까워짐.
      • 작업 간 거리가 멀어질수록 상관 계수가 저하.
  • 결론:
    • 더 많은 벤치마크 데이터가 추가되면, 새로운 작업이 기존 데이터셋에 더 가까워지고, 라우터의 신뢰성과 효율성이 개선될 가능성.

미래 연구 방향

  1. OOD 일반화 개선:
    • OOD 일반화를 개선하기 위해 더 많은 벤치마크와 최신 기법 활용.
    • Active Learning 기법을 사용하여 일부 레이블 데이터를 제공해 정확성 예측기를 미세 조정(fine-tuning) 가능.
  2. 정확성 예측기 정확도 향상:
    • p(d,m)p(d', m)의 정확한 추정을 위한 방법 개발.
    • 새로운 작업에서 정확도가 낮더라도 S3S_3 점수가 강력한 결과를 보임을 확인.
  3. 전문가 LLM 라우팅:
    • 특정 도메인에 특화된 "전문가 모델"의 라우팅.
    • 이러한 모델의 정답 영역이 특정 도메인과 일치하므로, 정확성 예측기가 더 쉽게 학습 가능.
  4. 작은 모델 활용 확대:
    • 작은 모델을 선택하도록 점수를 수정해 비용 절감 및 더 넓은 도메인에서 LLM 사용 촉진.
    • Frugal API Selection(Chen et al., 2020, 2023)에서 영감을 받아 더 작은 LLM 활용 가능성을 탐색.

결론

  • 벤치마크 데이터를 활용한 학습은 새로운 작업에서 LLM 라우팅의 가능성을 보여줌.
  • S3S_3 점수는 OOD 데이터를 다룰 때 특히 강력하며, 적절한 비용 절감 및 효율적인 모델 라우팅을 가능하게 함.
  • 미래 연구는 OOD 격차를 줄이고, 더 작은 LLM의 활용을 촉진하며, 전문가 모델을 통합하여 LLM 라우팅의 성능을 한층 더 개선할 가능성이 있음.
profile
NLP 공부합니당

0개의 댓글