기술공부/LLM

논문 리뷰: RAPTOR: Recursive Abstractive Processing for Tree-Organized Retrieval

넹넹선생님 2025. 2. 3. 18:25
728x90
반응형

 

논문 "RAPTOR: Recursive Abstractive Processing for Tree-Organized Retrieval"은 대형 언어 모델(LLM)의 한계를 보완하기 위해 새로운 정보 검색 방식을 제안합니다.

 

https://arxiv.org/html/2401.18059v1

 

RAPTOR: Recursive Abstractive Processing for Tree-Organized Retrieval

Large Language Models (LLMs) have emerged as transformative tools showing impressive performance on many tasks. With the growing size of LLMs, they can serve standalone as very effective knowledge stores, with facts encoded within their parameters (Petroni

arxiv.org

 

https://github.com/parthsarthi03/raptor

 

https://huggingface.co/papers/2401.18059

 

기존의 검색 강화 언어 모델은 짧은 연속적인 텍스트 조각만을 검색하여 전체 문서의 맥락을 충분히 이해하지 못하는 한계가 있었습니다. 이를 해결하기 위해 RAPTOR는 텍스트를 임베딩하고, 클러스터링하며, 요약하는 과정을 재귀적으로 수행하여 트리 구조를 형성합니다. 이러한 트리 구조는 문서의 다양한 수준의 요약 정보를 포함하며, 추론 시 모델이 이 트리에서 정보를 검색하여 긴 문서의 다양한 추상화 수준의 정보를 통합할 수 있게 합니다. 이를 통해 복잡한 다단계 추론이 필요한 질문 응답 작업에서 기존 방법보다 우수한 성능을 보입니다. 예를 들어, RAPTOR를 GPT-4와 결합하면 QuALITY 벤치마크에서 절대 정확도를 20% 향상시킬 수 있습니다.

 

RAPTOR의 주요 구성 요소:

 

1. **텍스트 분할 및 임베딩:**

먼저, 대량의 텍스트 코퍼스를 약 100 토큰 길이의 짧은 연속적인 조각으로 분할합니다. 이때, 문장이 100 토큰을 초과하면 문장의 의미를 보존하기 위해 문장을 중간에 자르지 않고 다음 조각으로 넘깁니다. 이러한 텍스트 조각은 SBERT를 사용하여 임베딩됩니다.

 

2. **클러스터링 및 요약:**

임베딩된 텍스트 조각들을 유사한 내용끼리 클러스터링합니다. 각 클러스터는 언어 모델을 사용하여 요약되며, 이 요약된 텍스트는 다시 임베딩됩니다. 이러한 임베딩, 클러스터링, 요약 과정을 재귀적으로 반복하여 트리 구조를 형성합니다. 이때, Gaussian Mixture Model(GMM)을 사용하여 소프트 클러스터링을 수행하며, 클러스터의 최적 개수는 Bayesian Information Criterion(BIC)을 통해 결정합니다.

 

3. **트리 구조에서의 정보 검색:**

트리 구조에서 정보를 검색하기 위해 두 가지 방법을 제시합니다:

- **트리 탐색(Tree Traversal):** 루트 노드에서 시작하여 각 레이어에서 쿼리 벡터와 코사인 유사도가 가장 높은 상위 k개의 노드를 선택하며 하위 레이어로 내려갑니다.

- **트리 병합(Collapsed Tree):** 트리의 모든 노드를 단일 레이어로 병합한 후, 쿼리 벡터와 코사인 유사도가 가장 높은 노드를 최대 토큰 수에 도달할 때까지 선택합니다.

 

**예시:**

 

동화 '신데렐라'를 예로 들어보겠습니다. "신데렐라가 행복한 결말에 이르게 된 과정은?"이라는 질문에 대해, 기존의 검색 방법은 짧은 연속적인 텍스트 조각만을 검색하여 충분한 맥락을 제공하지 못할 수 있습니다. 반면에, RAPTOR는 트리 구조를 통해 이야기의 전반적인 흐름과 세부 사항을 모두 포함하는 요약 정보를 제공하여 이러한 질문에 대한 포괄적인 답변을 생성할 수 있습니다.

 

**수식 설명:**

 

RAPTOR의 클러스터링 과정에서 Gaussian Mixture Model(GMM)을 사용합니다. 각 텍스트 조각은 d-차원의 벡터 임베딩으로 표현되며, GMM은 이러한 벡터들이 여러 개의 가우시안 분포로부터 생성되었다고 가정합니다. 텍스트 벡터 x가 가우시안 분포 k에 속할 확률은 다음과 같이 나타낼 수 있습니다:

 

\[ p(x | z = k) = \mathcal{N}(x | \mu_k, \Sigma_k) \]

 

여기서 \( \mu_k \)는 k번째 가우시안의 평균 벡터, \( \Sigma_k \)는 공분산 행렬을 나타냅니다. 전체 확률 분포는 각 가우시안 분포의 가중합으로 표현되며, 이는 다음과 같습니다:

 

\[ p(x) = \sum_{k=1}^{K} \pi_k \mathcal{N}(x | \mu_k, \Sigma_k) \]

 

여기서 \( \pi_k \)는 k번째 가우시안 분포의 혼합 계수로, 모든 \( \pi_k \)의 합은 1이 됩니다. 이러한 GMM을 통해 텍스트 조각들을 클러스터링하고, 각 클러스터를 요약하여 트리 구조를 형성합니다.

 

이러한 RAPTOR의 접근 방식은 긴 문서의 다양한 수준의 정보를 효과적으로 통합하여 복잡한 질문에 대한 정확한 답변을 생성하는 데 큰 도움이 됩니다.

728x90
반응형