전체 그래프
Foundational Concepts

Embedding

ai-mlconcept

상위: AI & ML

단어, 문장, 문서 등 텍스트 데이터를 컴퓨터가 이해하고 처리할 수 있는 숫자 벡터 공간으로 변환하는 기술. 의미적 유사성을 벡터 공간에서의 거리로 표현.

임베딩의 목적

  • 의미 표현: 텍스트의 의미를 숫자로 표현하여 컴퓨터가 이해하고 연산할 수 있도록 함.
  • 유사도 측정: 의미적으로 유사한 단어나 문서는 벡터 공간에서 가깝게 위치하도록 학습.
  • 차원 축소: 고차원의 희소한 텍스트 데이터를 저차원의 밀집 벡터로 변환하여 효율적인 처리 가능.

임베딩의 종류

정적 임베딩 (Static Embeddings)

단어가 어떤 문맥에 있든 항상 동일한 벡터 값을 가짐.

  • Word2Vec: 단어의 주변 단어를 예측하는 방식으로 학습.
  • GloVe: 단어의 동시 발생 통계를 기반으로 학습.
  • FastText: 단어를 문자 단위(n-gram)로 분해하여 학습, OOV(Out-Of-Vocabulary) 문제에 강함.

문맥적 임베딩 (Contextual Embeddings)

단어가 사용된 문맥에 따라 다른 벡터 값을 가짐. 현대 LLM의 핵심 기술.

  • ELMo: 양방향 LSTM을 사용하여 문맥에 따른 단어 표현 학습.
  • BERT: TransformerEncoder 부분을 활용하여 양방향 문맥을 학습.
  • GPT: TransformerDecoder 부분을 활용하여 단방향 문맥을 학습.

임베딩의 활용

  • 유사도 검색: Vector Database에서 유사한 문서나 정보를 찾는 데 사용 (예: RAG의 검색 단계).
  • 텍스트 분류: 스팸 메일 분류, 감성 분석 등.
  • 군집화 (Clustering): 유사한 문서들을 그룹화.
  • 추천 시스템: 사용자 선호도와 아이템 특징을 벡터로 표현하여 추천.