์ธ๊ณต์ง๋ฅ
GPT-3 : Few Shot Learning for Language Model?

과거 몇 년 동안, AI 및 ML 산업은 NLP 시스템의 개발 및 적용에서 급격한 상승을 목격했으며, 연구자들은 다운스트림 전이 작업을 위한 매우 유연하고 작업에 중립적인 방식으로 NLP 관행을 구현할 수 있게 되었습니다.
초기에는 단일 레이어 표현이 단어 벡터를 사용했으며, 작업별 아키텍처에 제공되었습니다. 다음에는 다층 표현과 컨텍스트 상태를 사용하여 더好的 표현을 형성하는 RNN 아키텍처가 있었습니다. 그리고最近, 전이 언어 모델 또는 사전 훈련된 재귀 모델이 작업별 아키텍처의 필요성을 완전히 제거한 모델이 등장했습니다.
전이 언어 모델은 NLP 산업에서 주요한 전환점을 마련했으며, 질문에 대한 답변, 텍스트 이해, 텍스트 포함 및 기타 많은 작업에서 엄청난 진전을 이루었습니다.
그러나 이러한 모델의 장점에도 불구하고, 전이 언어 모델에는 작업별 세부 조정 또는 작업별 데이터 세트가 필요하여 원하는 성능을 달성하는 데 제한이 있습니다. 또한 전이 언어 모델은 개발자가 작업별 데이터 세트를 수십만 개의 예제로 세부 조정해야 합니다.
작업별 데이터 세트 및 작업별 세부 조정의 필요성을 제거하는 것은 NLP 산업에서 매우 바람직하며, 여러 이유로 유익할 것입니다.
기존 전이 언어 모델 또는 재귀 모델의 문제
- 실용성 및 적용성 제한
まず, 각 작업에 대한 대규모 데이터 세트와 레이블이 있는 데이터의 필요성은 언어 모델의 실용성과 적용성을 제한합니다. 언어 모델은 짧은 이야기를 생성하는 것에서부터 문법 오류를 수정하는 것까지, 개념에 대한 예를 생성하는 것까지 다양한 작업에 적용됩니다. 때때로, 각 작업에 대해 감독 데이터 세트를 수집하는 것이 어려울 수 있습니다.
- 훈련 데이터의 가짜 상관관계를 이용
훈련 분포의 제한과 모델의 표현력은 훈련 데이터의 가짜 상관관계를 이용할 가능성을 크게 증가시킵니다. 훈련 데이터를 이용할 가능성은 전이 언어 모델이 사전 훈련 중에大量의 정보를 흡수하도록 설계되었기 때문에, 세부 조정 및 사전 훈련 패러다임에서 문제가 될 수 있습니다.
さらに, 이전 모델에 대한 연구는 대규모 모델이 항상 더好的 성능을 나타내지 않는다는 것을示しています. 또한, 이러한 패러다임에서 달성된 일반화는 모델이 훈련 데이터에 매우 특화되어 있고, 훈련 데이터의 범위를 벗어난 상황에서 잘 수행하지 못하는 경우, 성능이 좋지 않을 수 있습니다.
- 인간의 학습과 비교
마지막으로, 전이 언어 모델과 비교할 때, 인간은 대부분의 언어 작업을 학습할 때大量의 훈련 데이터를 필요로하지 않습니다. 대부분의 작업에서, 작업을 이해하고 수행하는 데 필요한 지침이나 언어 작업의 작은 시연이 충분합니다.
인간의 적응 능력은 실제적으로 유용하며, 여러 가지 기술을 전환하거나 혼합하여 언어 작업을 수행하는 데 도움이 됩니다. 이는 현재의 NLP 시스템이 수행할 수 없는 것입니다.
메타 러닝 및 GPT-3를 통한 문제 해결
위의 문제를 해결할 수 있는 가능한 솔루션은 메타 러닝입니다. 메타 러닝은 모델이 더 큰 스킬 세트와 패턴을 인식하는 능력을 개발할 수 있도록 해주며, 훈련 중에 이러한 학습된 능력을 사용하여 빠르게 적응하거나 필요한 작업을 인식할 수 있습니다.
메타 러닝은 언어 모델 아키텍처에서 “컨텍스트 학습”이라는 기술을 통해 구현됩니다. 이 기술은 사전 훈련된 언어 모델의 텍스트 입력을 작업 명세서로 사용합니다. 모델은 자연어 지침에 조건을 부여하고, 몇 가지 시연을 사용하며, 모델은 작업의 나머지 부분을 예측하여 완성합니다.
메타 러닝의 주요 문제는 아직 자연어 아키텍처에서 세부 조정 접근 방식에 비해 열등하다는 것입니다. 그러나 메타 러닝은 언어 작업을 극복하는 데 실용적인 방법이 될 수 있습니다.
메타 러닝 외에도, 다른 방법으로는 트랜스포머 언어 모델의 용량을 증가시키는 것입니다. 최근 몇 년 동안, 전이 모델은 100 백만 매개변수, 300 백만 매개변수, 1.5 억 매개변수, 8 억 매개변수, 11 억 매개변수, 17 억 매개변수를 가진 모델로 용량을 크게 증가시켰습니다.
모델의 용량을 증가시키거나 매개변수를 증가시키면 텍스트 생성에서 개선이 이루어집니다. 또한, 로그 손실은 다운스트림 작업과 관련이 있으며, 스케일이 증가함에 따라 개선됩니다.
이것은 175억 매개변수를 가진 GPT-3 모델로 이어집니다. GPT-3 모델에 대해 자세히 살펴보겠습니다.
GPT-3 모델 소개
GPT-3는 2020년에 OpenAI에서 발표한 175억 매개변수를 가진 자율 공격적 언어 모델입니다. GPT-3는 또한 대규모 언어 모델로 분류되며, 이전 모델인 GPT-2와 마찬가지로 컨볼루션 기반 아키텍처를 사용하여 텍스트 데이터를 생성하는 디코더 전용 딥 러닝 트랜스포머 모델입니다.
GPT-3 모델은 자신의 컨텍스트 학습 능력을 측정하며, 여러 NLP 데이터 세트와 새로운 작업에서 평가됩니다. 각 작업에서, GPT-3 모델은 세 가지 조건에서 평가됩니다.
- FEW SHOT LEARNING 또는 컨텍스트 학습: FEW SHOT LEARNING에서, GPT-3 모델은 모델의 컨텍스트 창에 잘 맞는 분포를 허용합니다.
- ONE SHOT LEARNING: ONE SHOT LEARNING에서, 모델은 하나의 시연만 허용합니다.
- 제로 샷 학습: 제로 샷 학습에서, 시연은 없으며, 모델에 자연어 지침만 제공됩니다.

전반적으로, GPT-3 모델은 제로 샷 및 원 샷 설정에서 원하는 성능을 달성하며, FEW SHOT 설정에서 대부분의 경우 상태 오프 더 아트 전이 모델을 능가합니다. 또한, GPT-3 모델은 원 샷 및 제로 샷 설정에서 자연어 작업을 테스트하는 작업에서 잘 수행되며, 신속한 추론 또는 신속한 주의가 필요한 작업에서 잘 수행됩니다.

GPT-3 모델 접근 방식
GPT-3 모델은 모델, 데이터 및 훈련으로 구성된 전통적인 사전 훈련 접근 방식을 사용합니다. GPT-3 모델은 모델 크기, 데이터 세트 크기, 데이터 세트의 다양성 및 훈련 기간을 크게 증가시킵니다.
모델은 또한 컨텍스트 학습 접근 방식을 사용하며, 데이터 세트 내에서 패턴을 학습하는 다양한 설정을 체계적으로 탐색합니다.
세부 조정
모델을 세부 조정하는 것은 전이 언어 모델에서 전통적인 접근 방식입니다. 이 접근 방식은 작업별 데이터 세트에서 모델을 훈련하는 것을 포함하며, 수십만 개의 레이블이 있는 예제가 사용됩니다.
세부 조정 접근 방식은 강력한 성능을 반환하는 데 유용하지만, 각 작업에 대해 새로운 대규모 데이터 세트가 필요하며, 훈련 데이터 세트의 가짜 특성을 이용할 수 있으며, 인간의 성능과 비교할 때 불공평할 수 있으며, 분포 밖의 일반화가 좋지 않을 수 있습니다.
현재 GPT-3 모델의 범위는 작업에 중립적인 성능으로 인해 세부 조정 접근 방식을 구현하지 않습니다. 그러나 세부 조정은 향후 GPT-3 모델에 적용될 수 있습니다.
FEW SHOT
FEW SHOT은 모델에 작업을 위한 몇 가지 시연이 제공되는 설정을 말합니다. 이 설정에서, 모델의 가중치는 업데이트되지 않습니다.
FEW SHOT 설정의 주요 장점은 작업별 데이터의 필요성을 크게 줄이고, 모델이 좁은 분포에서 학습할 가능성을 줄입니다. 그러나 FEW SHOT 학습의 주요 단점은 결과가 다른 상태 오프 더 아트 모델에 비해 좋지 않을 수 있으며, 세부 조정된 모델에 비해 성능이 좋지 않을 수 있습니다.
ONE SHOT
ONE SHOT 설정에서, 모델은 하나의 시연만 제공됩니다. ONE SHOT 설정은 작업을 인간에게 전달하는 방식과 가장 유사합니다.
제로 샷
제로 샷 설정에서, 시연은 없으며, 모델에 자연어 지침만 제공됩니다. 제로 샷 방법은 가장 편리하며, 가짜 상관관계를 피할 수 있지만, 가장 어려운 설정입니다.

GPT-3: 모델 아키텍처
GPT-3 모델은 GPT-2 모델에서 사용된 동일한 아키텍처를 사용하며, 전처리, 수정된 초기화 및 가역적 토큰화 기술을 포함합니다.
개발자는 모델의 성능이 모델 크기에 따라 어떻게 달라지는지 연구하기 위해, 125 백만에서 175 억 매개변수까지 3개의 차수에 걸쳐 8개의 다른 모델 크기를 훈련했습니다.

훈련 데이터 세트
대규모 언어 모델은 일반적으로 대규모 데이터 세트를 사용하며, 최근에는 1조 개의 단어가 넘는 Common Crawl 데이터 세트가 있습니다. 데이터 세트의 크기는 GPT-3 모델을 훈련하는 데 충분하며, 동일한 시퀀스에서 여러 번 업데이트할 필요가 없습니다.
그러나 연구와 성능 분석에 따르면, Common Crawl 데이터 세트의 필터링되지 않은 버전이나 약간 필터링된 버전은 더 정교한 데이터 세트에 비해 품질이 낮습니다.
개발자는 데이터 세트의 품질을 높이기 위해 3개의 단계를 수행했습니다.
- 개발자는 높은 품질의 참조 코퍼스와 유사한 범위의 Common Crawl 데이터 세트를 다운로드하고 필터링했습니다.
- 개발자는 데이터 세트에서 문서 수준의 퍼지 중복을 수행하여 과적합을 측정하고, 데이터 세트의 무결성을 유지했습니다.
- 개발자는 데이터 세트의 다양성을 높이고 품질을 높이기 위해 높은 품질의 참조 코퍼스를 추가했습니다.

평가
FEW SHOT 학습에서, 모델은 평가 데이터 세트의 각 예제를 작업의 훈련 데이터 세트에서 K개의 예제를 무작위로 추출하여 조건으로 평가합니다.
K는 0에서 모델의 컨텍스트 창에 맞는 최대 예제 수까지任意의 값일 수 있습니다. 더 큰 K 값은 일반적으로 더好的 결과를 반환하지만, 항상 그렇지는 않습니다.
결과

위의 그림은 GPT-3 모델 아키텍처에서 사용된 8개의 모델의 훈련 곡선을 표시합니다. 결과는 KMH 언어 모델의 결과와 유사하며, 모델의 성능은 훈련 컴퓨팅을 효과적으로 사용할 때 올바른 법칙을 따릅니다.
최종 생각
GPT-3는 언어 모델이 할 수 있는 것의 한계를 넓히는 혁신적인 단계였으며, GPT-4와 같은 현재까지 가장 정확한 대규모 언어 모델의 개발을 위한 길을 열었습니다.












