NL-180, Distilling Step-by-Step! Outperforming Larger Language Models with Less Training Data and Smaller Model Sizes, Findings of ACL 2023

◼ Comment

  • 즉 distillation할 때, 근거를 같이 넣어주면 좋다는 것이다.
  • 일반적인 distillation은 soft하게 레이블 확률을 이용해서 하는 것이 일반적으로 알고 있다.
  • 여기서는 이와 달리, teacher 모델로 레이블을 hard하게 만들고, 더불어 근거까지 만들게 한다.
    • 즉 왜 레이블이 그게 나왔는지 설명하라고 하는 것이다.
    • 물론 이런 것이 가능하려면 teacher 모델의 성능이 꽤 좋아야 한다는 것..
    • 요즘엔 chatgpt가 있으니 이를 활용하면 충분히 가능한 시나리오다.
    • 이 논문에서는 PALM 등을 쓴 것으로 보여진다.
  • 어쨋든 수도 데이터로 (입력) -> (근거, 레이블)을 만든다.
    • 그 다음 생성모델로 학습을 시키는데, 
      • 1) [근거] (입력) -> (근거)
      • 2) [레이블] (입력) -> (레이블)
    • 이렇게 2가지를 multi-task learning을 시키면 전체적으로 성능이 향상된다는 결론이다.
  • contribution으론 다음과 같다.
    • 기존의 distillation 방법보다 효과적이다.
    • LLM와 같은 성능을 내기 위해, 기존의 distillation보다 필요한 학습 데이터 수가 줄어든다.
    • 학습 데이터의 수가 같다면, LLM와 같은 성능을 달성하기 위한 small 모델의 크기가 기존의 방법보다 작아진다.
    • 쉽게 말해서, 기존의 hard label만 갖고하는 distillation보다 근거(rationale)을 같이 생성하도록 학습하면 된다는 것이다.
  • 의견
    • 학습할때, 이 근거가 어떤 레이블을 위한 근거인지 매칭이 안되고 학습되는거 같아 보인다.
    • 이를 얼라인 시키면 더 좋은 결과가 있지 않을까? 싶음
    • 또한 어떤 few-shot으로 데이터를 뽑았는지에 따라 성능의 variation이 있을거 같긴하다. (이 부분은 논문에서 분석 안했음)

0 Abstract

  • LLMㄴ을 적용하는 것은 실제 어플리케이션에서 메모리가 비효율적이고 계산이 많기 때문에 챌린지하다.
  • 연구자들은 human labels로 finetuning하거나 LLM-generated labesl을 사용하여 distilling으로 더 작은 task에 맞는 모델들을 학습시킨다.
  • 그러나, finetuning과 distillation은 LLMs와 경쟁할만한 성능을 달성하기 위해 많은 학습 데이터를 요구한다.
  • 우리는 Distilling step-by-step을 소개하고, 이는 새로운 메커니즘으로
    • (a) LLM보다 좋은 더 작은 모델을 훈련하고 
    • (b) finetuning 또는 distillation에 필요한 적은 훈련 데이터를 활용하여 이를 달성합니다.
  • 우리의 방법은 multi-task training framework안에서, 작은 모델들에 추가적인 supervision으로 LLM 근거들을 추출한다.
  • 우리는 4가지 NLP 벤치마크들에서 3가지 발견을 소개한다.
    • 먼저, finetuning과 distillation와 비교하여, 우리의 메커니즘은 훨씬 적은 labeld/unlabeled training 예제들로 좋은 성능을 달성한다.
    • 두 번째로, LLMs와 비교하여, 우리는 상당히 작은 모델 사이즈를 사용하여 더 좋은 성능을 달성한다.
    • 세 번째로, 우리는 LLMs을 뛰어넘기위해 요구되는 모델 사이즈와 데이터의 양을 줄인다. 우리의 770M T5 model은 540B PALM 모델보다 벤치마크 테스크에서 오직 80% 데이터만을 사용해서 성능이 더 좋다.

1 Introduction

  • LLM(Large Language Models)이 제공하는 인상적인 몇 가지 기능에도 불구하고 이러한 모델은 크기 때문에 실제 응용 프로그램에 배포하기가 어렵습니다.
  • 단일 1,750억 LLM을 제공하려면 특수 인프라를 사용하는 최소 350GB GPU 메모리가 필요합니다.
    • 설상가상으로 오늘날의 최신 LLM은 500B가 넘는 매개변수로 구성되어 훨씬 더 많은 메모리와 계산이 필요합니다.
  • 이러한 컴퓨팅 요구 사항은 대부분의 제품 팀, 특히 낮은 대기 시간(low latency) 성능이 필요한 애플리케이션에 훨씬 적합합니다.
  • 대규모 모델의 이러한 배포 문제를 피하기 위해 실무자는 종종 더 작은 특수 모델을 대신 배포하도록 선택합니다.
  • 이러한 더 작은 모델은 finetuning or distillation라는 두 가지 일반적인 패러다임 중 하나를 사용하여 학습됩니다.
    • Finetuning 은 사람이 주석을 추가한 다운스트림 데이터를 사용하여 pretrained smaller model(예: BERT 또는 T5)을 업데이트합니다.
    • Distillation은 더 큰 LLM에서 생성된 레이블을 사용하여 동일한 더 작은 모델을 학습시킵니다.
  • 불행하게도 이러한 패러다임은 비용을 들여 모델 크기를 줄입니다. 
    • LLM에 필적하는 성능을 달성하려면 finetuning 에 값비싼 human labels이 필요하고 distillation 에는 얻기 어려울 수 있는 많은 양의 unlabeled data가 필요합니다.
  • 이 작업에서는 더 적은 훈련 데이터로 더 작은 모델을 훈련하기 위한 새롭고 간단한 메커니즘인 Distilling step-by-step를 소개합니다.
    • 우리의 메커니즘은 LLM을 더 작은 모델 크기로 finetuning하고 distillation 하는데 필요한 학습데이터의 양을 줄입니다.
    • 이 메커니즘의 핵심은 LLM을 단순히 노이즈가 많은 레이블의 source 로 보는 것에서 추론할 수 있는 에이전트로 보는 것으로 관점을 바꾸는 것입니다: 
    • LLM은 예측된 레이블을 정당화하는 자연어 근거를 생성할 수 있습니다. 
  • 예를 들어, "한 신사가 골프 장비를 들고 있는데, 그가 가지고 있는 것은 무엇일까요?"라는 질문을 받으면 다음과 같이 대답할 수 있습니다. 
    • (a) 클럽, (b) 집회장, (c) 명상 센터, (d) 회의, (e) 교회"라는 
    • 질문에 대해 LLM은 chain-of-thought(CoT) reasoning 을 통해 "(a) 클럽"이라고 답하고 "답은 골프에 사용되는 것이어야 한다"고 말함으로써 레이블을 합리화할 수 있습니다.
    • 물론, 위의 선택 중 골프에는 클럽만 사용됩니다.
  • label prediction 및 rationale(근거) prediction을 모두 사용하는 멀티테스크 학습 설정 내에서 이러한 추출된 근거를 추가적이고 풍부한 정보로 사용하여 더 작은 모델을 훈련합니다.
    • Distilling step-by-step를 통해 500배 적은 모델 매개변수를 사용하여 LLM을 능가하는 task-specific 작은 모델을 학습할 수 있으며, traditional finetuning or distillation에 비해 훨씬 적은 훈련 예제로 이를 수행합니다(그림 1).
    • 즉, LLM으로 단순히 수도 레이블만 뽑아서 distilling하는게 아니라, 근거(왜 그런지)를 같이 추출하여 학습시키면 더 좋다! 라는 것 같음
  • 우리의 결과는 4개의 NLP 벤치마크에서 3개의 믿을만한 경험적 결론을 보여줍니다.
    • 첫째, finetuning and distillation와 비교하여 우리의 모델은 데이터 세트 전체에서 평균적으로 50% 이상 적은 훈련 예제로 더 나은 성능을 달성합니다(최대 85% 이상 감소).
    • 둘째, 우리 모델은 훨씬 작은 모델 크기(최대 2000배 더 작음)로 LLM을 능가하여 모델 배포에 필요한 계산 비용을 크게 줄입니다.
    • 셋째, 모델 크기와 LLM을 능가하는 데 필요한 데이터의 양을 동시에 줄입니다.
    • 결론적으로, 더 작은 데이터와 더 작은 모델로 LLM 성능을 능가할 수도 있다!
  • 770M T5 모델을 사용하여 540B 매개변수 LLM의 성능을 능가합니다. 
    • 이 더 작은 모델은 기존 미세 조정 방법을 사용하는 경우 필요한 labeled 데이터 세트의 80%만 사용합니다.
    • unlabeled 데이터만 있는 경우 작은 모델은 여전히 LLM과 동등하거나 더 나은 성능을 보입니다.
  • 11B T5 모델만으로 540B PaLM의 성능을 능가합니다.
  • 또한 더 작은 모델이 LLM보다 성능이 좋지 않은 경우 standard distillation approach과 비교하여 Distilling step-by-step가 레이블이 지정되지 않은 추가 데이터를 보다 효율적으로 활용하여 LLM 성능과 일치시킬 수 있음을 보여줍니다.

2 Related work

  • 우리의 작업은 오늘날 LLM의 emergent(새로운) reasoning capabilities을 활용하여 LLM의 능력을 더 작은 모델로 distill합니다.
  • 우리는 human-generated rationales and LLM-generated rationales 모두에서 배우는 최근 knowledge distillation research 및 기타 방법을 사용합니다.
  • Knowledge distillation from large models. 
    • Knowledge distillation는 더 크고 더 유능한 teacher 모델에서 실용적인 적용이 가능한 더 작은 student 모델로 지식을 이전하는 데 성공적으로 사용되었습니다(Bucilua 2006; Hinton 2015; Beyer 2022).
    • 더 큰 teacher 모델은 노이즈가 많은 pseudo 레이블이 있는 학습 데이터 세트를 생성하는 데 자주 사용되기 때문에 limited labeled data에서 학습을 지원합니다.
    • knowledge distillation이 종종 직면하는 한 가지 제한 사항은 유용한 noisy training dataset를 만드는 데 필요한 많은 양의 unlabelled data에 의존한다는 것입니다.
    • 이전 작업에서는 data augmentation techniques을 사용하여 이러한 데이터에 대한 갈망을 줄이는 방법을 모색했지만 다음과 같은 대체 접근 방식을 제안합니다.
    • 레이블뿐 아니라 teacher’s rationales도 추출하여 많은 unlabeled data의 필요성을 줄입니다.
    • 즉 teacher 모델을 소수의 labeled 데이터로 학습시켜서, 이로부터 pseudo 데이터를 만들고 했다.
    • 이 때, psuedo 데이터의 입력은 있어야, pseudo label을 만들어서 데이터를 구축할 것인데.. 이러한 unlabeled 데이터 자체가 많이 부족했다고 한다.
    • 따라서 이 논문에서는 teacher모델의 근거를 활용해서 이를 해결하고자 한다.
  • Learning with human rationales. 
    • LLM 생성 근거를 활용하는 것은 새로운 흥미로운 조사 영역이지만, 인간 생성 근거를 사용하는 것은 풍부한 역사를 가지고 있습니다(Hase and Bansal, 2021).
    • 예를 들어 인간의 근거를 사용하여 모델 동작을 정규화할 수 있습니다(Ross 2017).
    • 모델의 예측을 안내하는 추가 입력으로 사용할 수 있습니다(Rajani 2019).
    • 전체 모델 성능을 개선하는 데 사용할 수 있습니다(Zaidan 2007; Zhang 2016; Camburu 2018; Pruthi 2022).
    • 그리고 인간의 근거는 유사한 근거를 생성하여 모델을 더 해석하기 쉽게 만드는 황금 표준 레이블로 사용할 수 있습니다(Wiegreffe 2021; Narang 2020; Eisenstein 2022).
    • 불행히도 인간의 합리성은 비용이 많이 듭니다.
  • Learning with LLM generated rationales. 
    • 오늘날의 LLM은 고품질 추론 단계를 생성하여 예측을 설명할 수 있습니다(Wei 2022; Kojima 2022).
    • 이러한 추론 단계는 LLM에 대한 입력 프롬프트를 보강하여 퓨샷 또는 제로샷 성능을 개선하는 데 사용되었습니다(Wei 2022; Kojima 2022; Wang 2022b). 
    • 추론 단계는 추가 미세 조정 데이터 "self-improve" LLM으로도 사용되었습니다(Zelikman; Huang 2022).
    • 불행하게도 LLM이 어떻게 개선되든 상관없이 LLM의 큰 크기는 대부분의 테스트 test-time applications에서 utility 을 제한합니다.
  • 대조적으로, 우리는 더 작은 작업별 모델, 즉 큰 계산이나 메모리 비용을 들이지 않고 배포할 수 있는 모델을 교육하기 위해 생성된 이론적 근거를 유익한 감독으로 활용합니다.
  • 지난 몇 달 동안 3개의 다른 연구들에서도 추출된 근거를 감독으로 사용하는 유사한 아이디어를 제안했습니다(Wang 2022a; Ho 2022; Magister 2022).
    • 그 중 PINTO는 LLM에 의존하여 테스트 시 이론적 근거를 생성하므로 deployment 문제를 완전히 해결하지 못합니다.
    • Ho(2022) 및 Magister(2022)와 비교할 때, 우리는 훈련 데이터 세트 크기를 다양화하고 다운스트림 모델 크기를 탐색하고 완전히 레이블이 지정되지 않은 데이터 세트에 대한 방법의 효율성을 보여줌으로써 세분화된 연구를 제공하기 위해 그들의 실험을 넘어섭니다.
  • 처음으로 시도한 방법은 아니나, 다른 비슷한 연구보다 더 효율적이고 (학습 데이터 줄이는정도) 다운스트림 모델 크기를 더욱 탐구한다?
    • 어쨌든, LLM으로 생성한 근거를 활용해서 supervision 하여 모델을 학습시킨다는 것

3 Distilling step-by-step

  • 우리는 data-efficient 방식으로 더 작은 모델을 교육하기 위해 예측에 대해 추론하는 LLM의 기능을 활용하는 새로운 패러다임인 Distilling step-by-step을 제안합니다.
  • Our overall framework is illustrated in Figure 2. 
    • Overview on Distilling step-by-step. 먼저 CoT 프롬프트를 활용하여 LLM에서 근거를 추출합니다(섹션 3.1). 그런 다음 생성된 근거를 사용하여 입력 예제에 작업 prefixes 를 추가하고 주어진 task prefix에 따라 다르게 출력하도록 모델을 훈련하는 다중 작업 학습 프레임워크 내에서 작은 작업별 모델을 훈련합니다(섹션 3.2).
  • Our paradigm has two simple steps: 
    • 먼저 LLM과 unlabeled 데이터 세트가 주어지면 레이블을 정당화하기 위한 rationales와 함께 output labels을 생성하도록 LLM에 메시지를 표시합니다.
      • Rationales는 모델의 예측 레이블을 지원하는 자연어 설명입니다(그림 2 참조).
      • Rationales는 오늘날의 self-supervised LLM의 emergent behavioral property입니다.
    • 둘째, 더 작은 다운스트림 모델을 교육하기 위해 task labels외에도 이러한 rationales를 활용합니다.
      • rationales 는 직관적으로 입력이 특정 출력 레이블에 매핑되는 이유에 대한 보다 풍부하고 자세한 정보를 제공합니다.
    • 즉 그림 2처럼, LLM으로 레이블뿐만 아니라, 그거에 대한 근거도 생성하도록 한다. (CoT 이용)
    • 그리고, 작은 모델에 distillation할때 (생성된 데이터로 학습할 때), prefix로 [label] 혹은 [rationale]이란 special token을 줘서 학습시킨다.
    • 그러면 small model은 출력의 근거조차 알아서 학습하는 되는 식이라는 것 같다.
    • 근데, 이때 label와 rationale이 한 쌍으로 줘서 이 근거가 이 출력에 대한 것이다? 라는 것은 어떻게 의미부여하지?

3.1 Extracting rationales from LLMs

  • 최근 연구에서는 LLM의 흥미로운 새로운 속성 중 하나인 예측을 뒷받침하는 rationales를 생성하는 능력을 관찰합니다.
  • 연구는 주로 LLM에서 이러한 reasoning 능력을 끌어내는 방법에 초점을 맞추었지만, 우리는 더 작은 다운스트림 모델을 교육하는 데 사용합니다.
  • 특히 우리는 LLM에서 rationales 를 도출하고 추출하기 위해 CoT(Chain-of-Thought) 프롬프트를 활용합니다.
  • 그림 3에 나와 있는 것처럼 unlabeled 데이터 세트 xi ∈ D가 주어지면 먼저 task 해결 방법을 설명하는 프롬프트 템플릿 p를 선별합니다.
    • 즉, few-shot CoT로 answer에 근거를 답변하도록 보여준다는 것이다.
    • 그럼 다른 예제들에 대해서, 출력이 근거를 같이 생성하게끔 된다는 것
    • 각 프롬프트는 triplet (xp, rp, yp)입니다. 여기서 xp는 예시 입력이고 yp는 해당 레이블이며 rp는 xp가 yp로 분류될 수 있는 이유를 설명하는 사용자 제공 근거입니다.
  • 각 입력 xi를 p에 추가하고 이를 입력으로 사용하여 LLM이 각 xi ∈ D에 대한 근거와 레이블을 생성하도록 합니다.
  • p에서 보여지는 데모를 통해 LLM은 xi에 대한 근거 rˆi 및 출력 yˆi를 생성하기 위해 triplet demonstration를 모방할 수 있습니다.

3.2 Training smaller models with rationales

  • task-specific models 학습을 위한 현재 프레임워크를 설명합니다.
  • 이 프레임워크를 사용하여 이를 확장하여 training process에 rationales를 통합합니다.
  • 공식적으로 데이터 세트를 D = {(xi , yi)}^N_i=1로 표시합니다. 
    • 여기서 각 xi는 입력을 나타내고 yi는 해당하는 원하는 출력 레이블입니다.
  • 프레임워크는 모든 modality의 입력과 출력을 지원하지만 실험에서는 x와 y를 natural language로 제한합니다.
  • 이 text-to-text framework는 다양한 자연어 처리 작업을 포함합니다.
    • classification, natural language inference, question answering and more.
  • Standard finetuning and task distillation. 
    • task-specific model 을 교육하는 가장 일반적인 방법은 supervised 데이터로 사전 pretrained 모델을 finetune하는 것입니다.
    • human-annotated labels이 없는 경우 task-specific distillation는 LLM teachers 를 사용하여 yi 대신 yˆi라는 pseudo-noisy training labels을 생성합니다.
    • 두 시나리오 모두에서 더 작은 모델 f는 다음과 같은 레이블 prediction loss을 최소화하도록 훈련됩니다.
      • 여기서 l은 predicted and target tokens간의 cross-entropy loss입니다.
    • 설명을 쉽게 하기 위해 방정식 1의 yˆi를 standard finetuning case의 경우 human-annotated labels yi로, model distillation case에서는 LLM-predicted labels yˆi로 오버로드했습니다. 
    • 가장 일반적인 방법으로 생각됨
    • 실제로, 이렇게 ChatGPT와 같은 모델로 데이터 만들어서, 학습시키는 경우가 많음
  • Multi-task learning with rationales. 
    • xi와 y^i를 보다 명확하게 연결하기 위해 추출된 근거 r^i를 추가 감독으로 사용합니다. 
    • 다운스트림 모델의 학습 프로세스에 rationales 를 통합하는 방법에는 여러 가지가 있습니다. 
    • 한 가지 간단한 접근 방식은 다른 연구에서 제안한 것처럼 additional 입력으로 rˆi를 공급하는 것입니다. 
    • 즉, 텍스트와 rationale [x, r]를 모두 입력으로 사용하여 f(xi , rˆi) → yˆi를 훈련하는 것입니다:
      • r^i가 target이 아니네?
      • 그러면 테스트에서는 어케하지?
      • 안타깝게도 이 설계에서는 f가 예측을 수행하기 전에 먼저 LLM이 근거를 생성해야 합니다. 
      • deployability 동안에도 LLM이 필요하기 때문에 deployment 가능성에 제한이 있습니다.
      • 즉 실시간 테스트로는 힘들다는 것.. 별로인 방법
  • 이 작업에서는 rationales를 추가 모델 입력으로 사용하는 대신 rationales가 있는 학습을 multi-task problem로 구성합니다.
  • 구체적으로, 모델 f(xi) → (y^i , rˆi)를 훈련하여 task labels을 예측할 뿐만 아니라 주어진 텍스트 입력에 해당하는 근거를 생성합니다.
  • 여기서 L_label은 식 1의 레이블 예측 손실이고 L_rationale은 근거 생성 손실입니다.
  • rationale generation loss을 통해 모델은 예측을 위한 중간 추론 단계를 생성하는 방법을 학습할 수 있으므로 결과적인 레이블을 더 잘 예측하도록 모델을 안내할 수 있습니다.
    • 이것은 우리가 제안한 Distilling step-by-step입니다.
  • Eq 2와 비교할 때 테스트 시간에 rationale rˆi가 필요하지 않으므로 test-time에 LLM이 필요하지 않습니다.
    • input 예제에 “task prefixes” ([label], [rationale]) 를 추가하고 [a]이 제공되면 yˆi를 출력하고 [rationale]로 rˆi를 생성하도록 더 작은 모델을 훈련합니다.
  • 방법은 아주 심플하고 간단하다.
    • 과연 얼마나 효과가 있을지 실험에서 살펴보자

4 Experiments

  • 우리는 Distilling step-by-step의 효과를 경험적으로 검증합니다.
  • 먼저, standard finetuning and task distillation approaches 다음과 같은 결과를 보여줍니다, 
    • Distilling step-by-step는 훨씬 적은 수의 훈련 예제로 더 나은 성능을 달성하여 작은 task-specific 모델을 학습하는 데 있어 데이터 효율성을 크게 향상시킵니다(4.1절).
  • 둘째, Distilling step-by-step가 훨씬 작은 모델 크기로도 LLM의 성능을 능가하여 LLM에 비해 배포 비용을 크게 낮출 수 있음을 보여줍니다(4.2절). 
    • 직관적으로 리즈너블한지 애매한데, 결국은 LLM으로 뽑은 데이터로 fine-tuning한건데, 이게 성능이 더 좋다?
    • distillation하는게 성능이 더 향상되는 경우가 있는데, 이도 비슷한건가?
  • 마지막으로, 훈련 예제 수와 모델 크기 모두에서 Distilling step-by-step가 LLM을 능가하는데 필요한 최소 리소스를 조사합니다. 
  • Distilling step-by-step가 더 적은 데이터와 더 작은 모델을 사용하여 데이터와 배포 효율성을 동시에 향상시킴으로써 LLM보다 성능이 뛰어나다는 것을 보여줍니다(4.3절).
  • Setup.
    • 실험에서는 540B PaLM 모델을 LLM으로 간주합니다. 
    • 이걸 chatgpt나 그런걸로 바꿔도 가능할까?
    • 작업별 다운스트림 모델의 경우, 공개적으로 사용 가능한 소스에서 얻은 사전 학습된 가중치로 모델을 초기화하는 T5 모델을 사용합니다. 
    • CoT 프롬프트의 경우, 가능한 경우 Wei(2022)를 따르고 새로운 데이터 세트에 대한 자체 예제를 큐레이팅합니다. 
    • 자세한 구현 내용은 부록 A.1에 포함되어 있습니다.
  • Datasets.
    • 3개의 서로 다른 NLP 작업에 걸쳐 4개의 인기 있는 벤치마크 데이터 세트를 대상으로 실험을 진행했습니다:
      • e-SNLI and ANLI for natural language inference; 
      • CQA for commonsense question answering; SVAMP for arithmetic math word problems. 
    • 자세한 데이터 세트 세부 정보는 부록 A.2에 포함되어 있습니다.

4.1 Reducing training data 

  • 우리는 task-specific 모델들을 학습하는 것에서 Distilling step-by-step을 가장 일반적인 두 가지 방법과 비교합니다.
    • (1) STANDARD FINETUNING when human-labeled examples are available, and
    • (2) STANDARD TASK DISTILLATION when only unlabeled examples are available. 
  • 특히, standard fine-tuning은 standard label supervision을 통해 ground-truth labels이 있는 모델을 미세 조정하는 일반적인 pretrain-then-finetune 패러다임을 나타냅니다.
    • 반면에 unlabeled examples만 사용할 수 있는 경우 standard task distillation는 teacher LLM의 예측된 레이블을 ground-truth로 취급하여 task-specific model을 학습합니다.
    • 즉 레이블링 데이터가 있는 테스크에서는, 그 데이터로 학습한 모델이 standard finetuning인 것이고
    • 레이블링 데이터가 없을 경우, teacher 모델로 만든 데이터(레이블)로 학습한 모델이 standard task distillation인 것
    • Distilling step-by-step은 teacher model로 학습 데이터(근거,레이블)를 만들어서, distilling 시킨 것
  • 다음 실험 세트에서는 작업별 모델을 220M T5-Base 모델로 수정하고 다양한 수의 사용 가능한 교육 예제에서 다양한 방법으로 달성한 작업 성능을 비교합니다.
  • Distilling step-by-step outperforms standard finetuning with much less labeled examples. 
    • human-labeled examples로 미세 조정했을 때, 그림 4는 Distilling step-by-step 이 다양한 수의 레이블이 사용된 예제에서 표준 미세 조정보다 일관되게 더 나은 성능을 달성한다는 것을 보여줍니다.
    • 또한 "Distilling step-by-step"는 레이블이 훨씬 적은 예를 사용하여 표준 미세 조정과 동일한 성능을 달성할 수 있음을 확인합니다.
    • 특히, 전체 eSNLI 데이터 세트의 12.5%만 사용함으로써 단계별 증류는 전체 데이터 세트의 100%로 훈련된 표준 미세 조정을 능가할 수 있습니다.
    • 마찬가지로 ANLI, CQA 및 SVAMP에서 표준 미세 조정을 능가하는 데 필요한 교육 예제에서 각각 75%, 25% 및 20% 감소를 달성했습니다.
    • 즉 Distilling step-by-step은 적은 데이터만으로도 standard fine-tuning과 더 나은 혹은 비슷한 성능을 일관적으로 낸다는 것
    • 이때 학습되는 모델은 T5-base로 동일한걸 사용한듯?
  • Distilling step-by-step outperforms standard distillation with much less unlabeled examples. 
    • unlabeled data 만 사용할 수 있는 경우 Distilling step-by-step를 standard task distillation와 비교합니다.
    • 그림 5에서 finetuning 설정과 전반적으로 유사한 추세를 관찰합니다.
    • 구체적으로, 사용된 unlabeled data 수가 서로 다른 4개 데이터 세트 모두에서 Distilling step-by-step가 standard task distillation보다 성능이 우수함을 확인했습니다.
    • 또한 Distilling step-by-step는 표준 작업 증류를 능가하기 위해 unlabeled data가 훨씬 적게 필요하다는 것을 알 수 있습니다.
    • 예를 들어 e-SNLI 데이터 세트에 대한 교육 예제의 100%를 사용하여 표준 작업 증류로 달성한 성능을 능가하려면 레이블이 지정되지 않은 전체 데이터 세트의 12.5%만 필요합니다.
    • 사람데이터가 없는 경우, 이전의 task distillation보다, 적은 데이터로 좋은 성능을 낼 수 있다는 것!

4.2 Reducing model size 

  • 다음 실험 세트에서는 훈련 세트 크기를 고정(데이터 세트의 100% 사용)하고 "Distilling step-by-step" 및 LLM에 대한 standard 접근 방식으로 훈련된 작은 T5 모델의 다양한 크기를 비교합니다.
    • 학습 데이터가 고정되면, 모델의 크기를 줄여서 좋은 성능을 낼 수 있다.
    • 특히 220M T5-Base, 770M T5-Large 및 11B T5-XXL의 3가지 크기의 T5 모델을 고려합니다.
  • LLM의 경우 (1) FEW-SHOT COT 및 (2) PINTO TUNING의 두 가지 기본 방법을 포함합니다.
    • Few-shot CoT는 CoT demonstrations을 직접 활용하여 540B PaLM이 LLM을 추가로 finetuning하지 않고 최종 레이블을 예측하기 전에 중간 단계를 생성하도록 합니다.
    • PINTO tuning은 Wang이 연구하지 않은 question-answering을 넘어선 tasks을 처리하기 위한 Wang의 확장을 의미합니다.
    • 즉, LLM의 few-shot으로 바로 테스트한 것과 비교한다는 것 같음
    • 이때, Few-shot CoT는 중간단계인 근거?를 같이 생성하는 식으로 추론했다는 거 같다. (즉 학습 데이터 만드는 방법과 동일한거 같은데?)
  • 여기에서 PaLM 모델에서 생성된 출력 위에 220M T5-Base 모델을 미세 조정합니다. 
    • 이는 추가 매개변수가 있는 LLM에 대한 finetuning 방법으로 볼 수 있습니다.
  • 각각 그림 6과 그림 7에서 labeled datasets or unlabeled datasets에 액세스하는 두 가지 광범위한 시나리오에서 실험 결과를 제시합니다.
    • 즉 모델의 크기에 상관없이 Distilling step-by-step이 일반적인 방법보다 좋다는 것을 보여준다.
    • 또한 LLM(540B)의 few-shot CoT등의 방법보다 더 작은 모델로의 distillation이 좋은 결과를 보여준다.
    • 예측을 위해 배포된 모델 크기(x축) 및 해당 작업 성능(y축)별로 각 방법을 플로팅합니다.
  • Distilling step-by-step improves over standard baselines across varying model sizes used. 
    • 그림 6과 그림 7에서 각각 T5 모델의 모든 크기에서 Distilling step-by-step가 standard finetuning and standard distillation 보다 지속적으로 개선되는 것을 볼 수 있습니다.
    • 개선 사항은 ANLI에서 가장 두드러지며 "Distilling step-by-step"는 작업 정확도에서 각각 평균 8% 및 13%의 standard finetuning and distillation를 능가합니다.
  • Distilling step-by-step outperforms LLMs by using much smaller task-specific models.
    • 그림 6에서 human-labeled datasets를 사용할 수 있는 경우 "Distilling step-by-step"는 훨씬 더 작은 T5 모델을 사용하여 고려한 4개 데이터 세트 모두에서 Few-shot CoT 및 PINTO 조정보다 항상 성능이 뛰어납니다.
    • 예를 들어, eSNLI에서는 220M(2000배 이상 작은) T5 모델을, ANLI와 SVAMP에서는 770M(700배 이상 작은) T5 모델을, CQA에서는 11B(45배 이상 작은) T5 모델을 사용하여 540B PaLM 모델의 Few-shot CoT보다 더 나은 성능을 달성할 수 있습니다. 
    • 이러한 결과는 PINTO tuning을 통해 사용 가능한 라벨링 데이터에 대해 540B PaLM 모델을 더욱 세밀하게 튜닝해도 그대로 유지됩니다.
  • 그림 7에서 unlabeled examples만 활용했을 때, Distilling step-by-step는 4개 데이터 세트 중 3개 데이터 세트에서 교사 LLM보다 성능이 뛰어납니다. 
  • 특히, Distilling step-by-step는 PaLM의 3%도 안 되는 11B T5를 사용하여 540B PaLM 모델의 Few-shot CoT 성능을 능가합니다. 
  • distilled model이 성능이 저조한 SVAMP에서는 데이터 세트의 데이터 포인트 수가 상대적으로 적기 때문에(즉, 800개) 성능 차이가 발생한다는 가설을 세웠습니다. 
    • 이에 대한 대응으로, 다음 그림과 같이 성능 격차를 줄이기 위해 additional unlabeled examples 로 데이터 집합을 보강할 것을 제안합니다.
    • 데이터 수가 너무 적으면, 제안 방법으로 student 모델이 teacher 모델을 이기기 어렵다.
  • Unlabeled data augmentation further improves Distilling step-by-step. 
    • ASDiv 데이터 세트의 unlabeled examples로 SVAMP 교육 세트를 보강합니다.
    • ASDiv 데이터 세트에는 총 2,305개의 예가 포함되어 있으며 각 예는 SVAMP의 것과 유사한 수학 단어 문제입니다.
    • SVAMP의 그림 7에서는 훈련 세트를 ASDiv로 보강한 후 11B T5 모델을 사용한 Distilling step-by-step and standard task distillation의 성능을 보여줍니다.
    • data augmentation가 단계별 증류 및 표준 작업 증류 모두의 성능을 크게 향상시키는 것을 볼 수 있습니다.
    • 그러나 추가된 unlabeled examples가 있더라도 standard task distillation는 여전히 Few-shot CoT보다 성능이 낮습니다.
    • 반면, Distilling step-by-step는 추가된 예제의 가치를 훨씬 더 효율적으로 활용하여 540B PaLM의 3%도 안 되는 크기의 T5 모델을 사용하여 동일한 성능 수준의 Few-shot CoT를 달성할 수 있습니다.
    • 즉, 다른 데이터세트을 혼합하여 data augmentation으로 student(small) 모델을 학습시킬 데이터를 추가하면, 성능이 올라간다.
    • 이 때, Distilling step-by-step은 LLM만큼 성능이 올라가나, standard 방법은 효과가 떨어진다는 것
    • 뭐 어쨋든 standard distillation보다 Distilling step-by-step이 효과적이라는 것이고
    • 데이터가 너무 적으면 좀 더 만들어서 학습시키는게 좋다는 것

4.3 Outperforming LLMs using minimum model size and least training data

  • 여기서는 LLM의 성능을 기준으로 훈련 예제 수와 배포된 모델 크기 측면에서 'Distilling step-by-step'와 standard finetuning/distillation가 LLM을 능가하는 데 필요한 가장 효율적인 리소스 요구 사항을 살펴봅니다. 
  • 그림 8과 그림 9에서 각각 human-labeled setting and unlabeled setting에 따른 결과를 제시합니다. 
  • (1) 사용된 훈련 예제 수(x축), (2) 달성한 최종 작업 성과(y축), (3) 모델의 크기(음영 처리된 영역의 크기로 시각화)에 따라 다양한 결과 모델을 플로팅하여 결과를 시각화합니다.
  • Distilling step-by-step outperforms LLMs with much smaller models by using less data. 
    • 그림 8의 모든 데이터 세트에서 Distilling stepby-step은 사용 가능한 교육 예제의 하위 집합만 사용하는 훨씬 더 작은 T5 모델로 PaLM의 Few-shot CoT보다 성능이 뛰어납니다.
    • 구체적으로, e-SNLI에서 단계별 증류는 2000배 더 작은(220M T5) 모델과 전체 데이터 세트의 0.1%에 불과한 Few-shot CoT보다 더 나은 성능을 달성할 수 있습니다.
    • unlabeled datasets만 사용할 수 있는 그림 9에서 Distilling step-by-step가 대부분의 경우 더 작은 모델과 더 적은 데이터로 Few-shot CoT를 능가할 수 있는 동일한 추세를 관찰합니다.
    • 예를 들어, ANLI에서 단계별 증류는 45배 더 작은 모델과 레이블이 지정되지 않은 전체 세트의 50%로 LLM보다 성능이 뛰어납니다.
  • Standard finetuning and distillation require more data and larger model. 
    • 마지막으로 그림 8과 그림 9에서 LLM의 성능에 맞추기 위해 standard finetuning and distillation에는 더 많은 데이터 또는 더 큰 모델이 필요한 경우가 많다는 것을 알 수 있습니다.
    • 예를 들어, 그림 8의 e-SNLI에서 단계별 증류는 데이터 세트의 0.1%만 사용하여 LLM을 능가하는 반면 표준 미세 조정에는 성능과 일치시키기 위해 더 많은 데이터가 필요합니다.
    • 또한 그림 8의 ANLI에서 Distilling step-by-step는 훈련 세트의 80%만 사용하여 770M 모델을 사용하는 PaLM을 능가하는 반면, 
    • standard finetuning은 전체 데이터 세트를 사용해도 LLM과 일치하지 못하므로 성능 격차를 줄이기 위해 더 큰 모델이 필요하다는 것을 관찰할 수 있습니다.

5 Discussion

  • 작은 task-specific models 학습할 때 informative supervision으로 LLM에서 근거를 추출하기 위해 Distilling step-by-step 를 제안합니다.
  • 우리는 Distilling step-by-step이 더 작은 task-specific 모델을 선별하는 데 필요한 훈련 데이터 세트를 줄인다는 것을 보여줍니다. 
  • 또한 원래 LLM의 성능을 달성하거나 능가하는 데 필요한 모델 크기를 줄입니다.
  • Distilling step-by-step은 기존 방법에 비해 리소스 효율적인 training-to-deployment 패러다임을 제안합니다.

Limitations

  • 이러한 접근 방식에는 여러 가지 한계가 있습니다. 
  • 첫째, 사용자가 몇 개의 example demonstrations(모든 작업에 대해 10회 정도)를 만들어야만 few-shot CoT prompting mechanism을 사용할 수 있습니다. 
    • 이 한계는 user-annotated demonstrations없어도 rationales를 도출할 수 있다는 최근의 연구 결과를 활용하면 개선할 수 있습니다. 
  • 둘째, LLM 추론을 사용한 성공 사례를 관찰한 결과, 더 복잡한 추론 및 계획 작업에서는 LLM이 제한된 추론 능력을 보인다는 증거가 있습니다. 
  • 향후 연구에서는 근거의 품질이 증류 단계별로 어떤 영향을 미치는지 특성화해야 합니다.

Reference

댓글