블로그

GPT-3의 다섯 가지 한계

GPT-3가 대단한 모델이기는 하지만 완벽하지는 않습니다. 이번 글에서는 GPT-3의 5가지 한계에 대해 알아봅니다.

김종윤 | 2020년 08월 20일 | #Machine_Learning

“우리는 아직 알아내야 할 것이 많습니다”

지난 글(링크)에서 GPT-3가 무엇이고 어떤 일을 할 수 있는지 알아봤습니다. GPT-3가 워낙 범용적으로 뛰어난 언어 능력을 보여줬기에 API를 처음 써본 사람들은 인간 수준의 AI가 코앞에 있는 것 아니냐는 말을 하기도 했죠. 하지만 GPT-3를 만든 OpenAI의 대표 샘 알트만(Sam Altman)의 생각은 다릅니다.

The GPT-3 hype is way too much. It’s impressive (thanks for the nice compliments!) but it still has serious weaknesses and sometimes makes very silly mistakes. AI is going to change the world, but GPT-3 is just a very early glimpse. We have a lot still to figure out.

— Sam Altman (@sama) July 19, 2020

“GPT-3는 너무 과대평가 되어있습니다. 인상적인 성능을 보이는 건 분명한 사실이지만(칭찬은 감사합니다) 여전히 심각한 약점이 있고 가끔은 매우 멍청한 실수를 하기도 합니다. AI는 세상을 바꿀 것이지만, GPT-3는 아주 초기의 형태일 뿐입니다. 우리는 아직 알아내야 할 것이 많습니다.”

샘 알트만이 말했듯이, GPT-3도 극복해야 할 여러 한계를 지닙니다. 오늘은 그 이야기를 해보려고 합니다.

한계 1. GPT-3가 다 잘하는 건 아니다

GPT-3 논문에서는 42개의 언어 문제를 대상으로 테스트를 진행했습니다. GPT-3는 대부분의 테스트에서 훌륭한 성능을 보였지만, 이전 연구의 성능을 뛰어넘은 것은 일부에 불과합니다. 즉, 해당 문제에 최적화된 모델에 비해서는 성능이 떨어지는 경우가 꽤 있었다는 의미죠. 각 문제에서 사람의 능력에 못 미치는 것은 물론입니다.

42개의 언어 문제에 대한 평균 점수 그래프. 모델 크기(X축)가 커지면서 점수가 올라가는 양상을 보이지만 최종 평균 점수는 60점 정도입니다. 테스트하는 문제가 다 쉬운 문제는 아니라서 사람이 100점을 맞지는 못하겠지만, 똑똑한 사람이라면 80~90점 정도는 기록할 것입니다.

GPT-3가 멋진 건 하나의 모델이 다양한 문제를 범용적으로 잘 풀기 때문이지 모두 최고 수준으로 풀기 때문은 아닙니다. GPT-3보다 더 멋진 언어 모델이 나온다면 범용적일 뿐만 아니라 모든 문제에서 최고의 성능을 보일 수도 있겠죠.

한계 2. 현실의 물리적인 세계를 잘 모른다

GPT-3가 특히 약한 영역은 현실의 물리적인 상식을 다루는 언어 문제였습니다. 예를 들어 “치즈를 냉장고에 넣으면 녹을까?” 같은 문제에 사람이라면 당연히 안 녹는다고 답하겠지만 GPT-3는 녹는다고 답합니다.

치즈는 열을 가해야 녹습니다.

왜 이런 문제가 생기는지 명확히 알 수는 없지만, 그럴 듯한 가설은 GPT-3가 세상을 글로 배웠기 때문이라는 것입니다. 세상에는 직접 눈으로 보거나 경험해야 알 수 있는 것이 있습니다. 또한 그런 사실들은 너무 당연해서 명시적으로 언급하지 않는 경우가 대부분입니다. GPT-3로서는 그런 사실을 배울 기회가 없는 거죠.

그런 의미에서 GPT-3를 ‘집에서 엄청난 양의 정보를 습득한 장님’에 비유할 수도 있겠습니다. 똑똑하지만 시각적인 정보와 경험 부족으로 놓치는 게 있는 것이죠. 앞으로 단순히 텍스트뿐 아니라 이미지나 비디오 등 시각적인 정보도 함께 습득한다면 이런 문제를 극복할 것으로 보입니다. 혹은 로봇이 실제로 세상을 경험하면서 학습을 할 수도 있겠죠.

(GPT-3가 물리적인 세계를 아예 모른다는 건 아니고 상대적으로 약하다는 것으로 이해하는 게 정확합니다. 글로도 물리적인 세계에 관해 꽤 많은 걸 배울 수 있으니까요.)

한계 3. 모델이 너무 크다

GPT-3는 1,750억 개의 파라미터를 자랑합니다. GPT-2(15억 개)보다는 100배 이상 크고 GPT-3 이전에 가장 큰 모델이었던 구글의 T5나 마이크로소프트의 Turing NLG보다도 10배 이상 큽니다. 많은 파라미터는 엄청난 성능의 근간이 되기도 하지만 학습과 활용면에서 여러 어려움을 낳습니다.

NLP 모델의 파라미터 크기 증가 그래프. 올해 1월까지만 해도 이런 모양이었습니다만...

모델이 크면 당연히 학습시키는 데 시간과 비용이 많이 듭니다. GPT-3를 학습시키는 데 드는 비용을 정확히 추산할 수는 없지만 약 50억 원 정도가 소요되는 것으로 추정됩니다. 이는 단순히 GPT-3의 최종 모델을 학습시키는 데만 드는 비용을 계산한 것이며 그 과정에서 부가적으로 드는 비용은 정확히 계산하기도 어렵습니다. 아무래도 쉽게 시도하기는 어렵죠.

모델이 크면 활용하기도 어렵습니다. 모델을 서버에 올려놓고 사용할 때마다 계산을 해야하는데, 이때 필요한 시간과 비용도 만만치 않을 겁니다. 지금 GPT-3의 API가 어떤 식으로 구현되어 있는지 정확히 알 수는 없지만(개인적으로 매우 궁금합니다) GPT-3의 1/100 정도의 모델도 현재 서버의 스펙과 비용으로는 맘 놓고 쓸 수 있는 수준이 아닌 것을 고려하면 쉽게 쓸 수있는 수준은 아닐 것입니다.

시간이 흘러 새로운 데이터가 많이 생기고 GPT-3를 재학습해야하는 시점이 오면 어떨까요? 이전보다 시행착오는 줄어들겠지만 역시나 학습 비용은 어쩔 수 없이 많이 들겠죠.

이처럼 GPT-3의 엄청난 크기는 많은 현실적인 어려움을 초래합니다. 물론, 앞으로 학습 효율이 높아지고 GPU의 비용이 낮아지면 이 문제는 서서히 해결될 것입니다. GPT-4가 나오기 전까지는요😇

한계 4. 기억을 못한다

GPT-3의 기반이 되는 Transformer 구조에는 ‘기억’이라는 개념이 없습니다. 현재 문맥을 입력으로 주고 그에 따른 출력을 얻을 뿐이죠.

물론, 그 ‘입력’에 기억해야되는 요소를 넣어줄 수는 있습니다. 하지만 GPT-3도 그 입력의 크기는 2048 토큰(단어와 유사하지만 그보다는 약간 작은 단위라고 생각하시면 됩니다)에 불과합니다. 그러니까 GPT-3가 생성하는 모든 결과는 가장 최근의 2048 토큰만 보고 생성하는 것이죠.

몸에 적을 수 있는 정도만 기억하는 메멘토 GPT-3

일반적인 경우라면 2048 토큰도 충분할 수 있지만, 장기적인 기억을 필요로 하는 언어 문제라면 이러한 구조는 한계가 있습니다. 아직 딥러닝으로 기억의 문제를 어떻게 풀 것인지는 명확한 해답이 나와있지 않습니다. 앞으로 NLP의 발전을 위해 지속적으로 연구되어야 할 분야입니다.

한계 5. 다음 단어 예측의 한계(?)

지난 글에서 설명드렸듯이 GPT-3는 방대한 양의 텍스트를 대상으로 끊임없이 다음 단어를 예측하는 단순무식한 방법으로 학습했습니다.

GPT-3의 학습과정 (출처: https://jalammar.github.io/)

하지만 생각해보면 이러한 학습 방법은 상당히 어색합니다. 사람은 뭔가 학습을 할 때 텍스트를 보고 다음 단어를 예측하는 방식으로 배우지 않으니까요. 사람은 텍스트를 읽고 이해하고 원리를 배웁니다.

그래서 많은 사람들이 이런 비판을 합니다: GPT-3가 엄청 똑똑한 것처럼 보이지만, 사실 GPT-3는 아는 게 아무 것도 없고 그저 통계적으로 “가장 그럴듯한 다음 단어를 차례차례 생성”하는 것일 뿐이라고. (관련 기사) 뭔가 알고 이해하고 말을 하는 게 아니라 마치 이해하고 말하는 것처럼 보일 뿐이라고. 그렇기 때문에 단순히 모델 크기와 데이터를 키우는 것만으로는 한계에 부딪힐 것이라고. 비판은 분명 타당한 면이 있으며 GPT-3 논문에서도 언급하는 바입니다.

하지만 정말 그럴까요? 솔직히 저는 잘 모르겠습니다.

GPT-3가 생각을 하는 걸까요 아니면 통계적 예측을 하는 걸까요? 둘 중 하나에 속한다는 걸 어떻게 증명할까요? 둘이 정말 큰 차이가 있거나 확실히 구분되는 걸까요? 과연 ‘생각’을 한다는 건 정확히 무슨 의미일까요? 이러한 질문에 확실한 정답을 말해줄 수 있는 사람은 없을 겁니다. 어찌보면 어느 쪽이든 확실히 논증될 수 없을지도 모릅니다. 그렇기 때문에 더욱 재미있는 논쟁거리죠. 그런 의미에서 다음 글에서는 GPT-3를 둘러싼 논쟁에 관해서 써보려고 합니다. 다른 분들의 생각도 궁금하고요.

그럼 다음 글에서 다시 만나요!

PS: 아래 메일링 리스트에 등록하시면 핑퐁 블로그에 올라오는 재미있고 유익한 글들을 가장 빠르게 받아보실 수 있습니다 😉

핑퐁팀이 직접 전해주는
AI에 관한 소식을 받아보세요

능력있는 현업 개발자, 기획자, 디자이너가
지금 핑퐁팀에서 하고 있는 일, 세상에 벌어지고 있는 흥미로운 일들을 알려드립니다.