PART 3 · 강의 2/4

임베딩과 벡터 공간

단어를 숫자로, 의미를 거리로 — LLM이 언어를 이해하는 방법입니다.

01

임베딩(Embedding)이란?

단어를 숫자 벡터로 변환하기

컴퓨터는 텍스트를 직접 이해할 수 없습니다. 임베딩(Embedding)은 단어나 토큰을 의미를 담은 숫자 벡터로 변환하는 과정입니다.

"고양이"
[0.21, -0.45, 0.78, 0.12, -0.33, 0.67, ...]
(총 1,536개의 숫자)
📌 임베딩의 핵심 특성
  • 각 토큰이 고차원 벡터(수백~수천 개의 숫자)로 표현됨
  • 의미가 비슷한 단어는 벡터 공간에서 가까이 위치
  • 벡터 간 거리각도로 의미적 유사도 측정 가능
  • 학습을 통해 자동으로 의미 관계를 학습
02

벡터 공간에서의 단어

비슷한 단어는 가까이 모여있다

실제로는 수천 차원이지만, 2D로 단순화하면...

고양이
강아지
토끼
자동차
버스
트럭
사과
바나나
오렌지

동물   탈것   과일

💡 핵심 직관

"고양이"와 "강아지"는 둘 다 동물이므로 벡터 공간에서 가깝게 위치합니다. 반면 "고양이"와 "자동차"는 관련이 없으므로 멀리 떨어져 있습니다.

03

의미적 유사도 측정

코사인 유사도(Cosine Similarity)

두 벡터 사이의 각도를 측정하여 유사도를 계산합니다. 값이 1에 가까울수록 유사, 0에 가까울수록 무관합니다.

코사인 유사도 예시

여왕
0.92
고양이 강아지
0.87
컴퓨터 노트북
0.85
사과 자동차
0.15
📌 벡터 연산의 마법
  • King - Man + Woman ≈ Queen (유명한 Word2Vec 예시)
  • 벡터 연산으로 의미적 관계를 표현할 수 있음
  • 이런 특성 덕분에 유추(analogy) 문제 해결 가능
04

임베딩 차원(Dimension)

몇 개의 숫자로 표현하는가?

임베딩 차원은 각 토큰을 표현하는 숫자의 개수입니다. 차원이 높을수록 더 세밀한 의미를 담을 수 있지만, 연산 비용도 증가합니다.

768
BERT
기본 모델
1,536
GPT-3 Ada
OpenAI 임베딩
3,072
text-embedding-3-large
최신 OpenAI
12,288
GPT-4
내부 표현
💡 차원이 높으면 좋은가?

항상 그렇지는 않습니다. 차원이 너무 높으면 과적합(overfitting) 위험, 저장 공간과 연산 비용 증가. 용도에 맞는 적절한 차원 선택이 중요합니다.

05

문맥 기반 임베딩

LLM의 핵심: 같은 단어도 문맥에 따라 다르게

과거의 Word2Vec, GloVe는 단어마다 하나의 고정된 벡터를 가졌습니다. 하지만 LLM은 문맥에 따라 다른 벡터를 생성합니다.

"bank"의 문맥별 의미

"I need to go to the bank to deposit money."
→ bank = 은행 (금융 기관)
"We had a picnic on the river bank."
→ bank = 강둑 (땅)

📚 정적 임베딩 (과거)

Word2Vec, GloVe
"bank" = 항상 같은 벡터
문맥 무시, 다의어 처리 어려움

🧠 문맥 임베딩 (현재)

BERT, GPT, Transformer 기반
"bank" = 문맥마다 다른 벡터
다의어를 정확히 구분

06

임베딩의 실제 활용

RAG, 검색, 추천 시스템의 핵심

🔍
시맨틱 검색
키워드가 아닌 의미로 검색. "큰 고양이" 검색 시 "사자"도 찾음.
📚
RAG
질문과 유사한 문서를 찾아 LLM에게 전달. Part 7에서 상세히!
🎯
추천 시스템
사용자 취향과 유사한 콘텐츠를 벡터로 매칭.
💾 벡터 데이터베이스

대량의 임베딩을 저장하고 빠르게 유사도 검색을 하기 위해 벡터 데이터베이스(Pinecone, Weaviate, Chroma 등)를 사용합니다. 이것이 RAG 시스템의 핵심 인프라입니다.

SUMMARY

핵심 요약

  • 임베딩은 단어/토큰을 의미를 담은 숫자 벡터로 변환
  • 의미가 비슷한 단어는 벡터 공간에서 가까이 위치
  • 코사인 유사도로 두 벡터의 의미적 유사성 측정
  • LLM은 문맥 기반 임베딩으로 다의어도 정확히 처리
  • 임베딩은 RAG, 시맨틱 검색, 추천 등의 핵심 기술