>  기사  >  기술 주변기기  >  모든 GPT-3 복제가 실패하는 이유는 무엇입니까? ChatGPT 사용에 대해 알아야 할 사항

모든 GPT-3 복제가 실패하는 이유는 무엇입니까? ChatGPT 사용에 대해 알아야 할 사항

王林
王林앞으로
2023-04-08 12:37:55943검색

본 트윗은 2023년 2월 12일에 작성되었습니다. 제 개인적인 의견이며 참고용입니다.

GPT-3의 모든 공개 복제가 실패하는 이유는 무엇입니까? 어떤 작업에 GPT-3.5 또는 ChatGPT를 사용해야 합니까?

이 트윗에는 일련의 기사의 세부 사항을 신중하게 재검토한 후 요약한 내용과 위 두 가지 문제에 대한 개인적인 생각이 포함됩니다. 이러한 기사에는 GPT-3, PaLM, BLOOM, OPT, FLAN-T5/PaLM, HELM 등이 포함되지만 이에 국한되지는 않습니다. 좀 더 믿을 만한 참고 자료나 좀 더 실무 경험이 있으신 분은 정정 부탁드립니다.

자신만의 GPT-3 또는 ChatGPT를 재현하고 싶은 사람들에게는 첫 번째 질문이 중요합니다. 두 번째 질문은 이를 사용하려는 사람들에게 중요합니다(아래에서 GPT-3가 언급될 때마다 원래 GPT-3 텍스트를 참조하는 일부 경우를 제외하고는 주로 GPT-3.5 또는 최신 버전의 InstructGPT를 나타냅니다).

GPT-3의 모든 공개 복제가 실패하는 이유는 무엇입니까?

여기에서는 이를 "실패"라고 부릅니다. 이는 훈련된 모델의 매개변수 수가 GPT-3 이상에 가깝지만 여전히 원본 GPT-3 문헌에 보고된 성능과 일치할 수 없음을 의미합니다. 이 기준에 따르면 GPT-3와 PaLM은 "성공적"이지만 두 모델 모두 공개되지 않았습니다. 그리고 모든 공개 모델(예: OPT-175B 및 BLOOM-176B)은 어느 정도 "실패"했습니다. 그러나 우리는 이러한 “실패”로부터 몇 가지 교훈을 배울 수 있습니다.

다양한 훈련 설정을 여러 번 시도할 수 있다면 오픈 소스 커뮤니티에서 결국 GPT-3를 재현할 수 있다는 점에 유의해야 합니다. 그러나 현재 OPT-175B의 다른 버전을 교육하는 데 드는 비용은 여전히 ​​너무 높습니다. 이러한 대규모 모델의 경우 교육에는 약 1000개의 80G A100 GPU에서 최소 2개월이 필요합니다(원본 문헌의 데이터). 고르다).

일부 기사(예: OPT-175B 및 GLM-130B)에서는 일부 작업에서 원래 GPT-3의 성능과 일치하거나 심지어 초과할 수 있다고 주장하지만 GPT-3가 테스트된 더 많은 작업에서 이는 이 진술은 여전히 ​​​​의심스러운 상태입니다. 동시에 보다 다양한 작업에 대한 대부분의 사용자 경험과 HELM 평가를 바탕으로 최근 OpenAI GPT-3 API 성능은 이러한 오픈 소스 모델보다 여전히 우수합니다.

뒤에 있는 모델이 명령 조정(InstructGPT와 마찬가지로)을 사용할 수 있지만 명령 미세 조정을 사용하는 유사한 OPT 버전(OPT-IML) 및 BLOOM 버전(BLOOMZ)은 여전히 ​​InstructGPT 및 FLAN -PaLM보다 훨씬 낫습니다. (PaLM의 미세 조정된 명령 버전)은 훨씬 더 나쁩니다.

기사 내용에 따르면 GPT-3과 PaLM의 성공에 비해 OPT-175B와 BLOOM-176B의 실패 원인은 여러 가지가 있을 수 있습니다. 저는 이를 사전 훈련 데이터와 훈련 전략의 두 부분으로 나누었습니다.

사전 학습 데이터

먼저 GPT-3가 사전 학습 데이터를 어떻게 준비하고 사용하는지 살펴보겠습니다. GPT-3는 총 3000억 개의 토큰에 대해 훈련되었으며, 그 중 60%는 필터링된 Common Crawl에서 나오고 나머지는 webtext2(GPT-2 훈련에 사용되는 코퍼스), Books1, Books2 및 Wikipedia에서 나옵니다.

업데이트된 GPT-3 버전은 훈련용 코드 데이터 세트(예: Github Code)도 사용합니다. 각 부분의 비율은 원본 데이터 세트의 크기에 비례하지 않으며 대신 품질이 높은 데이터 세트가 더 자주 샘플링됩니다. OPT-175B와 BLOOM-176B의 실패 원인은 오픈 소스 커뮤니티가 유사한 데이터를 수집하기 어렵게 만드는 다음 세 가지 어려움 때문일 수 있습니다.

1 첫 번째 요점은 에 대한 좋은 성능을 가진 필터입니다. 품질 데이터를 위해 낮은 분류자를 필터링합니다 . GPT-3 및 PaLM의 사전 학습 데이터 세트를 구축하는 데 사용되었지만 OPT 및 BLOOM 학습에는 사용되지 않았습니다. 일부 기사에서는 더 적지만 품질이 높은 데이터 세트로 훈련된 사전 훈련된 모델이 더 혼합된 품질의 데이터 세트로 훈련된 다른 모델보다 성능이 뛰어날 수 있음을 보여주었습니다. 물론, 포인트 3에서 논의할 것처럼 데이터 다양성은 여전히 ​​매우 중요합니다. 따라서 데이터 다양성과 품질 간의 균형을 매우 신중하게 처리해야 합니다.

2. 두 번째 점은 사전 학습 데이터 세트의 duplication입니다. 중복 제거는 사전 훈련된 모델이 동일한 데이터를 여러 번 접한 후 동일한 데이터를 기억하거나 과적합하는 것을 방지하여 모델의 일반화 능력을 향상시키는 데 도움이 됩니다. GPT-3 및 PaLM은 OPT에서도 채택한 문서 수준 중복 제거를 채택합니다. 그러나 OPT 사전 학습된 중복 제거 파일 코퍼스에는 여전히 많은 반복이 있어 성능이 저하될 수도 있습니다. (참고: 일부 최근 문헌에 따르면 사전 학습 언어 모델에 대한 중복 제거의 중요성은 상상만큼 크지 않을 수 있습니다. .).

3. 세 번째 요점은 도메인 다양성, 형식 다양성(예: 텍스트, 코드 및 테이블) 및 언어 다양성을 포함한 사전 학습 데이터 세트의 다양성입니다. OPT-175B에서 사용하는 Pile 코퍼스는 더 나은 다양성을 가지고 있다고 주장하지만 BLOOM에서 사용하는 ROOTS 코퍼스에는 기존 학술 데이터 세트가 너무 많고 Common Crawl 데이터에 포함된 다양성이 부족합니다. 이로 인해 BLOOM 성능이 저하될 수 있습니다. 이에 비해 Common Crawl corpus에서 GPT3의 비율이 훨씬 높고, 그 종류도 다양하며, 다양한 분야에서 나온다는 점도 GPT-3가 Common Crawl corpus의 기본 모델로 사용될 수 있는 이유 중 하나일 수 있습니다. 최초의 일반 챗봇 ChatGPT.

참고: 일반적으로 일반 LLM(대규모 언어 모델, 대규모 언어 모델)을 훈련하려면 다양한 데이터가 중요하지만 특정 사전 훈련 데이터 분포는 특정 분야의 LLM에 큰 영향을 미칩니다. 다운스트림 작업 수행에 관한 것입니다. 예를 들어 BLOOM과 PaLM은 다국어 데이터의 비율이 높기 때문에 일부 다국어 작업과 기계 번역 작업에서 더 높은 성능을 발휘합니다.

OPT는 많은 대화 데이터(예: reddit)를 사용하는데, 이는 대화에서 좋은 성능을 발휘하는 이유 중 하나일 수 있습니다. PaLM은 소셜 미디어 대화의 상당 부분을 차지하며, 이는 다양한 질문 및 답변 작업과 데이터 세트에서 뛰어난 성능을 발휘하는 이유일 수 있습니다. 마찬가지로 PaLM 및 최신 버전의 GPT-3에는 코드 데이터 세트의 상당 부분이 포함되어 있어 코딩 작업 및 CoT(사고 사슬) 기능에 대한 기능이 향상됩니다.

흥미로운 현상은 사전 훈련 과정에서 코드 데이터를 사용함에도 불구하고 BLOOM의 코드 및 CoT 성능이 여전히 나쁘다는 것입니다. 이는 코드 데이터만으로는 모델의 코드와 CoT 기능을 보장하지 않는다는 것을 의미할 수 있습니다.

요컨대, 일부 기사에서는 위 세 가지 사항, 즉 데이터 중복 제거를 통한 메모리 및 과적합 방지, 데이터 스크리닝을 통한 고품질 데이터 획득, LLM의 일반화를 보장하기 위한 데이터 다양성 보장의 중요성을 보여주었습니다. 불행하게도 PaLM 및 GPT-3가 이러한 데이터를 사전 처리하는 방법이나 사전 훈련 데이터 자체에 대한 세부 정보는 아직 공개되지 않아 대중 커뮤니티에서 이를 재현하기가 어렵습니다.

훈련 전략

여기서 훈련 전략에는 훈련 프레임워크, 훈련 기간, 모델 아키텍처/훈련 설정, 훈련 중 수정이 포함됩니다. 이는 매우 큰 모델을 훈련할 때 더 나은 안정성과 수렴을 얻는 데 사용됩니다. 일반적으로 손실 급증과 수렴 실패는 알 수 없는 이유로 인해 사전 훈련 중에 널리 관찰됩니다. 따라서 이러한 문제를 피하기 위해 훈련 설정 및 모델 아키텍처에 대한 수많은 수정이 제안되었습니다. 그러나 이러한 수정 사항 중 일부는 OPT 및 BLOOM에서 최적의 솔루션이 아니므로 성능이 저하될 수 있습니다. GPT-3은 이 문제를 어떻게 해결하는지 명시적으로 언급하지 않습니다.

1. 훈련 프레임워크. 175B개 이상의 매개변수가 있는 모델에는 종종 ZeRO 스타일의 데이터 병렬성(분산 최적화 프로그램)과 모델 병렬성(텐서 병렬, 파이프라인 병렬, 때로는 시퀀스 병렬 포함)이 필요합니다. OPT는 ZeRO의 FSDP 구현과 모델 병렬 Megatron-LM 구현을 사용합니다. BLOOM은 ZeRO의 Deepspeed 구현과 모델 병렬 Megatron-LM 구현을 사용합니다.

PaLM은 TPU 기반 모델 병렬화 및 데이터 병렬화 시스템인 Pathways를 채택했습니다. GPT-3의 훈련 시스템에 대한 세부 사항은 아직 알려지지 않았지만 적어도 어느 정도 모델 병렬성을 사용합니다(일부는 Ray를 사용한다고 말합니다). 서로 다른 훈련 시스템과 하드웨어는 서로 다른 훈련 현상으로 이어질 수 있습니다. 분명히 TPU 훈련에 대한 PaLM 기사에 제시된 설정 중 일부는 다른 모든 모델에서 사용되는 GPU 훈련에 적용되지 않을 수 있습니다.

하드웨어 및 교육 프레임워크의 중요한 영향은 bfloat16을 사용하여 모델 가중치 및 중간 계층 활성화 값 등을 저장할 수 있는지 여부입니다. bfloat16은 더 넓은 범위의 부동 소수점 수를 표현할 수 있고 손실이 급증할 때 발생하는 큰 값을 처리할 수 있기 때문에 이는 안정적인 훈련에서 중요한 요소임이 입증되었습니다. TPU에서는 bfloat16이 기본 설정이며, 이는 PaLM 성공의 비결일 수 있습니다. 하지만 GPU에서는 V100의 혼합 정밀도 훈련을 위한 유일한 옵션인 float16을 주로 사용했습니다.

OPT는 불안정한 요인 중 하나일 수 있는 float16을 사용합니다. BLOOM은 이러한 문제를 발견하고 결국 A100GPU에서 bfloat16을 사용하게 되었지만 이 설정의 중요성을 인식하지 못했기 때문에 float16을 사용한 예비 실험에서 불안정성을 해결하기 위해 첫 번째 단어 벡터 레이어 이후에 추가 레이어 정규화를 도입했습니다. 그러나 이 레이어 정규화는 BLOOM 실패의 요인이 될 수 있는 제로 샷 일반화를 더욱 악화시키는 것으로 나타났습니다.

2. 훈련 중 수정. OPT는 클립 그라디언트 표준 및 학습 속도 변경, 간단한 SGD 최적화 프로그램으로 전환한 다음 다시 Adam으로 전환, 동적 손실 스칼라 재설정 등을 포함하여 가장 최근의 체크포인트에서 많은 중간 스트림 조정을 수행하고 훈련을 다시 시작했습니다. 최신 버전의 Megatron 등

이번 중간과정 조정이 OPT 실패 원인 중 하나일 수 있습니다. 반면 PaLM은 중간 조정을 거의 하지 않았습니다. 손실 급증이 발생하면 급증 전 약 100단계 체크포인트에서 학습을 다시 시작하고 약 200~500개의 데이터 배치를 건너뜁니다. 이 간단한 재시작에 힘입어 PaLM은 마법 같은 성공을 거두었습니다. 이는 사전 훈련 데이터 구성 중에 샘플링을 완료했기 때문에 모델이 Bit 의미에서 결정론적이며 더 나은 안정성을 위해 모델 아키텍처와 훈련 설정을 많이 수정했기 때문입니다. PaLM의 이러한 수정 사항은 다음 항목에 나와 있습니다.

3. 모델 아키텍처/훈련 설정: 훈련을 보다 안정적으로 만들기 위해 PaLM은 수정된 버전의 Adafactor를 최적화 프로그램으로 사용하고 출력 로짓 크기를 조정하는 것을 포함하여 모델 아키텍처 및 훈련 설정을 여러 가지 조정했습니다. 소프트맥스 이전에는 보조 손실을 사용하여 소프트맥스 노멀라이저를 0에 가깝게 하고, 단어 벡터 및 기타 레이어 가중치에 대해 다른 초기화를 사용하고, 피드포워드 레이어 및 레이어 정규화에서 바이어스 항을 사용하지 않으며, 사전 훈련 중에 드롭아웃을 사용하지 않습니다.

GLM-130B에는 사전 레이어 정규화 대신 DeepNorm 기반 사후 레이어 정규화 및 단어 벡터 레이어 그라데이션 축소를 사용하여 매우 큰 모델을 안정적으로 훈련하는 방법에 대한 더 귀중한 콘텐츠가 있습니다. 위의 모델 수정 사항 중 대부분은 OPT 및 BLOOM에서 채택되지 않았으며 이로 인해 불안정성과 실패가 발생할 수 있습니다.

4. 훈련 프로세스: 아래 표에서 볼 수 있듯이 원래 GPT-3 사전 훈련 프로세스에서 볼 수 있는 토큰 수는 OPT 및 BLOOM에 가깝지만 PaLM은 이를 훨씬 초과합니다. 마찬가지로 PaLM과 GPT-3 사전 훈련 코퍼스는 모두 BLOOM 및 OPT보다 큽니다. 따라서 더 많은 토큰에 대한 사전 훈련과 더 큰 고품질 코퍼스를 사용하는 것이 GPT-3 및 PaLM의 성공에 중요한 요소가 될 수 있습니다.

모든 GPT-3 복제가 실패하는 이유는 무엇입니까? ChatGPT 사용에 대해 알아야 할 사항

위에 나열된 네 가지 사항 외에도 보다 안정적인 훈련에는 중요하지 않을 수 있지만 여전히 최종 성과에 영향을 줄 수 있는 몇 가지 다른 요소가 있습니다.

첫 번째 요점은 PaLM과 GPT-3 모두 훈련 과정에서 작은 것에서 큰 것으로 점진적으로 증가하는 배치 크기를 사용하며 이는 더 나은 LLM을 훈련하는 데 효과적인 것으로 나타났습니다. 그러나 OPT와 BLOOM은 모두 A 상수를 사용합니다 배치 크기.

두 번째로 OPT는 ReLU 활성화 기능을 사용하고 PaLM은 SwiGLU 활성화 기능을 사용하며 GPT-3 및 BLOOM은 GeLU를 사용하므로 일반적으로 훈련된 LLM의 성능이 향상됩니다.

세 번째로, 긴 시퀀스를 더 잘 모델링하기 위해 PaLM은 RoPE 단어 벡터를 사용하고 BLOOM은 ALiBi 단어 벡터를 사용하며 원본 GPT-3 및 OPT는 학습된 단어 벡터를 사용하므로 긴 시퀀스의 성능에 영향을 미칠 수 있습니다.

어떤 작업에 GPT-3.5 또는 ChatGPT를 사용해야 합니까?

어떤 작업과 애플리케이션에 GPT-3를 사용해야 하고 어떤 작업과 애플리케이션을 사용하지 말아야 하는지 설명하려고 노력합니다. GPT-3가 특정 작업에 적합한지 여부를 보여주기 위해 주로 GPT-3를 미세 조정된 더 작은 모델과 비교하고 때로는 다른 특수 기능과 비교했습니다. 최근 등장한 더 작고 미세 조정이 가능한 FLAN-T5 모델의 우수한 성능을 고려할 때 이 문제는 더욱 중요합니다.

이상적인 세상에서는 GPT-3를 미세 조정하는 부담이 적당하다면 추가적인 개선으로 이어질 수 있습니다. 그러나 일부 작업에서 PaLM-540B를 미세 조정하여 얻은 개선 사항은 너무 제한적이어서 일부 작업에서 GPT-3을 미세 조정하는 것이 가치가 있는지 궁금합니다. 과학적 관점에서 보면 미세 조정된 GPT-3와 신호를 받은 GPT-3을 비교하는 것이 더 공정합니다. 그러나 GPT-3을 사용하려면 힌트를 GPT-3과 비교하고 더 작은 모델을 미세 조정하는 데 더 관심이 있을 수 있습니다.

주로 작업 완료의 정확성에 관심이 있지만 독성, 공정성 등과 같이 GPT 사용 여부를 결정할 때 사용해야 하는 다른 중요한 차원도 많이 있습니다. HELM 기사에 제시된 대로 -3이 고려됩니다. 아래 다이어그램은 대략적인 의사 결정 과정을 보여 주며, 기존 작업이든 완전히 새로운 작업이든 유용한 실무 지침이 되기를 바랍니다.

모든 GPT-3 복제가 실패하는 이유는 무엇입니까? ChatGPT 사용에 대해 알아야 할 사항

참고 1: ChatGPT는 대화 시나리오에 적합하기 때문에 챗봇으로서 탁월합니다. 그러나 우리는 일반적으로 ChatGPT 뒤에 있는 모델인 GPT-3, InstructGPT(GPT-3.5) 및 Codex를 더 많은 작업 및 사용 시나리오에서 일반 모델로 사용합니다.

참고 2: 이 섹션의 결론은 모델의 현재 버전에 대한 일부 조사 결과를 기반으로 하며, 이는 향후 더 강력한 모델에는 적용되지 않을 수 있습니다. 목표 데이터 세트에 가까운 더 많은 사전 훈련 데이터를 사용하여 학술 데이터 세트 지침 조정(예: FLAN-PaLM이 더 강력한 성능을 가져올 수 있다고 제안하지만 아직 공개되지 않음) 또는 RLHF를 통해 더 나은 모델을 만들기 때문입니다. 대상 작업 더 나은 정렬 - 때로는 다른 시나리오(예: InstructGPT의 "정렬 세금/정렬 세금")의 기능이 희생되더라도 모델이 대상 작업에서 더 나은 성능을 발휘할 수 있습니다.

이 경우 GPT가 작업 전반에 걸쳐 일반화하고 일반화하고 있는지, 사전 훈련 중에 일부 테스트 샘플을 암기했는지, 사전 훈련 중에 소위 테스트 샘플을 본 것인지 판단하기 어렵습니다. "이전에 본 적이 없는" 작업. 그러나 기억력이 실제로 실제로 심각한 문제인지는 여전히 의문의 여지가 있습니다. 사용자는 연구자와 다르기 때문에 GPT가 이미 테스트 데이터에서 좋은 성능을 발휘하고 있다고 판단되면 GPT가 사전 학습 중에 동일하거나 유사한 데이터를 보았는지 여부에 신경 쓰지 않을 수 있습니다.

어쨌든 이 섹션의 현재 실용 가치를 극대화하기 위해 미세 조정된 공공 소형 모델(T5, FALN-T5, 일부 특수 설계 미세 조정 SOTA 모델 등)을 비교하려고 최선을 다했습니다. ) 및 최신 GPT-3(GPT-3.5, InstructGPT), PaLM(또는 FLAN-PaLM)의 최고 성능(해당 모델에 대한 평가 데이터가 있는 경우).

GPT-3 사용에 적합한 작업

일반적으로 다음 상황은 GPT-3 사용에 더 적합합니다. 놀랍게도 GPT-3 문서의 소개 섹션을 되돌아보면 초기 설계 목표 중 상당수가 이러한 작업을 다루었습니다. 이는 원래 야심찬 목표가 부분적으로 달성되었음을 의미합니다.

1. 창의적이고 복잡한 작업 : 코드 포함(코드 완성, 자연어 명령 생성 코드, 코드 번역, 버그 수정), 텍스트 요약, 번역, 창의적인 글쓰기(예: 스토리, 기사, 이메일 작성) , 보고서, 글쓰기 개선 등). 원본 GPT-3 문헌에 표시된 것처럼 GPT-3은 어렵고 "불가능한 주석" 작업을 위해 설계되었습니다. 이는 이전에 미세 조정된 모델을 실제 응용 프로그램에 적용하는 것이 불가능했던 작업입니다. GPT-3을 사용하면 이러한 작업이 가능해집니다. 예를 들어, 최근 기사에서는 사람이 주석을 추가한 과거의 텍스트 요약이 LLM에서 생성한 요약을 능가했다는 사실을 보여줍니다.

PaLM-540B를 프롬프트함으로써 저자원 및 중간 자원 언어를 영어로 번역해야 하는 특정 기계 번역 작업에서 미세 조정 모델보다 뛰어난 성능을 발휘할 수도 있습니다.

BLOOM-176B에서도 비슷한 경향이 관찰되었습니다. 이는 일반적으로 영어 데이터가 사전 학습 코퍼스의 큰 부분을 차지하므로 LLM이 영어 문장 생성에 능숙하기 때문입니다. 코딩 작업에서 좋은 성능을 얻으려면 Codex와 PaLM이 이전 모델보다 전반적으로 더 나은 성능을 가지고 있지만 LLM이 테스트 샘플을 통과하기 위해 여러 번(k회) 샘플링하도록 허용해야 합니다(pass @k를 다음과 같이 사용). 미터법).

2. 라벨이 지정되거나 라벨이 지정되지 않은 데이터가 몇 개만 있는 작업 . 원래 GPT-3 문서에 명시되어 있듯이 GPT-3은 "비용이 많이 드는 주석" 작업을 위해 설계되었습니다. 이 경우 일반적으로 제로샷, 원샷 또는 소수 샷의 경우 GPT-3을 달성하기 위해 매우 적은 양의 레이블이 지정된 데이터로 더 작은 모델을 미세 조정하는 것이 불가능합니다.

3. OOD(배포 외) 일반화. 일부 훈련 데이터가 주어지면 전통적인 미세 조정은 훈련 세트에 과대적합되고 분포 외 일반화가 좋지 않을 수 있지만 소수 샘플 내 학습은 분포 외 일반화가 더 좋을 수 있습니다. 예를 들어, 힌트가 있는 PaLM은 ANLI(Adversarial Natural Language Inference) 작업에서 미세 조정된 SOTA 모델보다 성능이 뛰어날 수 있지만 일반 언어 추론 작업에서는 미세 조정된 SOTA보다 여전히 열등할 수 있습니다.

또 다른 예는 LLM이 미세 조정된 모델보다 더 나은 조합 일반화를 보여준다는 힌트입니다. 더 나은 분포 외 일반화는 컨텍스트 학습 중에 매개변수를 업데이트할 필요가 없거나 과적합을 피하거나 과거의 분포 외 예제가 LLM에 분포되어 있기 때문일 수 있습니다. 이 사용 사례는 GPT-3의 원래 설계 목표 중 하나로 설명되었습니다. "미세 조정된 모델은 특정 작업에 대한 데이터 세트에서 소위 인간 수준의 성능을 달성할 수 있으며, 이는 실제로 해당 작업의 성능을 과장할 수 있습니다. real world.", 이는 모델이 훈련 세트에 존재하는 허위 상관관계만 학습했고 모델이 이 훈련 세트의 좁은 분포에 과적합되었기 때문입니다.”

4. 여러 작업을 처리하는 능력은 필수. 특정 업무의 우수성에 집중하기보다는. 챗봇은 사용자가 다양한 작업에 올바르게 응답할 것으로 기대하는 시나리오 중 하나입니다. 이것이 아마도 ChatGPT가 GPT-3의 가장 성공적인 사용 사례 중 하나인 이유일 것입니다.

5. 검색이 불가능한 지식 집약적 작업. LLM에 저장된 지식은 폐쇄형 질문 답변, MMLU(STEM, 인문학, 사회과학 등 57개 학문 분야의 객관식 질문을 포함하는 벤치마크 데이터 세트)와 같은 지식 집약적인 작업의 성능을 크게 향상시킬 수 있습니다. LLM 세계 지식과 문제 해결 능력을 테스트하는 데 사용됩니다. 그러나 검색 향상을 생성하기 위해 사전 검색 단계를 추가할 수 있는 경우 미세 조정된 더 작은 모델(예: Atlas 모델)이 더 나은 성능을 가질 수도 있습니다(폐쇄 볼륨 NaturalQuestions 및 TrivialQA 데이터 세트의 PaLM보다 Atlas). 최신 InstructGPT가 더 좋습니다).

검색 또는 기존 검색은 GPT-3 또는 ChatGPT를 검색 엔진에 통합하는 데 필요한 단계이기도 합니다. 이를 통해 생성의 정확성을 높이고 더 많은 참조 링크를 제공하여 설득력을 높일 수 있습니다. 하지만 Google이 FLAN-PaLM 기반 모델이 잘 수행될 수 있음을 입증한 USMLE(미국 의료 면허 시험)과 같이 검색이 허용되지 않거나 쉽지 않은 경우가 있다는 점을 인정해야 합니다.

마찬가지로 MMLU 벤치마크 세트에서 PaLM-540B는 검색과 결합된 다른 미세 조정 모델보다 더 나은 성능을 제공하지만 InstructGPT의 최신 버전은 검색 기능이 있는 미세 조정 SOTA보다 여전히 나쁩니다. 또한 FLAN-T5에서 볼 수 있듯이 더 작은 모델의 명령 튜닝은 더 큰 LLM 모델의 결과에 가까운 결과를 얻을 수 있습니다.

6. CoT를 사용한 추론 및 BIG-Bench의 복잡한 작업(논리적 추론, 번역, 질문 및 답변, 수학 작업 등)과 같이 LLM의 긴급 기능이 필요한 일부 어려운 작업 . 예를 들어, PaLM은 수학적 및 상식적 추론을 포함한 7가지 다단계 추론 작업에서 8샘플 CoT가 4가지 작업에서 미세 조정된 SOTA보다 우수하고 다른 3가지 작업에서는 기본적으로 동일하다는 것을 보여주었습니다. .

이러한 성공적인 성능은 더 큰 모델과 CoT 모두에 기인합니다. PaLM은 또한 8B에서 62B, 540B 모델까지 BIG-Bench 작업에서 개별 성능 향상을 보여줍니다. 이는 LLM의 창발력으로 알려진 스케일링 법칙을 초과합니다. 또한 5개의 프롬프트가 있는 PaLM-540B는 Big-Bench의 58개 일반 작업 중 44개에서 이전(샘플 수가 적은) SOTA보다 성능이 뛰어납니다. Big-Bench에서 PaLM-540B의 전반적인 성능도 인간의 평균 성능보다 우수합니다.

7. 일부 시나리오에서는

인간의 모방이 필요하거나 목표는 성능이 인간 수준에 도달하는 일반 인공 지능을 만드는 것입니다. 마찬가지로 ChatGPT는 ChatGPT가 자신을 인간처럼 만들어 놀라운 성공을 거둔 사례 중 하나입니다. 이는 GPT-3의 원래 설계 목표 중 하나로 설명되기도 했습니다. "인간은 대부분의 언어 작업을 학습하기 위해 대규모 지도 데이터 세트가 필요하지 않습니다. 최대 몇 가지 예만으로 인간은 다양한 작업과 기술을 원활하게 통합할 수 있습니다. 따라서 전통적인 미세 조정 모델은 많은 벤치마크 데이터 세트에서 인간 수준의 성능을 주장함에도 불구하고 인간과의 불공평한 비교로 이어집니다

8. -sample PaLM-540B는 마지막 문장과 단락 마지막 단어의 클로즈 채우기 및 아나포라 구문 분석과 같은 미세 조정된 SOTA와 대략 일치하거나 심지어 초과할 수 있습니다. 이 경우에는 제로 샘플 LLM이면 충분하며 단일 샘플 또는 소수 샘플 예제는 일반적으로 거의 도움이 되지 않습니다. 다른 작업에서는 GPT-3 크기의 모델을 프롬프트할 필요가 없습니다.

GPT-3 사용에 적합하지 않은 작업

1. 예산이 부족합니다(예: 돈이 많지 않은 스타트업의 경우).

2. OpenAI GPT-3의 API 호출 시 보안 문제가 있습니다(예: OpenAI로 데이터 유출, 유해 콘텐츠 생성 등).

3. 비슷한 크기의 모델을 배포하고 추론의 지연 문제를 해결하기에는 엔지니어링 또는 하드웨어 리소스가 충분하지 않습니다. 예를 들어, 추론 속도를 최적화하기 위한 최첨단 80G A100이나 엔지니어링 리소스 없이 단순히 Alpa를 사용하여 16개의 40G A100에 OPT-175B를 배포하면 단일 샘플의 추론을 완료하는 데 10초가 걸리며 이는 실현 가능하지 않습니다. 대규모 애플리케이션의 경우 이는 대부분의 실제 온라인 애플리케이션에서 허용되지 않는 지연 시간입니다.

4. GPT-3를 사용하여 미세 조정된 모델을 우수한 성능과 높은 정확도로 대체하려는 경우 또는 일부 특정 단일 작업 및 사용 시나리오에서 NLU(자연어 이해)를 배포하려는 경우. NLG(Natural Language Generation, 자연어 생성) 모델이 그만한 가치가 있는지 다시 한번 생각해보시기 바랍니다.

  • 분류 작업과 같은 일부 기존 NLU 작업의 경우 GPT-3을 프롬프트하는 대신 먼저 FLAN-T5-11B 모델을 미세 조정해 보는 것이 좋습니다. 예를 들어, 어려운 NLU 벤치마크 데이터 세트인 SuperGLUE(독해력, 텍스트 암시, 단어 의미 명확성, 상호 참조 해결 및 인과 추론과 같은 작업 포함)에서 PaLM-540B의 모든 Few-shot Prompting 성능은 Fine보다 나쁩니다. -튜닝. T5-11B이며 대부분의 작업에서 상당한 격차가 있습니다. 원본 GPT3를 사용하면 힌트 결과와 미세 조정된 SOTA 결과 사이의 격차가 훨씬 더 커집니다. 흥미롭게도 미세 조정된 PaLM도 미세 조정된 T5-11B에 비해 제한적인 개선만 보여주고 미세 조정된 PaLM은 미세 조정된 인코더-디코더 모델 32B MoE 모델보다 훨씬 나쁩니다. 이는 이러한 대형 모델을 사용하는 데 미세 조정이나 힌트가 사용되는지 여부에 관계없이 더 적합한 아키텍처(예: 인코더-디코더 모델)를 사용하여 작은 모델을 미세 조정하는 것이 매우 큰 디코더 전용 모델을 사용하는 것보다 여전히 더 나은 솔루션임을 시사합니다. 최근 논문에 따르면 ChatGPT는 가장 전통적인 NLU 분류 작업인 감정 분석에서도 여전히 미세 조정된 소형 모델보다 성능이 나쁩니다.
  • 실제 데이터를 기반으로 하지 않은 어려운 작업입니다. 예를 들어 BigBench에는 LLM이 어려운 작업이 여전히 많이 있습니다. 특히 BigBench 작업의 35%에서 평균 인간 성능은 여전히 ​​PaLM-540B보다 높으며 탐색 및 수학적 유도와 같이 모델 크기를 늘려도 도움이 되지 않는 일부 작업이 있습니다. 수학적 귀납법에서 PaLM은 프롬프트의 가정이 올바르지 않을 때(예: "2는 홀수입니다") 많은 실수를 합니다. 기호를 사용하기 전에 수학 기호를 재정의하는 것(예: "π를 462로 재정의"하라는 메시지 표시)과 같은 역척도법 챌린지에서도 비슷한 경향이 관찰되었습니다. 이 경우, LLM의 실제 사전 지식은 힌트로 다루기에는 너무 강력하며, 더 작은 미세 조정 모델이 이러한 반사실적을 더 잘 학습할 수 있습니다.
  • 많은 다국어 작업 및 기계 번역 작업에서 힌트가 적은 샘플을 사용한 GPT는 여전히 미세 조정된 작은 모델보다 성능이 떨어집니다. 이는 사전 학습 코퍼스에서 영어 이외의 언어 비율이 적기 때문일 가능성이 높습니다.


  • 영어에서 다른 언어로 번역할 때, 그리고 리소스가 많은 언어를 영어로 번역할 때 PaLM과 ChatGPT는 여전히 기계 번역 작업에서 미세 조정된 소규모 모델보다 성능이 나쁩니다.
  • 다국어 질의 응답 작업의 경우 소수 샘플 PaLM-540B와 미세 조정된 소형 모델 사이에는 여전히 큰 격차가 있습니다.
  • 다국어 텍스트 생성(텍스트 요약 및 데이터-텍스트 생성 포함)의 경우 소수 샘플 PaLM-540B와 미세 조정된 소형 모델 사이에는 여전히 큰 격차가 있습니다. 미세 조정된 PaLM-540B도 대부분의 작업에서 미세 조정된 T5-11B에 비해 제한적인 개선을 보였고 여전히 미세 조정된 SOTA보다 열등합니다.


  • 상식 추론 작업의 경우 OpenbookQA, ARC(Easy 및 Challenge 버전 포함) 및 CommonsenseQA와 같은 최고의 몇 번의 힌트 LLM과 미세 조정된 SOTA 사이에는 여전히 큰 격차가 있습니다. (CoT 힌트를 사용하는 경우에도).
  • 기계 독해 작업의 경우 최고의 Few-shot 힌트 LLM과 미세 조정된 SOTA 사이에는 여전히 큰 격차가 있습니다. 대부분의 데이터 세트에서 이 격차는 엄청날 수 있습니다. 이는 질문에 답하는 데 필요한 모든 지식이 이미 주어진 텍스트에 포함되어 있고 LLM에 대한 추가 지식이 필요하지 않기 때문일 수 있습니다.

위의 작업은 다음 범주 중 하나로 분류될 수 있습니다.

1. 일부 NLU 작업에는 LLM의 추가 지식이나 생성 능력이 필요하지 않습니다. 이는 테스트 데이터가 대부분 학습 데이터와 동일한 분포에 있음을 의미합니다. 이러한 작업에서는 과거에 미세 조정된 소형 모델이 매우 좋은 성능을 발휘했습니다.

2. 각 예시에는 이미 기계 독해와 같은 맥락이나 프롬프트에 대한 충분한 지식이 포함되어 있기 때문에 LLM의 추가 지식이 필요하지 않은 일부 작업입니다.

3. 일부는 추가 지식이 필요하지만 LLM 에서 그러한 지식을 얻을 가능성이 낮거나 일부 저자원 언어와 같이 유사하게 분산된 작업 을 LLM에서 본 적이 없을 것입니다. 이러한 언어로 작업하는 경우 LLM에는 사전 학습 샘플이 제한되어 있습니다.

4.일부 작업에는 LLM에 포함된 지식과 일치하지 않는 지식이 필요하거나 실제 언어 데이터에 기반하지 않은 지식이 필요합니다. LLM은 실제 언어 데이터에 대해 교육을 받았기 때문에 새로운 작업에서 원래 지식을 다루기 위해 반사실적 지식을 사용하기가 어렵습니다. 역척도법 챌린지의 "수학 표기법 재정의" 문제 외에도 LLM이 프롬프트에 나타나는 수정된 인용문을 다시 말하도록 요청하는 약간 변경된 인용문을 다시 말하는 또 다른 작업이 있습니다. 이 경우 LLM은 수정된 버전이 아닌 원래 버전의 견적을 반복하는 경향이 있습니다.

5.일부 작업에는 LM의 지식이 필요하지만 이 지식을 조작하는 데 크게 의존하며 "다음 토큰 예측"이라는 LLM의 목표는 이러한 조작을 쉽게 달성할 수 없습니다. 예를 들어 몇 가지 상식 추론 작업이 있습니다. CoT와 최하위 힌트가 LLM 추론에 도움이 될 수 있는 이유는 지식을 계획하고 분해/결합하는 프로세스를 모방하는 지속적인 사전 훈련 텍스트를 더 잘 호출할 수 있기 때문일 수 있습니다.

따라서 CoT 및 최하위 프롬프트는 일부 수학적 추론, 코드 및 기타 간단한 자연어 추론 작업에서 잘 수행되지만 많은 상식 추론(예: 역척도 법칙에서 입증된 연역적 추론 작업)에서는 실패합니다. 경쟁) 맞춤식 상징 추론 작업에서는 여전히 저조한 성능을 보였습니다. 이러한 작업은 일반적으로 자연어 데이터의 실제 연속 시퀀스에서 다루지 않지만 완료하려면 분산된 지식을 조작해야 합니다.

6. 실제 데이터에 존재하는 상황별 학습 사례나 허위 상관 관계에 쉽게 영향을 받는 일부 작업. 한 가지 예는 역 규모의 법칙 대회의 부정적인 단어가 포함된 질문과 답변입니다. LLM에 "고양이의 체온이 평균보다 낮으면...에 있지 않습니다."라는 질문을 받으면 "안전한 범위"보다는 "위험에 처해 있습니다"라고 대답하는 경향이 있습니다. 이는 LLM이 "평균 체온 미만"과 "위험" 사이의 공통 관계에 의해 지배되기 때문입니다. 부정적인 경우에는 허위 상관 관계입니다.

7. 언어 데이터 처리와 목표가 크게 다른 일부 작업(예: 회귀 문제) 미세 조정된 모델을 LLM으로 대체하기 어렵습니다. 다중 모드 작업의 경우 LLM으로 해결할 수 없지만 사전 훈련된 대규모 다중 모드 모델의 이점을 누릴 수 있습니다.

8. 일부 작업에는 LLM의 응급 능력이 필요하지 않습니다. 이러한 작업 중 더 많은 것을 정확하게 구별하려면 LLM 교육 중에 창발적 역량이 어디서 발생하는지 더 잘 이해해야 합니다.

실제 사용 시나리오에서는 대기 시간 요구 사항을 충족할 수 없어 LLM을 온라인으로 사용할 수 없는 경우에도 LLM을 사용하여 오프라인으로 데이터를 생성하거나 레이블을 지정할 수 있습니다. 자동으로 주석이 달린 라벨은 온라인에서 찾아 사용자에게 제공하거나 더 작은 모델을 미세 조정하는 데 사용할 수 있습니다. 이러한 데이터를 사용하여 더 작은 모델을 미세 조정하면 모델을 교육하는 데 필요한 수동으로 주석이 달린 데이터를 줄이고 LLM의 새로운 기능(예: CoT) 중 일부를 더 작은 모델에 주입할 수 있습니다.

요약하자면, 레이블이 지정된 데이터가 충분할 때 많은 작업에서 오픈 소스 FLAN-T5의 놀라운 성능을 고려할 때 OpenAI API를 호출하는 리소스가 제한된 개인은 먼저 OpenAI API에서 FLAN-T5를 미세 조정해 보는 것이 좋습니다. T5-11B. 또한, 최신 버전의 InstructGPT(HELM에 따르면) 성능에 비해 놀라울 정도로 우수한 MMLU 데이터 세트에서 FLAN-PaLM-540B의 최근 성능을 기반으로 Google은 다음과 같은 경우 OpenAI보다 더 강력한 기본 모델을 보유할 수 있습니다. OpenAI는 API를 통과하여 지금까지 획득한 것 중 가장 강력한 LLM을 출시했습니다.

Google에 남은 유일한 단계는 사람의 피드백을 통해 이 LLM을 대화 시나리오에 맞추는 것입니다. 그들이 ChatGPT와 유사하거나 더 나은 챗봇을 곧 출시한다고 해도 놀라지 않을 것입니다. 비록 최근에 LaMDA를 기반으로 할 수 있는 Bard 버전을 선보이는 데 "실패"했지만 말입니다.

저자소개

원문 영문저자 : 현재 아마존 과학자인 Yang Jingfeng은 북경대학교를 졸업하고 조지아 공과대학에서 양 교수 지도하에 학사, 석사 학위를 받았습니다. 스탠포드 출신의 Diyi.

Yang Haotong이 번역하고 Wang Xiao가 수정했습니다.

원고의 첫 번째 버전에 대한 제안을 해주신 Jin Hongye에게 감사드리며, 토론과 제안을 해주신 Chen Sanxing과 Fu Yao에게 감사드립니다.

영어 원문: https://jingfengyang.github.io/gpt

위 내용은 모든 GPT-3 복제가 실패하는 이유는 무엇입니까? ChatGPT 사용에 대해 알아야 할 사항의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 51cto.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제