피드로 돌아가기
Dev.toAI/ML
원문 읽기
벡터 임베딩과 유사도 측정 방식을 이해하면 의미 기반 검색 시스템의 기초를 다질 수 있다
AWS Vector Databases Part 1: Embeddings, Dimensions & Similarity
AI 요약
Context
키워드 기반 검색은 표현이 다르면 관련 내용을 찾지 못하는 한계가 있다. '로그인 정보 변경'과 '비밀번호 초기화'는 같은 의도지만 단어가 달라 검색이 실패한다.
Technical Solution
- 텍스트를 숫자 벡터로 변환하여 유사한 의미가 가까운 숫자 배열이 되도록 한다
- 텍스트를 토큰화하고 신경망 모델(Titan Text Embeddings V2)을 통과시켜 벡터를 생성한다
- 차원 수는 정확도와 저장 비용, 검색 속도 사이의 트레이드오프를 결정한다
- 거리 측정 방식으로 코사인 유사도, 유클리드 거리, 내적을 제공한다
- 코사인 유사도는 벡터의 방향(의미)을 비교하므로 짧은 질문과 긴 문서의 매칭에 적합하다
Impact
Titan V2의 유연한 차원 기능을 활용하면 1024차원에서 256차원으로 축소 시 저장 비용이 최대 4배 감소하고 검색 속도가 빨라지며 정확도 손실은 미미하다.
Key Takeaway
텍스트 기반 RAG 시스템에서는 벡터 길이의 차이(문서 길이)를 무시하고 의미만 비교하는 코사인 유사도가 표준 선택이다.
실천 포인트
Amazon Aurora pgvector, OpenSearch, S3 Vectors 환경에서 Titan Text Embeddings V2로 인코딩 시 코사인 유사도를 거리 측정 방식으로 적용하면 짧은 사용자 질문과 긴 도큐먼트가 의미적으로 정확히 매칭된다