벡터 점수는 확률이 아니다: 하이브리드 검색을 위한 우도비 보정

아무것도 의미하지 않는 점수
사용자가 "transformer architecture"를 검색하고 시스템이 두 가지 신호를 반환합니다: BM25 점수 14.7과 코사인 유사도 0.83. 어떤 문서가 더 적합한가?
이 질문에는 답할 수 없습니다. BM25 14.7은 단어 빈도 통계에서 도출된 비유계 양의 실수입니다. 코사인 유사도 0.83은 임베딩 벡터 간의 기하학적 각도입니다. 근본적으로 다른 척도에서 근본적으로 다른 양을 측정합니다. 이 둘을 결합하려면 어느 점수도 제공하지 않는 정보가 필요합니다: 문서가 실제로 적합할 확률.
BM25에 대해서는 Bayesian BM25로 이 문제를 해결했습니다. 시그모이드 우도가 베이지안 추론으로 BM25 점수를 보정된 확률 로 변환하며, Robertson의 확률 순위 원리를 50년 만에 완성합니다.
하지만 벡터 점수는 보정되지 않은 상태로 남아 있었습니다. 실무에서는 점수 크기를 완전히 버리는 역순위 융합(RRF)이나, 확률의 외양만 만들어내는 min-max 정규화 같은 임시 방편에 의존합니다.
우리는 원칙적인 해법을 제시합니다: ANN 인덱스가 이미 추가 비용 없이 계산하는 분포 통계에서 적합성 확률을 도출하는 우도비 보정.
정규화가 실패하는 이유
직관적인 접근은 벡터 점수를 어떤 단조 함수로 에 매핑하는 것입니다. Min-max 스케일링, 아크탄젠트, 선형 리스케일링 모두 확률처럼 보이는 숫자를 생성합니다. 하지만 확률이 아닙니다.
근본적인 문제는 지역 밀도 맹목성입니다. 쿼리로부터 코사인 거리 0.3인 문서를 생각해 봅시다. 많은 문서가 가까이 밀집된 조밀한 영역에서 이 거리는 특별하지 않습니다. 같은 거리라도 희소한 영역에서는 강한 적합성 신호입니다. 0.3을 맥락과 무관하게 동일한 "확률"로 매핑하는 고정 변환은 잘못된 것입니다.
이것은 사소한 부정확함이 아닙니다. 구조적 오류입니다. 거리의 적합성 확률은 그 거리가 지역 거리 분포와 어떻게 비교되는지에 달려 있으며, 이는 쿼리별, 코퍼스 영역별, 임베딩 모델별로 달라집니다. 어떤 전역 매핑 함수도 이를 포착할 수 없습니다.
우도비 프레임워크
올바른 정식화는 벡터 보정을 관측된 거리에 대한 베이지안 추론으로 취급합니다. 쿼리와 문서 간의 거리 가 주어지면, 베이즈 정리에 의해:
여기서 는 적합 문서 간 거리 밀도, 는 전체 코퍼스에 대한 밀도, 는 기저율 사전 확률입니다.
로그 오즈로 변환하면:
벡터 증거는 로그 밀도비 — 이 거리가 일반 코퍼스에 비해 적합 문서 사이에서 얼마나 더 가능성 있는지의 로그값입니다. 이것은 텍스트 검색에서의 IDF와 정확히 동일한 수학적 패턴입니다:
IDF는 역색인에서 도출된 단어 출현 분포에 대한 로그 우도비입니다. 벡터 보정은 ANN 인덱스에서 도출된 거리 분포에 대한 로그 우도비입니다. 둘은 동일한 추상 패턴의 두 표현입니다.
인덱스가 이미 알고 있다
계산 비용에 대한 우아한 해결: ANN 인덱스가 이미 보정에 필요한 통계를 계산합니다. 이 통계들은 어차피 수행해야 하는 연산의 부산물입니다.
HNSW 인덱스 구축과 검색 순회 과정에서 자연스럽게 얻을 수 있는 것들:
- 전역 거리 분포: 레이어별 간선 거리의 평균과 분산이 코퍼스 전체 배경 분포 를 특성화합니다.
- 검색 궤적 거리: 탐욕적 검색 중 방문한 노드까지의 거리 시퀀스가 지역 밀도 신호를 제공합니다.
- 이웃 통계: 결과 레이어의 거리 분포가 쿼리 주변 지역 영역을 특성화합니다.
- 밀도 프록시로서의 홉 수: 검색 중 거리 계산 횟수가 지역 밀도와 상관 — 홉이 많을수록 더 희소한 영역.
HNSW 인덱스는 근사 최근접 이웃 검색을 위한 단순한 알고리즘적 구조가 아닙니다. 코퍼스의 거리 분포를 인코딩하는 암묵적 통계 모델입니다. 보정은 이 암묵적 지식을 추출하여 명시적 적합성 확률로 변환하는 행위입니다.
순환의 해소
미묘한 문제가 남습니다: 를 추정하려면 어떤 문서가 적합한지 알아야 합니다 — 검색이 풀려는 바로 그 문제입니다. 이것은 순환적입니다.
해결책은 교차 모달 조건부 독립을 활용합니다. 진정한 적합성이 주어졌을 때 벡터 거리와 조건부 독립인 외부 적합성 신호(예: BM25 점수)가 있다면, 이를 사용하여 순환을 끊을 수 있습니다:
BM25에서 도출된 적합성 확률이 지역 분포의 커널 밀도 추정에서 중요도 가중치가 됩니다:
BM25 적합성 확률이 높은 문서가 지역 밀도 추정에 더 많이 기여합니다. 가정은 합리적입니다: BM25는 어휘적 매칭을, 벡터 거리는 의미적 유사성을 포착합니다 — 문서의 진정한 적합 여부가 주어지면 조건부 독립인 적합성의 서로 다른 측면입니다.
외부 신호가 없는 경우, 대안 전략이 적용됩니다: 커널 밀도 추정을 통한 거리 갭 탐지, 셀 인구에서 도출한 인덱스 기반 밀도 사전 확률, 또는 독립 임베딩 모델 간의 교차 보정.
로그 오즈 공간에서의 가산적 융합
BM25와 벡터 점수가 모두 로그 우도비로 보정되면, 융합은 덧셈이 됩니다:
각 신호가 자체 인덱스를 통해 독립적으로 보정된 고유한 증거 항을 기여합니다. 새 신호를 추가할 때 가중치를 재조정할 필요가 없습니다. 임시적 정규화 없습니다. RRF 없습니다. 베이지안 증거 축적만 있습니다.
이것은 두 신호를 넘어 확장됩니다. 조건부 독립인 모든 적합성 신호 — 클릭 데이터, 지식 그래프 근접성, 그래프 중심성, 시간적 최신성 — 가 로그 오즈 합에 단순히 더해지는 일급 증거 항이 됩니다.
구조적 이중성
가장 깊은 통찰은 기법이 아니라 통합입니다. 역색인에서의 IDF와 ANN 인덱스에서의 밀도비는 두 가지 다른 아이디어가 아닙니다. 자체 인덱스 통계에 대한 로그 우도비라는 동일한 수학적 패턴의 두 표현입니다.
| 패러다임 | 인덱스 | 통계 | 증거 |
|---|---|---|---|
| 텍스트 (BM25) | 역색인 | 문서 빈도 | |
| 벡터 | ANN 인덱스 (HNSW) | 거리 밀도 |
두 인덱스 모두 알고리즘적 이유 — 빠른 검색 — 를 위해 존재합니다. 두 인덱스 모두 각자의 신호 공간에 대한 통계 모델을 암묵적으로 인코딩합니다. 보정은 이 암묵적 모델을 명시적으로 만드는 행위입니다.
이 이중성에는 더 깊은 결과가 있습니다: 이론적 진행의 다음 단계에서, 복수의 보정된 확률 신호를 로그 오즈 결합으로 합성하면 피드포워드 신경망의 정확한 계산 그래프가 산출됨을 보여줍니다 — 설계가 아닌 제1원리에서 도출된 것입니다.
실무에서의 의미
하이브리드 검색이 필요한 시스템 — 그리고 점점 더 많은 검색 시스템이 그렇습니다 — 에서 벡터 점수 보정은 다음을 제공합니다:
- RRF와 임시적 정규화를 베이지안 증거로 대체하는 원칙적 융합
- 보정 통계가 인덱스 자체에서 나오므로 추가 비용 없음
- 대역폭 선택 외에 하이퍼파라미터 없음 (Silverman 규칙과 차원 인식 스케일링을 따름)
- 임의의 수의 조건부 독립 신호가 가산적으로 결합되는 합성 가능성
- 텍스트와 벡터 검색 간의 간극을 닫고 둘을 동일한 확률적 프레임워크 아래 통합하는 이론적 완전성
문서가 벡터 유사도에 대해 적합할 확률은 선택하는 숫자가 아닙니다. 도출하는 양입니다 — 그 문서를 찾기 위해 이미 구축한 바로 그 인덱스에서.