LLM 기초 (트랜스포머/어텐션)

갱신 2026-08-09

한눈에 요약

다음 단어를 맞히는 함수

**대규모 언어 모델(LLM, Large Language Model)**은 어떤 텍스트가 주어졌을 때 다음에 올 단어를 예측하는 매우 정교한 수학적 함수다. 더 정확히는 딱 하나의 단어를 확정하지 않는다. 다음에 올 단어들에 대한 확률 분포를 구하는 함수다 1.

ChatGPT 같은 모델과의 대화는 이 예측의 반복이다. 문장을 넣어 다음 단어를 예측하고, 그 단어를 덧붙여 다시 예측한다 1.

결정론적 함수와 랜덤성

언어 모델 자체는 디터미니스틱(결정론적)이다. 다만 가장 확률이 높은 단어만 고르지는 않는다. 가끔 확률이 조금 낮은 단어도 랜덤하게 고르게 하면 더 자연스럽고 사람 같은 답변이 된다. 그래서 같은 입력이라도 매번 다른 답변이 나올 수 있다 1.

파라미터(가중치)와 훈련

모델의 출력은 **파라미터(웨이트, 가중치)**라 불리는 수많은 값들이 결정한다. 이 값을 바꾸면 다음 단어 예측이 달라진다. "대규모"라 불리는 이유는 파라미터가 수백억에서 수천억 개에 이르기 때문이다 1.

훈련은 처음엔 랜덤하게 설정된 파라미터를 반복 조정해 점점 더 그럴듯한 예측을 하게 만드는 과정이다.

방법은 이렇다. 텍스트에서 마지막 단어를 뺀 나머지를 입력으로 넣고, 모델이 마지막 단어를 어떻게 예측하는지 본다. 그리고 정답에 가까워지도록 백프로파게이션(역전파) 알고리즘으로 파라미터를 살짝씩 조정한다. 이를 수없이 반복하면 학습 데이터뿐 아니라 처음 보는 문장도 그럴듯하게 예측하게 된다 1.

규모를 보여주는 수치들 1:

사전 훈련과 RLHF

다음 단어 예측을 잘한다고 좋은 AI 어시스턴트가 되는 건 아니다. 위 과정은 **사전 훈련(프리트레이닝)**일 뿐이다.

이후 강화 학습의 하나인 RLHF로 추가 훈련한다. 사람이 모델의 잘못된 응답을 고치거나 더 나은 응답을 골라 준다. 그러면 사용자들이 선호하는 방향으로 다음 단어를 예측하도록 조정된다 1.

"학습"은 어디까지인가

용어가 헷갈리는 대목이다. 예전에 모델을 학습시킨다는 말은 위처럼 가중치를 조정하는 것을 뜻했다. 그런데 요즘은 회사 문서를 잔뜩 넣어 챗봇을 만들어 놓고도 "학습시켰다"고 말한다.

한 대담의 정리는 이렇다. 같은 프롬프트를 넣었는데 시스템의 동작이 바뀌었다면 그것도 학습이 맞다는 것이다. 모델 가중치를 바꾼 딥러닝적 학습은 아니지만 시스템을 학습시킨 것이고, 이미 **인컨텍스트 러닝(in-context learning)**이라는 이름이 있다 30.

트랜스포머와 병렬 처리

2017년 이전까지 대부분의 모델은 단어를 하나씩 순차적으로 처리했다. 구글 연구팀이 **트랜스포머(Transformer)**를 발표하면서 많은 것이 바뀌었다.

트랜스포머는 텍스트를 처음부터 끝까지 순차적으로 읽지 않는다. 전체 문장을 한꺼번에 병렬로 처리한다. 이때 각 단어는 모델이 이해할 수 있는 숫자 벡터로 바뀌고, 각 벡터는 그 단어의 의미와 맥락을 담는다 1.

어텐션과 피드포워드

트랜스포머는 **어텐션(Attention)**이라는 연산으로 이 숫자 벡터들을 처리한다. 어텐션은 벡터들이 서로 정보를 주고받으며 주변 맥락에 따라 각 단어의 의미를 조정하게 해 준다.

예를 들어 "눈"이라는 단어가 있다. 주변에 "내린다"가 있으면 하늘에서 내리는 눈이 되고, "보는 눈이 많다"면 사람 눈을 뜻하는 벡터가 된다 1.

트랜스포머 안에는 피드포워드 네트워크도 들어 있다. 모델이 더 많은 언어 패턴을 저장하게 해 주는 장치다.

어텐션과 피드포워드 연산을 여러 층(레이어)에 걸쳐 반복하면 각 단어 벡터가 점점 더 맥락을 잘 반영하게 된다. 마지막 단계에서 전체 문맥을 반영한 벡터로 다음에 올 단어의 확률 분포를 예측한다 1.

해석의 어려움

모델 구조는 연구자들이 설계했다. 다만 실제 출력은 훈련으로 자동 조정된 수십억 개의 파라미터가 결정한다. 그래서 모델이 왜 그 단어를 예측했는지 설명하기는 매우 어렵다. 설명은 어려워도 생성되는 텍스트는 자연스럽고 유용하다 1.

함께 읽기