Upstage

View Original

AI 검색 전문가가 말하는 ‘ChatGPT’의 현재와 미래

2023/01/19   |  3 mins

지난 12월 공개된 초거대 인공지능(AI) 기반 챗봇 ‘ChatGPT’의 열풍이 가시지 않고 있습니다. 마치 사람과 대화하는 것처럼 자연스럽게 언어를 구사하고, 잘못된 전제를 짚어내며 뛰어난 작문 실력까지 뽐내는 ChatGPT의 등장에 많은 사람들이 놀라움을 금치 못했기 때문입니다. 심지어 검색 서비스를 제공하고 있는 구글에서는 이에 위기감을 느끼고 내부에 ‘코드 레드’를 발령할 정도로 엄청난 임팩트를 주었는데요.

이러한 ChatGPT를 AI 검색 전문가는 어떻게 바라보고 있을까요? 업스테이지의 AI Product 리더이자 전 카카오 검색 엔진 리더로서 뉴럴넷 기반 번역 엔진 자체 개발의 A to Z를 모두 담당하신 배재경님의 견해를 기고문으로 담아보았습니다.

언어 모델
(Language Model)이란?

ChatGPT는 OpenAI에 의해 훈련된 대규모 언어 모델입니다. 자연어에 대한 이해는 매우 고차원의 추론을 필요로 하기 때문에 지금의 기계 학습 모델로는 한계가 있을 것으로 여겨져 왔습니다. 따라서 현재 ChatGPT가 보여주는 수준의 성능이 최소한 근시일(수년 이내) 내에는 달성되기 힘들 것으로 생각되었습니다. 하지만 ChatGPT는 이미 상상을 뛰어넘을 정도로 빠른 발전 속도를 보여주고 있습니다. 동시에 이러한 성과의 의미나 잠재성에 대한 평가가 부풀려져서 이야기 되고 있는 것도 사실인데요. ChatGPT를 포함한 거대 AI 모델에 대해 좀 더 명확한 판단과 예측을 하기 위해서는 먼저 “언어 모델(Language Model)”이 무엇인지 이해해야 합니다.

언어 모델은 텍스트(또는 음성) 형태의 맥락 정보(부분적인 정보일 수 있음)가 있을 때 이를 바탕으로 다음에 나올 단어나 글자 등을 예측하는 모델입니다. 언어 모델은 방대한 텍스트 정보를 학습 데이터로 활용하는데, 가장 일반적으로 활용되는 objective는 특정 단어나 글자를 지운 뒤에 해당 빈칸에 들어갈 내용을 예측하게 하는 방식입니다.

ex. 나는 밥을 ______. ➡️ 이 때 빈 칸에 이어질 내용은 “먹는다”로 예측할 수 있음

위의 예시에서 빈칸에 들어갈 말은 무엇일까요? 한국어를 이해하는 사람이라면 누구나 쉽게 예측이 가능한데, 이것이 언어 모델이 하는 일입니다. 모델은 하나 이상의 objective가 주어지고, 그 objective가 달성되는 방향으로 파라미터를 수정해 가는 방식으로 학습이 이루어집니다. 그리고 이 파라미터의 개수가 모델의 크기입니다. 보통 많은 문서들이 여러 문장으로 이루어져 있고, 이 문장들은 무작위로 연결되는 것이 아니라 상관 관계가 있기 때문에 연속된 문장인지 아닌지 맞추게 하는 것도 모델의 objective로 활용할 수 있습니다.

”빈칸 맞히기”라는 언어 모델의 목표는 단순하다고 여겨질수도 있지만, 정확도 향상을 위해 주변 단어나 문장을 더 많이 보는 방향으로 모델이 학습되기 때문에 단순하지만 매우 강력합니다. 이 objective의 또 다른 장점은 세상의 모든 텍스트 정보를 학습에 활용할 수 있다는 점입니다. 어찌보면 이 점 때문에 초거대 모델이 탄생했다고 볼 수도 있습니다. 사람이 언어를 학습하는 방식도 언어 모델과 유사합니다. 이를 의도하지 않더라도 본인도 모르는 사이에 이미 그렇게 학습하게 됩니다. 이것은 매우 자연스럽고 효과적인 학습 방법이기 때문에 인간의 뇌가 이러한 방식을 따르지 않을 이유는 없습니다.

언어 모델과 사람이
생성하는 문장의 차이점

그렇다면 언어 모델이 생성하는 문장과 사람이 생성하는 문장의 차이는 무엇일까요? 사람이 만드는 문장의 가장 큰 특징으로는 주어진 텍스트 정보 이외에도 더 풍부하고 복잡한 “맥락”이 있다는 것입니다.

그 맥락은 텍스트 이외의 정보(시각/청각)일 수도 있고, 자신의 오랜 기억이나 편견 및 이들을 토대로 추론해 낸 메타 정보일 수도 있습니다. 특히 우리가 문장을 만들어낼 때는 대부분 어떤 의도나 목적과 같은 중요한 맥락이 존재합니다. 하지만 일반적으로 단순한 텍스트에는 이러한 정보가 포함되어 있지 않거나 부분적으로만 있습니다. 때문에 기계가 만들어 내는 문장과 사람이 만들어 내는 문장이 뭔가 다른 느낌으로 다가오는 경우가 많습니다.

대신 언어 모델은 세상의 방대한 정보를 모두 학습하기 때문에 한 개인이 다루는 지식의 범위를 훨씬 능가할 수 있습니다. 인간의 뇌 용량이 물리적으로 한계가 있는 것에 비해 기계는 거의 무한대로 용량을 늘리는 것이 가능합니다. 이러한 차이 때문에 언어 모델은 고차원적인 추론이나 새로운 내용을 생성하기 보다는 기존에 있던 내용을 잘 조합해서 문장을 만들어 내는데 적합하고, 특히 지식을 다루는 경우 좋은 성능을 발휘할 수 있는 것이죠.

ChatGPT의 언어 추론

ChatGPT 작동 원리 (출처: OpenAI 블로그)

그렇다면 ChatGPT와 같은 언어 모델의 추론 수준은 어느 정도일까요? 사실 추론의 수준과 정도는 매우 다양하게 정의 내릴 수 있기 때문에 명확한 답을 내릴수는 없지만 얼마나 더 고차원의 추론인가에 대한 판단은 어느 정도 가능합니다. 예를 들어 나무를 보고 “저것은 나무다”라고 말하는 것과 “저것은 수억 년에 걸친 진화의 결과로 만들어진 유전자의 발현체 중 하나로…”라고 말하는 것은 매우 다른 수준이라 볼 수 있습니다.

특정 언어 모델의 추론 수준은 어떤 데이터와 Objective로 학습되었는지를 보면 어느 정도 예측할 수 있습니다. ChatGPT는 방대한 텍스트 정보를 바탕으로 한 빈칸 맞히기 objective를 통해 어떤 맥락에서 어떤 단어가 잘 어울리는 지를 굉장히 잘 예측합니다. 처음의 목적은 빈칸 맞히기였지만, 심지어 숨은 objective를 스스로 찾아내기도 합니다. 학습 데이터에 패턴이 충분히 많이 포함되어 있는 경우가 이에 해당됩니다. 가령 학습 데이터 내에 원문/번역문 쌍이 여럿 나오고, 이 쌍 주변에 “이것이 A 언어에서 B 언어로의 번역이다” 라는 의미의 문구가 많이 포함되어 있다면 이에 따라 objective를 ‘빈칸 맞히기’뿐만 아니라 ‘번역’까지 포함하는 형태로 스스로 확장하게 됩니다. GPT-3가 처음 나왔을 때 이런 확장 objective까지 잘 학습해서 prompt만 몇 개 주면 그럴듯한 문장을 만들어내며 이목을 끌곤 했습니다.

ChatGPT는 빈칸 맞히기 objective 이외에 “Fine-Tuning”이라 불리는 추가 학습을 통해 대화 형태로 지식을 추론하는 성능을 극대화 했습니다. Fine-tuning 단계에서는 ’사람이 봤을 때 더 적합한’ 이라는 추가적인 objective를 학습하게 되는데, 이를 위해 수집된 방대한 텍스트 정보 이외에도 사람이 직접 어노테이션(annotation)한 추가적인 학습 데이터가 활용되었습니다. 정확한 규모는 알려져 있지 않지만 이 어노테이션 작업을 위해 상당한 비용을 투자하여 방대하게 구축 하였을 것으로 추정됩니다. 이것이 기존 GPT 대비 ChatGPT가 가져온 도약의 주요 원인이고, 이 방법이 통할 것이라는 확신에 따라 과감한 비용투자를 한 것이 OpenAI의 ‘한 수’라 볼 수 있겠습니다.

그렇지만 ‘사람이 봤을 때 더 적합한’이라는 objective를 잘 달성하기 위해 취할 수 있는 어노테이션 방법에는 한계가 있습니다. 여러가지 경우에 대해 사람이 봤을 때 더 적합하고, 자연스럽게 읽히는 결과를 만들기 위해서는 무한대로 많은 데이터가 필요하지만 이것은 불가능하기 때문에 ChatGPT는 대화 형태의 지식에 대한 질답에 초점을 맞추고 이 상황에서 사람이 더욱 만족할 만한 결과를 만드는 방향으로 학습데이터를 구축하여 fine-tuning을 진행했습니다.

ChatGPT 활용 예시

ChatGPT의 강점

이러한 ChatGPT의 강점은 크게 두 가지로 정리할 수 있습니다.

1. ChatGPT는
인간의 단기 기억을 흉내낸다.

ChatGPT는 사용자와 여러 문답을 주고 받더라도, 제법 오래전 대화에서 나온 맥락까지 어느 정도 이해하고 이를 반영해 이어지는 결과를 생성하기 때문에 기억력을 잘 발휘하는 것이 강점이지만 동시에 아직은 인간의 단기 기억을 흉내내는 단계라고 말할 수 있습니다. 아직까지 ChatGPT의 이해력은 논리적인 이해라기보다는 저수준 패턴에 대한 인식으로 판단되기 때문입니다. 예를 들어 ChatGPT는 매번 답변의 말미에 동일한 문구를 반복하는데 이걸 생략해 달라고 아무리 말해도 이해하지 못합니다. 그럼에도 불구하고 놀라울 정도로 이전 대화의 맥락을 잘 이해하고 사용자의 요구에 맞게 대응을 잘 하는 경우가 많은 것이 강점입니다.

2. ChatGPT는
할 수 있는 일의 종류가 다양하다.

ChatGPT의 두 번째 강점은 한 가지 일만 잘하는 것이 아니라 기존 모델에 비해 언어에 대한 이해가 필요한 다양한 일을 잘하는 것입니다. ChatGPT는 지식을 정리해서 알려주기도 하고 번역과 요약, 심지어 코드까지 작성해주고 이를 대화하면서 고칠 수 있게 도와주기도 합니다.

이러한 특징 때문에 GPT-3나 ChatGPT를 AGI(Artificial General Intelligence)의 초기 모델로 보는 사람들도 생겨나고 있습니다. AGI에서 G(General)를 어떻게 보느냐에 따라 다를 수 있지만 그럼에도 불구하고 AGI는 지금까지 단순히 여러 다양한 일을 할 수 있다고 해서 붙이는 용어라기보다는 인간이 갖고 있는 고도의 추상화 능력에 도달하는 것을 의미해 왔기에, 여전히 지금의 ChatGPT는 AGI라는 용어가 어울린다고 보기는 어려울 것 같습니다.

ChatGPT가 다양한 일을 할 수 있는건 어찌보면 ‘기존의 지식을 잘 조합하는 능력’이라는 한 가지 패턴화된 일이라고 볼 수도 있기 때문입니다. 물론 ‘지식’이라는 용어가 더 확장된 형태여서 단정적으로 한 가지 일만 잘한다고 보는 것이 적절한지 애매하긴 하지만, 그렇다해도 여전히 인간이 가진 능력과는 비교하기 어렵습니다.

고도화된 추론,
아직은 인간의 고유 영역

ChatGPT가 등장한 것처럼 언어 모델은 놀라울 만큼 발전했지만, 그럼에도 불구하고 아직까지 고도의 추론 역량은 인간만이 갖고 있는 역량입니다.

기계 학습 모델의 경우 추론의 역량이 주로 “횡”의 방향으로 방대하게 펼쳐질 수 있습니다. 수백 개의 언어를 번역도 할 수 있고, 심지어 다양한 프로그래밍 언어로 코드도 생성할 수 있습니다. 이에 비해 인간의 추론은 “종”의 방향으로 더 깊게 펼쳐질 수 있습니다. 번역을 할 때에도 상황이나 조건을 고려해 더 자연스러운 번역을 할 수 있기도 하고, 코드를 만들 때도 원래 있던 코드를 조합하는 것이 아니라 기존에 없던 새로운 로직을 만들어 낼 수 있습니다. 인간이 농담을 어떻게 이해하고 반응하는지를 보면 좀 더 이해가 빠를 것 같습니다. 인간이 어린아이일 때는 농담을 잘 이해하지 못하지만 자라면서 점점 말의 숨은 의도를 이해하게 되죠. “농담 섞인 진담”까지 이해하려면 상당한 언어 능력이 필요합니다.

만일 우리가 무한대의 리소스를 투자하여 학습 데이터를 구축할 수 있다면 그때는 얘기가 달라질 것입니다. 이것이 현실화 된다면 기계는 모든 방면에서 인간을 능가할 수 있게 되겠지요. 그렇지만 무한대의 리소스를 투자하는 것은 불가능하기 때문에 최대한 효율적으로 학습할 수 있는 방법을 찾아내는 여정은 계속 될 것이고, 그리고 어느 시점에 AGI가 발현되는 특이점이 올지는 알 수 없습니다.

결론적으로 현재 수준의 ChatGPT가 잘하는 것은 기존 지식을 잘 조합하고 특히 인간과 자연어로 대화를 주고 받으면서 더 정확하고 적절한 결과를 생성해 줄 수 있는 능력입니다. 이것이 의미하는 바 중에 중요한 한가지는 많은 전문가들의 예측대로 검색의 판도를 바꿀 수 있다는 점입니다.

ChatGPT가
바꿀 검색 시장의 판도

지금은 모르는 정보를 찾고 싶을 때 검색 엔진에 의존하고 있지만, 향후에는 ChatGPT와 같은 모델을 활용할 가능성이 매우 높습니다.

이러한 현상은 인공 신경망 기반의 번역이 처음 나왔을 때와 유사하게 흘러갈 것으로 예상됩니다. 과거에 규칙 기반, 통계 기반의 기계 번역에서 인공 신경망 기반의 번역이 처음 나왔을 때 많은 전문가들이 상당한 충격을 받았습니다. 실제로 기존 방식으로 번역 엔진을 개발해 본 사람이라면 지금의 GPT-3나 ChatGPT 이상으로 더 강렬한 느낌을 받았을 것입니다. 데이터만 있으면 자연스럽게 번역문을 생성해내는 모델을 학습시킬 수 있다니, 저도 이런 희안한 일이 어떻게 생길수 있는지 놀라울 따름이었습니다.

하지만 우리는 현재 기계 번역을 놀라움보다는 자연스러운 도구로 인지하며 해외 여행을 갔을 때나, 외국어 학습이 필요할때 등 일상 속에서 자유롭게 활용하고 있습니다. 우리가 기계 번역 서비스에 기대하는 바는 완벽한 성능이라기보다는 가끔씩 틀리더라도 이해해줄 수 있고, 필요할 때 적당히 도움을 받는 정도입니다.

그 이후 하나의 모델로 수십개 이상의 언어를 번역할 수 있는 모델(이것도 여러개의 objective를 가지는 일종의 multi-task learning에 해당합니다.)이 나오고 병렬 말뭉치 이외에 방대한 mono-lingual 데이터를 활용하는 사전 학습 이후 fine-tuning을 하는 방식으로 점점 성능이 고도화 되었습니다. ChatGPT나 번역기 모두 생성 모델이고 기술적으로 보면 크게 다른 점은 없습니다. ChatGPT가 훨씬 사이즈가 크고 더 많은 데이터를 활용했다는 점 빼고는 말이죠. (물론 ChatGPT는 번역마저도 할 수 있는 모델입니다.)

때문에 ChatGPT도 번역 모델의 사례와 비슷하게 흘러갈 것으로 예상됩니다. 훨씬 적은 에너지로 더 만족할 만한 결과를 얻을 수 있기 때문입니다. 완벽할 필요는 없습니다. 번역에서 그랬던 것처럼 많은 상황에서 도움이 될 수 있다면 그걸로 족한 거죠. 더 뛰어난 성능의 결과가 필요하거나 리스크가 있는 경우라면 실제 전문가를 찾거나 검색엔진을 활용하면 됩니다.

이미지 생성 인공지능 모델 ‘DALL-E’로 만든 AI와 인간의 대화 모습

ChatGPT의 등장을 기점으로 향후 검색 엔진의 발전 방향은 다음과 같이 흘러갈 것으로 예상됩니다. 먼저 ChatGPT 같은 모델을 품고 특정 질의에 대해서는 모델 결과를 같이 보여주거나, 모델 결과만 보여주는 형태로 UX가 바뀌어 갈 것입니다. 개인화 기술이 더 발전하면 모델 결과를 단독으로 보여주는 경우가 더 많아지겠지요.

적절한 검색어를 고르기 위해 고민하던 일들도 자연어를 편하고 길게 입력할 수 있는 형태로 바뀌어 갈 것 같습니다. 그렇다고 기존의 검색 엔진이 쓸모 없어지지는 않을 겁니다. 질의의 의도나 종류는 너무 다양하기 때문에 검색엔진이 계속 활약을 할 것이고, 특히나 시의성, 정확성이 요구되는 영역에서는 더더욱 그 역할을 지켜나갈 겁니다.

또는 지금의 검색엔진과 전혀 별개로 모델만을 활용해서 대화하듯 정보를 얻어올 수 있는 형태의 서비스가 새롭게 선보일 수도 있습니다. 여러 도메인에서 이런 서비스가 하나씩 생겨날 수 있을 것 같습니다. 의료, 법률 등에서 말이죠. 일반인들이 활용할 수도 있지만 전문가가 활용할 여지도 큽니다. 아무리 전문가라도 모든 지식을 다 알 수는 없기 때문에 거의 무한대의 메모리를 가지는 기계에 의존하지 않을 이유는 없습니다.

지금은 위키피디아 같은 일반 지식에 탁월한 성능을 보이는 모델이지만, 특정 도메인 분야에 대해 학습데이터 구축하여 fine-tuning 한다면 의료, 법률 등의 도메인으로 빠르게 확장될 수 있습니다. 다만 ChatGPT의 학습 데이터는 일반인들이 어노테이션(annotation) 할 수 있었지만 전문 도메인 영역은 그렇지 못하기 때문에 시간이 좀 더 걸릴 수는 있겠습니다. 결국 모델의 속도나 추론 비용, 그리고 학습을 위한 비용 문제가 있지만 이것은 시간 문제에 가깝습니다.

국내 검색 엔진을 운영하고 있는 대형 IT 기업들이 향후 어떻게 대응할지는 두고 볼 일이겠지만, 언어 모델을 활용하면 더 좋은 성능의 결과를 얻을 수 있고, 자연어나 대화형 UX도 거스를 수 없는 방향으로 보이기 때문에 가만히 있지는 않을 것으로 보입니다. 특히 네이버가 이미 좋은 성과를 보여주고 있긴 하지만 한국어에 특화된 학습과 아직 GPT가 fine-tuning 하지 못한 도메인 영역들에 대해 빠르게 타진해 보려고 하지 않을까 예상됩니다. 이는 대형 IT 기업만의 이슈는 아닌 것 같습니다. 이미 fine-tuning 할 수 있는 형태로 Open AI나 구글에서 사전 학습 모델을 오픈할 것으로 보여서 여러 스타트업이나 IT 기업들이 주목하고 있습니다. 앞으로 이러한 AI가 만들어낼 새로운 가치가 기대됩니다.

←블로그 돌아가기