임베딩 Embedding
임베딩은 단어·문장·이미지 같은 데이터를 숫자 목록(벡터)으로 바꿔서, 뜻이 비슷한 것끼리 가까이 놓이도록 만든 표현이다. 컴퓨터는 이 숫자 사이의 거리를 재서 '얼마나 비슷한지'를 판단한다.
어떻게 작동하나
임베딩 모델은 입력된 글이나 이미지를 읽고, 그 뜻을 담은 숫자 목록(벡터)을 내놓습니다. 학습 과정에서 뜻이 비슷한 데이터는 비슷한 숫자를, 뜻이 다른 데이터는 멀리 떨어진 숫자를 갖도록 조정됩니다. 그래서 두 벡터가 얼마나 같은 방향을 가리키는지(코사인 유사도 등)를 계산하면 의미가 얼마나 가까운지 알 수 있습니다. 예를 들어 '강아지 사료 추천'과 '반려견 먹이 고르는 법'은 단어가 달라도 가까운 벡터가 됩니다.
어떻게 발전해 왔나
처음에는 단어 하나하나를 벡터로 나타내는 '단어 임베딩'이 자연어 처리에서 널리 쓰였습니다. 2019년 Reimers와 Gurevych의 Sentence-BERT는 BERT라는 언어 모델을 쌍둥이 구조로 고쳐, 문장 전체를 바로 비교할 수 있는 벡터로 만들었습니다. 덕분에 비슷한 문장을 찾는 일이 훨씬 빨라졌습니다. 2020년 Karpukhin 등의 Dense Passage Retrieval(DPR)은 키워드 일치 대신 임베딩만으로 질문에 맞는 문단을 찾을 수 있고, 기존 키워드 검색(BM25)보다 더 잘 찾는다는 것을 보였습니다. 2022년 Muennighoff 등의 MTEB는 여러 작업과 많은 언어에 걸쳐 임베딩 모델을 한꺼번에 비교하는 벤치마크를 만들었고, 모든 작업에서 늘 앞서는 방법은 아직 없다는 점을 확인했습니다.
왜 중요한가
임베딩은 '뜻으로 찾기'를 가능하게 하는 기본 재료입니다. 검색어와 정확히 같은 단어가 없어도 의미가 맞는 문서를 찾는 시맨틱 검색, 비슷한 상품을 보여 주는 추천, 비슷한 글끼리 묶는 분류에 두루 쓰입니다. 특히 LLM이 외부 문서를 찾아 참고하며 답하는 RAG에서는 질문과 문서를 임베딩으로 바꿔 관련 문서를 골라내는 단계가 핵심입니다. 요즘은 글뿐 아니라 이미지·오디오·영상을 하나의 공간에 함께 담는 멀티모달 임베딩도 나오고 있습니다.
알아 둘 점
임베딩은 '비슷함'을 잘 잡아내지만, 정확한 숫자나 고유명사, 부정 표현('~가 아닌') 같은 세부 사항은 놓칠 수 있습니다. 그래서 실제 서비스에서는 키워드 검색과 섞는 하이브리드 검색이나, 결과를 다시 정렬하는 리랭커를 함께 쓰는 경우가 많습니다. 또 임베딩 모델마다 벡터 형태가 달라서, 모델을 바꾸면 저장해 둔 벡터를 다시 만들어야 합니다. 어떤 모델이 좋은지는 작업과 언어에 따라 달라지므로 자기 데이터로 직접 시험해 보는 것이 좋습니다.
예시
이 사이트에서도 다룬 'Google, 텍스트·이미지·오디오·비디오를 하나의 벡터 공간에 담는 오픈 임베딩 모델 EmbeddingGemma 2 공개' 소식이 좋은 예입니다. 이런 모델을 쓰면 글로 '바닷가 노을'이라고 검색해도 그와 비슷한 사진이나 영상을 함께 찾을 수 있습니다. 회사 내부 문서 검색이나 챗봇에서도 문서를 미리 임베딩으로 바꿔 벡터 DB에 저장해 두고, 사용자의 질문이 들어오면 가장 가까운 문서를 찾아 LLM에 건네는 방식으로 많이 쓰입니다.
이 사이트에서 나온 사례
- 브리핑 Google, 텍스트·이미지·오디오·비디오를 하나의 벡터 공간에 담는 오픈 임베딩 모델 'EmbeddingGemma 2' 공개 2026-10-07
- 브리핑 Ollama v0.40.0, Apple Silicon에서 MLX 런타임 기본 적용 2026-10-07
- 논문 ALoDLM: 토큰마다 반복 깊이를 조절하는 루프형 확산 언어 모델 2026-10-07