‘BERT’, ‘CLIP’로 입력 데이터를 고차원 벡터로 임베딩
HNSW, IVF, PQ 등 벡터 간 유사도 따른 검색 알고리즘 활용
멀티모달 통해 다양한 비정형 데이터, 동일 벡터 공간에 통합
AI 시스템과의 통합과 분산 학습 위해 RAG, 연합학습도 구사
[애플경제 전윤미 기자] 기존 관계형 데이터베이스(DB)는 데이터 간의 의미적 유사성을 바탕으로 주로 정형화된 데이터를 저장하는 방식이다. 그러면 비정형의 해석이 쉽지 않은 맥락의 콘텐츠는 어떨까. 이를 위해 새삼 벡터 기반의 ‘백터 DB’의 중요성이 날로 강조되고 있다. 정형화되지 않은 임의적이고 불투명한 해석의 여지가 많은 데이터들이 끊임없이 늘어나고 있기 때문이다.
정형화된 데이터 중심 ‘관계형 DB와 구분
이는 비정형의 데이터를 저장하는 특화형 저장 기술이기도 하다. 특히 전문가들은 ‘고차원 임베딩 벡터 기반의 유사도 검색’을 장점이자 특성으로 간주하고 있다. 이는 관계형 데이터베이스와는 다르게 데이터 간에 유사한 의미적 상관성을 기반으로 검색할 수 있다. 정형화된 데이터를 중심으로 인덱싱(목록화)과 질의를 하는 방식이다. 반면에 ‘벡터 DB’는 유사도 기준 검색, 의미 기반 검색 등 비정형 데이터 처리에 최적화되어 있다.
이에 대해 백정열 SK주식회사 C&C는 “텍스트나, 이미지, 오디오 등 주어진 데이터를 ‘벡터 임베딩’을 통해 고차원 공간에 매핑한 후, 그중 ‘최근접 이웃’(nearest neighbor), 즉 가장 의미적 연관성이 큰 데이터를 물색하는 방식”이라고 설명했다.
최근 이에 관한 보고서를 펴내기도 한 백 C&C는 “또한 벡터 DB는 유사도(類似度)의 정도를 파악, 검색하는 특화형 데이터베이스”라며 “특히, LLM 기반의 검색증강생성(RAG) 아키텍처에서 실시간으로 컨텍스트를 검색할 수 있다.”고 덧붙였다.
그런 가운데 벡터 DB 시장은 빠른 성장세를 보이고 있다. ‘마켓샌드마켓츠’ 보고서에 따르면, 글로벌 Vector DB 시장은 2022년엔 약 3억1천만 달러에 불과했다. 그러나 5년 후인 2027년까지 연평균 25.4%의 성장률을 보일 것으로 전망된다
BERT, CLIP 등 임베딩 기술 다양
여기서 ‘임베딩 기술’은 비정형 데이터를 (상호 간 의미의 유사성을 파악할 수 있도록) 고차원 벡터로 변환하는 기술이다. 그야말로 ‘벡터 DB’에서 핵심적인 역할을 한다. 이는 보통 텍스트 분류, 구문 분석 등이 가능한 모델을 통해 시도한다 대표적으로 오픈AI가 개발한 ‘Ada’, 트랜스포머 기반의 쌍방향 인코더 기술인 구글의 ‘BERT’, 상충되는 언어-이미지 사전 학습을 위한 오픈AI의 CLIP 등이 그런 경우다.
또한 메타가 개발한 음성 데이터 학습 모델인 ‘wav2vec’도 이에 해당한다. 이 역시 트랜스포머 기반의 사전학습 모델이다. 이 밖에도 특정 산업 도메인에 맞춰 파인튜닝되거나, 자체 학습된 임베딩 모델이 적용되기도 한다.
그 중 ‘BERT’는 구글이 개발한 사전학습 기반 자연어 처리 모델이다. 이는 쌍방향으로 문장의 문맥을 동시에 이해한 후, 정교하게 의미를 분석할 수 있다. 이는 주로 텍스트 데이터를 임베딩할 때 활용된다.
오픈AI의 CLIP은 일종의 멀티모달 모델이다. 이미지와 텍스트를 같은 임베딩 공간에 매핑하는 방식으로 훈련되었다. 이를 통해, 이미지 설명을 생성하고, 텍스트-이미지 매칭 등 다양한 ‘크로스 모달’ 작업을 한다.
‘근사 최근접 이웃 검색’ 기술 등
또한 고차원 벡터 간 (의미의) 유사도를 검색하기 위한 알고리즘도 활용되고 있다. 대표적으로 위계적 탐색 기능의 ‘HNSW’, 특정 파일을 여러 개의 색인으로 만들고 항목별 특성에 맞게 작업하도록 구성한 ‘역파일 인덱스’(IVF) 등이 있다. 또한 프로덕트 양자화(PQ, Product Quantization), 구글의 ScaNN 등의 ANN(근사 최근접 이웃 검색) 알고리즘이 사용된다. 이는 검색 속도와 정확도 간의 균형을 고려한 알고리즘이다. 수십억 개 벡터에서도 수 밀리세컨드(ms) 내에 응답이 가능하도록 최적화된다.
‘멀티모달 벡터 인덱싱’도 ‘벡터 DB’를 위한 중요한 기술이다. 이는 텍스트, 이미지, 음성 등 이질적인 데이터를 동일한 벡터 공간에서 통합 처리하기 위한 기술이다. 이는 ‘크로스-모달 검색’이나 ‘공유 잠재 공간’ 등의 방식이 두로 활용된다.
AI/ML 워크플로우 통합도 필요하다. 오라클의 ‘DB 23c’와 ‘파인콘’ 등은 벡터 검색을 AI 모델과 연계하고 있다. RAG 기반 시스템이나, 연합학습 환경에서 데이터 프라이버시를 유지한 채 학습을 지원할 수 있다.
오라클 DB의 비정형 데이터 임베딩 사례
이같은 오라클 DB에선 우선 비정형 데이터에서 벡터 임베딩을 생성한다. 그런 다음 그 결과를 벡터 임베딩과 함께, 관련 비정형 데이터를 비즈니스 데이터와 함께 데이터베이스에 저장한다. 이후 벡터 임베딩에 벡터 인덱스를 만든다. 그런 다음 ‘오라클 AI’ 벡터의 검색 네이티브 SQL 연산을 사용, 유사성을 관계형 검색과 결합해 데이터를 검색한다.
그 후 검색 결과를 통해 프롬프트를 생성하고, 이를 LLM으로 전송, 완전한 RAG 추론 워크플로우를 진행하게 된다.
결론적으로 임베딩의 경우는 ‘BERT’, ‘CLIP’을 통해 입력된 데이터를 고차원 벡터로 변환한다. 검색할 때 벡터간 유사도를 바탕으로 검색 알고리즘을 사용하기 위해선 HNSW, IVF, PQ를 활용한다. 또한 멀티모달을 사용할 때 다양한 유형의 데이터를 동일 벡터 공간에 통합한다. AI 시스템과의 통합과 분산 학습을 지원하기 위해선 RAG, 연합학습 기술을 활용한다.
