자연어 처리 신경망 모델 ChatGPT를 만든 딥러닝 방법

자연어 처리 신경망 모델 ChatGPT를 만든 딥러닝 방법

ChatGPT 소식이 날마다 새로운 버전으로 들려옵니다. 자연어 처리 모델인 ChatGPT를 이해하기 위해 심화학습 중입니다. 이번 포스팅에서는 ChatGPT의 역사와 신경망을 만들기 위해 사용한 딥러닝 방식인 자기지도학습에 대해 알아보겠습니다.

 

 


글의 순서

ChatGPT란 무엇인가?
GPT-3가 주목 받은 이유 : 1750억개의 파라미터
Instruct GPT 그리고 ChatGPT
자연어 처리 모델 ChatGPT의 기반 기술
ChatGPT를 만든 딥러닝 방식
ChatGPT의 성공 요인 : 자연어 처리 성능


ChatGPT란 무엇인가?

ChatGPT는 OpenAI 사에서 만든 초거대 인공지능 모델입니다. 언어를 이해하고 생성하는 GPT-3를 기반으로 만들어졌는데요. ChatGPT로는 문서를 요약한다거나, 코딩을 한다거나, 번역, 신문기사 작성, 심지어 언어로 된 게임을 만들 수 도 있습니다. 이런 것들이 모두 가능하도록 만들어진 엄청나게 큰 자연어 처리 신경망 모델입니다.

2020년 5월에 나온 GPT-3는 2018년 6월의 GPT-1, 2019년 2월의 GPT-2에 이은 세 번째 인공지능 모델입니다. GPT-1, 2, 3에서 보듯 거듭 발전 중입니다.

 

 


GPT-3가 주목 받은 이유 : 1750억여개의 파라미터

GPT-3 직전에 170억개의 파라미터로 만들어진 자연어 처리 인공지능 모델인 마이크로소프트의 튜링 NLG (Turing Natural Language Generation)이 있었는데, GPT-3는 파라미터 개수가 튜링 NLG 보다 무려 10배나 많습니다.

Turing NLG는 당시 170억 개의 파라미터를 최적화한 가장 큰 모델이었고, 질문에 답하고, 내용을 요약하는 능력으로 세상을 놀라게 했습니다. 그런데 그보다 불과 3~4개월 이후에 나온 GPT-3는 파라미터 개수가 10배나 커진 것입니다.

사람의 뇌로 비유하자면, 뇌 용량이 10배가 커진 것입니다. 인공 신경망의 파라미터는 뇌 속의 뉴런과 비교할 수 있는만큼, 뉴런의 개수가 10배 증가하면 뇌에서 처리할 수 있는 정보량이 10배쯤 증가하는 것입니다.


Instruct GPT 그리고 ChatGPT

자연어 처리 모델인 GPT-3는 우리가 물어보는 것에 대해 대화하듯 답해줍니다. 윤리적으로 문제가 없는 대화를 만들어 내야 한다는 요구가 생겼고, 이에 대응하기 위해 2022년 1월에는 InstructGPT라는 버전이 나왔습니다.

InstructGPT는 지시를 따르는 발전된 언어 모델이며, GPT-3 보다는 훨씬 더 사람의 말을 잘 이해합니다. 그러니까 GPT-3가 사람의 의도를 더 잘 파악하는 InstructGPT로 발전하게 된 것입니다. 2022년 1월의 일입니다.

2022년 11월 ChatGPT라는 모델이 나왔습니다. ChatGPT는 기존 InstructGPT에 대화형 인터페이스를 결합한 서비스입니다. ChatGPT는 기본적으로 InstructGPT인데 대화를 통해 InstructGPT의 능력을 극대화한 모델이라고 할 수 있습니다.


자연어 처리 모델 ChatGPT의 기반 기술

ChatGPT는 아주 어려운 이론이나, 고도의 알고리즘을 바탕으로 개발된 것이라기보다는 딥러닝을 하는 모든 사람들이 알고 있었던 방법으로 개발된 것입니다. 2017년 구글 AI에서 개발한 트랜스포머 모델(Transformer model)이 ChatGPT의 기반 기술입니다.

트랜스포머 모델은 입력 데이터의 중요성에 따라 가중치를 부여하는 self-attention 기반의 딥러닝 모델입니다. 인간이 어떤 것에 주의(attention)를 기울이는 것을 모방하였습니다.


ChatGPT를 만든 딥러닝 방식

GPT-3를 만들기 위해 온라인 상에 있는 무수히 많은 문서(text)를 모아서 자기 지도학습(self-supervised learning) 이라는 방식으로 학습을 시켰습니다. ChatGPT를 만드는 학습방식을 이해하기 위해 지도학습부터 알아보겠습니다.

(1) 지도학습

머신러닝(machine learning)의 일반적인 방식은 입력값과 정답의 쌍을 모은 후, 이를 신경망 모델의 학습데이터로 주는 것입니다. 그러니까 독립변수에 대응되는 종속변수를 주는 방식입니다. 입력이 독립변수이고, 정답이 종속변수입니다. 정답을 레이블(label)이라고도 부릅니다.

고양이 사진을 주고 고양이를 알아차리게 만드는 인공지능을 만든다고 가정했을 때, 고양이 사진이 입력값이고, ‘고양이’가 정답입니다. 그러니까 고양이 사진을 입력하면서 ‘이건 고양이이다’라는 답도 함께 주는 방식입니다. 레이블은 ‘고양이’인 것입니다.

(2) 자기 지도 학습

자기 지도 학습은 주어진 정답을 학습하던 기존과는 다르게, 자율성을 가지고 자기가 스스로 알아내는 방식입니다. 어린 아이가 책을 읽어가면서 자연스럽게 터득하는 것에 가깝습니다. ChatGPT는 온라인상에 널린 글(text)들을 보면서 스스로 언어를 깨친 자연어 처리 모델이라고 이해하시면 되겠습니다.

예를 들어,
앞에 단어가 몇 개 나왔을 때, 그 다음 단어가 무엇이 나올지를 예측한다든가.

눈이 녹으면 [ ]
1. 봄이 온다?
2. 물이 된다?

문장에서 빈 칸이 있을 때, 그 빈칸에 들어갈 말이 무엇인지를 예측하는 방법입니다.

Will you [ ] me?
[ ] you merry me?

인터넷 상에 있는 텍스트 데이터를 가린 후, 맞히고, 가린 후, 맞히고를 무수히 반복하면서 학습하는 방식이 자기지도학습입니다. 온전한 텍스트만 주어진다면 사람이 개입하지 않고도 스스로 지도하면서 학습할 수 있습니다. 그러니까 사람이 따로 지시를 내리지 않더라도, 또는 정답(label, 레이블)을 주지 않더라도, 스스로 학습할 수 있습니다. 이것이 self-supervised learning(자기지도학습, 또는 자기감독학습)입니다.

(3) 강화학습 (Reinforcement learning)

자기지도학습으로 ChatGPT는 자연어에 대한 이해가 가능하게 되었습니다. 그런데, 아직 특정 작업을 어떻게 하는지를 배운 적이 없는 상태입니다. 자기지도학습만으로 부족했던 작업 방법에 대한 이해를 강화학습으로 보완하였습니다. InstructGPT는 GPT-3에 강화학습까지 접목한 것입니다.

InstructGPT ← 자기 지도 학습 + 강화 학습(Reinforcement learning)

강화학습에서는 ‘이런 답을 했으면 좋겠다’, 또는 ‘여러 가지 답 중에 이 답이 가장 좋은 것이다’라는 피드백을 줘서 사람이 원하는 언어를 생성할 수 있도록 하였습니다. 결국 ‘언어 작업이라는 것은 이런 것이구나’ 라는 것을 이해할 수 있게 되었다고 보시면 됩니다.


ChatGPT의 성공 요인 : 자연어 처리 성능

GPT-3의 파라미터 수에 버금가는 인공지능 모델이 페이스북(Facebook)이나 구글(Google)에서도 개발되었습니다. 그런데, GPT-3의 성능이 더 뛰어나다는 평입니다. 가장 큰 이유로 OpenAI 만의 차별화된 엔지니어링 역량을 꼽습니다.

바로 위에서 강화학습이라고 말씀드렸는데요. 현실에서의 언어 능력 구현을 위해 사람이 직접 고쳐가며 괜찮은 답을 찾아내는 수작업이 이런 결과를 이끌었을 것으로 보고 있습니다. 또 하나는 자기지도학습에 쓰였던 text 데이터의 양과 질이 모두 뛰어났기 때문이라고 추정하고 있습니다. ChatGPT는 지구상의 모든 책을 학습했을 지도 모를 일입니다.


마치며 …

ChatGPT 소식이 날마다 새로운 버전으로 들려옵니다. 2023년 3월에는 GPT-4가 공개되었고, 마이크로소프트는 ChatGPT를 접목한 상품인 Copilot을 출시했습니다. 인공지능 기술이 빠르게 발전하고 있는 지금, 인공지능이라는 도구를 제대로 활용하기 위해서는 기본 원리를 아는 것이 무엇보다 중요합니다.

이번 포스팅에서는 자연어 처리 모델인 ChatGPT를 이해하기 위해 ChatGPT의 역사와 신경망을 만들기 위해 사용한 딥러닝 방식인 자기지도학습에 대해 알아보았습니다. 인공지능을 제대로 활용하기 위한 심화학습을 다음 포스팅에서도 이어가 보겠습니다.

 

 

함께 참고하면 좋은 글
1. 초 거대 인공지능 ChatGPT
2. 챗GPT와 같은 자연어 처리 인공지능 한계
3. ChatGPT 플러그인, 멀티 모달 인공지능
4. ChatGPT, 라마(LLaMA)가 여는 생성형 인공지능 시장
5. 머신러닝, 인공지능. 커피 마시며 가볍게 읽는
6. 커피와 인공지능
7. 중학수학 함수와 최고의 커피 한잔
8. 반자동 에스프레소 머신 커피 추출시간을 결정하는 변수
9. 애플 M1 칩, 그리고 컴퓨터 기본 구조
10. 파이썬 데이터 분석! 데이터 분석을 위한 코딩언어 파이썬
11. 알아두면 좋을 컴퓨터 작동원리. 폰 노이만 아키텍처


참고자료

[1] 서울대학교 Seoul National University(2023.3), [샤로잡다] 챗GPT는 어떻게 내 질문에 대답할까? 탄생기부터 작동원리까지 | 김건희 교수
[2] Microsoft Research Blog(2020. 2),Turing-NLG: A 17-billion-parameter language model by Microsoft

Leave a Comment