대규모 언어 모델은 어떻게 학습되는가, 쉬운 말로
언어 모델 학습은 마법 같은 한 단계가 아니라 여러 단계로 이뤄집니다. 각 단계가 하는 일과 순서가 중요한 이유를 쉬운 말로 풀어봅니다.
대규모 언어 모델은 하나의 완성된 단일 물건처럼 느껴질 수 있습니다. 무언가를 입력하면 답이 돌아오니까요. 하지만 당신에게 답하는 그 존재는 여러 단계를 거쳐 만들어졌고, 각 단계는 서로 다른 일을 합니다. "AI가 인터넷에서 배웠다"는 그림만 떠올린다면, 모델이 지금처럼 동작하는 이유를 놓치게 됩니다. 왜 때때로 자신만만하게 틀린 말을 하는지, 애초에 왜 지시를 따르기는 하는지, 비슷한 데이터로 학습한 두 모델이 왜 그렇게 다르게 느껴지는지 말이죠. 이 글은 주요 단계들을 일어나는 순서대로, 쉬운 말로 짚어봅니다.
핵심 아이디어: 다음에 올 텍스트 조각을 예측한다
전문 용어를 걷어내면 언어 모델이 하는 일은 하나입니다. 다음에 무엇이 올지를 예측하는 것이죠. 일정한 길이의 텍스트가 주어지면, 모델은 가능한 다음 조각 각각이 얼마나 그럴듯한지 추정하고, 그중에서 하나를 골라 이를 반복합니다. 이게 기계적으로 하는 일의 전부입니다.
이 작업이 강력한 이유는, 다음 조각을 잘 예측하려면 알고 보니 엄청난 양의 암묵적 지식이 필요하기 때문입니다. "그 나라의 수도는"이라는 문장을 마무리하는 단어를 맞히려면, 모델은 지리에 관한 무언가를 흡수하고 있어야 합니다. 코드 조각을 올바르게 이어가려면 문법에 관한 무언가를 흡수하고 있어야 하죠. 누구도 이런 사실을 직접 프로그래밍해 넣지 않습니다. 그것들은 방대한 양의 텍스트에 대해 예측을 아주 잘하게 된 결과로 따라오는 부수 효과입니다. 이 점을 기억해 두세요. 모델이 "아는" 모든 것은 예측을 위해 익힌 지식이지, 진리로서 건네받은 사실이 아닙니다.
1단계: 사전학습(pretraining)
첫 번째이자 가장 큰 단계는 사전학습입니다. 모델에게 어마어마한 양의 텍스트를 보여주고 다음 조각을 예측하라고 반복해서 요구하며, 틀릴 때마다 내부 설정값을 조금씩 조정합니다. 이런 작은 교정이 수십억 번 쌓이면서, 모델은 언어가 어떻게 작동하는지, 무엇 다음에 무엇이 오는 경향이 있는지에 대한 통계적 감각을 쌓아갑니다.
이 단계에 대해 이해해 둘 만한 점이 몇 가지 있습니다.
- 자기지도(self-supervised) 방식입니다. 누구도 데이터에 일일이 정답을 붙이지 않습니다. 각 예측의 "정답"은 그저 실제 다음 텍스트 조각이며, 그것은 이미 텍스트 안에 들어 있습니다. 사전학습이 거대하게 확장될 수 있는 이유가 여기 있습니다. 지도(supervision)가 공짜인 것이죠.
- 폭이 넓을 뿐, 행동을 위해 선별된 것은 아닙니다. 사전학습 데이터는 광범위하게 쓸어 담은 텍스트입니다. 모델은 그 텍스트 속 패턴을 학습하는데, 도움이 되는 패턴과 그렇지 않은 패턴을 가리지 않습니다. 이 시점에는 아직 자신이 "어시스턴트"라는 감각이 없습니다.
- 단연코 가장 비용이 큰 단계입니다. 사람들이 모델 학습 하면 떠올리는 막대한 연산 비용은 대부분 여기에 들어갑니다.
사전학습이 끝나면, 유창하고 지식은 많지만 대화 상대로는 딱히 쓸모 있지 않은 모델이 됩니다. 이 모델은 패턴이 가리키는 방향이 무엇이든 기꺼이 당신의 텍스트를 이어가는데, 여기에는 실제 질문을 무시하고 질의응답 페이지의 형식을 흉내 내는 것까지 포함됩니다. 예의는 없는, 날것 그대로의 능력인 셈입니다.
2단계: 지시를 따르도록 가르치기
다음 단계는 "텍스트를 이어갈 수 있다"와 "내가 요청한 것을 한다" 사이의 간극을 메웁니다. 흔히 지시 튜닝(instruction tuning) 또는 지도 미세조정(supervised fine-tuning)이라 부릅니다. 모델에게 여기 요청이 있고, 여기 좋은 응답이 있다는 형태의 예시를 많이 보여주면, 모델은 그런 형태로 응답을 만들어내는 법을 배웁니다.
이 단계는 사전학습보다 규모가 작고 더 의도적입니다. 예시는 당신이 원하는 행동을 보여주도록 작성되거나 선별됩니다. 직접 답하기, 서식 요청 따르기, 거절해야 할 것을 거절하기, 불확실함을 인정하기 같은 것들이죠. 모델은 사전학습에서 이미 바탕이 되는 능력을 갖췄고, 이 단계는 그 능력을 도움이 되는 어시스턴트라는 역할로 겨냥하게 만듭니다.
여기서 중요한 사고의 전환은, 지시를 따르는 것이 타고난 것이 아니라 학습된 것이라는 점입니다. 모델은 본래 당신의 질문 장르를 흉내 내기보다 질문에 답하려는 성향을 타고나지 않았습니다. 그렇게 하는 이유는, 이것이 기대되는 행동임을 반복해서 보여줬기 때문입니다.
3단계: 선호로부터 배우기
시연만으로는 한계가 있습니다. 많은 요청에는 단 하나의 정답이 없으며, 더 나은 답과 더 못한 답이 있을 뿐입니다. 이를 담아내기 위해 모델은 **선호(preferences)**로부터 배우는 단계를 거칩니다. 사람(그리고 점점 더 채점자 역할을 하는 다른 모델)이 두 응답을 비교해 어느 쪽이 더 나은지 표시하면, 모델은 선호되는 것을 더 많이, 그렇지 않은 것을 더 적게 내놓도록 조정됩니다.
가장 잘 알려진 형태가 **인간 피드백 기반 강화학습(RLHF)**이며, 여러 변형이 존재합니다. 작동 방식은 조금씩 다르지만 목표는 같습니다. 단지 그럴듯한 응답이 아니라, 사람들이 실제로 도움이 되고 정직하며 적절하다고 느끼는 응답 쪽으로 모델의 성향을 빚어내는 것이죠.
이 단계는 모델의 "성격"을 많이 설명해 줍니다. 말끝을 흐릴지 단정 지을지, 민감한 요청을 어떻게 다룰지, 기본적으로 얼마나 장황한지, 그 상당 부분은 날것의 지식이 아니라 선호 학습이 남긴 흔적입니다. 안전 관련 행동의 상당수도 이 단계에서 주입됩니다.
그래도 모델이 틀리는 이유
단계를 이해하고 나면 실패 양상이 덜 신비롭게 보입니다.
모델이 환각(hallucinate), 즉 거짓을 자신만만하게 진술하는 이유는 부분적으로 그 핵심 능력이 그럴듯한 이어쓰기를 만드는 데 있기 때문입니다. 유창하게 틀린 답이 정직한 "모르겠습니다"보다 더 그럴듯하게 들릴 수 있죠. 학습은 이런 경향에 맞서지만, 목표 자체에 새겨진 성향을 완전히 없애지는 못합니다.
모델에게 **지식 컷오프(knowledge cutoff)**가 있는 이유는, 사전학습이 어느 시점까지 수집된 데이터를 썼기 때문입니다. 그 이후의 사건은 모델이 배운 텍스트 안에 애초에 없었습니다.
모델이 일관되지 않을 수 있는 이유는, 고정된 데이터베이스를 읽는 것이 아니라 그럴듯한 이어쓰기의 분포에서 표본을 뽑기 때문입니다. 같은 것을 두 번 물으면 그 분포를 지나는 경로가 달라질 수 있습니다.
이 중 어느 것도 통상적인 의미의 버그가 아닙니다. 모두 이 존재가 만들어진 방식에서 곧장 따라 나오는 결과입니다.
평가와 반복은 어디에 들어가는가
학습은 시작에서 완성품까지 일직선으로 나아가는 과정이 아닙니다. 이 단계들 사이사이와 그 이후로, 모델은 평가받습니다. 과제로 시험하고, 안전하지 않은 행동을 탐색하고, 성능 퇴행을 점검하며, 그 결과는 다시 추가 튜닝으로 피드백됩니다. 실제 모델은 학습하고, 측정하고, 조정하고, 반복하는 여러 라운드의 산물입니다. 위의 깔끔한 3단계 이야기는 뼈대일 뿐, 실제로는 그 위에 엄청난 양의 반복이 겹겹이 얹히며, 그 상당수는 시험 도중 발견된 특정 약점을 고치는 데 맞춰져 있습니다.
정리
언어 모델은 한 단계로 학습되지 않으며, 단순히 "인터넷을 압축한 것"도 아닙니다. 텍스트를 예측하고 폭넓은 지식을 흡수하도록 사전학습되고, 지시를 따르도록 튜닝되며, 도움이 되고 안전한 쪽으로 선호에 따라 빚어집니다. 그리고 그 전 과정에 평가와 반복이 엮여 있습니다. 각 단계는 완성품에서 당신이 볼 수 있는 무언가를 설명해 줍니다. 사전학습은 지식과 유창함을, 지시 튜닝은 당신에게 답하는 습관을, 선호 학습은 예의와 판단을 줍니다. 모델이 당신을 놀라게 할 때, 자신만만하게 틀리거나, 이상하리만치 조심스럽거나, 최근 사건 앞에서 멈춰 설 때, 그 행동은 대개 이 단계들 중 하나로 거슬러 올라갈 수 있습니다. 그런 사고 모델은 기계가 "학습한" 단 하나의 신비로운 순간을 상상하는 것보다 훨씬 더 큰 도움이 될 것입니다.
