Language Models are Few-Shot Learners

김동하·2023년 12월 11일

paper_review

목록 보기
6/11

https://proceedings.neurips.cc/paper/2020/file/1457c0d6bfcb4967418bfb8ac142f64a-Paper.pdf

핵심 요약

  • 대규모 텍스트 코퍼스에서 사전 학습된 GPT-3 언어 모델을 사용하여, Few-shot 학습을 통해 NLP 작업에 대한 성능을 향상 시키는 것이 가능하다는 것을 보여줍니다.
  • GPT-3는 이전의 상태 최대의 세부 조정 방식과 경쟁할 만큼 강력한 성능을 보이며, 인간이 몇 가지 예제나 간단한 지시로 수행할 수 있는 언어 작업도 수행할 수 있습니다.
  • 그러나 GPT-3의 Few-shot 학습이 여전히 어려운 데이터 세트도 있으며, 대규모의 웹 코퍼스 학습과 관련된 방법론적 문제도 있습니다.
  • GPT-3는 인간이 작성한 기사와 거의 구분할 수 없는 뉴스 기사 샘플을 생성할 수 있습니다.

1. Introduction

  • 최근 NLP 시스템에서는 사전 학습 된 언어 표현을 사용하는 추세이며, task-specific한 모델 구조 대신 task-agnostic한 방식으로 적용되고 있습니다.
  • 이러한 방식은 독해, 질의 응답, textual entailment, 등의 어려운 NLP task에서 발전을 이루고 있습니다.
  • 하지만 이런 방식의 한계는 여전히 task-specific한 데이터 셋과 미세조정(fine-tuning) 과정이 필요하다는 것입니다. 따라서 이러한 한계를 극복하는 것은 매우 중요합니다.
    • 언어 모델의 활용성을 제한하는 것은 새 task마다 레이블링이 전부 되어 있는 큰 규모의 데이터 셋을 필요로 한다는 것이고 이를 구하는 것은 쉽지 않습니다.
    • 학습 데이터에 존재하는 거짓 상관 관계를 활용할 수 있는 가능성이 모델의 표현력과 학습 분포의 협소함에 따라 크게 증가합니다. 따라서, 사전 학습-미세조정 패러다임은 일반화에 한계가 있습니다.
    • 인간은 대부분의 언어 task를 배우기 위해 학습을 위한 대규모 데이터 셋이 필요하지 않고, 적은 수의 지시문이나 예시로도 새로운 task를 수행할 수 있습니다. 이러한 적응 능력은 NLP 시스템에서도 중요하며, 유동적이고 일반성을 갖도록 발전해야 합니다.
  • 이러한 문제들을 다루는 가능성 있는 방법은 meta-learning입니다. meta-learning은 언어 모델의 컨텍스트에서 모델이 학습하는 동안 여러 기술과 패턴 인식 능력을 키우고, 추론 시간에는 이를 원하는 task에 빠르게 적용 시키거나 인식 시키는 방법입니다.

img

그림 1 : 언어 모델 메타 학습

  • 언어 모델은 Unsupervised learning을 하는 동안 내부 반복 과정을 통해 기술과 패턴 인식 능력을 키우고, in-context learning을 통해 각 sequence 내에서 여러 하위 작업을 수행합니다.
  • 최근 연구에서는 task specification을 사용하여 모델이 자연어 지시문과 task 설명에 따라 다음에 무엇이 올 것인지를 예측합니다.
  • 하지만 이 방법은 여전히 미세조정에 비해 성능이 떨어지는 문제가 있습니다.
  • 언어 모델의 크기가 증가함에 따라 텍스트 합성과 downstream NLP task에서 상당한 성능 개선이 있었으며, 이는 모델의 in-context learning 능력과 관련이 있다고 볼 수 있습니다. 따라서 in-context learning 능력은 모델의 scale이 증가함에 따라 증가할 것으로 기대됩니다.
  • 논문에서는 1750억 개의 parameter를 가진 자기 회귀 언어 모델(GPT-3)을 사용하여 학습 셋에 포함되어 있지 않은 다양한 자연어처리 데이터 셋에 대해 평가하고, 모델이 few-shot learning, one-shot learning, zero-shot learning 조건에서 얼마나 잘 적응하는지를 측정합니다.
  • 이를 통해 GPT-3의 in-context learning 능력을 평가합니다.

img

그림 2 : 모델 크기에 따른 정확도

  • 그림 2는 few-shot learning 조건에서 모델의 성능이 문맥 내 예시의 수(K)와 모델 크기와 관련하여 어떻게 변화하는지 보여줍니다 .GPT-3는 zero-shot과 one-shot 조건에서 매우 우수한 성능을 보이며, few-shot 조건에서도 SOTA와 비슷하거나 더 나은 결과를 보입니다.
  • 예를 들어, CoQA task에서 zero-shot에서는 81.5 F1을, few-shot에서는 85.0 F1을 달성하였습니다. TriviaQA task에서도 비슷한 경향을 보입니다.
  • GPT-3은 단어해독, 연산, 추론, 빠른 적응력 등 다양한 task에서 one-shot과 few-shot에서 우수한 성능을 보여주고, few-shot에서는 사람이 쓴 것과 구분하기 어려운 기사를 생성할 수 있다는 것을 보여줍니다.
  • 하지만 ANLI, RACE, QuAC 등의 일부 task에서는 한계가 있어서, 이를 개선하기 위한 연구의 필요성을 제기하고 있습니다. 또한, 모델 크기, 문맥 내 예시의 수와 관련한 일반적인 경향성이 있어 큰 모델일수록 더 좋은 결과를 보여준다는 것도 밝혀졌습니다.

img

그림 3 : 42개의 정확도로 표시된 모든 벤치마크의 총 성능

  • 논문에서는 GPT-3 모델의 성능과 관련된 여러 가지 요소들에 대해 연구되었습니다.
  • 이 중에서는 데이터 오염(학습 데이터 셋과 테스트 데이터 셋이 겹치는 문제)에 대한 연구도 있었습니다.
  • 또한, 작은 모델에서 부터 큰 모델까지 다양한 크기의 모델을 사용하여 zero, one, few-shot에서 GPT-3의 성능을 비교하였습니다. 성능은 모델 크기에 따라 증가하며, 이는 더 큰 모델은 더 능숙한 mera-learner임을 나타냅니다.

2. Approach

  • 논문에서는 GPT-2 모델의 기본 접근 방식과 유사하지만 모델의 크기, 데이터 셋의 크기와 다양성, 학습량을 대폭 늘렸습니다. 또한 in-context learning을 위해 새로운 체계적인 방법을 제안하였습니다.
  • 이를 평가하기 위해 다양한 설정을 정의하고 대조하였는데, 이 설정은 task-specific한 데이터에 얼마나 의존하는지를 보는 것이 목적입니다. 이러한 설정은 총 4가지로 나눌 수 있습니다.
    • Fine-Tuning (FT)
      • 사전학습된 모델의 가중치를 supervised learning 데이터 셋으로 학습시켜 원하는 task에 맞도록 업데이트하는 접근법입니다.
      • FT의 주요 장점은 많은 벤치마크에서 강력한 성능을 보인다는 것입니다. 주요 단점으로는 각 task마다 새로운 대규모 데이터 셋이 필요하고, 일반화 불가능성, 과도한 학습 등이 있습니다.
      • GPT-3는 task-agnostic 성능에 초점을 맞추어 FT를 사용하지 않았지만, 원칙적으로 FT가 가능하며 이는 미래의 연구 방향으로 유망합니다.
    • Few-Shot (FS)
      • 모델이 가중치 업데이트를 허용하지 않으면서 추론 시간에 task에 대한 몇 가지 데모를 conditioning으로 제공 받는 설정을 말합니다.
      • 일반적인 데이터 셋의 경우, few-shot은 context와 completion(예: 영어 문장과 프랑스어 번역)으로 구성된 예시에서 K개의 context와 completion 예시를 제공하고, 마지막 예시에서 모델이 completion을 제공해야 합니다.
      • 장점은 task-specific 데이터의 필요성이 크게 줄어들고, 크고 좁은 fine-tuning 데이터 셋에서 지나치게 좁은 분포를 학습할 가능성이 줄어든다는 것입니다. 단점은 이 방법으로 얻은 결과 가 지금까지 최첨단의 fine-tuned 모델보다 훨씬 나쁘다는 것입니다. 또한, 소량의 task-specific 데이터가 여전히 필요합니다.
    • One-Shot(1S)
      • few-shot과 유사하지만, 하나의 데모만 허용되며, 자연어로 된 태스크 설명이 추가됩니다. 1S는 일부 태스크가 인간에게 전달되는 방식과 가장 일치하기 때문에 few-shot과 구분합니다.
    • Zero-Shot
      • 학습은 One-Shot과 유사하지만 시연 없이 모델에게 작업을 설명하는 자연어 지침만 주어진다는 차이점이 있습니다. 이 방법은 최대한의 편의성과 견고성, 가능성을 제공하지만 가장 어려운 설정 중 하나이며, 일부 경우 없이 task 형식을 이해하는 데 어려움을 겪을 수 있습니다.
      • 이러한 설정은 일부 경우 인간이 작업을 수행하는 방식과 가장 유사합니다.

img

그림 4 : 기존의 미세 조정과 대조되는 Zero-shot, one-shot 및 few-shot

  • 그림4는 4가지 번역 방법(Zero, One, Few-shot, Fine-tuned)을 비교하기 위해 제시되었으며, 이 논문은 zero-shot, one-shot, few-shot에 초점을 맞추고 있지만 경쟁 상대로 보는 것이 아닌 비교 상대로 보기 위해 사용됩니다.
  • 목표는 다른 문제 세팅에서 효율적인 성능과 적은 샘플로도 효과적인 결과를 얻기 위한 균형을 찾는 것입니다. 최종 목표는 인간과 유사한 one-shot 또는 zero-shot에서의 성능을 개선하는 것입니다.

2.1 Model and Architectures

  • 이 논문은 GPT-2와 동일한 구조를 가지지만, Sparse Transformer와 비슷한 방식으로 dense/sparse한 locally banded attention pattern을 번갈아 사용하는 모델을 소개합니다.
  • 8가지 다른 크기의 모델을 학습시키고 가장 큰 것을 GPT-3라 부르며, 이를 통해 모델 크기와 기계 학습 성능의 관계를 분석하고 downstream 언어 과제를 해결하는 데에 유용하게 사용할 수 있다는 것을 보입니다.

img

테이블 1 : 학습한 모델의 크기, 아키텍처 및 학습 하이퍼 매개변수(토큰의 배치 크기 및 learning rate)

  • 테이블 1은 8가지 모델의 크기와 구조를 보여줍니다. nparamsn_{params}는 학습 가능한 parameter의 전체 개수, nlayersn_{layers}는 레이어 수, dmodeld_{model}은 각 bottleneck 레이어 안에 있는 unit의 수(이 논문에서는 항상 dff=4×dmodeld_{ff}=4×d_{model}), dheadd_{head}는 각 attention head의 차원입니다. 모든 모델은 nctxn_{ctx}=2048 토큰을 가집니다.

2.2 Training Dataset

  • 논문에서는 거의 1조 개의 단어로 구성된 Common Crawl 데이터 셋을 사용하여 언어 모델을 학습 시켰습니다. 하지만 Common Crawl 데이터 셋은 품질이 낮은 경우가 많기 때문에 고품질 출처와 연관성이 있는 데이터만을 받아 정제하고, 중복 제거 작업을 수행하며, 고품질 출처로 알려진 말뭉치를 추가하여 다양성을 증가 시켰습니다.
  • 추가 데이터 셋으로는 WebText, Books1와 Books2, 영어 위키피디아가 사용되었습니다. 이러한 데이터 전처리 과정은 온전성을 보존하면서 과적합을 정확히 측정하기 위해 수행되었습니다.

img

테이블 2 : GPT-3 학습에 사용되는 데이터 세트

  • 테이블 2는 GPT-3 모델의 혼합된 데이터셋 구성을 보여주고 있습니다. 각각의 데이터셋은 다른 크기와 품질을 갖고 있습니다.
  • 학습에서는 고품질 데이터 셋이 많이 선택되었으며, 데이터 셋의 크기와는 비례하지 않는 사용이 이루어졌습니다. 이를 통해 고품질과 과적합 사이에서 trade-off를 조절하였습니다.

2.3 Training Process

  • 논문에서는 학습하는 동안 gradient noise scale을 측정하여 batch size를 선택하는 기준으로 사용하였습니다.
  • 큰 모델일수록 더 큰 batch를 사용하되, learning rate는 더 작게 설정하였으며, 메모리 부족 없이 더 큰 모델을 학습 시키기 위해, 모델 병렬화와 네트워크의 레이어에서 모델 병렬화를 섞어 사용하였습니다.
  • 모든 모델은 고대역 클러스터의 일부분으로 V100 GPU에서 학습되었다.

2.4 Evaluation

  • Few-shot learning에서는 각 evaluation 예제마다 training set에서 K개의 샘플을 뽑아 평가하며, 이 때 K는 모델의 context window에 따라 0~가 될 수 있습니다.
  • LAMBADA와 StoryCloze에서는 supervised learning set이 없으므로 train-eval 대신 dev-test set을 사용하였고, Original Winograd는 set이 하나뿐이므로 같은 곳에서 뽑았습니다. 보통 10~ 100개의 샘플에 맞춰서 K를 선택하며, 큰 K가 항상 좋지는 않기 때문에 분리된 dev/test set이 있다면 적은 K를 dev set에 사용하여 최고의 값을 test set에서 사용합니다.
  • 일부에서는 demonstration에 더해 자연어 지시(prompt)를 사용합니다. 각 모델 크기와 학습 세팅(zero, one, few-shot)에 따라 test set에서의 최종 결과가 나와 있으며, test set이 비공개인 경우 dev set으로 결과를 얻었습니다.

3. Results

img

그림 5 : 컴퓨팅을 통한 원활한 성능 확장

  • 그림 5에서는 Section 2에서 소개한 8개 모델(1750억 개 매개변수 GPT-3 및 7개 작은 모델)의 학습 곡선을 보여주며, 작은 모델 6개도 추가로 포함되어 있습니다.
  • 효율적인 학습 컴퓨팅을 활용하면 언어 모델링 성능은 power-law를 따르는 것으로 관찰되었으며, cross-entropy loss의 개선이 자연어 태스크의 넓은 스펙트럼에서 일관된 성능 향상으로 이어짐을 확인할 수 있습니다.
  • 9개의 범주로 그룹화 된 다양한 데이터 셋에서 8개 모델을 평가합니다.대략 로그-균등 간격으로 크기가 다른 네 개의 언어 모델을 훈련하고 벤치마크 하여 각 모델의 아키텍처와 특징을 비교하였습니다.

3.1 Language Modeling, Cloze, and Completion Tasks

  • 이 섹션에서는 GPT-3의 언어 모델링과 관련된 task, 즉 특정 단어 예측, 문장 또는 단락 완성, 텍스트 조각의 가능한 완성 중에서 선택하는 작업 등에 대한 성능을 테스트합니다.
  • Language Modeling
    • Penn Tree Bank (PTB) 데이터 셋에서 제로샷 펄플렉서티를 측정하였습니다. PTB는 트레이닝 데이터에 포함되지 않은 데이터 셋으로, 위키피디아와 10억 단어 벤치마크는 제외되었습니다.
    • PTB에서 우리의 가장 큰 모델은 20.50의 펄플렉서티를 달성하여, 새로운 SOTA를 세웠습니다. PTB는 전통적인 언어 모델링 데이터셋으로, 원샷 또는 퓨샷 평가를 정의하는 뚜렷한 예제 구분이 없기 때문에 제로샷만 측정하였습니다.
  • LAMBADA
    • LAMBADA 데이터셋은 모델이 문맥을 읽는 것을 필요로하는 문장의 마지막 단어를 예측하도록 요구하며, 이는 텍스트에서 장거리 종속성 모델링을 테스트합니다.
    • 제로샷 설정에서 GPT-3는 LAMBADA에서 76%의 결과를 얻으며, 이전 최고 성능 대비 8%의 향상을 이룹니다.
    • LAMBADA는 문장의 마지막 단어를 채우는 작업을 수행하므로 이를 cloze-test로 취급하여 학습시키는 few-shot learning 방법을 사용합니다.
    • 다음과 같은 빈칸 채우기 형식을 사용합니다.
      • Alice was friends with Bob. Alice went to visit her friend . → Bob
      • George bought some baseball equipment, a ball, a glove, and a . →
    • GPT-3는 퓨샷 세팅에서 86.4%의 정확도를 달성하여 이전 최고 성능 대비 18% 이상 개선되었습니다.
    • 원샷에서는 fill-in-the-blank 방식이 제로샷 세팅보다 성능이 낮으며, 이는 패턴을 인식하기 위해 여러 예제가 필요하기 때문일 수 있습니다.
    • LAMBADA 데이터 셋의 검증 집합에 오염이 있었지만, 성능에는 영향이 미미했습니다.
  • HellaSwag
    • HellaSwag 데이터 셋은 이야기나 지시 사항에서 최적의 끝맺음을 선택하는 것을 포함하며, 이는 인간에게는 쉽지만 언어 모델에게는 어렵게 구성되어 있습니다.
    • GPT-3는 이 데이터셋에서 78.1%의 정확도를 달성하여 이전의 언어 모델 대비 우수한 성능을 보였지만, 최적화된 멀티태스크 모델 ALUM 모델의 85.6%에는 미치지 못했습니다.
  • StoryCloze
    • GPT-3 모델이 다섯 문장으로 이루어진 이야기의 올바른 끝맺음을 선택하는 StoryCloze 2016 데이터 셋에서 평가하였습니다.
    • 제로샷에서 83.2%의 정확도를 달성하였고, 퓨샷에서는 87.7%의 정확도를 달성하였습니다. 이전 제로샷 결과 대비 10% 정도 향상되었지만, 최적화된 BERT 모델보다는 여전히 4.1% 낮은 성능을 보입니다.

3.2 Closed Book Question Answering

  • 여기서는 GPT-3이 광범위한 사실 지식에 대한 질문에 대한 성능을 평가하는 것에 대해 설명합니다.
  • 정보 검색 시스템을 사용하여 오픈북 또는 closed-book에서 GPT-3을 평가하였으며, 자연스러운 질문, WebQuestions, TriviaQA 데이터 세트에서 성능을 측정하였습니다.
  • GPT-3는 TriviaQ을 사용 했을 때, 제로샷에서 64.3%, 원샷에서 68.0%, 퓨샷에서 71.2%의 성능을 보여주었습니다. 이는 T5-11B 모델보다 우수한 결과를 보입니다.
  • WebQuestions 데이터 셋을 사용했을 때, GPT3는 제로샷에서 14.4%, 원샷에서 25.3%, 퓨샷에서 41.5%의 성능을 보였습니다. 이는 미세 조정된 T5-11B에서 37.4%, Q&A 관련 사전 학습 절차를 사용하는 미세 조정된 T5-11B+SSM에서 44.7%와 비교해 볼만 합니다.
  • Natural Questions에서도 GPT-3는 제로샷에서 14.6%, 원샷에서 23.0%, 퓨샷에서 29.9%의 성능을 보여, 미세 조정된 T5-11B+SSM의 36.6%와 비교됩니다.
  • GPT-3의 원샷 성능은 하나의 데이터 셋에서 오픈 도메인 미세 조정 SOTA와 일치하며, 다른 두 데이터 셋에서는 closed-book SOTA의 성능에 근접합니다.
  • 성능은 세 데이터 셋 모두에서 모델 크기에 따라 매우 원활하게 확장됩니다.

img

그림 6 : TriviaQA에서 GPT3의 성능

3.3 Translation

  • GPT-2에서는 용량 문제로 영어만 사용했지만, GPT-3에서는 크기가 훨씬 커져 다 언어 데이터 셋을 사용해 다 언어 역량을 가지게 되었습니다.
  • Common Crawl 데이터의 93%는 영어이지만 7%는 다른 언어를 포함합니다. GPT-3는 영어 이외에도 독일어와 루마니아어에 대해 학습하여 translation 능력을 향상 시켰습니다.
  • GPT-3은 다른 모델에 비해 좋지 않은 결과를 보여줄 수 있지만, 한 개의 예시에서는 성능이 향상되었으며 이전 연구와 유사한 성능을 보입니다.
  • GPT-3은 여러 언어들이 단어, 문장, 문서 단위로 자연스레 섞인 데이터를 그냥 학습하였습니다. 또한 어느 특별한 문제 만을 위해 특별 제작되지 않았습니다.
  • 결과는 기존 NMT 모델에 비해 좋지 않지만, 단 한 개의 예시만이 주어지는 task에서는 7 BLEU score만큼 향상되었으며 이전 연구와 거의 근접한 성능을 보여줍니다.

img

테이블 3 : Few-shot GPT-3

3.4 Winograd-Style Tasks

  • Winograd 스키마 챌린지는 대명사가 문법적으로 모호하지만 의미상 인간에게 모호하지 않을 때 대명사가 참조하는 단어를 결정하는 것과 관련된 NLP의 고전적인 태스크입니다.
  • 최근 미세 조정된 언어 모델은 원래 Winograd 데이터 세트에서 인간에 가까운 성능을 달성했지만 어려운 Winogrande 데이터 세트에서는 여전히 인간에 비해 성능이 낮습니다.
  • GPT-3는 제로샷, 원샷, 퓨샷에서 88.3%, 89.7%, 88.6%를 달성하여 모든 경우에 인간 성능에 몇 포인트 아래에서 강력한 결과를 달성합니다.
  • 일부 훈련 데이터에서 오염된 Winograd 스키마를 찾았지만 결과에 미치는 영향은 적다는 점도 주목할 만 합니다.

img

테이블 4 : Winograd 스키마의 WSC273 버전과 Winogrande 데이터 세트에 대한 결과

img

그림 7 : 모델 용량 확장에 따른 Winogrande 데이터 세트의 제로, 원, 퓨샷의 성능

3.5 Common Sense Reasoning

  • 문장 완성, 독해 또는 광범위한 지식 질문 답변과 구별되는 물리적 또는 과학적 추론을 포착하려고 시도하는 세 가지 데이터 세트를 고려합니다.
  • GPT-3는 물리학적이거나 과학적 추론이 필요한 PhysicalQA (PIQA), ARC, OpenBookQA와 같은 세 가지 다른 데이터 셋에서 높은 정확도를 달성했습니다.
  • PIQA에서 GPT-3는 제로샷 81.0%, 원샷 80.5%, 퓨샷 82.8%의 정확도로 SOTA 모델인 미세 조정된 RoBERTa의 79.4% 능가했습니다.
  • ARC에서 GPT-3는 제로샷 51.4%, 원샷 53.2%, 퓨샷 51.5%의 정확도를 달성하여 SOTA 모델의 성능에 근접합니다.
  • OpenBookQA에서 GPT-3는 크게 개선되었지만 여전히 20점 이상 뒤쳐졌습니다.
  • GPT-3의 결과는 좋지만, 전반적인 최고 성능인 UnifiedQA가 달성한 성능보다 여전히 낮습니다.

img

테이블 5 : 세 가지 상식적 추론 태스크에 대한 GPT-3 결과

img

그림 8 : 제로샷, 원샷, 퓨샷에서 PIQA에 대한 GPT-3의 결과

3.6 Reading Comprehension

  • 독해력 과제에 대해 GPT-3를 평가합니다. 대화 및 단일 질문에서 추상적, 객관식, 범위 기반 답변 형식을 포함하는 5개의 데이터 세트 모음을 사용하였습니다.
  • GPT-3는 이러한 다양한 응답 형식의 데이터 세트에서 성능이 크게 달랐습니다.
  • CoQA 데이터 세트에서는 인간 기준선과 거의 비슷한 성능을 보이지만 QuAC 데이터 세트에서는 ELMo 기준선보다 성능이 낮습니다.
  • DROP 데이터 세트에서는 BERT 기준선보다 뛰어난 성능을 보이지만 여전히 인간의 성능보다는 낮습니다.
  • SQuAD 2.0 데이터 세트에서는 제로샷에 비해 거의 10 F1(69.8로) 향상되는 퓨샷 학습 기능을 보여줍니다. 이를 통해 최상의 미세 조정 결과를 약간 능가할 수 있습니다.
  • RACE 데이터 세트에서는 성능이 상대적으로 약하며, 문맥 표현을 활용한 초기 작업에서만 경쟁력이 있습니다. 여전히 SOTA보다 45% 뒤떨어져 있습니다.

img

그림 9 : CoQA 읽기 이해 작업에 대한 GPT-3 결과

3.7 SuperGLUE

  • SuperBLUE 벤치마크 테스트를 통해 GPT-3의 결과를 BERT와 RoBERTa와 비교하고, few-shot에서는 32개의 예제를 사용했습니다.
  • GPT-3은 일부 데이터 셋에서 SOTA에 근접한 결과를 보였지만, WiC 데이터 셋에서는 49.4%의 성능만 보여주었습니다.

img

표 6 : 미세 조정된 기준선, SOTA와 비교한 SuperGLUE의 GPT-3 성능

img

그림 10 : 모델 크기와 컨텍스트 예제 수에 따른 SuperGLUE의 성능 증가

3.8 NLI

  • 'Natural Language Inference (NLI)은 두 문장 간의 관계를 이해하는 것을 측정합니다.
  • 일반적으로 2~3개의 분류 문제로 모델은 두 번째 문장이 첫 번째 문장과 같은 논리를 따르는지, 모순되는지, 혹은 그럴지도 모를지(중립적)를 판별합니다.
  • SuperGLUE는 NLI dataset으로 이진 분류 RTE를 포함하며, GPT-3는 56%의 정확도를 기록하였으나 퓨샷에서는 single-task 미세조정 BERT Large와 비슷합니다.
  • ANLI 데이터 셋에서는 GPT-3보다 작은 모델은 전부 형편없는 결과를 보이며, 전체 결과는 그림 11에서 확인할 수 있습니다.

img

그림 11 : ANLI 라운드 3에서 GPT-3의 성능

3.9 Synthetic and Qualitative Tasks

  • GPT-3의 퓨샷(또는 제로 및 원샷) 능력을 조사하기 위해 간단한 계산 추론, 단어 재정렬/스크램블링, SAT 스타일 유추 문제, 새 단어 사용, 영문법 수정, 뉴스 기사 생성 등의 작업을 생성하여 테스트하고자 합니다.

  • Arithmetic

    • 특정 태스크에 대한 학습 없이 간단한 산술 연산을 수행하는 GPT-3의 능력을 테스트하기 위해 GPT-3에게 자연어로 간단한 산술 문제를 묻는 10가지 테스트로 구성됩니다.
    • GPT-3는 2/3자리 계산에서 거의 100%에 가까운 정확도를 보여줬습니다. 하지만 자리수가 많아질수록 성능이 떨어지며, 2자리 곱셈에서는 29.2%, 1자리 복합 연산에서는 21.3%의 정확도를 보였습니다.
    • 종합적으로는 GPT-3는 보통 수준의 복잡한 산술 연산에서 합리적인 성능을 보입니다.

    img

    그림 12 : 다양한 크기의 모델의 퓨샷에 대한 10개의 모든 산술 태스크에 대한 결과

  • Word Scrambling and Manipulation Tasks

    • GPT-3의 새로운 기호 조작(symbolic manipulation) 학습 능력을 테스트하기 위해 5개의 "문자 조작" 태스크를 구성합니다. 각 태스크에는 문자 뒤섞기, 추가 또는 삭제의 조합으로 왜곡된 단어를 모델에 제공하고 원래 단어를 복구하도록 요청하는 작업이 포함됩니다.
    • 모델의 크기가 커질수록 성능도 조금씩 증가함을 확인하였지만 단어를 뒤집는 태스크에서는 모든 모델이 실패하였고, 원샷, 제로샷에서는 성능이 매우 떨어졌습니다.
    • 여기서 “문맥 내 정보”는 큰 모델일수록 더 잘 활용한다는 것을 보였습니다. 이것은 BPE token 뿐 아니라 하부 구조를 잘 이해하고 분석하였음을 알 수 있습니다.

    img

    그림 13 : 다양한 크기의 모델에 대한 5개의 단어 스크램블링 작업에 대한 퓨샷 성능

  • SAT Analogies

    • GPT-3는 SAT 유추 문제 세트를 포함한 다양한 태스크에서 테스트 되었습니다.
    • SAT 유추 문제에서는 대학 지원자 평균 점수보다 높은 정확도를 보여주었으며, 모델 크기가 커질수록 성능이 개선됨을 보였습니다.
    • 이러한 결과는 GPT-3의 언어 이해 능력을 강조하며, 모델의 규모가 작은 태스크에서는 제한적인 성능을 보인다는 것을 시사합니다.

    img

    그림 14 : 다양한 크기의 모델에 대한 SAT 유추 태스크의 제로, 원, 퓨샷 성능.

  • News Article Generation

    • 생성적 언어모델인 GPT-3을 질적으로 평가하기 위해 뉴스기사의 첫 문장을 주고 이후 문장을 생성하는 방법을 사용합니다. 이를 위해 모델은 이전 3개의 뉴스기사를 학습에 포함시킵니다.

    • 이렇게 생성된 기사를 사람들이 판별하여 기계가 쓴 것인지 사람이 쓴 것인지 구별합니다.

    • 평가 지표는 정답률이며, 정답률이 50%에 가까워질수록 기계가 사람처럼 잘 썼다는 것을 의미합니다.

    • 모델의 크기가 커질수록 기계와 사람의 구별이 점점 어려워진다.

      img

      표 7 : 짧은(~200단어) 뉴스 기사가 생성된 모델인지 여부를 식별하는 사람의 정확도

      img

      그림 15 : 뉴스 기사가 모델 생성인지 여부를 식별하는 사람들의 능력

  • Learning and Using Novel Words

    • 발달적 언어학에서 연구하는 한 태스크는 새로운 단어를 학습하고 사용하는 능력을 측정하는 것입니다. 이를 위해, 존재하지 않는 단어를 정의하고 이를 문장에서 사용해 보도록 합니다.

    • 모든 정의는 사람이 직접 하였습니다. 첫 번째 답은 사람이 정의하고 나머지는 GPT-3이 정의했습니다.

    • 실험 결과, GPT-3은 모든 경우에서 정확하거나 합리적인 수준으로 사용하였으며, 새로운 단어를 사용하는 능력이 꽤 수준이 있는 것으로 나타났습니다.

      img

      그림 6 : 문장에서 새 단어를 사용하는 퓨샷의 태스크에 대한 대표적인 GPT-3 완성

  • Correcting English Grammar

    • 영어 문법 교정은 퓨샷 학습에 적합한 또 다른 task입니다.
    • "잘못된 영어 입력: <문장>\n 올바른 영어 출력: <문장>" 형식의 프롬프트를 GPT-3에 제공하여 이를 퓨샷에서 테스트합니다.
    • GPT-3에 사람이 만든 교정을 하나 제공하고, 그 후 5개의 교정을 더 요청합니다.

4. Conclustion

  • 제로샷, 원샷, 퓨샷에서 매우 강력한 성능을 보이는 1,750억 개의 매개변수 언어 모델을 제시하였고, 이 모델은 다양한 NLP 작업과 벤치마크에서 SOTA와 거의 일치하는 결과를 보였습니다.
  • 모델은 미세 조정 없이도 예측 가능한 성능 확장 추세를 보여주며, 적응 가능한 일반 언어 시스템 개발에 중요한 요소가 될 수 있다는 가능성을 제시하였습니다.

0개의 댓글