언어는 단순한 단어 모음이 아닙니다.
“단어1 → 단어2 → 단어3…”처럼 순서를 갖는 구조적 데이터죠.
따라서 언어를 이해하거나 생성할 때, “다음에 어떤 단어가 올까?”는 이전 단어들에 달려 있습니다.
이런 상황에서 필요한 것이 바로 조건부 확률(Conditional Probability)입니다.
예를 들어:
“I am going to the” 다음에는 “store”가 올 가능성이 “banana”보다 훨씬 높죠.
이를 확률로 표현하면:
언어 모델은 전체 문장의 확률을 직접 계산하지 않습니다.
대신, 체인룰(chain rule)이라는 확률 기법을 사용해 문장을 구성하는 각 단어의 조건부 확률을 차례대로 곱합니다.
예를 들어, 문장 “I am going to the store”는 다음처럼 계산됩니다:
즉, 각 단어가 이전 단어들에 조건부로 등장할 확률을 예측하는 것이 모델의 핵심입니다.
문장: “The cat sat.”
전체 문장의 확률은 다음과 같이 계산됩니다:
이런 식으로 언어 모델은 단어별 조건부 확률을 예측하고 곱해서 문장의 자연스러움을 계산합니다.
다음 단어 예측
→ 주어진 문맥에서 가장 자연스러운 다음 단어를 제시할 수 있습니다.
문장 생성
→ 첫 단어에서 시작해 조건부 확률을 기반으로 단어를 하나씩 샘플링해 문장을 만듭니다.
문맥 이해
→ 특정 단어가 등장할 확률을 계산해, 그 단어가 해당 문맥에서 어울리는지 판단할 수 있습니다.
GPT 같은 언어 모델은 단순히 문장을 암기하는 것이 아니라,
“앞 단어들을 보고 다음 단어가 등장할 확률”을 계산하는 구조를 학습합니다.
이 조건부 확률 기반 구조 덕분에,
같은 강력한 기능들이 가능해지는 것이죠.