Blogs & Articles
>
문맥을 이해하고 추론하다: Reranker를 통한 AI 기반 검색 혁신
Blog
January 7, 2025

문맥을 이해하고 추론하다: Reranker를 통한 AI 기반 검색 혁신

* 문맥을 이해하고 추론하는 Reranker에 대해 올거나이즈 RAG팀의 조한준 엔지니어님과 이정훈 팀장님이 설명해 드립니다.

1. 개요

1.1 배경 (Background)

정보 검색 기술의 발전

정보 검색 기술은 데이터의 폭발적 증가와 사용자의 요구 변화에 따라 지속적으로 진화해 왔습니다.

초기에는 단순한 키워드 매칭 방식으로 데이터를 검색했으나, 이는 효율성과 정밀성 면에서 많은 한계를 드러냈습니다.

BM25의 등장

BM25는 TF-IDF와 같은 통계적 기법을 활용해 단어의 중요도를 평가하고, 검색 결과를 효율적으로 정렬하는 방식을 도입했습니다.

그러나 BM25는 단어 빈도와 위치에 초점을 맞추기 때문에 문맥적 의미를 이해하지 못한다는 한계를 가졌습니다.

의미 기반 검색의 부상

딥러닝의 발전과 함께 Bi-Encoder와 같은 벡터화 기반 검색 모델이 도입되면서, 단순 키워드 매칭을 넘어 의미 기반 검색이 가능해졌습니다.

Bi-Encoder는 질의(Query)와 문서를 각각 벡터로 변환해 유사성을 평가하며, 대규모 데이터 처리에 효율적입니다. 그러나, 질의와 문서 간의 세부적 상호작용을 반영하지 못합니다.

고도화된 딥러닝 모델의 등장

이러한 한계를 극복하기 위해 Cross-Encoder와 같은 고도화된 딥러닝 모델이 개발되었습니다. Cross-Encoder는 질의와 문서를 하나의 입력으로 받아 문맥적 상호작용을 세밀히 평가하며, 가장 높은 정밀도를 제공합니다.

결과적으로, 정보 검색 기술은 단순히 데이터를 "찾는" 것에서 나아가, 질의와 문서 간의 문맥적 관계를 "이해"하는 패러다임으로 전환되었습니다.

1.2 필요성 (Motivation)

Reranking 전략의 필요성

Cross-Encoder는 검색 품질을 혁신적으로 향상시키는 기술이지만, 높은 계산 비용으로 인해 모든 문서에 적용하기 어렵습니다. 이 문제를 해결하기 위해 효율성과 정밀도의 균형을 맞춘 Reranking 전략이 도입되었습니다.

Reranking은 검색의 정밀도를 극대화하면서도 계산 자원을 절약하는 실용적인 접근법입니다. 따라서 이는 현대 검색 시스템 설계의 핵심 요소로 자리 잡고 있습니다.

 

2. 검색 모델의 비교 및 분석

2.1 BM25: 전통적 통계 기반 키워드 검색 모델

작동 원리

BM25는 키워드 매칭 중심의 통계적 모델로, 단어의 중요도를 기반으로 질의와 문서 간 유사도를 계산합니다. 단어 빈도(TF)와 역문서 빈도(IDF)를 활용해 점수를 산출합니다. 문서 길이에 따른 점수 조정으로 긴 문서가 지나치게 높은 점수를 얻는 문제를 방지합니다.

강점

  • 계산이 단순하고 빠르며 대규모 데이터셋에서도 효율적으로 작동.
  • 키워드 중심의 간단한 검색 질의에 적합.
  • 법률 문서, 학술 논문 등 키워드 매칭이 중요한 도메인에서 높은 성능 발휘.

한계

  • 질의와 문서 간의 문맥적 의미를 이해하지 못함.
  • 동의어 및 다의어 구별 어려움으로 검색 결과 정확도 저하 가능. 예를 들어, "AI 도입 효과"를 검색했을 때 "AI"와 관련이 없는 문서가 반환될 수 있음.

2.2 Bi-Encoder: 딥러닝 기반 의미 검색

작동 원리

Bi-Encoder는 질의와 문서를 각각 독립적으로 벡터로 변환한 뒤, 두 벡터 간의 유사도를 계산합니다. 언어 모델(예: BERT, RoBERTa)을 활용해 단어의 문맥적 의미를 반영한 벡터를 생성합니다. 병렬 처리가 가능해 대규모 데이터셋에서도 효율적으로 작동합니다.

강점

  • 질의와 문서 간의 의미적 유사성을 잘 포착하며, 키워드 매칭에 의존하지 않음.
  • 병렬 처리가 가능하여 BM25보다 높은 계산 비용에도 빠른 검색 속도 제공.

한계

  • 질의와 문서를 독립적으로 처리하므로 세부적 상호작용을 반영하지 못함.
  • 문서가 길어질수록 중요한 정보가 벡터 표현에서 희석될 가능성 존재.

2.3 Hybrid Search: BM25와 Bi-Encoder의 결합

작동 원리

Hybrid Search는 BM25의 점수와 Bi-Encoder의 벡터 유사성을 결합하여 검색 결과를 생성합니다. 결합 수식은 alpha * BM25 score + (1-alpha) * Bi-Encoder score과 같습니다. BM25의 키워드 매칭 능력과 Bi-Encoder의 문맥적 의미 분석을 동시에 활용합니다.

강점

  • 키워드 기반 검색과 의미적 문맥 평가를 균형 있게 활용.
  • 특정 도메인에 맞게 BM25와 Bi-Encoder의 비중을 조정하여 최적화 가능.

한계

  • 고정된 가중합 방식으로 인해 질의와 문서 간 복잡한 상호작용을 동적으로 반영하기 어려움.
  • Bi-Encoder와 동일하게 문맥적 상호작용 부족 문제를 완전히 해결하지 못함.

2.4 Cross-Encoder: 고도화된 딥러닝 검색 모델

작동 원리

Cross-Encoder는 질의와 문서를 하나의 입력으로 결합하여 두 텍스트 간의 상호작용을 분석합니다. 문서와 질의 내 각 단어 간의 관계를 세밀히 평가하여 높은 정밀도의 결과를 생성합니다. BERT와 같은 대규모 언어 모델을 활용해 문맥적 의미를 극대화합니다.

강점

  • 질의와 문서 간의 복잡한 관계를 종합적으로 분석하며, 가장 높은 정밀도 제공.
  • 질의의 의도와 문서의 세부적 내용 간 관계를 세밀히 평가 가능. 예를들어, "법률 적용 사례"라는 질의에 대해, 관련 법률 조항과 적용 사례를 포함한 문서를 정확히 반환.

한계

  • 계산 비용이 높고 처리 속도가 느려 대규모 데이터셋에서 직접 적용하기 어려움.
  • 실시간 검색 시스템이나 응답 시간이 중요한 환경에서는 비효율적.

2.5 모델 간 비교 요약

2.6 요약 및 결론

BM25, Bi-Encoder, Hybrid Search, Cross-Encoder는 각기 다른 검색 전략을 제공합니다.

  • BM25: 키워드 기반 검색에서 효율적.
  • Bi-Encoder: 문맥적 의미를 포착하여 정밀도 향상.
  • Hybrid Search: 두 모델의 장점을 결합해 효율성과 정밀도를 균형 있게 제공.
  • Cross-Encoder: 가장 높은 정밀도를 제공하지만 높은 계산 비용 문제가 있음.

각 모델은 특정 환경과 목적에 따라 최적의 조합을 선택하는 것이 중요합니다. 이를 통해 효율적이고 정밀한 검색 시스템을 설계할 수 있습니다.

3. Reranking 전략

3.1 Cross-Encoder의 한계와 Reranking의 필요성

Cross-Encoder의 강점

Cross-Encoder는 질의와 문서를 하나의 입력으로 결합하여, 두 텍스트 간의 세밀한 상호작용을 평가합니다.

  • 최고 수준의 정밀도 : 질의와 문서의 문맥적 관계를 가장 정밀하게 평가.
  • 문맥 이해 능력: 기존 BM25나 Bi-Encoder 모델보다 문서와 질의 간의 의미적 연결성을 잘 포착.

Cross-Encoder의 한계

  • 높은 계산 비용 : 모든 질의-문서 쌍에 대해 연산 수행 → 대규모 데이터셋에서 비효율적.
  • 실시간 처리의 어려움 : 방대한 문서 집합에서 실시간으로 상위 문서를 반환하는 데 시간이 오래 소요.
  • 병목 현상 : Cross-Encoder를 전체 데이터셋에 직접 적용하면 계산 자원 소모 과다.

Reranking의 필요성

Cross-Encoder의 강점을 살리면서 한계를 극복하기 위해 Reranking 전략이 도입되었습니다.

초기 검색에서 효율적 후보군 생성 후, 후보군에 대해서만 Cross-Encoder를 적용합니다. 계산 비용 문제를 해결하면서도 높은 정밀도를 유지할 수 있는 단계적 접근법입니다.

3.2 Reranking의 작동 원리

Reranking은 다음과 같은 단계로 구성됩니다.

1. 초기 후보군 생성

  • Hybrid-Search를 활용하여 초기 검색 단계에서 상위 문서를 Top-K 후보군으로 선정.
  • 전체 문서를 처리하지 않고, 검색 결과의 초점을 후보군에 맞춤으로써 효율성을 확보.

2. Cross-Encoder를 활용한 재정렬

  • 초기 후보군에 대해 Cross-Encoder를 적용하여, 문서와 질의 간의 세부적인 상호작용 평가.
  • Cross-Attention 메커니즘을 활용해 각 문서의 유사도를 계산하고 점수화.
  • 높은 점수를 받은 문서를 상위에 배치.

3. 최종 결과 반환

  • Reranking된 결과를 사용자에게 제공.
  • 초기 검색보다 정밀도가 높은 결과를 반환하여 만족도를 향상.

3.3 Reranking이 Cross-Encoder의 한계를 해결하는 방식

1. 계산 비용 절감

  • Cross-Encoder는 Top-K 후보군에만 적용되어 전체 데이터셋을 처리하는 데 드는 계산 비용 제거.
  • 예를 들어, 수만 개 문서 중 상위 64개에만 Cross-Encoder를 적용하여 자원 소모를 최소화.

2. 정밀도 유지

  • Hybrid-Search가 완벽히 정밀하지 않더라도, Top-K에 충분히 많은 문서를 포함하면 정답 문서가 포함될 가능성 증가.
  • Cross-Encoder는 이러한 후보군 내에서 Top-3처럼 최종 상위 문서를 정확히 선별.

3. 효율성과 정밀도의 균형

  • 초기 검색 단계의 효율성과 Cross-Encoder의 정밀도를 결합하여 실시간 검색 환경에서도 활용 가능.
  • 단계적 접근법을 통해 계산 자원을 최적화하면서도 높은 품질의 검색 결과를 제공.

4. Experiment: Reranking 효과 분석

4.1 실험 세팅

데이터셋

  • 총 8개 도메인 데이터셋을 사용하여 실험 진행.
  • 각 데이터셋은 실제 문서와 질의로 구성된 샘플 데이터를 포함.

모델 구성

  • Reranker: bge-m3-reranker-v2 (560M 파라미터).
  • Baseline: Hybrid Search (BM25 + bge-m3-bi_encoder).
  • Token Size: 4096.

평가 지표

  • 검색 정확도를 평가하기 위해 Top-3, Top-5, Top-10 Accuracy를 측정.

하드웨어 환경

  • GPU: Colab NVIDIA A100 (40GB).
  • Precision 설정: Half Precision.
  • 평균 추가 처리 시간: 후보군 크기 64 기준, 약 525.76ms.

4.2 실험 결과

Reranker의 효과

  • Reranker는 Baseline인 Hybrid Search 대비 모든 고객사 데이터에서 검색 품질을 대폭 향상.
  • 특히 Top-3Top-5 Accuracy에서 평균적으로 10% 이상의 성능 개선을 달성.

지연 시간과 정확성의 균형

  • 후보군 크기 64일 때, 정확성과 처리 시간 간의 가장 적절한 균형을 확인.
  • 평균 추가 처리 시간: 약 525.76ms (0.5초 수준).
  • 이를 통해 최대 14%의 검색 성능 향상을 달성.

4.3 고객사별 성능 개선 요약

아래 표는 각 고객사 데이터셋에서 Reranker와 Baseline의 성능을 비교한 결과를 보여줍니다.

4.4 결론

성능 개선

  • 공공, 법률, 에너지 도메인에서 Top-3 기준 가장 큰 성능 향상을 기록.
  • 대부분의 도메인에서 Reranker가 Baseline 대비 정확도를 대폭 개선.

효율성과 정확성

  • 후보군 크기 64가 정확성과 처리 시간의 최적 균형을 제공.
  • 평균 0.5초의 Latency로 최대 14% 성능 향상.

예외 사례

  • 금융(증권사) 도메인에서는 Reranker와 Baseline 간 성능 차이가 없었음.
  • 이는 특정 도메인이나 데이터 특성에 따라 검색 모델의 효과가 달라질 수 있음을 시사.

5. Reranker 작동 예시

5.1 다중 조건과 문맥적 상호작용 처리

특징

  • 복합적 조건을 포함한 쿼리의 문맥적 의미를 이해하고 적합한 문서를 검색.
  • BM25 + Bi-encoder의 한계: 독립적으로 쿼리와 문서를 처리하므로 조건 간의 관계를 명확히 이해하지 못함.

예시 질문

"계약서에는 일정 변경이 가능하다고 나와 있는데, 이렇게 된 경우 추가 비용은 누가 부담해야 해?"
  • 위 질문에서 "일정 변경 가능성"과 "추가 비용 부담"의 연관성을 정확히 파악하여 관련 규정을 탐색

5.2 구체적 조항 또는 세부 항목 식별

특징

  • 쿼리 내 특정 용어의 중요성을 강조하여 정확한 조항을 검색.
  • BM25 + Bi-encoder의 한계: 핵심적인 단어의 중요성이 희석되거나 다른 일반적인 키워드와 동일한 가중치로 처리.

예시 질문

"근로계약서 제12조에서 언급된 휴가 사용 조건을 구체적으로 설명해 줄래?"
  • "12조" 라는 단어는 키워드 검색이나 독립적인 임베딩 검색으로는 중요도가 희석되기 쉬우나, Reranker 적용시 적절하게 검색

5.3 모호하거나 암시적인 표현 처리

특징

  • 쿼리의 암묵적 의미를 이해하고 관련 문서를 검색.
  • BM25 + Bi-encoder의 한계: 추상적이거나 일반적인 표현에 대한 맥락적 이해 부족.

예시 질문

"내 계좌가 해킹된 것 같아. 계좌 비밀번호를 바꾸려면 어떤 절차를 따라야 하고, 은행 외에 어디에 신고해야 해?"
  • "내 계좌가 해킹된 것 같아"는 표현을 "유출"로 정확하게 해석하고, 관련 문서를 검색하여 적합한 자료를 반환.

5.4 다양한 문서 간 정보 통합

특징

  • 여러 문서에 분산된 정보를 연결하여 적합한 결과를 반환.
  • BM25 + Bi-encoder의 한계: 독립적 문장 처리로 문서 간 연관성 파악이 어려움.

예시 질문

"회사에서 퇴직금 산정 기준을 알려달라고 요청했는데, 관련 자료가 공개되지 않았어. 이런 경우 어떻게 대응해야 해? 노동청에 문의해야 할까?"
  • "정보 공개 요청 거절"에 대한 법률과 판례가 각각 다른 문서에 있을 때, 이를 연결하여 검색.

5.5 사용자 의도 중심의 검색

특징

  • 질문자의 관점과 의도를 반영하여 문서를 선택.
  • BM25 + Bi-encoder의 한계: 키워드 중심으로 결과를 반환하여 의도를 간과.

예시 질문

"전입신고는 했는데 여전히 세금 고지서가 이전 주소로 가. 이거 내가 따로 처리해야 해, 아니면 세무서에서 알아서 수정해?"
  • 기존의 검색 방식으로는 “내가 해야하는가”라는 질문자 의도를 간과하고, 구청에서 어떤 행정절차를 진행해야 하는지 검색해오기 쉬움. 그러나 Reranker는 "내가"라는 관점에 초점을 맞춘 문서를 우선 검색.

5.6 추론 기반 검색

특징

  • 간접적으로 연관된 문서를 추론하여 검색.
  • BM25 + Bi-encoder의 한계: 단순 키워드 매칭으로 간접적 연관성 파악이 어려움.

예시 질문

"출산 예정일이 두 달 남았는데, 회사에서 야근을 요구해. 이럴 때 내가 거절할 수 있는 법적인 근거가 있을까?"
  • 실제 문서에서 “임신 12주 이내”라는 표현이 등장하는데, “12주 이내”라는 표현과 “출산 예정일이 두 달” 이라는 표현을 연결지어서 검색.

5.7 파편화된 정보 처리

특징

  • 규정이 여러 페이지에 걸쳐 있어도 이를 효과적으로 결합하여 문서를 검색.
  • BM25 + Bi-encoder의 한계: 특정 페이지나 단일 문서만 검색.

예시 질문

"계약서에는 추가 작업 요청이 명시돼 있지 않은데, 갑자기 업무가 늘어났어. 이 경우 책임은 누가 지게 돼?"
  • 기존 검색방식은 “책임”과 관련된 부분만 검색하기 쉬우나, Reranker는 “추가 작업 요청”와 “책임”을 모두 검색.

6. 결론

Reranking은 Cross-Encoder의 높은 계산 비용 문제를 해결하면서, 검색 결과의 정밀도를 극대화하는 유효한 방법임을 확인했습니다. 초기 검색에서 Hybrid Search를 통해 빠르고 효율적으로 후보군을 선별하고, Cross-Encoder를 통해 세밀한 상호작용을 평가하여 최종 결과를 도출함으로써, 정확성과 효율성의 균형을 맞추는 데 성공했습니다.

실험 결과, Reranking 전략은 다양한 도메인에서 Top-3, Top-5, Top-10 Accuracy 모두에서 성능을 향상시켰고, 특히 공공, 법률, 에너지 도메인에서 두드러진 개선 효과를 보였습니다. 이를 통해 Reranking 전략이 정보 검색 시스템에서 중요한 역할을 수행할 수 있음을 입증하였습니다.

최종적으로, 검색 시스템 설계에서 효율성과 정밀도의 균형을 맞추는 것이 중요하며, Reranking은 Cross-Encoder의 한계를 극복하면서 실시간 검색 환경에서도 높은 품질의 결과를 제공할 수 있는 중요한 기술임을 알 수 있었습니다.

앞으로도 다양한 도메인과 환경에 맞는 최적화된 검색 모델을 개발하는 것이 중요한 과제가 될 것입니다.