관리 메뉴

피터의 개발이야기

[AI] Embedding 기초 — Transformer가 만든 의미를 저장하는 방법 본문

AI/AI이론 | 공부

[AI] Embedding 기초 — Transformer가 만든 의미를 저장하는 방법

기록하는 백앤드개발자 2026. 2. 5. 02:01
반응형

 

 

[AI] LLM 학습 노트 공개 - Transformer부터 RAG까지, 그리고 운영 가능한 AI 시스템을 향해

 

ㅁ 들어가며

Transformer를 공부하면서 가장 인상 깊었던 점은
  LLM이 언어를 “이해”한다기보다, 의미를 벡터로 변환해 계산한다는 사실이었다.

Attention과 Encoder–Decoder 구조를 따라가다 보니 하나의 질문으로 이어졌다.

 

그렇다면 이 벡터는 모델 안에서만 존재하는 걸까?

Embedding은 바로 그 답이다.

Embedding은 Transformer 내부에서 만들어진 의미를 모델 밖으로 꺼내는 과정이다.

 

즉, 추론용 의미 표현을 저장과 검색이 가능한 형태로 바꾸는 단계다.

 

 

ㅁ Embedding은 기억을 만드는 기술이다

Encoder는 문장을 벡터 공간에서 의미 구조로 압축한다.

   하지만 그 출력은 일시적이다. 추론이 끝나면 사라진다.

 

Embedding은 다르다. 

  문장, 문서, 혹은 토큰을 고정 길이 벡터로 변환해 저장한다.

 

나는 Embedding을 이렇게 이해하게 되었다.

Encoder가 “생각”이라면,
Embedding은 “기억”이다.

 

사람도 글을 읽고 나면 모든 문장을 그대로 외우지 않는다. 대신 요약된 인상을 남긴다.

Embedding도 마찬가지다. 문서 전체를 하나의 벡터로 요약해 의미 좌표 하나로 남긴다.

 

 

ㅁ 좋은 Embedding이란 무엇인가

Embedding의 본질은 단순하다.

  같은 의미는 가까이,
  다른 의미는 멀리.

이 두 가지만 만족하면 된다.

 

그래서 실제 품질은
  모델 크기보다 다음에 더 크게 좌우된다.

  • 어떤 텍스트 단위로 나누었는지 (Chunking)
  • 어떤 유사도 기준을 쓰는지
  • 벡터 차원과 비용을 어떻게 균형 잡았는지

실무에서 느낀 건,

  LLM 성능보다
  Embedding + 검색 설계가 RAG 품질을 더 크게 좌우한다는 점이다.

 

 

ㅁ Vector Similarity는 의미 거리다

Embedding 벡터 자체보다 중요한 건

  그 벡터를 어떻게 비교하느냐다.

  Cosine similarity는 방향을 본다.
  Dot product는 방향과 크기를 함께 본다.

 

L2 distance는 실제 공간 거리를 잰다.

  수학적으로는 다르지만, 개념적으로는 모두 같다.

  “이 두 문장이 얼마나 비슷한가?”

VectorDB는 검색 엔진이 아니다.

  의미 공간을 탐색하는 시스템이다.

질문을 벡터로 바꾸고, 가장 가까운 의미 좌표들을 찾는 구조다.

 

ㅁ 임베딩 모델은 ‘정답’이 아니라 ‘선택’이다

임베딩 모델을 비교해 보면 각각 장단점이 분명하다.

  • API 기반 모델은 빠르게 시작할 수 있지만 비용과 외부 의존이 생긴다.
  • 오픈소스 모델은 자유도가 높지만 인프라 운영 부담이 따른다.
  • 다국어 모델은 범용성이 좋고,
  • 영어 특화 모델은 성능이 더 좋을 수 있다.

중요한 건 “최고 성능”이 아니라,

  내 시스템 조건에 맞는 선택이다.

  • 프라이버시가 중요한가?
  • GPU 인프라가 있는가?
  • 한국어 비중은 얼마나 되는가?
  • 문서 길이는 긴가 짧은가?

Embedding은 모델 문제가 아니라
  아키텍처 문제에 가깝다.

 

 

ㅁ Chunking은 기술이 아니라 의미 설계다

Embedding을 하다 보면 곧 느끼게 된다.

모델보다 Chunking 전략이 더 중요하다는 것을.

  너무 크면 의미가 희석되고,
  너무 작으면 문맥이 깨진다.

  Chunk는 단순 분할이 아니라,

  의미 단위를 어떻게 정의하느냐의 문제다.

 

사람이 문서를 읽을 때 문단 단위로 이해하듯,
  RAG에서도 비슷한 사고가 필요하다.

 

 

ㅁ Transformer와 Embedding의 연결

Week 1에서 배운 Transformer는 실시간 의미 계산기였다.

Embedding은 그 계산 결과를
  영구 저장 가능한 형태로 만든다.

 

그리고 VectorDB
  이 벡터들을 모아 둔 의미 지도다.

정리하면 이렇게 이어진다.

 

의미 생성 (Transformer)
  → 의미 고정 (Embedding)
  → 의미 저장 (VectorDB)
  → 의미 검색 (Retriever)
  → 의미 재해석 (Encoder + Decoder)

이 흐름 위에 RAG가 올라간다.

 

 

ㅁ 마무리

Embedding을 이해했다는 건 벡터 차원을 외웠다는 뜻이 아니다.

의미를 좌표로 바꾸고,
  그 좌표를 다시 활용하는 구조를 이해했다는 뜻이다.

Transformer가 사고 구조라면,
  Embedding은 그 사고를 외부 세계에 남기는 방식이다.

다음 단계에서는
  이 의미 좌표들이 어떻게 검색되고,
  RAG 파이프라인 안에서 다시 LLM으로 돌아오는지를 살펴보려 한다.

 

 

원본 문서들은 계속 LLM 학습 노트에 정리하고, 블로그에는 이렇게 사고 흐름 중심으로 풀어볼 예정이다.

반응형
Comments