스크래치 nanoGPT
들어가며 네이처는 매년 이슈가 된 과학자 10인, nature’s 10을 뽑습니다. 2023년 nature’s 10에 ChatGPT가 명단을 올렸습니다. 네이처는 2023년 ChatGPT 가 세상 전반에 큰 영향력을 끼쳤다고 했습니다. 더 성능이 좋고 가벼운 모델들을 개발하려는 움직임에 막대한 자본과 인력이 투입되고 있습니다. 동시에 점점 더 커지고 복잡해지는 LLM을 이해하는 것이 어려워 지고 있습니다. 이번 글에서는 GPT를 아주 간소하게 만든 nanoGPT를 만들어봄으로써 LLM의 내부 메커니즘을 파악해보겠습니다. 먼저 GPT를 잘 알기 위해서는 Transformer 모델을 알아야 합니다. 이 모델을 공식적으로 발간한 ‘Attention is all you need(NeurIPS, 2017)’ 논문은 인용수는 10만회를 넘었습니다. 이 논문을 기반으로 GPT 시리즈가 만들어졌습니다. GPT-1(2018년), GPT-2(2019년), GPT-3(2020년), InstructGPT(2022년), 그리고 2023년에 GPT-4가 나왔습니다. [Transformer] Attention Is All You Need, 2017 [GPT-1] Improving Language Understanding by Generative Pre-Training, 2018 [GPT-2] Language Models are Unsupervised Multitask Learners, 2019 [GPT-3] Language Models are Few-Shot Learners, 2020 [Instruct GPT] Training language models to follow instructions with human feedback, 2022 [GPT-4] GPT-4 Technical Report, 2023 때문에 먼저 Transformer 의 아키텍쳐를 살펴보고 nanoGPT 를 만드는 순으로 진행하겠습니다. 코드는 Andrej Karpathy 의 Let's build GPT: from scratch, in code, spelled out. 를 참고했습니다. 셰익스피어의 문체를 학습하고 생성하는 모델을 만들어보겠습니다. Before Transformer
3