대규모 언어 모델(LLM)의 작동 원리

대규모 언어 모델(LLM)의 작동 원리를 알아봅니다. AI 관련 영업을 위해서는 최소한의 작동 원리를 공부하는 게 필요하다고 봤습니다. 제가 공부하려고 만든 AI 용어 모음에서 모르는 용어를 확인하실 수 있습니다.

대규모 언어 모델(LLM)이란 무엇인가

대규모 언어 모델(LLM)은 방대한 양의 텍스트 데이터를 사전 학습해 텍스트를 이해하고 생성하는 인공지능 언어 모델입니다. 대규모 언어 모델을 단순하게 표현하면 입력된 문맥을 파악해서 다음 단어를 예측해서 보여주는 확률 기반의 생성기라고도 할 수 있습니다. LLM은 자연어 처리(NLP : Natural Language Processing) 작업에 많이 사용되고 텍스트 생성, 분류, 번역, 질의응답 등 다양한 작업에 사용 가능합니다.

대규모 언어모델을 만들기 위해서는 수십억개에서 수백억개의 대규모 텍스트 데이터와 GPU로 대표되는 대규모 컴퓨팅 자원이 필요합니다. LLM은구글이 만든 트랜스포머(Transformer)라는 딥러닝 모델을 대부분 사용하고 있습니다.

언어 모델(language model)은 주어진 텍스트를 기반으로 다음에 어떤 단어가 나올지 예측하는 것을 말합니다. 검색엔진에 검색어를 입력하면 검색어 뒤에 자동으로 단어를 제안하는 것이 대표적 예시입니다.

대규모 언어 모델(LLM)의 작동 원리

아래 이미지는 대규모 LLM 모델의 아키텍처입니다. 아래 그림은 LLM이 문장을 처리하는 단계별 구조(토큰화 → 임베딩 → Attention → 생성)와, 이를 효율적으로 학습하는 방법을 설명합니다. 즉, LLM이 왜 텍스트를 이해하고 사람처럼 답할 수 있는지, 그 내부 원리를 쉽고 체계적으로 알려줍니다.

아래 과정은 인터넷에 있는 ▲ 방대한 데이터를 수집하고 ▲ 중복된 데이터 제거, 포맷 통일 등으로 정제하는 과정이 생략됐습니다.

대규모 언어 모델(LLM)의 작동 원리
소스 : https://www.geeksforgeeks.org/artificial-intelligence/exploring-the-technical-architecture-behind-large-language-models/
대규모 언어 모델(LLM)의 작동 원리


입력 (Input Text)

  • 문장을 입력하면 아래의 단계를 거쳐 의미를 이해하고 다음 단어를 예측할 수 있음
  • 예제 : AI란 무엇인가?


토큰화 (Tokenization)

  • 입력 문장을 토큰(Token) 단위로 쪼갬
  • 단어, 음절, 기호 단위로 나눠지고 각각 고유 번호로 변환
  • 예제 : AI란 무엇인가 → [321, 42, 771, 99] (숫자로 된 토큰 ID)
※ 토큰이란?
– 문장을 컴퓨터가 처리할 수 있게 잘게 나눈 조각
– AI란 무엇인가?”라는 문장을 컴퓨터는 컴퓨터는 → "AI", "란", "무", "엇", "인가", "?" 이라고 자름. 이들 각각을 토큰이라고 부름

임베딩 레이어 (Embedding Layer)

  • 단어 임베딩 : 각 토큰을 벡터(숫자 배열) 로 변환하며 이 과정은 텍스트 → 숫자 공간 표현으로 바꾸는 핵심 단계
  • 예제 : AI → [0.25, -0.13, 0.82, …]
  • 위치 임베딩(Positional Encoding) : 트랜스포머가 토큰의 순서를 이해하지 못하기 때문에 위치 임베딩을 단어 임베딩에 추가해 모델에 문장의 토큰 위치에 대한 정보를 제공함(기술적으로는 트랜스포머 구조 자체가 단어 간 순서를 고려하는 기능이 없기 때문에 위치 정보를 벡터에 더해줘야 문장의 구조를 이해할 수 있음)

Transformer Blocks

  • 트랜스포머 구조는 병렬 처리에 강함 → 학습 속도 빠름
  • 대형 모델(GPT‑4, BERT, PaLM 등)은 수십억~수조 개 파라미터로 매우 정교한 언어 이해와 생성이 가능함
  • Self-Attention을 여러 층으로 쌓아 더욱 복잡한 문맥까지 이해 → 문장이 길거나 문법이 복잡해도 처리 가능
  • 병렬 처리가 가능해 학습 속도와 성능이 뛰어남 → 기존 RNN보다 빠르고 정확함
  • Self-Attention → 피드포워드 연산 → 반복 → 문맥 학습

Self-Attention

  • 각 단어가 문장 내 다른 단어들과 얼마나 관련 있는지 계산
  • 핵심 단어에 집중하도록 파리미 가중치(parameter)를 조정
  • 예제 : AI란 무엇인가요?”에서 “AI”와 “무엇”의 관계를 강조
  • 다중 헤드(Multi-head Attention)는 더 풍부한 관계 학습이 가능하도록 여러 개의 Self-Attention을 병렬 처리하는 것을 의미함. 더 풍부한 관계 학습을 가능하게 함

피드포워드 네트워크 (FFN)

  • Self-Attention 결과를 받아서 복합한 계산과 변형을 수행
  • 신경망 여러 층을 통과하며 정보를 정교하게 처리함
  • 이런 블록을 여러 층 쌓으면, 문장의 맥 또는 복잡한 문법까지 이해
  • 여러 뉴런을 통과시키며 비선형 처리를 함

출력 생성 (Output Layer)

  • 최종 결과 벡터를 바탕으로 다음에 올 단어의 확률을 계산
  • 확률이 가장 높은 단어를 선택해 문장을 생성해 나가는 구조

학습은 어떻게 이뤄지는가(Training & Loss Optimization)

  • 모델이 매번 예측한 단어와 실제 정답을 비교해 정답과의 차이(Loss)를 계산
  • 이 Loss를 최소화하도록 모델 내부의 수많은 파라미터(가중치)를 조정(학습)함
  • 예: “AI란 무엇” → 다음 단어가 “인가”일 확률을 예측
  • 이 과정을 수억~수십억 개의 문장에 대해 반복하면서 언어를 이해하고 생성하는 능력을 키움

[참고] 사전학습(Pretraining)과 파인튜닝(Fine-Tuning)

대규모 언어 모델은 먼저 인터넷, 책, 뉴스 기사 등 방대한 텍스트 데이터를 기반으로 사전 학습(pretraining)을 진행합니다. 이 단계에서는 특정한 작업 목적 없이, 주어진 문맥에서 다음 단어를 예측하는 훈련을 수십억 번 반복하며 언어의 구조와 상식을 익히게 됩니다

이렇게 만들어진 기초 모델은 이후 질문 응답, 요약, 번역 등 특정 작업에 맞게 추가 학습(fine-tuning)을 진행합니다. 이 과정을 거치면, 모델은 일반적인 언어 이해 능력에 더해 실제 활용 가능한 응답 능력까지 갖추게 됩니다

사전 학습과 파인튜닝 모두, 앞에서 설명한 LLM 구조도와 같은 처리 과정을 반복하며 학습이 진행됩니다 (끝)

관련 포스팅

댓글 남기기