GPT 시리즈 및 개발 프로세스
2023/08/24 | 작성자: 박성민
(이 콘텐츠는 'GPT 시리즈와 개발 프로세스' 강의를 기반으로 작성되었습니다. '모두를 위한 ChatGPT UP' 의 강의를 기반으로 작성되었습니다.)
하루가 다르게 발전하며 시리즈 중 가장 인기 있고 널리 알려진 AI인 ChatGPT가 탄생하기까지 GPT 시리즈는 어떻게 발전했을까요? 기본 언어 모델의 개념부터 순환신경망(RNN)의 ChatGPT 시대까지 5년의 여정을 살펴봅니다.
언어 모델
생성형 사전 학습 트랜스포머(GPT)는 OpenAI에서 개발하여 다양한 자연어 처리 기능에 사용되는 대규모 언어 모델입니다. 따라서 언어 모델을 먼저 이해하면 GPT의 진화를 탐색하는 데 도움이 될 수 있습니다. 언어 모델은 답을 생성할 때 다음 단어를 추측하는 능력에 의존합니다. 아래 예시를 살펴보겠습니다.
Q. 빈칸에 들어갈 올바른 단어는 무엇인가요?
"내가 참여한 [ ]는 힘들었지만 매우 보람 있었다."
(1) 달리기
(2) 낮잠
(3) 축제
문제는 빈칸에 무엇이 들어갈지 파악하는 것입니다.
이 접근 방식은 언어 모델에도 적용됩니다. 이 경우 사람의 데이터 없이도 모델 자체에서 단어나 문장의 구조를 이용해 무수히 많은 정답을 생성할 수 있다는 장점이 있습니다. 언어 모델링은 자기 지도 학습의 특성을 가지고 있어 사전 학습된 모델을 만드는 데 유리하다고 볼 수 있습니다.
딥러닝 초창기에는 언어 처리 모델이 "RNN" 아키텍처(모델의 구조와 연산 프레임)로 만들어졌습니다. RNN은 순환 신경망을 의미하며, 노드 간의 연결이 순환을 이룰 때 활용되는 키워드입니다. 이러한 특성으로 인해 자연어와 같은 시퀀스 형태의 데이터를 처리하는 데 특화되어 있습니다.
그렇다면 간단한 다음 단어 매칭기를 복잡한 ChatGPT로 개발한 이유는 무엇일까요?
GPT 시리즈 및 개발 프로세스 등장(2017년 4월)
2017년 OpenAI는 언어 모델을 순환 신경망(RNN)으로 만들었습니다. 이 과정을 통해 특정 뉴런이 감정 분석을 자극하여 언어 모델링 과정에서 의도하지 않은 능력이 생성된다는 가설을 세웠습니다.
<What is Sentiment Analysis? >
인공지능 기술을 사용하여 텍스트 콘텐츠에서 추출한 감정이나 의견을 분석하고 판단하는 과정입니다.
주로 영화 리뷰, 온라인 미디어 게시물 등의 텍스트 데이터를 분석할 때 수행되며, AI가 사람과 유사하게 문장을 이해하고 긍정, 부정, 중립 등을 구분하여 텍스트에 어떤 감정이 담겨 있는지 파악합니다.
트랜스포머 (2017년 6월)
2017년에는 순환 신경망(RNN) 및 컨볼루션 신경망(CNN)과 유사한 아키텍처인 트랜스포머가 등장했습니다. 이 아키텍처의 핵심은 항목 간의 관계를 나타내는 '주의' 라는 연산이었습니다. 그 결과 구글 브레인 팀은 "주의력만 있으면 충분하다"라는 논문을 발표하며 주의력의 중요성을 강조했습니다. 트랜스포머는 기존 RNN에 비해 향상된 연산 효율성과 결과 품질로 인해 비전, 추천 시스템, 생물 정보학 등 다른 분야에서도 사용되는 기술로 자리 잡으며 큰 영향을 미쳤습니다.
GPT(2018년 6월)
1년 후, 위에서 설명한 대로 자가 지도 학습 방식으로 언어 모델을 생성하는 생성적 사전 학습 트랜스포머(GPT)가 처음 등장했습니다. 사전 훈련/미세 조정 패러다임의 대표주자로 꼽히는 GPT는 대규모 언어 모델링을 통해 사전 훈련된 모델을 생성하고 각 작업에 적합한 소규모 데이터 세트로 이 모델을 훈련하면서 미세 조정하는 과정을 거치는데, GPT의 등장으로 인해 대규모 언어 모델링이 가능해졌습니다. 따라서 다양한 NLP 작업에서 뛰어난 성능을 보여 왔습니다.
< And fine-tuning is? >
사전 학습된 모델을 기반으로 특정 도메인 또는 작업의 성능을 개선하는 작업입니다.
핵심 아이디어는 더 큰 데이터 세트로 사전 학습된 모델을 개선하면 새로운 작업이나 도메인에서 모델의 학습 시간을 줄이고 데이터가 제한된 경우에도 성능을 향상시킬 수 있다는 것입니다.
GPT-2 (2019년 2월)
GPT-2는 기존 모델의 크기를 키우고(117M → 1.5B), 학습 데이터의 양을 늘려(4GB → 40GB) 리뉴얼한 버전입니다. 하지만 오픈AI는 GPT-2가 생성 능력은 뛰어나지만 여전히 잘못된 정보를 생성할 위험이 높다고 판단해 외부에 공개하지 않았습니다. GPT-2의 등장은 언어 생성에 있어 또 다른 큰 발전을 가져왔습니다.
"출현": 제로 샷 학습
GPT-2의 등장으로 어떤 새로운 가능성이 열렸나요? 예제를 보지 않고도 모델이 새로운 작업을 수행하는 '제로 샷 학습'이라는 개념은 이 분야에 새로운 기회를 가져다주었습니다. 비지도 다중 작업 학습자라고도 불리는 이 모델은 처음에는 언어 모델로 시작했지만 독해, 번역, 요약, Q&A 등 다른 작업도 수행할 수 있는지 확인하기 위해 여러 실험을 거쳤습니다.
위 논문에서 언급했듯이 파라미터 수가 증가할수록 제로 샷의 성능도 증가했으며, 특정 작업에서는 SOTA(최신) 모델을 능가하는 것으로 나타났습니다.
GPT-3 (2020년 6월)
이러한 실험을 통해 GPT의 다양한 능력을 확인한 후, 2020년에 등장한 GPT-3는 다시 한 번 확장되었습니다. 모델도 15억 개에서 175억 개로 늘어났고, 제출된 데이터도 600GB가 넘었습니다. 이전 시리즈보다 더 많은 데이터를 활용한 사전 학습 덕분에 생성 능력이 크게 향상되었습니다. GPT-3는 사전 지식이나 훈련 없이 '학습'하는 과제(소수 학습자)를 포함해 여러 측면에서 발전할 수 있었습니다. 이전 버전은 작업을 수행하기만 했지만 GPT-3는 스스로 작업을 학습할 수 있는 능력을 보여주었습니다.
"출현": 상황에 맞는 학습
GPT-3의 등장으로 상황 내 학습이 더욱 발전했습니다. 인컨텍스트 학습 이전에는 다양한 작업 예시를 입력해 모델을 미세 조정해야 했습니다. 모델과 해당 데이터의 필요성이 한계로 작용했지만, GPT-2의 제로 러닝부터는 모델을 업데이트할 필요 없이 몇 가지 예제 프롬프트(몇 샷)만 입력하면 새로운 작업을 수행할 수 있게 되었습니다.
GPT-4 출시 전, 2021-2022년
GPT-3 이후 GPT-4의 출시에 대한 사람들의 기대감이 커졌습니다. GPT-4의 공식 출시에 앞서 업계에서 주목할 만한 네 가지 모델이 등장했습니다. 이미지를 텍스트로 표현하는 모델인 CLIP과 DALL-E, 코드를 생성하는 Codex, 그리고 명령어를 세밀하게 적용하는 언어 모델인 InstructGPT가 등장했습니다. 특히 InstructGPT는 기존 GPT와 달리 모델에 직접 지시를 내리고, 일련의 지시에 따라 사용자의 의도에 맞게 답을 내도록 설계된 언어 모델로 큰 주목을 받았습니다.
CLIP (2021년 1월): '제로 샷' 이미지 분류하기
DALL-E (2021 년 1 월): 주어진 텍스트로 이미지 만들기
코덱스 (2021년 8월): 코드 생성
InstructGPT (2022년 1월): 명령어에 대한 미세 조정 및 강화 학습을 강조합니다. 기존 GPT가 모델이 특정 작업을 잘 수행하기 위해 프롬프트 엔지니어링을 통해 조건이나 예제를 요구했다면, InstructGPT는 간단한 자연어 명령어로 사용자가 요청하는 대로 결과를 생성합니다.
< Content Generated by Simple Language Models Regarding Instructions >
💬 ”Tell me about ChatGPT.”
→ EXPLAIN BERT / EXPLAIN GPT< Content Generated by Instruction Fine-Tuning Regarding Instructions >
💬 ”Tell me about ChatGPT.”
→ ChatGPT is one of the natural language processing models developed by OpenAI. This model is based on the Generative Pre-trained Transformer (GPT) architecture and is used as a dialog-based artificial intelligence model. ChatGPT is pre-trained in advance with a large amount of data, and then optimized through a fine-tuning process based on various conversation data. This allows ChatGPT to generate natural responses in conversation with users and discourse on a variety of topics.
GPT-3.5(2022년 3월)
GPT-3.5는 코드 데이터와 명령어 미세 조정을 GPT-3에 추가했습니다. 많은 연구자들의 추측에 따르면 이 방법이 모델에 직접적인 영향을 미쳤는지는 알 수 없지만, 코드 데이터를 추가하면 GPT의 추론 능력과 긴 입력에 대한 이해도가 높아지는 것으로 관찰되었습니다.
또한, GPT-3.5에는 명령어 미세 조정이 적용되어 InstructGPT의 실험적 방법이 추가되었습니다(2022년 1월). 이 개발은 미세 조정과 강화 학습이 사용자의 의도와 명령을 더 잘 이해하고 반응한다는 사실에 중점을 두었습니다.
ChatGPT (2022년 11월)
2022년에 처음 등장한 ChatGPT는 AI의 대중화를 이끈 모델 중 하나입니다. 이 모델은 GPT-3.5를 미세 조정한 것으로, OpenAI에서는 InstructGPT와 학습 방식이 유사하여 '형제 모델'이라고도 불립니다.
ChatGPT 모델의 첫 번째 단계에서는 명령 프롬프트와 데이터 세트로 구성된 데모 데이터가 필요했습니다. 이 과정에서 트레이너는 명령 프롬프트에 적합한 동작에 라벨을 붙였고, 수집된 데이터 세트는 SFT(감독형 미세 조정) 모델 학습을 통해 GPT-3.5를 미세 조정하는 데 사용되었습니다.
다음으로 사용자 선호도에 대한 보상 모델(RM)을 이용한 강화 학습(RL)으로 ChatGPT를 업데이트했습니다. 이를 통해 ChatGPT는 더욱 다양하고 자연스러운 대화를 제공할 수 있게 되었습니다.
RNN에서 ChatGPT까지, GPT 시리즈의 긴 여정을 함께 되돌아보았습니다. ChatGPT의 후속작인 Next GPT에서는 어떤 변화가 있을까요? 향후 ChatGPT가 어떻게 활용될지, 그리고 개발에 필요한 다양한 측면에 대해 자세히 알아보려면 웨비나 다시 보기 페이지를 참조하세요.