벡터 검색은 인공지능(AI) 과 머신러닝(ML) 에서 키워드만 일치시키는 것이 아니라 의미적으로 유사한 항목을 찾는 데 사용되는 강력한 기술입니다. 텍스트 문서, 이미지, 오디오 클립, 사용자 프로필 등의 데이터 요소를 임베딩이라는 숫자 벡터로 표현하는 방식으로 작동합니다. 이러한 임베딩은 데이터의 기본 의미나 특성을 포착합니다. 그런 다음 벡터 검색은 일반적으로 코사인 유사도나 유클리드 거리와 같은 거리 메트릭을 사용해 고차원 공간에서 주어진 쿼리 벡터에 '가장 가까운' 데이터 세트의 벡터를 찾습니다. 이를 통해 기존 방식에 비해 보다 미묘하고 맥락에 맞는 검색이 가능합니다.
벡터 검색의 작동 방식
이 프로세스에는 일반적으로 몇 가지 주요 단계가 포함됩니다:
- 임베딩 생성: 텍스트의 경우 BERT, 이미지의 경우 ViT(Vision Transformers) 와 같은 사전 학습된 딥러닝(DL) 모델을 사용하여 데이터를 고차원 벡터(임베딩)로 변환합니다. 이러한 모델은 방대한 데이터 세트를 학습하여 의미 있는 표현을 학습합니다. 예를 들어 Ultralytics YOLO 모델은 주로 객체 감지로 알려져 있지만 시각적 검색 작업에 적용될 수 있는 특징 벡터를 생성하기도 합니다.
- 인덱싱: 생성된 벡터는 특수 벡터 데이터베이스에 저장되고 색인됩니다. 이러한 데이터베이스는 고차원 데이터를 효율적으로 쿼리하는 데 최적화되어 있으며, 종종 HNSW(계층적 탐색 가능한 작은 세계 ) 또는 ScaNN(확장 가능한 가장 가까운 이웃)과 같은 ANN(근사 근접 이웃) 알고리즘을 사용합니다. ANN 기술은 약간의 정확도와 상당한 속도 향상을 맞바꾸어 대규모 데이터 세트에 대한 벡터 검색을 가능하게 합니다.
- 쿼리: 검색 쿼리(예: 텍스트 구문 또는 이미지)가 생성되면 먼저 동일한 임베딩 모델을 사용하여 동일한 벡터 형식으로 변환됩니다.
- 유사도 계산: 벡터 데이터베이스는 인덱스를 검색하여 선택한 거리 메트릭(예: 코사인 유사도, 유클리드 거리, 도트 곱)을 기반으로 쿼리 벡터와 가장 유사한 벡터를 찾습니다.
- 검색: 검색: 가장 가까운 벡터에 해당하는 항목이 검색 결과로 반환됩니다.
실제 애플리케이션
벡터 검색은 다양한 지능형 애플리케이션을 지원합니다:
- 시맨틱 검색: Google 검색과 같은 검색 엔진이나 내부 지식 베이스를 강화하여 키워드를 넘어 쿼리 의도를 파악하는 것입니다. 예를 들어 '건강한 저녁 식사 아이디어'를 검색하면 해당 단어가 문서에 없더라도 벡터에 포함된 의미가 비슷하기 때문에 샐러드, 구운 닭고기, 퀴노아 볼 레시피가 반환될 수 있습니다.
- 추천 시스템: Netflix나 Spotify와 같은 플랫폼은 벡터 검색을 사용하여 벡터 표현의 유사성을 기반으로 사용자가 이전에 좋아했거나 상호작용한 항목과 유사한 항목(영화, 노래, 제품)을 찾습니다.
- 이미지 인식 및 검색: 시각적으로 유사한 이미지를 찾거나(역 이미지 검색) 전자상거래를 위해 사진에서 제품을 식별합니다. 이는 컴퓨터 비전(CV)의 핵심 애플리케이션 영역입니다.
- 이상 징후 탐지: 정상적인 데이터 벡터 클러스터와 거리가 먼 비정상적인 데이터 포인트(예: 사기 거래, 네트워크 침입)를 식별합니다.
- 자연어 처리(NLP): 질문 답변, 중복 감지, 주제나 감정에 따른 텍스트 데이터 클러스터링과 같은 애플리케이션을 향상시킵니다.
- 검색 증강 생성(RAG): 대규모 언어 모델(LLM) 에서 응답을 생성하기 전에 지식 기반에서 관련 문맥을 검색하여 사실의 정확성을 높이고 환상을 줄이는 데 사용됩니다.
벡터 검색과 키워드 검색
가장 큰 차이점은 유사성이 결정되는 방식에 있습니다:
- 키워드 검색: 반전 색인과 같은 기술을 사용해 정확한 단어나 구를 일치시킵니다. 동의어, 문맥, 언어의 변형으로 인해 어려움을 겪습니다.
- 벡터 검색: 벡터 임베딩에서 포착된 의미적 유사성을 기반으로 검색합니다. 정확한 키워드가 일치하지 않더라도 기본 의도나 개념을 이해하여 관련성 있는 결과를 찾을 수 있습니다.
벡터 검색은 보다 미묘한 결과를 제공하지만, 임베딩 생성 및 색인화를 위해 상당한 계산 리소스가 필요하며, 모델 및 데이터 세트 관리를 위한 Ultralytics HUB와 같은 플랫폼을 통해 효율적으로 관리되는 경우가 많습니다. 최신 시스템에서는 키워드 검색과 벡터 검색(하이브리드 검색)을 결합하여 각 접근 방식의 강점을 활용하는 경우가 많습니다. 모델 배포 및 성능 메트릭과 같은 관련 개념이 이러한 시스템에 어떻게 적용되는지 이해하기 위해 다양한 튜토리얼과 가이드를 살펴볼 수 있습니다.