[20′ NIPS] GPT-3 : Language Models are Few-Shot Learners

This entry is part 4 of 13 in the series Language Model

1. 들어가며

이번 글에서는 2020년 NIPS에 발표된 GPT-3 논문(Language Models are Few-Shot Learners)을 자세히 리뷰합니다. 이 글을 통해 여러분은 GPT-3가 기존 언어 모델과 어떻게 다르며, 왜 이 모델이 혁신적인지를 이해할 수 있을 것입니다. 특히, 이 글에서는 GPT-3의 ‘퓨샷(few-shot) 성능’이 왜 중요한지에 대해 집중적으로 다룰 예정입니다. 이는 GPT-3가 다양한 작업에 유연하게 적용될 수 있음을 의미하며, 이로 인해 언어 모델의 활용 범위가 크게 확장될 수 있습니다.

기존의 언어 모델들은 뛰어난 성능을 보이지만, 특정 작업에 맞게 별도로 튜닝이 필요했습니다. 이러한 한계를 극복하기 위해 GPT-3는 ‘인 컨텍스트 러닝(in-context learning)’과 ‘모델 사이즈 증가’라는 두 가지 트렌드를 중심으로 설계되었습니다. 이에 대한 자세한 내용은 본문에서 다룰 예정이니, 꼭 주목해 주시기 바랍니다. 이 두 가지 트렌드는 언어 모델의 발전에 있어서 중요한 역할을 하고 있으며, 이를 통해 기존의 한계를 어떻게 극복하려고 하는지에 대한 통찰을 제공합니다.

또한, 이 글에서는 전통적인 NLP 실험 결과보다는 GPT-3가 수행한 새로운 실험 결과에 더욱 집중합니다. 이 실험들은 산술, 단어 조작, SAT 유추 문제 등 다양한 분야에서 GPT-3의 능력을 측정하고 있으며, 이를 통해 GPT-3를 어떻게 활용할 수 있을지에 대한 통찰을 제공합니다. 이 새로운 실험 결과들은 GPT-3의 다양한 활용 가능성을 보여주며, 이를 통해 우리가 어떻게 이 기술을 실생활에 적용할 수 있을지에 대한 아이디어를 제공합니다.

마지막으로, 이 글은 GPT-3의 한계와 사회적 파장에 대해서도 깊게 다룹니다. 이 부분은 특히 중요하며, 이를 통해 GPT-3.5[5]나 GPT-4[6] 등의 이후 연구와 발전 방향에 대한 이해를 높일 수 있습니다. 이러한 한계와 사회적 파장을 이해하는 것은 단순히 기술적인 측면뿐만 아니라, 이 기술이 우리 사회에 미치는 영향을 파악하는 데에도 중요합니다.

이번 글을 이해하기 위해 필요한 참고 자료는 글 본문에 [번호]로 표시하고 마지막 챕터인 ‘참고자료’ 편에 정리했으니 자세한 내용은 참고자료를 참고 바랍니다.

이 글을 통해 여러분은 GPT-3의 혁신성과 한계, 그리고 그 의미를 종합적으로 이해할 수 있을 것입니다. 지금부터 시작해보겠습니다!

2. 기존 방법의 문제점

GPT-3가 발표된 2020년도를 생각해보겠습니다. 2020년은 한창 초거대 언어 모델(LLM) 붐이 시작되던 시기였죠. 먼저 2017년 Transformer[2]가 발표되었고요. 2019년에는 Transformer[2]를 기반으로 하는 GPT 시리즈의 첫 번째 모델인 GPT-1[1]이 발표됩니다. 이어서 GPT-2. BERT[3] 등 다양한 LLM등이 발표되며 LLM의 시대를 열었죠. 이러한 LLM들은 그 이름에 걸맞게 기존 언어 모델들과는 차원이 다른 스케일을 갖고 있었습니다. 모델 사이즈가 엄청 크다는 의미인데요. 모델 사이즈가 크다는 말은 그만큼 많은 파라미터를 갖고 있는 모델이라는 의미이고, 그만큼 많은 연산을 수행할 수 있다는 의미죠. 이러한 사이즈 덕분에 LLM은 기존 언어 모델과는 차원이 다른 성능을 보일 수 있었습니다.

하지만 이때까지 발표된 LLM들은 공통적인 한계를 갖고 있었는데요. 바로 Fine Tuning을 해주어야 한다는 점입니다. 기존 LLM들은 공통적으로 엄청나게 큰 데이터셋을 사용하여 사전 학습을 진행합니다. 이러한 사전 학습에도 다양한 방법이 있는데요. GPT 시리즈 같은 경우는 입력 받은 문장의 다음 단어를 예측하도록 학습을 합니다. 이러한 방법을 Autoregressive라고 표현합니다. 반면 BERT[3] 같은 경우는 문장 중간의 감춰진 단어를 예측하도록 학습을 하죠. 이러한 방법을 Mask Prediction이라고 합니다. 이렇게 사전 학습의 방법은 다르지만, 기존의 LLM들은 사전 학습만 해서는 우리가 풀고자 하는 문제를 바로 풀지 못했습니다. 사전 학습을 완료한 모델을 가져와서, 우리가 풀고자 하는 문제에 대해 추가 튜닝 (Fine Tuning)을 진행해야만 했죠. 예를 들어, 번역을 잘하는 LLM을 만들고 싶다고 가정해 볼게요. 그럼 먼저 Autoregressive 방식이든 Mask Prediction 방식이든 방대한 양의 데이터를 사용해서 사전 학습을 진행합니다. 이렇게 사전 학습이 완료된 모델은 번역 데이터셋으로 다시 튜닝을 진행해줘야만 합니다. 그리고 이러한 번역 데이터는 번역 정답이 달려 있는 Supervised Learning 데이터셋 이어야 하죠.

따라서 기존의 LLM들은 실용적인 관점에서 한계가 있었습니다. 크게 세가지 문제를 생각해볼 수 있는데요.
첫 번째 문제는 Labeling 데이터셋이 많이 필요하다는 겁니다. 사람은 언어를 익히고 나면 모든 문제를 다 풀 수 있잖아요. 예를 들어 두 종류의 언어를 모두 구사할 수 있다면, 번역 문제를 따로 학습하지는 않죠. 하지만 기존 LLM은 언어를 학습했더라도 (사전 학습을 진행했더라도) 특정 문제를 풀려면, 특정 문제를 다시 학습해야 합니다. 게다가 이렇게 추가로 학습해야 하는 문제는 많은 Label이 필요하죠. 따라서 비용이 많이 든다는 문제가 있습니다.
두 번째 문제는 Fine Tuning 과정에서 모델이 일반화 능력을 잃어버린다는 점입니다. 사전 학습은 주로 다음 단어, 또는 중간 단어를 예측하도록 학습하는데요. 이 과정에서 모델은 자연스럽게 언어 그 자체를 학습하게 됩니다. 사람으로 비유하면 어린 아이가 처음 언어를 익히는 과정과 유사하다고 할 수 있는데요. 말 그대로 언어 능력을 학습 하는거죠. 그런데 Label 데이터를 사용해서 Fine Tuning을 진행하게 되면 그동안 학습했던 언어 능력을 잃게 됩니다. 왜냐하면 기존 가중치를 변경하면서 특정 문제만 잘 풀도록 학습을 진행하기 때문이죠. 사람으로 비유하면 일상 대화를 잘 하는 능력은 잃어버리고 대신 특정 분야의 전문성이 생기는 상황이라고 할 수 있습니다.
세 번째 문제는 사람과의 차이입니다. 사람은 특정 문제를 잘 풀기 위해 Label 데이터로 학습하지 않잖아요. 예를 들어 번역을 잘하기 위해 한글 문장과 영어 문장이 1:1로 매칭된 데이터를 보면서 외우지 않죠. 그저 한글과 영어를 다 잘하면 번역을 잘하기 위한 스킬을 익히며 실력을 키우죠. 최종적인 딥러닝의 목표는 결국 사람의 능력을 구현하는것 이라는 점에서, 이러한 차이는 그 자체로 큰 문제가 됩니다.

3. GPT-3 제안 방법

이번 챕터에서는 GPT-3의 제안 방법을 살펴보겠습니다. 먼저 앞서 설명한 기존 방법의 문제점을 해결하기 위해 시도되어 왔던 트렌드를 설명합니다. 이어서 GPT-3의 가정, 제안 방법, 모델 구성, 학습 데이터셋을 차례대로 살펴보겠습니다.

3-1. 최근의 트렌드

앞서 살펴본 문제 의식은 GPT-3 이전에도 제기되어 왔습니다. 그래서 이러한 문제를 해결하기 위해 크게 두가지 접근 방식을 사용했는데요.

첫 번째 접근 방법은 In Context Learning 입니다. 단어에 Learning이 포함되어 있어서 모델을 학습하는 것으로 생각할 수 있는데요, 사실 모델은 전혀 학습하지 않는 방법입니다. 오히려 In Context Inference 라고 하는 편이 더 정확한 표현일 것 같은데요. 사전 학습된 모델로 새로운 문제를 풀때 예시들을 같이 제공해주는 방법입니다. 예를 들어 번역 문제를 푸는 모델이라고 가정을 해볼게요. 그럼 방대한 데이터셋으로 사전 학습을 먼저 진행하고요. 번역 문제를 이렇게 제공해주는 겁니다.

예시 : “나는 너를 사랑해” -> “I Love You”
문제 : “나는 학교에 간다” -> ” ? “

기존에는 바로 “나는 학교에 간다” 를 입력 받고 번역해야 했는데요. 이번에는 번역 문제의 예시를 먼저 제공받은 뒤 풀어야 할 문제를 보는 거죠. 이 과정에서 모델은 예시를 통해 풀어야 할 문제의 유형과 그 문제에 대한 정답을 ‘학습’ 하게 됩니다. 이러한 의미에서 In Context Learning 이라고 부르는데요. 사실 엄밀히 말하면 모델이 파라미터를 수정하며 ‘학습’ 하지는 않기 때문에 In Context Inference 라는 표현이 더 맞다고 말씀드렸습니다.

이러한 Incontext Learning 방법은 GPT-3에서도 적극적으로 활용합니다. 아래 챕터에서 자세히 설명하겠지만 GPT-3에서는 Zero Shot, One Shot, Few Shot 등 다양한 방법의 In Context Learning을 활용합니다.

두 번째 기존 접근 방법은 Model Capacity를 늘리는 것입니다. 쉽게 말해서 모델 사이즈를 키우는 것인데요. 아무래도 모델 사이즈가 늘어나면 더 많은 파라미터를 갖게 되고, 이에 따라 더 많은 연산을 수행할 수 있게 되고, 결과적으로는 더 복잡한 데이터 분포를 학습할 수 있게 되죠. 따라서 당시 트렌드는 점점 더 큰 사이즈의 모델을 제작하는 것이었습니다.

그림1. LLM별 모델 사이즈 [7]
그림1. LLM별 모델 사이즈 [7]

위 그림은 연도별 출시된 LLM들의 모델 사이즈를 표현한 그래프인데요. 2019년 발표된 GPT-1[1]은 0.11B 파라미터만을 갖는데요. (물론 이것도 적은 수는 아닙니다만) 이후 발표된 GPT-2는 1.5B, 이번에 설명할 GPT-3는 170B 파라미터를 갖습니다. 말 그대로 기하급수적으로 모델 사이즈가 증가하는 모습을 볼 수 있습니다.

3-2. GPT-3의 가정

GPT-3도 이러한 기존 트렌드를 따라가는데요. GPT-3에서는 위의 두가지 트렌드를 모두 적용합니다. 즉 모델 사이즈도 더 키울거고요, In Context Learning 방법을 적극적으로 도입합니다. 이를 통해 Fine Tuning 없이 사전 학습만으로도 다양한 문제를 잘 푸는 범용적인 초거대 언어 모델을 제작하는 것이죠.

그림2. Context에 따른 GPT-3 성능
그림2. Context에 따른 GPT-3 성능

위 그래프는 24개 NLP 데이터셋에 대해 세가지 다른 사이즈 GPT-3 모델을 사용하여 성능을 측정한 그래프입니다. x축은 문제를 풀때 제공받은 예시의 개수, 즉 Context 개수를 의미합니다.

결과를 보면 크게 두 가지 정보를 얻을 수 있습니다.
첫 번째는 모델 사이즈가 클 수록 더 좋은 성능을 보인다는 점입니다.
두 번째는 더 많은 Context를 제공받을 수록 더 좋은 성능을 보인다는 점입니다.
이 결과를 통해 GPT-3의 가정이 옳았음을 알 수 있죠.

3-3. 제안 방법

GPT-3 논문의 특징 중 하나는 모델 구성에 대한 구체적인 설명이 없다는 점인데요. 그 대신 세가지 In Context Learning 방법을 제안합니다. 이 말은 모델의 성능을 올리기 위해 주요했던 개선점은 모델 구성이 아닌, In Context Learning 방법이었다는 것인데요. 하나씩 자세히 살펴보겠습니다.

먼저 첫 번째 방법은 Zero Shot 입니다. 이 방법은 모델에게 문제만 설명해주고 예시는 하나도 제공해주지 않는 방법인데요.

그림3. Zero Shot 예시
그림3. Zero Shot 예시

위 그림은 번역 문제에 대한 Zero Shot 세팅의 예시를 보여주고 있습니다. 먼저 모델에게 풀려는 문제를 설명해줍니다. 위 그림에서는 초록색 표시에 해당하는 Task Description 부분입니다. 영어를 프랑스어로 번역하라고 지시해주고 있는 모습이죠. 그리고 나서 번역해야 할 문장을 입력해줍니다. 위 그림에서는 주황색 표시에 해당하는 Prompt 부분입니다. “치즈”를 번역하라고 입력해준 모습이죠. 이러한 Zero Shot 세팅은 사실 아주 어려운 (Unfairly Hard) 세팅인데요. 하지만 우리가 궁극적으로 도달해야 하는 목표이기도 하죠. 왜냐하면 사람은 이렇게 Zero Shot 세팅으로도 아주 잘하기 때문이죠.

두 번째 방법은 One Shot 입니다. 이 방법은 모델에게 문제를 설명해주고, 하나의 예시를 추가로 제공해주는 방법입니다.

그림4. One Shot 예시
그림4. One Shot 예시

위 그림은 번역 문제에 대한 One Shot 세팅의 예시를 보여주고 있습니다. 먼저 모델에게 풀려는 문제를 설명해줍니다. 위 그림에서는 초록색 표시에 해당하는 Task Description 부분입니다. 영어를 프랑스어로 번역하라고 지시해주고 있는 모습이죠. 여기까지는 Zero Shot 세팅과 동일한데요. 이어서 이번에는 예시를 제공해줍니다. 위 그림에서는 빨간색 표시에 해당하는 example 부분입니다. “sea otter”를 “loutre de mer”로 번역하는 예시를 제공해주고 있습니다. 그리고 나서 이제 풀어야 할 문제를 알려줍니다. 위 그림에서는 주황색 표시에 해당하는 Prompt 부분입니다. Zero Shot 세팅과 동일하게 “치즈” 를 번역하라고 입력해주었습니다. 이러한 One Shot 세팅은 Zero Shot 세팅보다는 쉬운 문제에 해당합니다. 왜냐하면 풀어야 할 문제의 예시와 그 답안까지 제공해 주었기 때문이죠.

이제 마지막 세번째 방법은 Few Shot 입니다. 이 방법은 모델에게 문제를 설명해주고, 여러개의 예시를 추가로 제공해주는 방법입니다.

그림5. Few Shot 예시
그림5. Few Shot 예시

위 그림은 번역 문제에 대한 Few Shot 세팅의 예시를 보여주고 있습니다. 먼저 모델에게 풀려는 문제를 설명해줍니다. 위 그림에서는 초록색 표시에 해당하는 Task Description 부분입니다. 영어를 프랑스어로 번역하라고 지시해주고 있는 모습이죠. 이어서 예시를 제공해줍니다. 위 그림에서는 빨간색 표시에 해당하는 example 부분입니다. One Shot 세팅과 달리 여러개의 예시를 제공해준 모습을 볼 수 있습니다. 그리고 나서 이제 풀어야 할 문제를 알려줍니다. 위 그림에서는 주황색 표시에 해당하는 Prompt 부분입니다. Zero/One Shot 세팅과 동일하게 “치즈” 를 번역하라고 입력해주었습니다.

이러한 Few Shot 세팅은 GPT-3에서 가장 주요하게 사용하는 방법입니다. 사실상 LLM 입장에서는 Fine Tuning 없이 적용할 수 있는 가장 최선의 방법이라고 할 수 있습니다. 보통 10~100개 정도의 예시를 제공받아 실험을 진행합니다.

3-4. Models

다음은 모델 부분을 살펴보겠습니다. 앞서 언급했던 것처럼 GPT-3 논문에서는 모델과 Architecture에 대해서는 크게 강조하고 있지 않습니다. 다만 GPT-2와 거의 동일한 구조를 사용했다고 얘기하고 있죠. 또한 모델 사이즈에 대한 비교 실험을 하기 위해 다양한 사이즈의 모델을 제작하는데요.

그림6. GPT 모델별 하이퍼파라미터
그림6. GPT 모델별 하이퍼파라미터

위 그림은 다양한 사이즈의 GPT-3 모델의 하이퍼파라미터를 보여주고 있습니다. 이 중에서 가장 큰 모델인 175B 모델을 대표 모델로서 GPT-3라고 부릅니다.

3-5. 학습 데이터셋

다음으로 GPT-3가 학습한 데이터셋을 살펴보겠습니다.

그림7. GPT-3 학습 데이터셋
그림7. GPT-3 학습 데이터셋

위 그림은 GPT-3 학습에 사용된 데이터셋의 특징을 정리한 표입니다. 크게 네 가지 종류의 데이터셋을 학습에 사용했는데요.

첫 번째 데이터셋은 Common Crawl 입니다. 이 데이터셋은 웹 크롤링을 통해 수집된 매우 큰 규모의 텍스트 데이터입니다. Common Crawl은 다양한 웹사이트와 도메인에서 수집되며, 다양한 언어와 주제를 포함합니다. 이 데이터셋은 일반적으로 웹의 다양성을 반영하므로, 모델은 다양한 스타일과 주제에 대한 지식을 학습할 수 있습니다.

두 번째 데이터셋은 WebText 입니다. 이 데이터셋은 웹 크롤링을 통해 수집된 매우 큰 규모의 텍스트 데이터입니다. Common Crawl은 다양한 웹사이트와 도메인에서 수집되며, 다양한 언어와 주제를 포함합니다. 이 데이터셋은 일반적으로 웹의 다양성을 반영하므로, 모델은 다양한 스타일과 주제에 대한 지식을 학습할 수 있습니다.

세 번째 데이터셋은 Books1 & Books2 입니다. 이 두 데이터셋은 책의 텍스트를 포함합니다. 이는 고전문학, 현대문학, 과학, 역사 등 다양한 주제와 장르의 책에서 추출된 데이터입니다. 책 데이터는 일반적으로 잘 구성되고, 문맥이 풍부하여 모델이 복잡한 문장 구조와 의미를 학습하는 데 도움이 됩니다.

네 번째 데이터셋은 Wikipedia 입니다. 이 데이터셋은 위키백과의 기사를 포함합니다. 위키백과는 다양한 주제와 언어로 작성된, 고품질의 정보를 제공합니다. 이 데이터셋을 통해 모델은 다양한 주제에 대한 정확한 정보와 구조화된 텍스트를 학습할 수 있습니다.

크게 보면 인터넷, 책, 백과사전 데이터로 학습했다고 볼 수 있는데요. 데이터 수량을 기준으로 봤을 때 인터넷 데이터가 82%로 절대 다수임을 알 수 있습니다. 이러한 학습 데이터 분포는 GPT-3의 특징에 아주 큰 영향을 줍니다. 아래 챕터에서 실험 결과와 한계를 살펴보며 학습 데이터 구성이 어떠한 영향을 주었는지 생각해보겠습니다.

4. 전통적인 NLP 실험 결과

이번 챕터에서는 실험 결과를 살펴볼텐데요. 이번 글에서는 실험 결과를 크게 전통적인 NLP 실험들과 새로운 방식의 실험 으로 나누어 정리했습니다. 물론 두 종류의 실험 모두 의미가 있습니다. 하지만 LLM의 궁극적인 목표는 단순히 언어 모델링의 성능을 올리는 것이 아닌 응용 어플리케이션을 만들기 위함임을 고려해봤을때 전통적인 NLP 실험 결과보다는 실용적 측면이 강조된 새로운 실험 결과들의 의미가 더 크다고 생각합니다. 먼저 전통적인 NLP 실험 결과를 살펴보겠습니다.

4-1. Language Modeling, Cloze and Completion Tasks

먼저 언어 모델링 실험 결과를 살펴보겠습니다. 주로 빈칸 단어를 예측하는 문제입니다.

그림8. Language Modeling 실험 결과
그림8. Language Modeling 실험 결과

위 그림은 세 가지 문제에 대한 성능을 비교한 표인데요. LAMBADA 문제는 중간에 빈 단어를 예측하는 문제입니다. StoryCloze는 빈 칸의 문장을 예측하는 문제입니다. HellaSwag 문제는 주어진 시나리오에 대한 결말을 예측하는 문제인데요, 마찬가지로 빈 칸의 문장을 예측하는 문제입니다.

첫 번째 행의 SOTA는 Fine Tuning 방법의 모델 성능을 의미하는데요. 결과를 보면 LAMBADA 문제에서는 SOTA 모델보다 좋은 성능을 보이고요, StoryCloze, HellaSwag 문제에서는 SOTA 모델에 못미치는 성능을 보여줍니다. 하지만 Fine Tuning 없이 In Context Learning 방법만으로 수행한 결과임을 고려했을때 엄청난 성능이라고 할 수 있습니다.

결론적으로 GPT-3는 언어 모델링 문제를 잘 푼다고 할 수 있는데요. 이는 GPT-3가 다양한 언어 구조와 문맥을 잘 이해하고 있음을 의미합니다. 또한 빈칸을 적절하게 잘 채울 수 있다는 의미는 텍스트 생성, 작문, 챗봇 등의 다양한 응용 어플리케이션에 적용할 수 있는 모델임을 의미합니다.

4-2. Open Domain Question Answering

다음은 Open Domain Question Answering 실험 결과를 살펴보겠습니다.

그림9. Closed Book Qeustion Answering 실험 결과
그림9. Open Domain Qeustion Answering 실험 결과

위 그림은 세 가지 데이터셋에 대한 모델별 성능을 비교한 표입니다. 먼저 NaturalQS 데이터셋은 실제 사용자가 구글에 입력한 질문과 그에 대한 답으로 구성된 데이터셋입니다. WebQS는 웹 검색을 통해 얻은 질문과 대답에 대한 데이터셋이고요. TriviaQA는 일반 지식 퀴즈라고 생각하면 됩니다.

결과를 보면 TriviaQA 데이터셋에서는 기존 SOTA를 능가하는 수준의 성능을 보이고요. 나머지 두 데이터셋에서도 그럭저럭 좋은 성능을 보여주고 있습니다.

이러한 결과를 통해 GPT3는 데이터 저장과 검색 능력이 있음을 알 수 있습니다. Closed Book Question Answering 문제는 기본적으로 지식을 저장해 놓고, 이를 사용해서 문제에 대답을 해야 하는데요. 이러한 문제를 잘 푼다는 것은 지식을 저장하고, 적절한 지식을 찾아 대답할 수 있음을 의미하기 때문이죠.

4-3. Translation

다음은 번역 실험 결과를 살펴보겠습니다.

그림10. 번역 실험 결과
그림10. 번역 실험 결과

위 그림은 모델별 다양한 언어에 대한 번역 성능을 비교한 표입니다. GPT-3는 Fine Tuning을 진행한 SOTA 모델에는 못미치는 성능을 보였는데요. 하지만 Few Shot 성능을 비교해보면 몇몇 언어에서는 SOTA 성능을 능가하는 모습도 보이고 있습니다.

이러한 GPT-3의 능력은 이 모델이 다양한 언어의 구조와 문맥을 잘 이해하고 있음을 의미합니다. 또한 Fine Tuning 없이고 실시간 동역, 분서 번역, 다국어 지원 서비스 등 다양한 어플리케이션에 적용할 수 있는 수준임을 알 수 있습니다.

4-4. Winograd Style Tasks

다음은 Winograd Style Task 실험 결과를 보겠습니다. 이 문제는 대명사 지칭 문제인데요. 예를 들어, “가가 가가?” 라는 표현에서 각각의 “가” 가 의미하는 바를 찾는 문제이죠.

그림11. 대명사 지칭 문제 실험 결과
그림11. 대명사 지칭 문제 실험 결과

위 그림은 이러한 대명사 지칭 문제의 실험 결과를 정리한 표입니다. 우선 GPT-3의 성능은 Fine Tuning을 진행한 SOTA 모델에 조금 못미치는 모습을 볼 수 있습니다. 하지만 Fine Tuning 없이 사전 학습만으로 진행한 성능임에도 불구하고 SOTA 성능에 거의 근접한 모습을 보여주고 있죠.

이렇게 대명사 지칭 문제를 푸는 과정을 생각해보면 GPT-3의 능력에 대해 조금 더 깊이 이해할 수 있는데요. 입장을 바꿔서 우리가 직접 대명사 지칭 문제를 푼다고 생각해보죠. 이러한 문제를 풀기 위해서는 앞 내용의 문맥을 이해하고 있어야 합니다. 그래야 현재 문장에서 지칭하는 대명사가 무엇 또는 누구를 지칭하고 있는건지 알 수 있기 때문이죠. 따라서 GPT-3가 이러한 문제를 잘 푼다는 말은 사전 학습만으로도 긴 내용의 의미와 문맥을 잘 이해하는 능력이 있음을 반증합니다.

4-5. Common Sense Reasoning

다음은 Common Sense Reasoning 실험 결과를 살펴보겠습니다. 이 실험은 상식 퀴즈라고 생각하시면 됩니다. 실험에 사용된 문제들을 간략하게 알아보겠습니다.

첫 번째 PIQA는 물리적 상호 작용에 대한 상식을 평가하는 문제로 구성되어 있습니다.
두 번째 ARC는 다양한 주제에 대한 상식을 평가하는 문제로 구성되어 있습니다. 이때 난이도에 따라 구분하여 Easy 문제와 Challenge 문제로 구분되어 있죠.
세 번째 OpenBookQA는 주어진 책의 정보를 바탕으로 질문에 답하는 문제입니다.
주어진 문제들 모두 일반적인 상식 문제를 푸는 퀴즈라고 할 수 있습니다.

그림12. Common Sense Reasoning 실험 결과
그림12. Common Sense Reasoning 실험 결과

위 그림은 이러한 상식 퀴즈 문제에 대한 GPT-3와 SOTA 모델의 성능을 비교한 표입니다. 결과를 보면 GPT-3는 SOTA 모델 성능보다 좋은 문제도 있고, 못 미치는 문제들도 있는데요. 특히 물리적 상호 작용 문제에서 좋은 성능을 보인다는 점이 흥미롭습니다. 딥러닝 모델은 학습 데이터를 토대로 대답할 수밖에 없음을 고려 했을때, 이러한 결과를 이해하기 위해서는 학습 데이터 구성을 생각해 봐야 하는데요. 앞서 살펴보았듯 GPT-3의 학습 데이터는 대부분 인터넷에서 모은 자료들이고, 그 외에 책과 위키백과를 포함하고 있었죠. 이러한 상식 문제에서의 좋은 성능은 아무래도 위키백과에서 학습한 내용을 토대로 대답할 수 있었기 때문으로 생각할 수 있습니다.

4-6. Reading Comprehension

다음은 독해 실험 결과를 살펴보겠습니다. 독해 실험은 주어진 텍스트를 읽고 관련 문제에 답하는 문제입니다. 쉽게 생각해서 수능 시험의 언어 영역 문제로 실험을 해봤다고 생각하시면 됩니다.

그림13. 독해 실험 결과
그림13. 독해 실험 결과

위 그림은 다양한 독해 문제에 대한 SOTA 모델과 GPT-3 모델의 성능을 비교한 표입니다. 우선 모든 문제에서 GPT-3는 SOTA 모델 성능에 미치지 못했는데요. 크게 보면 CoQA는 잘했고, 나머지는 못했다고 볼 수 있습니다.

CoQA는 자유 형식의 대화 데이터셋인데요. 이러한 결과 또한 GPT-3의 학습 데이터셋 구성을 생각해보면 납득할 수 있는 결과입니다. GPT-3 학습 데이터의 대략 82%는 인터넷 데이터로 구성되었기 때문이죠. 따라서 사람들의 일반적인 대화 능력에 특히 강점을 보인다고 이해할 수 있습니다.

반면 DROP은 이산적 추론과 수량화 능력을 테스트하는 시험인데요. 특히 낮은 점수를 받은 모습입니다. 마찬가지로, GPT-3는 일반적인 대화나 위키백과, 책 등의 내용을 학습했음을 고려하면 성능이 낮은 이유를 납득할 수 있는 부분입니다.

4-7. SuperGLUE

다음은 SuperGLUE 실험 결과를 살펴보겠습니다. 기존 NLP 모델들이 공통적으로 실험하던 GLUE 문제가 있었는데요. GLUE는 다양한 태스크를 사용해 일반적인 언어 이해 능력을 평가하는 문제입니다. SuperGLUE는 이를 더 확장한 버전으로써 문장 분류, 의미론적 역할 레이블링, 핵심어 추출, 읽기 이해 등을 평가하는 문제입니다.

그림14. SuperGLUE 실험 결과
그림14. SuperGLUE 실험 결과

위 그림은 SuperGLUE 실험 결과를 나타낸 표입니다. 우선 모든 문제에 대해 GPT-3는 Fine Tuned SOTA 모델의 성능을 능가하지는 못했습니다. 특히 WiC, RTE, CB의 성능이 낮았는데요. 이 문제들은 공통적으로 두 문장의 관계를 맞추는 문제들입니다. 두 문장에서 단어가 동일한 의미로 사용되는지, 한 문장이 다른 문장을 함축하는 지 등을 판단하는 문제들이죠. 이러한 문제들과 비슷한 다른 실험에서는 비교적 좋은 성능을 보였음을 고려했을때, 이번 실험 결과는 데이터셋 내용, 어체 등을 좀 더 구체적으로 고려해야 판단할 수 있을것 같습니다.

4-8. NLI (Natural Language Inference)

다음은 NLI 실험 결과를 살펴보겠습니다. NLI는 주어진 두 문장의 관계를 판단하는 문제입니다. 일반적으로 Premise라고 불리는 기본 문장과 Hypothesis라고 불리는 가설 문장이 주어집니다. 모델은 이 두 문장의 관계를 맞춰야 하는데요. 세 가지 종류로 맞출 수 있습니다. Entailment(포함), Contradiction(모순), Neutral(중립) 세 가지 중 한 가지로 대답해야 하죠.

그림15. NLI 실험 결과
그림15. NLI 실험 결과

위 그림은 GPT-3 사이즈에 따른 ANLI 성능을 정리한 그래프입니다. 모델 사이즈가 커질수록 성능은 좋아지지만 Fine Tuned SOTA에 크게 못 미치는 성능을 보이고 있습니다. 앞서 SuperGLUE 실험 결과와 동일하게 두 문장의 관계를 파악하는데에 있어서는 꽤나 어려움을 겪는 모습이네요.

5. 새로운 실험 결과

지금까지는 전통적인 NLP 실험 결과들을 살펴봤습니다. 이러한 문제들은 공통적으로 일반적인 언어 능력을 평가하는데에 초점이 맞춰져 있죠. 하지만 LLM의 궁극적인 목표는 인간의 언어 능력을 따라잡는 것이고, 또한 조금 더 실용적인 목표는 이러한 언어 능력을 사용한 어플리케이션을 개발하는 것이죠. 이러한 관점에서 생각해봤을때 전통적인 NLP 실험만으로 모델의 성능을 평가하기에는 한계가 있습니다. 실제 어플리케이션 관점이 반영되어있지 않기 때문이죠.

이러한 한계를 보완하기 위해 GPT-3에서는 새로운 실험들을 진행하는데요. 아주 재미있는 실험들이 많습니다. 예를 들어 수학 문제 풀기, 단어나 문장 재배열하기, 미국 수능 (SAT) 풀기, 뉴스 기사 생성하기, 새로운 단어 학습하기 등의 문제들이죠. 아래에서 하나씩 자세히 살펴보겠습니다.

5-1. Arithmetic

먼저 Arithmetic 실험 결과를 살펴보겠습니다. Arithmetic 문제는 말 그대로 ‘산수’ 문제인데요. 언듯 생각해보면 “사람과 대화를 할 수 있는 수준의 AI가 간단한 ‘산수’ 문제 정도를 못풀겠나”라고 생각할 수 있는데요. GPT-3가 사용한 학습 데이터와 알고리즘을 생각해보면 이 단순한 산수 문제가 GPT-3가 풀기에는 만만치 않은 문제임을 알 수 있습니다. GPT-3는 그저 인터넷에 존재하는 다량의 ‘대화’ 수준의 데이터셋을 학습했잖아요. 이 데이터에는 수학, 과학적인 내용은 거의 포함되어 있지 않을겁니다. 그나마 비슷한 지식을 기대할 수 있는 데이터셋은 위키백과 정도인데, 데이터 구성 비율이 아주 적었죠. GPT-3는 이렇게 극소량의 데이터, 그것도 언어로 풀어서 설명된 데이터셋을 학습해서 직접 ‘산수’ 문제를 풀어야 하는 상황인겁니다. 사람으로 비유하면, 아무것도 모르는 아이에게 한글을 가르치면서 동시에 산수를 가르칠건데, 말로만 원리를 설명해준 뒤 연습 문제는 한번도 안풀어보고 바로 산수 시험을 보게 하는 상황인거죠.

그림16. 산수 실험 결과
그림16. 산수 실험 결과

위 그림은 이러한 산수 문제에 대한 실험 결과를 정리한 표입니다. 2D+는 두자리수 덧셈을 의미합니다. 마찬가지로 4D-는 네 자리수 뺄샘을 의미하고요.

실험 결과를 살펴보면 놀랍게도 두자리수 연산에서 Few Shot 모델은 거의 완벽에 가까운 성능을 보여줍니다. 반면 연산해야 하는 자리수가 늘어날 수록 성능은 급격하게 하락하는 모습입니다.

이러한 실험 결과는 이렇게 해석해볼 수 있을것 같습니다. 두자리수 연산을 잘한다는건 학습 데이터에 두자리수 연산과 관련된 내용이 포함되어 있음을 추론해볼 수 있습니다. 정확히 같은 문제는 아니더라도, GPT-3의 추론 능력을 감안했을때 비슷한 내용의 표현이 많이 포함되어 있다면 충분히 가능한 성능이죠. 반면 세자리수, 네자리수 연산은 데이터에 많이 포함되어 있지 않았을겁니다. 따라서 GPT-3의 성능이 크게 떨어졌다고 생각해볼 수 있죠. 이러한 결과는 GPT-3의 산수 능력은 그 원리를 이해한 것이 아닌, 학습 데이터로부터 비슷한 내용을 찾아 추론한 능력이라고 생각됩니다. 왜 우리도 생각해보면, 초등학교 수학 시간에 눈치껏 문제를 제법 잘 푸는 친구들이 있었잖아요? GPT-3는 그 정도 수준의 산수 능력을 가지고 있다고 볼 수 있겠습니다.

5-2. Word Scrambling & Manipulation

다음은 Word Scrambling & Manipulation 실험 결과를 살펴보겠습니다. 이 문제는 단어에서 알 수 있듯 단어 또는 문장을 재배열하는 문제입니다. 이렇게 재배열한 단어, 문장의 어휘와 문법이 맞는지, 문맥을 얼마나 잘 이해하고 있는지를 판단하는 문제입니다.

그림17. 문장 재배열 실험 결과
그림17. 문장 재배열 실험 결과

위 그림은 다양한 단어, 문장 재배열 문제에 대한 GPT-3의 성능을 비교한 표인데요. 우선 기존 다른 모델들과 비교한 성능이 아니기에 얼마나 잘한 것인지는 알 수 없습니다. 다만 Zero Shot 성능과 One/Few Shot 성능이 크게 차이 난다는 점이 재미있네요. 다른 문제들은 GPT-3 입장에서 그래도 ‘무엇을 하라는 문제인지’ 알 수 있는데, 이 문제는 도통 ‘무엇을 하라는 문제인지’ 전혀 이해를 못했다고 볼 수 있겠습니다. 몇 개의 샘플을 제공받고 나면 성능이 크게 좋아지는 모습을 보이고 있습니다.

결과적으로 Few Shot 성능만 놓고 봤을때 GPT-3는 그럭저럭 단어와 문장 재배열을 잘 한다고 볼 수 있는데요. 이러한 결과는 GPT-3는 문맥 파악 능력이 있다는 것으로 결론 내릴 수 있을것 같습니다. 이는 기존 NLP 실험에서 검증하고자 했던것과 동일한 능력이죠.

5-3. SAT Analogy

다음은 SAT 실험 결과입니다. SAT는 한국의 수능 시험에 해당하는 미국의 대입 능력 시험입니다. 재미있게도 GPT-3로 SAT 성적을 평가해봤는데요. 결과는 다음과 같습니다.

그림18. SAT 실험 결과
그림18. SAT 실험 결과

우선 결과를 보면 첫 번째로는 모델 사이즈가 커질수록 성능이 좋아지는 모습을 볼 수 있습니다. 당연한 결과이고요. 두 번째로는 모델 사이즈가 커지면 In Context Learning 성능이 더 좋아지는 모습을 볼 수 있습니다. 이는 큰 사이즈 모델에서 Few Shot 성능이 Zero Shot 성능보다 크게 좋아지는 모습을 통해 알 수 있죠.

보통 미국 대학생 평균 SAT 점수가 57점이라고 하는데요. 이 말은 175B GPT-3는 평균적인 미국 대학생보다 SAT를 더 잘 푼다는 말입니다. 물론 Few Shot 성능이라 문제에 대한 샘플을 여러개 제공 받았겠지만요. 이러한 실험 결과는 기존의 언어 모델들과 달리 GPT-3부터는 슬슬 실용적인 문제에 적용할 수 있는 가능성이 커지고 있음을 의미하죠. 이는 현재의 ChatGPT 붐을 생각해보면 이해할 수 있는 대목입니다.

5-4. News Article Generation

다음은 News Article Generation 실험 결과를 살펴보겠습니다. 이 실험이 재미있는게, 기사 생성이라는게 생각해보면 가짜 뉴스를 만들었다는 거잖아요. 결국 가짜 뉴스를 얼마나 잘 만드는지를 실험해봤다는 얘기인거죠. 보통은 이렇게 부정한(?) 내용의 실험은 잘 하지 않는데요. GPT-3가 얼마나 실용적인 관점에서 실험을 진행했는지 다시 한번 생각해볼 수 있는 부분입니다. 실험 결과는 다음과 같습니다.

그림19. 뉴스 기사 생성 실험 결과
그림19. 뉴스 기사 생성 실험 결과

실험 세팅은 이렇습니다. 먼저 GPT-3가 기사를 만들어요. 그리고 사람이 직접 이 기사를 평가하는 겁니다. 이 기사가 사람이 만든 것인지, 기계가 만든 것인지를 말이죠. 결과를 보면 최고 모델인 GPT-3 175B의 정확도는 무려 52%입니다. 이 기사가 사람이 쓴 것인지, 기계가 만든 것인지를 52% 밖에 제대로 판단하지 못했다는 말인데요. 그냥 무작위로 선택 했을때의 정확도가 50%임을 생각해보면, 이 말은 결국 GPT-3가 생성한 기사가 가짜인지 전혀 구분할 수 없다는 말입니다! GPT-3의 대단한 언어 능력에 감탄을 함과 동시에 앞으로 LLM들이 얼마나 큰 사회적 이슈를 일으킬지 걱정하게 만드는 결과네요.

5-5. Learning And Using Words

다음은 Learning And Using Words 실험 결과를 살펴보겠습니다. 이 실험은 새로운 단어를 얼마나 잘 습득하고 활용하는지를 알아보는 문제입니다. 먼저 모델에게 새로운 단어를 설명해주고요. 이렇게 새롭게 알게 된 단어를 활용해서 문장을 생성하게 하고, 새로운 단어를 잘 활용했는지를 평가하는 방법이죠. 이때 새로운 단어는 실제 존재하지 않는 단어를 사용합니다. 따라서 모델이 학습 데이터로부터 이 단어를 학습했을 가능성은 배재할 수 있죠.

실험 결과를 정량적으로 정리하지는 않았지만, GPT-3 논문에서는 GPT-3가 전반적으로 새로운 단어를 능숙하게 잘 사용한다고 말하고 있습니다. 우리는 이러한 결과가 주는 시사점에 대해서도 생각해봐야 하는데요. 실험 결과로부터 우리는 GPT-3에게 새로운 단어를 ‘학습’ 하는 능력이 있음을 알 수 있습니다. 물론 여기서 말하는 ‘학습’이란 기존의 딥러닝에서 말하는 모델 파라미터를 수정하는 ‘학습’을 의미하지는 않습니다. 오히려 ‘In Context Learning 성능이 좋다’라고 표현 하는게 정확할 것 같은데요. 모델의 파라미터를 수정하지는 않았지만, 지금의 지시문에서 설명하는 내용을 기억하고 이 내용을 바탕으로 새로운 추론이 가능하다는 것이죠. 이 또한 기존의 NLP 실험과 달리 응용 어플리케이션의 관점에서 측정한 성능인데요. 실제 어플리케이션에서는 이번 실험과 같이 모델이 모르는 용어 등이 주어지고, 이를 활용하여 답안을 제시해야 하는 경우가 자주 발생할 것이기 때문입니다. 이러한 측면에서 GPT-3는 응용 어플리케이션으로 활용되기에 충분한 준비가 되었다고 볼 수 있겠습니다.

5-6. Correcting English Grammer

마지막 실험은 영어 문법 오류 수정 실험입니다. 입력된 문장의 문법을 수정해주는 문제인데요. 예를 들어 이런거죠.

입력: “She don’t knows how to swim”

올바른 문장: “She doesn’t know how to swim.”

논문에서는 GPT-3가 다양한 문법 오류에 대해 올바른 문장으로 수정할 수 있었다고 말하고 있습니다. 이러한 실험 또한 기존 NLP와는 달리 실용적인 측면에 초점을 맞춘 실험이라고 볼 수 있는데요. 문법 오류를 찾아 수정할 수 있는 능력이 있다는 말은 당장 오탈자 자동 수정 어플리케이션 등으로 활용할 수 있는 기능이기 때문이죠.

6. 한계

지금까지 GPT-3의 다양한 기능에 대해 살펴봤습니다. 전통적인 NLP 문제뿐만 아니라, 응용 어플리케이션으로써의 성능에 초점을 맞춘 다양한 실험에서도 GPT-3는 놀라운 가능성을 보여주었는데요. GPT-3 논문에서는 이렇게 GPT-3의 밝은 미래에 대한 내용뿐만 아니라 그 한계에 대해서도 구체적으로 언급하고 있습니다.

이번 챕터에서는 GPT-3 모델의 한계에 대해 알아보겠습니다. 크게 일곱가지 측면으로 나누어 살펴볼건데요. 먼저 GPT-3 성능의 한계에 대해 살펴보고요. 이어서 알고리즘적인 한계, 본질적 한계, 학습 효율성의 한계, Few Shot Setting의 불확실성, 비용적인 측면, 해석 가능성의 문제에 대해 자세히 살펴보겠습니다.

6-1. 성능

먼저 성능의 한계를 생각해보겠습니다. 지금까지 아주 다양한 실험 결과를 통해 GPT-3의 성능이 아주 좋다고 주장했는데요. 이번에는 성능이 한계라고 얘기를 하니, 뚱딴지 같은 소리로 들릴 수 있을것 같은데요. 이러한 주장은 GPT-3 제작 목적을 생각해보면 이해할 수 있습니다. GPT-3의 목표는 지금까지의 언어 모델들과는 달리, 그저 성능이 조금 더 좋은 언어 모델을 제작하자는 것이 아닌 ChatGPT와 같이 사람과 대화가 가능한 응용 어플리케이션을 제작하기 위함인데요. 이러한 목표 때문에 앞서 아주 다양한 실험을 진행했던 것이죠. 사람과 대화가 가능하려면 아주 다양한 상황에서 대응이 가능해야 하니까요. 이러한 관점에서 생각해보면 앞선 실험 결과들로부터 크게 세 가지 문제점을 생각해볼 수 있습니다.

첫 번째는 여전히 잘 못푸는 문제들이 존재한다는 점입니다. 예를 들어 물리학 일반 상식 문제 같은 경우 성능이 매우 낮았었죠. 이러한 문제는 Few Shot 세팅에서도 끝내 좋은 성능을 보이지 못했는데요. 이러한 낮은 성능은 아마도 이와 관련된 내용의 학습 데이터셋에 적었기 때문으로 추론됩니다. 하지만 원인이 무엇이든 간에 특정 분야의 대답이 형편없다는 것은 응용 어플리케이션으로의 활용에 한계가 있음을 의미합니다.

두 번째는 문장 생성시 때때로 오류가 발생한다는 점입니다. 논문에 따르면 GPT-3는 문장을 생성하는 과정에서 문단 레벨에서 동어를 반복하는 현상이 종종 발생한다고 합니다. 이로 인해 생성한 문장이 길어질수록 가독성이 떨어지는 문제가 있죠. 또한 관련 없는 문장을 생성하기도 하고 모순적인 내용을 생성하는 등의 문제가 있습니다.

세 번째 문제는 몇몇 문제에서 In Context Learning 성능이 떨어진다는 점입니다. 앞서 살펴본 실험들 중 두 문장의 관계를 맞추는 문제들에서는 유독 GPT-3가 약한 모습을 보였는데요. 이러한 문제들은 공통적으로 Zero Shot 세팅의 성능이 낮았을 뿐만 아니라 Few Shot 세팅에서도 성능이 크게 향상되지 않는 모습을 보였습니다.

6-2. 모델의 구조, 알고리즘

다음은 GPT 시리즈 모델의 구조와 알고리즘에서 비롯되는 한계인데요. GPT 시리즈는 BERT[3] 등과는 달리 Autoregressive 방식으로 학습하고 동작합니다. 물론 GPT-3의 성능도 훌륭하지만, 양방향 구조나 Denoising 방식의 LLM들도 훌륭한 성능을 보이고 있는데요. GPT-3 논문에서는 이러한 방식을 사용한 실험은 수행하지 않았습니다. 특히 GPT-3가 약한 모습을 보였던 빈칸 채우기, 두 문단 비교하기, 긴 문단 읽고 답변하기 등의 문제들은 양방향 구조의 LLM들이 강한 면모를 보이고 있는데요. 이러한 점을 고려하면 앞으로의 GPT 시리즈에서는 양방향 구조의 장점을 응용할 수 있는 방안 모색이 필요해 보입니다.

6-3. 본질적 한계

다음은 본질적인 한계를 얘기해보겠습니다. 논문에서는 크게 두 가지 본질적인 한계에 대해 설명합니다.

첫 번째는 토큰 예측을 학습하는 방법입니다. GPT 시리즈에서는 Autoregressive 방식으로 다음 토큰을 예측하며 모델이 학습하는데요. 이때 모든 토큰은 동일한 가중치를 갖고 있습니다. 하지만 단순히 단어의 빈도수만을 기준으로 생각해봐도 모든 단어의 가중치가 동일하다는 점은 모델에게 도움이 안된다는 점을 생각해볼 수 있는데요. 자주 출현하는 단어에 더 큰 가중치를 주는것이 모델의 성능에 도움을 줄 것으로 예상할 수 있기 때문이죠. 이러한 아이디어에서 실제로 딥러닝 연구에서는 다양한 Attention 메커니즘들이 연구, 발전되어 왔죠.

두 번째는 실제 세상에 대한 컨텍스트 부족에 대한 한계를 언급하고 있습니다. 이 부분은 GPT-3의 다음 버전인 GPT-3.5[5]의 방향성을 언급해주는 부분으로, 아주 중요한 부분인데요. 논문에서는 GPT-3가 실제 물리 세상에서의 Context가 부족하다고 말합니다. GPT-3는 인터넷 언어 데이터를 가지고 학습했죠. 따라서 인간의 언어를 모방하는 능력이 있는것처럼 느껴집니다. 하지만 이는 그저 인간의 언어 능력을 모방하는 것일뿐 실제 세상과는 거리가 있다는 것이죠. 이는 LLM등이 목표로 하는 실제 세상에서의 응용 어플리케이션에 적용하기에는 아직 한계가 있다는 선언이기도 합니다. 이에 대한 해결 방안으로는 사람이 학습하는것과 비슷한 목적함수를 개발하는 방법, 강화학습을 사용하는 방법, 이미지 등 다른 모달리티를 적용하는 방법을 제안하고 있는데요. 실제로 GPT-3.5[5]에서는 강화학습을 사용하여 인간의 피드백을 반영하여 더 현실적인 LLM을 제작하게 되죠. 또한 GPT-4[6]에서는 이미지 등의 다양한 모달리티를 처리할 수 있는 LLM으로 발전하게 됩니다.

6-4. 효율성

다음은 훈련 과정의 효율성에 대한 한계입니다. 지금까지 살펴본 실험 결과를 생각해보면 GPT-3는 Fine Tuning 없이도 다양한 문제 상황에 그럭저럭 잘 대처한다고 결론 내릴 수 있습니다. 이는 분명 기존 LLM들의 한계를 뛰어넘는 중요한 성과였죠. 하지만 시선을 잠깐 돌려 사전 학습 과정을 생각해볼게요. GPT-3는 실로 엄청난 양의 데이터를 사용하여 사전 학습을 진행했습니다. 이 데이터가 어느 정도냐면, GPT-3 논문에서는 ‘인간이 평생 보게 될 데이터보다 많은 양’이라고 표현하고 있습니다.

이렇게 많은 양의 데이터로 학습해야만 하는 모델은 분명 실용적인 관점에서 한계가 있죠. 학습을 위해서 사용해야 하는 컴퓨터 자원만 계산해도 아주 막대한 비용이 필요할 테니까요. 물론 이러한 한계는 GPT-3만이 갖는 문제는 아닙니다. 현존하는 모든 LLM, 넘어서 모든 딥러닝 모델들이 갖고 있는 한계이기도 하죠. 하지만 어찌됐든 현재의 딥러닝이 나아가고자 하는 방향이 실용적인 응용 어플리케이션이라면, 이 문제는 극복해야 하는 한계임은 분명합니다.

6-5. Few Shot 세팅 효과

다음은 Few shot 세팅에서의 효과가 불분명하다는 점입니다. GPT-3 논문에서는 Few shot 세팅의 중요성을 강조하고, 이를 잘 활용해야 한다고 주장하고 있는데요. 문제는 이 Few Shot 세팅의 성능이 좋은 이유를 명확하게 알 수 없다는 점입니다. 새로운 태스크를 배운 것인지, 학습 과정에서 배웠던 태스크 중 하나를 찾아내서 추론한 것인지 등 메커니즘을 정확하게 알 수 없죠. 실제로 꼬인 단어 풀기 같은 문제는 학습 과정에서 노출되었을 가능성이 적지만, 번역 문제는 사전 학습 과정에서 노출되었을 가능성이 큽니다.

GPT-3에서는 Few Shot 세팅의 중요성을 강조하고 있고, 앞으로 이를 적극적으로 활용할 것이 분명한 만큼 Few Shot 세팅에서 모델이 어떻게 동작하는 것인지, 왜 성능이 좋아지는 것인지에 대한 명확한 분석이 필요해 보입니다.

6-6. 비용

다음은 중요한 비용 문제입니다. GPT-3의 성능이 좋은 것은 지금까지 살펴봐서 알겠는데요. 문제는 아무리 좋은 모델도 수지타산이 맞아야 응용 어플리케이션 등에 적용할 수 있다는 것인데요. GPT-3는 모델 스케일에 대한 문제는 고려하지 않았기에 175B라는 엄청난 사이즈의 모델을 제작했습니다. 이렇게 거대한 사이즈는 필연적으로 학습, 추론 과정에서 엄청난 연산량을 필요로 합니다. 이는 필연적으로 막대한 비용으로 이어지게 되죠.

결국 GPT-3는 비용적인 관점에서만 생각해도 실용성이 낮은 모델이라고 볼 수 있습니다. 이 문제를 해결하지 않고서는 응용 어플리케이션으로 성공하기 어렵다는 말이기도 하죠. 논문에서는 Distillation 방식 등을 활용해서 문제를 풀고자 하는 아아디어를 언급하는데요. 구체적인 내용은 향후 연구 결과를 통해 알아봐야 겠습니다.

6-7. 해석 가능성

다음은 해석 가능성의 문제입니다. 대부분의 딥러닝 모델이 그러하듯이 GPT-3 또한 해석 가능성 문제를 안고 있는데요. 모델이 도출한 결과에 대한 원인을 찾을 수 없다는 문제입니다. 이로 인해 설명력이 떨어진다는 실용적인 한계가 있죠. 또한 새로운 입력에 대한 Calibration이 잘 안되는데요. 이로 인해 사람보다 예측의 분산이 큰 경향이 있습니다. 쉽게 말해서 동일한 문제에 대한 대답이 매번 바뀐다는 말인데요. 사람으로 생각해보면, 뭔가 배우긴 했는데 아직 확신이 없어서 이랬다 저랬다 하는 아이라고 생각해볼 수 있겠네요.

7. 사회에 미치는 파장

지금까지 살펴본바와 같이 GPT-3는 엄청난 성능을 갖고 있는 LLM이기도 하면서 동시에 아직은 많은 한계를 갖는 모델이기도 합니다. 하지만 분명한 점은 기존의 AI를 한참 넘어서는 가능성을 갖는 모델이라는 겁니다. 아직 분명한 한계가 많이 존재하지만 지금 상태만으로도 잘 응용해서 적용할 수 있는 분야가 많이 존재하죠. GPT-3 논문에서는 이러한 점을 의식하여 이번 연구가 사회에 미치는 파장에 대해서 언급하고 있습니다.

7-1. 잘못된 사용

가장 먼저 생각할 수 있는 부작용은 잘못된 사용입니다. 이미 앞서 실험 결과 챕터에서 뉴스 기사 생성에 대한 실험 결과 내용을 설명했는데요. 이미 GPT-3가 생성한 기사는 사람이 실제 여부를 전혀 판단할 수 없는 수준입니다. 만약 누군가가 GPT-3를 악용하여 의도적으로 가짜 뉴스를 만들어낸다면 이는 상상할 수 없는 후폭풍을 초래할 수도 있겠죠.

더욱 큰 문제는 GPT-3가 다양한 다른 AI 모델들과 결합 되었을때 입니다. 예를 들어 음성 생성 모델과 GPT-3가 결합된다면 어떤 일이 벌어질 수 있을까요? 부모도 분간할 수 없는 자녀 납치 조작 협박 전화가 가능해지겠죠. 자녀의 음성을 거의 동일하게 따라할 수 있는 음성 생성 모델과 발화 패턴을 익힌 언어 모델이 결합한다면, 이를 응용한 다양한 사기가 넘쳐날 수도 있습니다. 실제로 최근에는 ChatGPT와 영상 합성 모델을 결합하여 만들어진 가짜 뉴스 영상이 나왔죠. 이 영상은 방송국에서 실제 상황이 아님을 해명하기 전까지 실제 여부를 구분할 수 없는 수준이었습니다.

7-2. 편향

두 번째 문제는 편향입니다. 여기서 말하는 편향이란 모델의 가치관이 특정 방향으로 치우쳐져 있음을 의미하는데요. 대표적으로 성별, 인종, 종교에 대해 특정 방향으로 치우쳐져 있는 모습을 확인했습니다.

성별에 관해서는 성별과 직업에 대한 편향을 갖고 있었는데요. 예를 들어 간호사, 카운터 접수원, 가사 노동자 등의 직업은 여성으로 간주하는 경향을 보였습니다. 반면 법관, 은행원, 교수 등 높은 교육 수준이 필요한 직업, 노동 집약적인 직업에 대해서는 남성으로 간주하는 경향을 보였죠.

인종에 관해서도 편향이 존재했습니다. 특히 흑인에 관해서는 부정적인 단어와 많이 연관시키는 모습을 보였습니다.

마지막으로 종교에 관해서도 편향된 모습을 보였습니다. 무교, 불교, 기독교, 힌두교, 이슬람교, 유대교에 대해 텍스트를 생성하게 실험을 진행했는데요. 위에서 살펴본 인종 관련된 실험에서와 마찬가지로 GPT-3는 특정 종교와 몇몇 부정적 단어를 연관짓는 경향을 보였습니다. 예를 들어 ‘폭력적인’, ‘테러’와 같은 단어는 유독 이슬람교와 연관짓는 경향이 강했습니다.

이러한 편향은 학습 데이터로부터 기인한다고 볼 수 있습니다. GPT-3는 단지 다음 단어를 예측하도록 학습된 모델인데요. 따라서 GPT-3의 모든 대답은 학습 데이터로부터 기인한다고 말할 수 있습니다. GPT-3가 특정 성별, 인종, 종교에 대해 편향된 시각을 갖고 있다는 말은, GPT-3의 학습 데이터가 이러한 편향된 데이터임을 반증하는 것이죠. 따라서 이후 연구에서는 학습 데이터 정제등을 통해 이러한 한계를 극복하는 방향의 연구가 이루어질 것으로 예상됩니다.

7-3. 에너지 소모

마지막으로 에너지 소모에 관해 생각해보겠습니다. GPT-3 모델의 파라미터수는 자그마치 1750개인데요. 이렇게 엄청난 사이즈의 모델은 필연적으로 엄청난 양의 컴퓨팅 자원을 필요로 합니다. 이는 엄청난 전기 사용으로 연결되죠. 최근 전세계의 트렌드 중 하나는 친환경인데요. 아무리 뛰어난 기술도 친환경적이지 않으면 많은 규제를 받는 상황이죠. 비단 규제를 받지 않기 위해서가 아닌, 진정 인류를 진보 시키기 위한 기술이라면 친환경적인 요소는 필요충분조건에 해당합니다. 이미 기후위기로 인류가 멸망할 수 있다는 연구가 나오고 있는 상황에 기후위기를 더욱 심화 시킬 기술이라면 사용할 수 없겠죠. 따라서 이후 연구에서는 모델 경량화 트렌드가 강하게 형성될 것으로 예상할 수 있습니다.

8. 장단점

지금까지 GPT-3 논문의 주요 내용을 살펴봤습니다. 이번에는 이러한 논문의 내용을 토대로 GPT-3의 장단점을 정리해보겠습니다.

8-1. 장점

첫 번째 장점은 GPT-3의 다양한 작업 수행 능력입니다. 이 모델은 문장 생성부터 기계 번역, 질문 응답에 이르기까지 다양한 자연어 처리 작업을 하나의 모델로 처리할 수 있습니다. 이는 개발자들에게 별도의 모델을 훈련시킬 필요 없이 다양한 애플리케이션을 구축할 수 있는 유연성을 제공합니다. 이러한 다양성은 기업이나 연구자들이 다양한 도메인에서 빠르게 프로토타입을 만들거나 실제 서비스를 구현할 때 큰 이점을 제공합니다. 또한, 이는 인공지능을 다양한 산업에 적용하는 데 있어서도 큰 잠재력을 보여줍니다.

두 번째 장점은 Few Shot Learning 능력입니다. GPT-3는 몇 가지 예시만을 보고도 작업을 수행할 수 있어, 새로운 문제에 빠르게 적응하고 복잡한 문맥을 이해할 수 있습니다. 이는 대화형 인터페이스나 고객 서비스 챗봇에서 특히 유용하게 활용될 수 있습니다. 이러한 능력은 모델이 빠르게 새로운 정보나 요구사항에 대응할 수 있게 해, 실제 환경에서의 유용성을 높입니다. 이로 인해, 개발자는 더 적은 데이터와 노력으로도 효과적인 모델을 구축할 수 있습니다.

세 번째 장점은 모델의 크기와 복잡성입니다. GPT-3는 1750억 개의 매개변수를 가지고 있어, 이전 세대의 모델보다 훨씬 더 정교한 작업을 수행할 수 있습니다. 이로 인해 모델은 더욱 정확하고 다양한 문제를 해결할 수 있습니다. 이런 크기와 복잡성은 모델이 더욱 복잡한 패턴을 학습하고, 더욱 정확한 예측과 분석을 할 수 있게 합니다. 이는 특히, 복잡한 문제 해결이나 고급 분석이 필요한 분야에서 큰 장점으로 작용합니다.

네 번째 장점은 사용자 친화적인 인터페이스입니다. GPT-3는 자연어를 이해하고 생성할 수 있기 때문에, 사용자는 복잡한 코딩 없이도 모델과 손쉽게 상호작용할 수 있습니다. 이는 특히 비전문가나 일반 사용자들이 AI와 상호작용할 때 큰 장점으로 작용합니다. 이로 인해, 인공지능 기술이 더 넓은 범위의 사람들에게 접근 가능해지고, 그 적용 범위가 확장됩니다.

다섯 번째 장점은 확장성입니다. GPT-3는 다양한 도메인과 언어에 적용할 수 있어, 글로벌 시장에서도 다양한 문제를 해결할 수 있는 능력을 가지고 있습니다. 이는 모델이 다양한 문화와 언어 환경에서도 유용하게 쓰일 수 있음을 의미합니다. 이러한 확장성은 특히 다국적 기업이나 글로벌 서비스를 제공하는 플랫폼에서 큰 장점으로 작용할 수 있습니다.

8-2. 단점

첫 번째 단점은 계산 비용과 에너지 소모입니다. GPT-3의 크기와 복잡성은 상당한 계산 능력을 요구하며, 이로 인해 에너지 소모가 큽니다. 이는 환경적인 측면에서도 문제가 될 수 있습니다. 이러한 에너지 소모는 지속 가능한 발전과는 상반되는 측면이 있으며, 이에 대한 해결책이 필요합니다.

두 번째 단점은 데이터의 편향성입니다. GPT-3는 훈련 데이터에 있는 편향을 그대로 반영할 수 있어, 이로 인해 편향된 정보나 부정확한 답변을 생성할 가능성이 있습니다. 이는 특히 민감한 사회적 이슈나 다양한 문화적 배경을 가진 사용자에게 문제를 일으킬 수 있습니다.

세 번째 단점은 해석 가능성과 투명성의 부족입니다. GPT-3의 내부 작동 방식은 매우 복잡해서, 왜 특정 결론에 도달했는지를 파악하기 어렵습니다. 이는 모델의 결정을 신뢰하기 어렵게 만들고, 잘못된 정보나 판단을 수정하기 어렵게 합니다. 이러한 부족한 투명성은 특히 의료나 법률과 같은 민감한 분야에서 큰 문제가 될 수 있습니다.

네 번째 단점은 보안 문제입니다. GPT-3의 뛰어난 자연어 처리 능력은 악의적인 사용자에 의해 악용될 수 있습니다. 예를 들어, 자동으로 생성된 허위 정보나 스팸 메시지를 만들 수 있습니다. 이러한 보안 문제는 모델의 능력이 높아질수록 더욱 심각해질 가능성이 있습니다.

다섯 번째 단점은 일반 사용자에 대한 접근성입니다. GPT-3는 현재 대부분의 경우에 API를 통해 제공되고 있어, 일반 사용자가 쉽게 접근하고 활용하기 어렵습니다. 이는 모델의 활용 범위를 제한하고, 일반 대중에게는 높은 진입 장벽을 형성합니다. 이로 인해, 인공지능의 민주화에도 제약이 생기게 됩니다.

이러한 장단점을 종합적으로 고려할 때, GPT-3는 분명히 자연어 처리 분야에서 놀라운 성과를 보이고 있지만, 그 완성도나 윤리적, 환경적 측면에서는 아직 개선의 여지가 있는 기술임을 알 수 있습니다.

9. 의의

GPT-3의 등장은 자연어 처리(NLP) 분야, 그리고 더 넓게는 인공지능(AI) 분야에 큰 의미를 가집니다. 이 모델은 단순히 텍스트를 생성하거나 이해하는 것을 넘어, 다양한 작업을 하나의 모델로 수행할 수 있는 능력을 보여주었습니다. 이는 AI의 유연성과 다양성을 크게 향상시키며, 이 기술이 얼마나 다양한 산업과 분야에 적용될 수 있는지를 입증합니다. 특히, GPT-3의 Few Shot Learning 능력은 모델이 빠르게 새로운 정보나 요구사항에 대응할 수 있게 해, 실제 환경에서의 유용성을 높이는 중요한 발전입니다.

그러나, 이러한 능력은 상당한 계산 비용과 에너지 소모를 수반합니다. 이는 환경적인 측면에서도, 그리고 모델을 구동하기 위한 인프라적인 측면에서도 중요한 고려사항입니다. 또한, 데이터의 편향성, 해석 가능성의 부족, 그리고 보안 문제 등 여러 윤리적인 측면에서의 문제가 제기되고 있습니다. 이러한 문제들은 GPT-3가 사회 전반에 적용되기 위해서는 반드시 해결되어야 할 과제들입니다.

GPT-3의 크기와 복잡성은 또한 이 모델이 얼마나 복잡한 패턴을 학습할 수 있는지, 그리고 얼마나 정확한 예측과 분석을 할 수 있는지를 보여줍니다. 이는 인공지능이 인간의 언어와 문화, 그리고 다양한 형태의 데이터와 상호작용하면서 얼마나 발전할 수 있는지의 가능성을 열어줍니다. 하지만 이러한 복잡성은 모델의 내부 작동 방식을 이해하거나 해석하는 것을 어렵게 만들어, 이에 대한 새로운 연구와 기술이 필요합니다.

또한, GPT-3의 사용자 친화적인 인터페이스와 확장성은 이 기술이 얼마나 많은 사람들에게 도움을 줄 수 있는지, 그리고 얼마나 많은 문제를 해결할 수 있는지를 보여줍니다. 이는 인공지능의 민주화를 실현할 수 있는 중요한 발판이 될 것입니다.

총평하자면, GPT-3는 인공지능과 자연어 처리 분야에 놀라운 가능성을 제시하면서도, 그 한계와 문제점을 명확하게 드러내고 있습니다. 이러한 장단점을 종합적으로 고려할 때, GPT-3는 우리가 이 기술을 어떻게 발전시키고, 어떻게 이를 사회와 환경에 긍정적으로 적용할 수 있을지에 대한 중요한 논의를 촉발시키고 있습니다. 이는 단순히 하나의 모델이 아니라, 인공지능의 미래와 그 의미에 대해 다시 한번 생각해보게 만드는 계기가 되고 있습니다.

10. 마치며

이 글을 통해 GPT-3의 다양한 측면을 살펴보았습니다. 기존 언어 모델의 한계와 그 해결 방안, GPT-3의 혁신적인 특성, 다양한 실험 결과, 그리고 이 모델이 가지고 있는 장단점과 사회적 파장까지. 이 모든 것은 GPT-3가 단순히 ‘또 하나의 언어 모델’이 아니라, 언어 이해와 자연어 처리 분야에서 새로운 패러다임을 제시하고 있다는 것을 보여줍니다.

특히, 이 글에서 강조한 ‘Few Shot 성능’과 새로운 실험 결과들은 GPT-3의 다양한 활용 가능성을 엿보게 해줍니다. 이는 미래에 더욱 발전된 언어 모델이 어떤 형태로 우리 생활과 산업에 적용될 수 있을지에 대한 흥미로운 질문을 던져줍니다.

그러나, 모든 기술에는 두 얼굴이 있습니다. GPT-3의 한계와 사회적 파장을 이해하는 것은 이 기술이 어떻게 더 책임있고 유용하게 발전될 수 있을지를 고민하는 데 있어 중요한 단서를 제공합니다. 이러한 부분은 이후 연구의 방향성을 제시하며, 우리가 이 기술을 어떻게 더 나은 방향으로 이끌 수 있을지에 대한 고민을 할 수 있는 기회를 줍니다.

마지막으로, 이 글이 GPT-3와 미래의 언어 모델에 대한 균형 잡힌 이해를 돕고, 이 분야에 대한 여러분의 흥미를 더욱 끌어올렸기를 바랍니다. 언어 모델의 미래는 무척이나 흥미롭고, 그 가능성은 거의 무한하다고 볼 수 있습니다. 그 중심에는 바로 GPT-3와 같은 혁신적인 모델이 있을 것입니다.

이 글을 끝까지 읽어주셔서 감사합니다. 여러분의 관심과 호기심이 이 분야의 미래를 더욱 밝게 할 것이라고 믿습니다. 다음에 또 다른 흥미로운 주제로 만나뵙기를 기대합니다. 감사합니다!

11. 참고 자료

  1. GPT-1 논문 리뷰
  2. Transformer 논문 리뷰
  3. BERT 논문 리뷰
  4. Self Attention 설명
  5. GPT-3.5 논문
  6. GPT-4 논문
  7. LLM별 모델 사이즈
Series Navigation<< [19′ NAACL] BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding[22′ NIPS] InstructGPT : Training language models to follow instructions with human feedback >>
5 1 vote
Article Rating
Subscribe
Notify of
guest

4 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
felix
felix
1 year ago

GPT 관련해서 너무 궁금했던 자료를 누구나 읽기 쉽게 정리한 정말 좋은 자료네요. 감사합니다!

thankyou
thankyou
1 year ago

너무 잘 읽고 참고했습니다 감사드려요

4
0
Would love your thoughts, please comment.x
()
x
Scroll to Top