언어 AI 역사
1. BoW로 언어 표현
언어 모델의 역사는 비구조적인 텍스트를 표현하는 방법인 BoW(bag-of-words)라는 기법으로 시작
작동방식
수치 표현을 만들려는 두 개의 문장이 있다고 가정
- BoW 모델의 첫 단계 : 문장을 개별 단어 또는 부분 단어(subword)(토큰token)로 분할하는 과정인 토큰화(Tokenization)
- 가장 널리 사용되는 토큰화 방법 : 공백을 기준으로 개별 단어를 분할 [ But, 개별 단어 사이 공백이 없는 언어는 불리]

토큰화를 한 다음 각 문장의 고유한 단어를 모두 합쳐 어휘사전(vocabulary)를 생성하여 문장을 표현

어휘사전을 사용하여 각 문장에 단어가 얼마나 많이 등장하는지 확인. 이 방법을 단어 가방(bag of words)라 고하며, BoW는 벡터 또는 벡터 표현이라는 수치 형태로 텍스트를 표현하는 것이 목표
[단점]
언어를 글자 그대로 가방에 담긴 단어의 모음 이상으로 생각하지 않고 텍스트 본질과 의미를 무시

2. 밀집 벡터 임베딩으로 더 나은 표현 생성
2013년 에 개발된 word2vec는 임베딩으로 텍스트 의미를 포작하는데 성공
임베딩은 데이터의 의미를 포착하기 위한 벡터 표현으로 위키백과와 같은 방대한 텍스트 데이터에서 훈련하여 단어의 의미를 나타내는 표현을 학습
word2vec는 신경망(neural network)를 사용해 의미 표현을 생성하고, 이 신경망은 여러 층이 서로 연결되어 구성되고, 각 층은 정보를 처리하는 여러 노드로 구성.
한 층의 노드와 다음 층의 노드를 잇는 연결에는 입력 값에 따라 특정한 가중치가 부여된다.
[가중치를 종종 모델의 파라미터라고 부른다]

word2vec은 신경망을 사용하여 주어진 문장에서 다음에 어떤 단어가 등장하는지를 살펴봄으로써 단어 임베딩을 생성

임베딩은 단어의 의미를 표현하기 위해 여러 속성을 가질 수 있으며, 임베딩의 크기가 고정이기 때문에 임베딩 속성은 단어의 정신적 표상(mental representation)을 만들도록 선택

임베딩은 단어 사이에 있는 유사성을 측정할 수 있으므로, 다양한 거리 측정 방법을 사용해 한 단어가 다른 단어와 얼마나 가까운지 판단 가능.

임베딩의 종류는 많고 단어와 임베딩과 문장 임베딩은 다른 수준(단어 vs 문장)의 추상화에 사용
예를들면 BoW는 전체 문서를 표현하므로 문서 수준에서 임베딩을 만들지만, word2vec은 단어에 대한 임베딩만 생성

3. 어텐션을 사용한 문맥 인코딩과 디코딩
인코더가 입력을 이해하고, 그 이해한 내용을 바탕으로 디코더가 새로운 문장을 생성하는 복합구조다.
- 특징: 입력 문장과 출력 문장의 형식이 다른 Sequence-to-Sequence(SeqToSeq) 작업에 매우 강력
- 대표 모델: T5, BERT, MarianMT
- 주요 용도:
- 기계 번역 (한국어 입력 → 영어 출력)
- 텍스트 요약 (긴 본문 입력 → 짧은 요약문 출력)
- 문법 교정
word2vec의 훈련 과정은 정적이고 다운로드 가능한 단어 표현을 생성
예) 단어 ‘bank’는 문맥에 상관없이 항상 임베딩이 동일. but, ‘bank’가 은행이나 강둑을 의미할 수 있다.
즉, 임베딩은 문맥에 따라 달라져야 한다.
이런 텍스트를 인코딩하는 단계는 순환 신경망(recurrent neural network[RNN])을 사용하며, RNN은 연속적인 입력으로 시퀀스를 모델링 할 수 있는 신경망을 한 종류이다.

이 구조에서 각 단계는 자기회기적(autoregressive)이다. 즉 이전에 생성한 단어를 사용해 다음 단어를 생성

인코딩 단계의 목표는 입력을 가능한 잘 표현하여 디코더의 입력으로 사용되는 임베딩의 형태로 문맥을 생성
입력 및 출력은 한 번에 하나씩 순차적으로 처리

그러나 문맥 임베딩은 하나의 임베딩으로 전체 입력을 표현하기 때문에 긴 문장을 처리하긴 어렵다.
이 구조를 크게 개선한 어텐션(Attention)이라는 방법
어텐션(Attention)은 주어진 문장에서 어떤 단어가 가장 중요한지 선택적으로 결정
예를 들어 “lama’s”는 “llamas”에 해당하는 네덜란드 언어이다. 따라서 두 단어 사이의 어텐션이 높다.
또한 “lama’s”와 “I”는 관련이 없기 때문에 어텐션이 낮다.

어텐션 메커니즘을 다코더 단계에 추가함으로 RNN이 입력 시퀀스의 각 단어에 대해 출력 가능성에 관한 신호를 생성하고, 문맥 임베딩을 디코더에 전달하는 대신 모든 입력은 단어의 은닉 상태가 전달

4. Attention Is All You Need
어텐션의 진정한 힘과, 대규모 언어 모델의 능력을 만들어 낸 동력은 2017년에 발표된 논문에서 소개
어텐션 메커니즘만 사용하고 순환신경망을 제거한 트랜스포머(Transformer)라는 신경망 구조를 제안
트랜스포머도 자기회기적이어서 이전에 생성된 모든 단어를 사용해서 새로운 단어를 생성

인코더와 디코더 블록은 어텐션 기능이 포함된 RNN을 활용하는 대신 어텐션을 중심으로 구동
트랜스포머의 인코더 블록은 셀프 어텐션(self-attention)과 피드포워드 신경망(feedforward neural network)로 구성

셀프 어텐션은 한 시퀀스 안의 다른위치에 주의를 기울이며, 입력 시퀀스를 더 쉽고 정확하게 표현할 수 있으며, 한 번에 하나의 토큰을 처리하지 않고 전체 시퀀스를 한번에 처리할 수 있다.

디코더는(입력에서 관련된 부분을 찾기 위해) 인코더의 출력에 주의를 기울이는 별도의 층이 추가

디코더의 셀프 어텐션 층은 미래의 위치를 마스킹(Masking)하여 출력을 생성할 때 정보 누출을 방지하기 위해 앞선 위치에만 주의를 기울일 수 있다.

이런 구성 요소가 합쳐저서 트랜스포머 구조가 만들어지며, 이 구조를 통해 BERT와 GPT-1 같은 언어 AI 분야에 영향을 끼친 많 은 모델의 기반을 이룬다.
4-1. 표현모델:인코더 기반 모델
인코더는 입력된 문장을 ‘이해‘하고 그 의미를 고차원적인 벡터(숫자)로 변환하는 데 최적화되어 있다.
- 특징: 양방향(Bidirectional) 맥락 파악이 가능. 문장 전체를 한꺼번에 보고 각 단어가 앞뒤 단어들과 어떤 관계인지 분석.
- 학습 방식: 문장의 중간 단어를 가리고(Masking) 맞히는 '마스크 언어 모델링(MLM)'을 주로 사용.
- 대표 모델: BERT, RoBERTa, ALBERT
- 주요 용도: * 문장 분류 (스팸 메일 분류 등)
- 개체명 인식 (NER: 인물, 장소 추출)
- 질의응답 (주어진 지문에서 정답 찾기)
원본 트랜스포머 모델의 경우 인코더-디코더 구조라서 번역 작업에는 적합하지만, 텍스트 분류같은 작업에는 쉽게 사용하기 어렵다.
그래서 2018년 BERT(Bidirectional Encoder Representations form Transformers) 라는 새로운 구조가 소개되었으며 언어 AI 기반으로 자리매김
BERT는 언어를 표현하는데 초점을 맞춘 인코더 기반 구조이다.
인코더 기반 구조 : 인코더만 사용하고 디코더는 사용하지 않는다는 의미

BERT는 마스크드 언어 모델링(Masked Language Modeling)이라는 기법을 적용
- 모델이 예측할 입력의 일부분을 마스킹
- 일반적으로 전이 학습(transfer learning)에 사용
- 언어 모델링을 위해 모델을 사전 훈련(Pretraining) 후 구체적인 작업을 위해 미세튜닝을 진행

사전 훈련 모델의 장점
- 대부분의 훈련이 이미 완료되었다는 것
- 특정 작업을 위한 미세튜닝은 일반적으로 컴퓨팅 자원을 적게 사용
- BERT 같은 모델은 거의 모든 단계에서 임베딩을 생성
- 특정 작업에서 미세튜닝 할 필요 없이 특성 추출기로 사용할 수 있다.

모델의 구조와 작동 방식의 주요 차이점
인코더 기반 모델 : 임베딩 생성처럼 언어를 표현하는데 초점을 맞추고, 텍스트를 생성하지 않는다.
디코더 기반 모델 : 텍스트를 생성하는데 초점을 맞추며, 임베딩을 생성하도록 훈련되지 않는다.
4-2. 생성모델: 디코더 기반 모델
디코더는 이전에 나온 단어들을 바탕으로 '다음에 올 단어를 예측'하며 문장을 생성하는 데 최적화되어 있습니다. 현재 대다수의 생성형 AI(ChatGPT 등)가 이 구조를 따릅니다.
- 특징: 단방향(Unidirectional/Causal) 맥락을 따릅니다. 미래의 단어를 미리 볼 수 없도록 마스킹 처리를 하며, 왼쪽에서 오른쪽으로 순차적으로 텍스트를 생성합니다.
- 학습 방식: 다음 단어를 예측하는 '인과적 언어 모델링(CLM)'을 사용합니다.
- 대표 모델: GPT 시리즈(GPT-4, GPT-o1), Llama 3, Mistral, Claude
- 주요 용도:
- 자유로운 텍스트 생성 (에세이 작성, 코드 생성)
- 대화형 챗봇
- 창의적 글쓰기
GPT-1 구조

이런 디코더 기반 생성 모델을 대규모 언어 모델(LLM:Large Language Models) 이라고 부른다.
시퀀스-투-시퀀스(Sequence-to-Sequence) 모델로 생성 LLM은 어떤 텍스트를 받아 자동으로 완성
- 이 모델의 진정한 힘은 챗봇으로 훈련되었을 때 빛을 발한다.
- 이런 모델을 미세튜닝하여 지시를 따르는 인스트럭트 모델(Instruct Model) 또는 채팅 모델(Chat Model)을 만들 수 있다.
이렇게 만든 모델은 사용자 쿼리(Query:[프롬프트:Prompt])를 입력 받고, 이 프롬프트를 따르는 응답을 출력 할 수 있다. 따라서 종종 생성모델을 완성 모델이라고 한다.

생성모델(완성모델)에서 중요한 부분은 문맥 길이(Context Length) 또는 문맥 윈도(Context Window) 이다.
문맥 길이는 모델이 처리할 수 있는 최대 토큰 수를 나타낸다. 문맥길이가 클 경우 LLM에 문서를 통채로 전달 할 수 있고, 이런 모델은 자가회귀 성질을 가지고 있어 새로운 토큰이 생성됨에 따라 현재 문맥의 길이가 증가한다.

요약 및 비교
| 구분 | 인코더 기반 (Encoder-only) | 디코더 기반 (Decoder-only) | 인코더-디코더 (Full Transformer) |
|---|---|---|---|
| 핵심 목적 | 문맥 이해 (NLU) | 텍스트 생성 (NLG) | 입력-출력 변환 (Translation) |
| 방향성 | 양방향 (문장 전체 참조) | 단방향 (이전 단어만 참조) | 입력은 양방향, 출력은 단방향 |
| 대표 모델 | BERT | GPT, Llama | T5, BART |
| 비유 | 독해 능력이 뛰어난 학생 | 소설을 써 내려가는 작가 | 외국어를 통역하는 통역사 |
대규모 언어 모델의 정의
최근 언어 AI역사를 살펴보면 주로 디코더 기반(트랜스포머)의 생성 모델을 일컬어 대규모 언어모델(LLM : Large Language Model) 이라고 한다. 특히, 규모가 큰 모델일 때 해당.
대규모 언어 모델의 훈련 패러다임
전통적인 머신러닝(Matchine Learning)의 분류와 같은 특정 작업을 위해 모델을 훈련한다.
이를 한 단계로 구성된 과정으로 간주

이와 달리 LLM을 만드는 것은 일반적으로 적어도 두 단계로 구성
- 언어모델 : 사전훈련(Pretraining)이라고 부르며 대부분의 계산과 훈련 시간이 소요
- 인터넷에서 수집한 대규모 텍스트 덩어리에서 LLM을 훈련시켜 모델이 문법, 맥락, 언어 패턴을 학습할 수 있다.
- 광범위한 이 훈련 단계는 다음 단어를 예측 하는 것 외에 아직 특정 작업이나 애플리케이션에 맞춰져 있지 않는다.
- 이렇게 만들어진 모델을 파운데이션 모델 또는 베이스 모델 이라고 부르며, 이런 모델은 일반적으로 명령을 따르지 못한다.
- 미세튜닝 : 미세튜닝(fine-tuning) 또는 사후 훈련(post-training)이라고 부르며, 이전에 훈련된 모델을 사용해 구체적인 작업에 맞춰 추가로 훈련시키고, 이를 통해 LLM이 특정 작업에 적응하거나 원하는 행동을 수행할 수 있다.
- 베이스모델을 미세튜닝하여 분류 작업을 수행하거나 명령을 따르게 할 수 있다.(막대한 자원 절약)
- 사전 훈련 단계는 비용이 많이 들고 대부분의 사람과 조직에게는 감당하지 못할 만큼 데이터와 컴퓨팅 자원이 필요
미세튜닝된 모델도 포함해 첫번 째 단계인 사전 훈련을 통과한 모든 모델을 사전 훈련된 모델(pretrained model)이라고 간주.

참고
핸즈온 LLM
'AI > LLM' 카테고리의 다른 글
| [AI LLM] LLM 중추, 트랜스포머 아키텍처 (0) | 2026.02.17 |
|---|