← soulhn.github.io

Log

만들고 배운 것을 기록합니다.

· 학습 로그

임베딩 — 문장에 좌표를 주는 일

문장을 의미의 좌표(숫자 벡터)로 바꾸면, 단어가 달라도 뜻이 비슷한 문장을 찾을 수 있다.

#용어#RAG

한 줄 정의

임베딩(embedding)은 문장을 의미의 좌표(숫자 벡터)로 바꾸는 것이다. 뜻이 비슷한 문장일수록 좌표 공간에서 가까운 곳에 놓인다.

내 말로

도서관 사서가 책을 제목이 아니라 주제로 꽂는 것. “블로그는 뭘로 만들었어?”라는 질문에 ‘Astro’라는 단어가 없어도 관련 글이 찾아지는 이유는, 둘이 같은 서가(비슷한 좌표)에 있기 때문이다. 키워드 검색이 글자를 맞추는 것이라면, 임베딩 검색은 뜻을 맞춘다.

어디서 만났나

Build 03 — ask-soulhn에서 글 조각 10개를 각각 1,536개의 숫자로 이루어진 좌표로 바꿨다(비용은 1원 미만). 질문도 같은 방식으로 좌표화한 뒤 가장 가까운 조각을 찾았다. 이 “가까움”을 재는 자가 코사인 유사도다. 조각이 너무 크면 여러 주제가 섞여 좌표가 흐려진다는 것도 직접 겪었다: 검색 품질은 임베딩 모델보다 재료 손질(청킹)에서 먼저 갈린다.

더 파볼 것

  • 임베딩 모델마다 한국어 성능이 다르다. 언젠가 비교 실험
  • 유사도 문턱값(지금은 0.35)을 어떻게 튜닝하나
  • 청킹 — 이 글 다음 용어 카드 후보

퀴즈

읽은 내용, 세 문제로 확인해보세요.

1. 임베딩의 주된 목적은 무엇인가?

2. 임베딩 검색이 키워드 검색과 가장 다른 점은 무엇인가?

3. 임베딩에서 '가까움'은 어떤 방법으로 측정되나?