ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [논문 리뷰] 48. Knowledge Graph-Guided Retrieval Augmented Generation
    논문 2025. 3. 3. 14:40

     

    RAG은 LLM이 생성한 응답에서 발생하는 환각 문제를 해결할 수 있는 유망한 기술로 부상하고 있습니다. 기존의 RAG 연구는 주로 의미 기반 접근 방식을 사용하여 개별적으로 관련된 청크를 검색하는 데 집중했으며, 이 과정에서 청크 간의 내재적 관계를 무시하는 한계가 있었습니다. 본 논문에서는 청크 간 사실 수준의 관계를 제공하여 검색 결과의 다양성과 일관성을 향상시키는 지식 그래프(KG)를 활용한 새로운 검색 증강 생성 프레임워크인 Knowledge Graph-Guided Retrieval Augmented Generation (KG2RAG)을 제안합니다.

    구체적으로, KG2RAG는 의미 기반 검색을 수행하여 초기 청크(seed chunks)를 제공한 후, KG 기반 청크 확장 프로세스와 KG 기반 청크 조직화 프로세스를 적용하여 관련성이 높고 중요한 지식을 잘 구성된 단락 형태로 전달합니다. HotpotQA 데이터셋과 그 변형을 활용한 광범위한 실험을 통해, KG2RAG가 기존의 RAG 기반 접근 방식보다 응답 품질과 검색 품질 측면에서 모두 우수한 성능을 보인다는 것을 입증하였습니다


    최근 LLM은 질의응답, 글쓰기 지원, 코드 생성 등 다양한 실제 과제에서 놀라운 성과를 거두었습니다.

    그러나 생성된 응답에서 환각 현상이 발생하는 것은 중요한 문제로 부각되고 있으며, 이는 종종 최신 정보의 부족 또는 도메인별 지식의 결핍에서 기인합니다. 이러한 환각 문제를 완화하기 위해 검색 증강 생성(RAG, Retrieval-Augmented Generation) 이 유망한 해결책으로 떠오르고 있습니다. RAG는 제공된 문서에서 관련 지식을 검색하고 이를 LLM의 프롬프트에 통합하여 응답을 생성하는 방식으로 작동합니다.

    기존의 RAG 연구에서는 키워드 기반 또는 의미 기반 검색 방법을 활용하여 사용자 질의와 가장 높은 유사도를 가지는 문서 또는 청크를 검색합니다(그림 1 참조). 그러나 이러한 검색된 청크들은 종종 동질적이고 중복되는 문제가 있으며, 청크 간의 내재적 관계를 제공하지 못하여 LLM의 추론 능력을 충분히 활성화하지 못합니다. 또한 검색된 청크는 단순히 유사도 점수 순서대로 직접 연결되어 LLM의 프롬프트에 입력되므로, 정보가 단절된 형태로 제공될 가능성이 높아집니다. 이러한 방식은 LLM이 포괄적이고 신뢰할 수 있는 응답을 생성하는 데 제약이 될 수 있습니다.

    지식 그래프(KG, Knowledge Graph) 실제 세계의 엔터티(entity) 및 관계를 구조적으로 추상화한 형태로, 기존의 의미 기반 RAG 접근 방식을 보완하여 구조화된 사실 기반 지식을 통합하는 데 효과적으로 활용될 수 있습니다. KG 내의 지식은 (주체(head entity), 관계(relation), 객체(tail entity)) 형태의 삼중항(triplet)으로 표현되며, 중복된 엔터티를 통해 자연스럽게 연결됩니다. 그림 1은 RAG에서 KG를 활용하는 단순화된 워크플로우를 보여주며, 관련 삼중항을 검색하여 LLM의 응답 생성 과정에서 컨텍스트를 강화하고, 청크 간의 사실적 관계를 제공하며, 의미 기반 검색이 놓칠 수 있는 중요한 사실을 강조하는 역할을 합니다.

    이러한 통찰을 바탕으로, 본 논문에서는 새로운 지식 그래프 기반 검색 증강 생성(Knowledge Graph-Guided Retrieval Augmented Generation, KG2RAG) 프레임워크를 제안합니다. 구체적으로, KG2RAG는 먼저 문서의 오프라인 처리 단계에서 청크를 생성하고, 각 청크를 특정 KG와 연계하여 사실 수준에서 청크 간의 관계를 설정합니다. 이후, KG2RAG는 KG-강화 청크 검색(KG-enhanced chunk retrieval)을 수행하는데, 이는 의미 기반 검색과 그래프 기반 확장(graph-guided expansion)으로 구성됩니다. 의미 기반 검색을 통해 임베딩 및 순위 결정 기법을 이용하여 여러 개의 초기 청크(seed chunks)를 선택한 후, 이 초기 청크를 기반으로 KG에서 관련 서브그래프를 추출합니다. 여기에 그래프 탐색 알고리즘을 적용하여 중첩되거나 관련된 엔터티 및 삼중항을 포함하는 청크를 추가로 확보합니다. 이러한 그래프 기반 확장은 검색된 청크의 다양성을 증대시키고, 보다 포괄적인 지식 네트워크를 형성할 수 있도록 합니다.

    이후, KG2RAG는 KG 기반 컨텍스트 조직화(KG-based context organization) 단계를 추가합니다. 이 과정은 두 가지 역할을 수행하는데, 첫째로, 서브그래프에서 가장 관련성이 높은 정보를 유지하는 필터(filter) 역할을 하여 검색된 청크의 정보성을 향상시킵니다. 둘째로, KG를 구조로 활용하여 청크를 내부적으로 일관된 단락으로 구성하는 정리(arranger) 역할을 합니다. 이렇게 생성된 의미적으로 일관되고 잘 조직된 청크들은 사용자 질의와 함께 LLM에 제공되어 응답을 생성하는 데 활용됩니다.

    본 연구에서는 HotpotQA 데이터셋 및 새롭게 구성한 변형 데이터셋을 활용하여, LLM의 사전 지식 영향력을 최소화하는 실험을 수행하였습니다. 본 연구에서는 distractor  fullwiki 설정을 적용하여, KG2RAG와 기존 RAG 기반 접근 방식을 비교하였습니다. 실험 결과, KG2RAG는 응답 품질(response quality)과 검색 품질(retrieval quality) 측면에서 기존 방식보다 일관되게 우수한 성능을 보였습니다. 또한, KG2RAG의 다양한 모듈의 효과를 분석하기 위해 모듈 별 제거 실험(ablation study) 을 수행하였습니다.


    방법론

    문서 오프라인 처리 (Document Offline Processing)  
    기존 RAG 연구를 따라, 모든 문서는 미리 정의된 청크 크기를 기준으로 문장 및 단락의 구조에 따라 n개의 청크로 분할됩니다. 이를 수식으로 표현하면 다음과 같습니다:  

    \[
    D = \{c_1, c_2, ..., c_n\}
    \]

    이러한 청크들은 이후 문맥 추가, 메타정보 추출(예: 제목, 초록), 질문 생성 등의 추가적인 처리가 가능합니다. 이러한 청크 개선 기법들은 본 논문의 제안 방법과는 독립적인(orthogonal) 기술이므로, 보다 자세한 내용은 기존 연구를 참고하는 것이 좋습니다. 본 논문에서는 이러한 처리를 마친 후의 청크를 다음과 같이 계속 표기합니다:  

    \[
    D = \{c_1, ..., c_n\}
    \]

    이 청크들 간의 사실 수준(fact-level)의 관계를 포착하기 위해, KG(지식 그래프)와 연계하는 작업을 수행합니다. KG-청크 연계는 다음과 같은 두 가지 방식으로 구현될 수 있습니다:  

    1. 기존 KG 활용: WebQSP 및 CWQ와 같은 기존 KG가 존재하는 경우, 엔터티 및 관계 인식과 연결 알고리즘을 통해 청크와 KG를 연계할 수 있습니다.  
    2. 새로운 KG 생성: 기존 KG에 의존하지 않기 위해, 청크에서 엔터티 및 관계를 직접 추출하여 서브그래프(subgraphs)를 형성하고, 이를 하나의 완전한 그래프로 결합할 수 있습니다. 본 논문에서는 두 번째 방식을 채택하며, 이를 LLM을 활용한 적절한 프롬프트(Fig. 3 참고)를 통해 구현합니다.  


    이 과정을 통해, 청크와 특정 KG 간의 연결이 다음과 같은 관계로 정의됩니다:

    \[
    G = \{(h, r, t, c) | c \in D\}
    \]

    여기서 \(h, r, t\)는 각각 주체(head entity), 관계(relation), 객체(tail entity)를 의미하며, \(c\)는 해당 삼중항(triplet)이 파생된 청크입니다.  

    (오펜하이머, 감독, 크리스토퍼 놀란)
    └─ head └─ relation └─ tail (주체) (목적)

     

    특히 청크-KG 연계 과정은 질의(query)와 독립적으로 수행되므로, 한 번만 구축하면 모든 문서에 대해 오프라인에서 실행할 수 있으며, 새로운 문서를 추가하거나 기존 문서를 제거하는 작업을 효율적으로 지원할 수 있습니다. 즉, 문서 오프라인 처리 단계는 일반적인 RAG 방식과 동일하게 작동하며, KG2RAG는 기존의 지식 베이스와 KG에 손쉽게 문서를 추가하거나 제거할 수 있습니다.  

    KG-강화 청크 검색 (KG-enhanced Chunk Retrieval)
    KG2RAG는 청크 집합 \(D\)와 관련된 KG \(G\)를 기반으로 두 단계의 검색 프로세스를 수행합니다:  

    1. 의미 기반 검색 (Semantic-based Retrieval)  
    2. 그래프 기반 확장 (Graph-guided Expansion)



    의미 기반 검색 (Semantic-based Retrieval)
    사용자 질의 \(q\)와 모든 청크들 간의 의미적 유사도는 다음과 같이 계산됩니다:

    \[
    S = \{s(q, c) | c \in D\}
    \]

    여기서 유사도 함수 \(s(\cdot)\)는 임베딩 모델을 사용하여 질의와 청크를 고차원 벡터 표현으로 변환한 후, 코사인 유사도(cosine similarity)를 계산하는 방식으로 구현됩니다.  

    이렇게 계산된 유사도 값 중 상위 \(k\)개의 청크가 검색되며, 이를 검색된 청크 집합 \(D_q\)로 나타냅니다:

    \[
    D_q = \{c \in D | s(q, c) \text{가 상위 } k \text{에 속함}\}
    \]

    이 검색된 청크들은 프롬프트의 컨텍스트로 통합되어 LLM에 입력됩니다. 하지만, 의미 기반 검색만으로는 청크 간의 내재적 관계를 고려하지 못하며, 중요한 사실이 누락될 수 있습니다. 이를 해결하기 위해 그래프 기반 확장(graph-guided expansion) 단계를 추가합니다.  



    그래프 기반 확장 (Graph-guided Expansion)
    인간의 사고 과정에서 하나의 사건은 종종 같은 엔터티(예: 인물, 장소)를 공유하는 다른 사건과 연결됩니다. 예를 들어, 워싱턴 D.C.의 캐피톨 힐(Capitol Hill)은 버락 오바마, 도널드 트럼프, 조 바이든이 각각 2013년, 2017년, 2021년에 대통령 취임 연설을 했던 장소이므로, 이러한 개념들이 자연스럽게 연결됩니다.  

    이를 바탕으로, KG2RAG는 검색된 청크들이 포함하는 중첩된 엔터티 또는 관계를 기반으로 다른 청크들을 연결하여 검색된 청크 집합을 확장하는 방식을 제안합니다.  

    구체적으로, 검색된 청크 \(D_q\) 및 KG \(G\)가 주어졌을 때, 먼저 해당 청크들의 관련 서브그래프(subgraph)를 추출합니다:

    \[
    G_q^0 = \{(h, r, t, c) | c \in D_q\} \subseteq G
    \]

    그 후, 해당 서브그래프의 \(m\)-hop 이웃을 탐색하여 확장된 서브그래프를 구축합니다:

    \[
    G_q^m = traverse(G, G_q^0, m)
    \]

    여기서 \(traverse(\cdot)\)는 너비 우선 탐색(BFS, Breadth-First Search) 알고리즘을 활용하여 \(G_q^0\)에 속한 엔터티들과 인접한 엔터티 및 관계를 포함하는 확장된 서브그래프를 생성하는 함수입니다.  

    최종적으로, 확장된 서브그래프 \(G_q^m\)에서 관련된 청크들을 추출하여 확장된 청크 집합 \(D_q^m\)을 구성합니다:

    \[
    D_q^m = \{c | (h, r, t, c) \in G_q^m\} \subseteq D
    \]


    논의 (Discussions)
    기존의 RAG에서는 청크 확장을 위한 다양한 접근 방식이 존재합니다. 예를 들어,  
    - 유사도 기반 검색에서 \(k\) 값을 증가시키는 방법  
    - 문맥 창(window) 확장 방법 (즉, 검색된 청크 주변의 청크들도 함께 포함)  

    하지만, KG2RAG의 그래프 기반 확장은 기존 방식과 다르게, 검색된 청크의 의미적 유사도와 무관하게, 동일하거나 관련된 엔터티 및 관계를 포함하는 청크들을 연결하여 확장합니다. 이러한 방식은 검색된 청크들의 다양성을 확보하고, 과도한 중복을 방지하며, 보다 포괄적인 지식 네트워크를 구축하는 데 기여합니다.  

     

    KG 기반 컨텍스트 조직화 (KG-based Context Organization)
    KG-강화 청크 검색(KG-enhanced chunk retrieval) 이후, KG2RAG는 LLM의 응답 생성을 수행하기 전에 후처리(post-processing) 단계를 추가합니다. 이 단계는 다음 두 가지 고려 사항에 기반합니다.  

    첫째, 그래프 기반 확장(graph-guided expansion)을 통해 확장된 청크의 개수는 확장된 서브그래프에 포함된 삼중항(triplet)의 수에 따라 결정되며, 이 개수가 너무 많아질 경우 LLM의 컨텍스트 길이를 초과할 가능성이 있습니다. 또한, 불필요한 노이즈가 포함될 경우 유용한 정보가 가려질 수도 있습니다.  

    둘째, 인간의 독서 습관 및 선행 연구에 따르면, 의미적으로 일관되고 잘 구성된 자료를 컨텍스트로 제공하면 LLM의 이해 및 생성 성능을 향상시킬 수 있습니다.  

    이를 해결하기 위해, KG2RAG는 KG 기반 컨텍스트 조직화 모듈을 제안하며, 이 모듈은 필터(filter)와 정리(arranger) 두 가지 역할을 수행합니다.


    필터 역할 (Serving as a Filter)
    우선, 확장된 청크와 사용자 질의 간의 의미적 유사도를 계산합니다. 이를 바탕으로, 확장된 서브그래프 \( G_q^m \)을 다음과 같은 무방향 가중 그래프(undirected weighted graph)로 변환합니다:

    \[
    U_q^m = \{(h \leftrightarrow t, \text{rel}: r, \text{src}: c, \text{weight}: s(q, c)) \ | \ (h, r, t, c) \in G_q^m \}
    \]

    여기서:  
    - \( h \leftrightarrow t \)는 무방향 엣지(undirected edge)를 나타냅니다.  
    - 해당 엣지에는 관계(relation), 소스 청크(source chunk), 가중치(weight)가 메타 정보로 추가됩니다.  
    - 유사도 점수 \( s(q, c) \)는 계산된 값을 재사용하여 연산 비용을 절약합니다.  

    지식(Knowledge)은 본질적으로 응집(cohesive)된 구조를 가지므로, \( U_q^m \)은 자연스럽게 여러 개의 연결된 컴포넌트(connected components)로 분리될 수 있습니다. 이를 수식으로 나타내면:  

    \[
    B_i, \quad 1 \leq i \leq p
    \]

    여기서, 각 \( B_i \)는 KG에서 동일한 엔터티들을 포함하는 연결된 노드 집합을 의미합니다.  

    그러나, 동일한 엔터티 간에 중복된 정보가 존재할 가능성이 있으므로, 각 연결 컴포넌트에서 "최대 신장 트리(MST, Maximum Spanning Tree)"를 생성하여 불필요한 엣지를 제거합니다.  

    \[
    T_i = MST(B_i)
    \]

    이러한 필터링 과정을 통해, 엔터티 간의 가장 중요한 연결 정보만 유지하고, 불필요한 중복 엣지를 제거하여 검색된 청크의 정보성을 극대화합니다.  


    정리 역할 (Serving as an Arranger)
    KG 기반 컨텍스트 조직화 모듈을 통해, 검색된 청크들을 KG를 기반으로 의미적으로 연결된 자기완결적인 단락(self-consistent paragraphs)으로 구성하는 것을 목표로 합니다.  

    이를 위해, 각 생성된 최대 신장 트리(MST) \( T_i \)에 대해 두 가지 표현 방식을 정의합니다.  

    1. 텍스트 표현 (Text Representation)
       - 가장 높은 가중치(weight)를 가진 엣지를 루트(root)로 선택  
       - 깊이 우선 탐색(DFS, Depth-First Search) 알고리즘을 사용하여 엣지에 연결된 청크들을 논리적으로 연결된 단락으로 구성

    2. 삼중항 표현 (Triplet Representation)
       - MST에 포함된 모든 엣지들을 다음과 같은 형태로 연결:  
         \[
         \langle h, r, t \rangle
         \]
       - 즉, KG에서 추출된 핵심 정보를 구조적으로 정리

    이후, 각 MST와 사용자 질의 간의 관련성 점수(relevance score)를 다음의 크로스 인코더 재정렬 함수(cross-encoder reranking function)를 사용하여 계산합니다:

    \[
    R(q, T_i) = C(q, \text{conc}(T_i))
    \]

    여기서:  
    - \( C(\cdot) \)는 크로스 인코더 재정렬 함수  
    - \( \text{conc}(T_i) \)는 MST의 삼중항 표현을 하나로 합치는(concatenation) 함수  

    삼중항 표현을 사용하는 이유는, 일반적인 텍스트보다 더 구조적이고 간결하게 핵심 정보를 정리할 수 있기 때문입니다. 이를 통해, LLM이 중요 정보에 집중하도록 유도할 수 있습니다.  

    최종 선택 및 LLM 입력
    관련성 점수 \( R(q, T_i) \)가 계산되면, MST 집합 \( \{T_i | 1 \leq i \leq p\} \)을 내림차순으로 정렬합니다.  

    그 후, **사전 정의된 최대 청크 개수(\( k \))를 초과하지 않는 범위 내에서, 정렬된 순서대로 텍스트 표현을 포함**합니다.  

    최종적으로, **선택된 청크들이 사용자 질의와 함께 LLM에 입력**되며, **보다 의미적으로 일관된 고품질 응답이 생성**됩니다.  

    ---

    ### **요약 (Summary)**  

    **KG 기반 컨텍스트 조직화(KG-based Context Organization)는 두 가지 핵심 기능을 수행합니다:**  

    1. **필터(Filter):**  
       - **확장된 청크의 정보를 의미적 유사도 기반으로 필터링**  
       - **최대 신장 트리(MST)를 이용하여 중요 정보만 유지**  

    2. **정리(Arranger):**  
       - **검색된 청크를 의미적으로 연결된 단락으로 조직화**  
       - **삼중항 표현을 이용하여 LLM이 핵심 정보를 더 잘 이해하도록 구성**  

    이를 통해, KG2RAG는 **더 의미 있고 정돈된 컨텍스트를 제공함으로써, LLM의 응답 품질을 개선**할 수 있습니다.


    실험

    실험 환경 

    데이터셋 

    본 연구에서는 HotpotQA 벤치마크 데이터셋을 사용하여 실험을 수행

    이 데이터셋에서는 각 질의(query)가 여러 개의 자료(예: 위키피디아의 관련 콘텐츠)와 연관될 수 있으며, 이러한 자료는 응답 생성을 돕는 역할을 합니다.

    HotpotQA 데이터셋에는 두 가지 설정이 존재합니다.

    1. HotpotQA-Dist (distractor setting)
      • 총 10개의 문서가 지원 자료(supporting materials)로 제공됩니다.
      • 이 문서에는 유용한 지식뿐만 아니라 일부 무관한 콘텐츠도 포함되어 있습니다.
    2. HotpotQA-Full (fullwiki setting)
      • 위키피디아에서 추출한 총 66,581개의 문서 중에서 유용한 지식을 식별해야 합니다.

    KG-청크 연계를 수행하기 위해, Llama-3 모델을 활용하여 66,581개 문서에서 엔터티(entity) 및 관계(relation)를 추출하는 프롬프트를 수동으로 제공
    이 과정에서 총 211,356개의 삼중항(triplet)이 생성되었으며,

    • 98,226개의 엔터티
    • 19,813개의 관계
      를 포함합니다.

    각 생성된 삼중항은 원본 청크와 연결되며, 청크 및 문서에서 추출된 삼중항 개수를 기록하고, 해당 청크 및 문서의 분포를 그림 4에 시각화하였습니다.


    이 그림에서 긴 꼬리(long-tail) 현상이 나타남을 확인할 수 있습니다.

    또한, 생성 과정에서 LLM의 사전 지식에 대한 의존도를 줄이고(RAG의 효과를 보다 명확하게 입증하기 위해) HotpotQA 데이터셋을 변형하여 실험을 진행했습니다.

    구체적으로, 각 엔터티를 동일한 카테고리 내에서 무작위로 대체하고,

    • 질의(query), 삼중항(triplet), 문서(document)를 이에 맞게 업데이트하였습니다.

    예를 들어,

    • "Family Guy"라는 엔터티를 "Rick and Morty"로 대체하고,
    • 기존 질의 및 삼중항, 문서에서 "Family Guy"가 등장하는 모든 부분을 "Rick and Morty"로 변경합니다.

    이로 인해, LLM은 학습 데이터에 포함된 Family Guy의 기존 지식에 의존할 수 없으며, 문서에서 관련 내용을 식별하고 추출해야만 올바른 응답을 생성할 수 있습니다.

    이 과정에서 새로운 삼중항이 생성될 수도 있습니다.
    예를 들어,

    • 원래 데이터에 (Family Guy, language, English)이라는 삼중항이 존재했다면,
    • 대체된 변형 데이터에서는 (Rick and Morty, language, French)와 같은 새로운 삼중항이 생성될 수 있습니다.

    이렇게 생성된 변형 데이터셋을 다음과 같이 명명합니다.

    • Shuffle-HotpotQA-Dist (HotpotQA-Dist 변형 버전)
    • Shuffle-HotpotQA-Full (HotpotQA-Full 변형 버전)

    평가 지표 (Evaluation Metrics)

    본 연구에서는 KG2RAG와 기존 RAG 기반 방법들을 비교하며,

    • 응답 품질(response quality)
    • 검색 품질(retrieval quality)

    두 가지 측면에서 성능을 평가합니다.

    검색 품질(retrieval quality) 평가:

    • HotpotQA에서 제공하는 평가 스크립트를 사용
    • F1 점수, 정밀도(precision), 재현율(recall) 측정
    • 검색된 청크와 참조된 사실(reference facts) 간의 유사성을 평가

    응답 품질(response quality) 평가:

    • F1 점수, 정밀도(precision), 재현율(recall) 측정
    • 생성된 응답과 정답(ground truth) 간의 비교를 통해 평가

    비교 대상 모델 (Baselines)

    실험에서는 KG2RAG와 다음과 같은 기존 방법들을 비교합니다.

    • LLM-only
      • 추가 검색 과정 없이 LLM이 사용자 질의에 직접 응답을 생성
    • Semantic RAG (Jiang et al., 2023)
      • **의미 기반 검색(semantic-based retrieval)**을 사용하여 관련 청크 검색
      • 검색된 청크를 **프롬프트에 단순 연결(concatenation)**하여 LLM에 입력
    • Hybrid RAG (Gao et al., 2021)
      • 의미 기반 검색 + 키워드 기반 검색(BM25(Askari et al., 2023))을 결합
      • 검색된 청크들을 **크로스 인코더 재정렬기(cross-encoder reranker)**를 사용해 통합
    • GraphRAG (Edge et al., 2024)
      • LLM을 활용해 그래프 기반 인덱스(graph-based index) 구축
      • 소스 문서에서 지식 그래프(KG)를 생성
      • 클러스터링된 엔터티에 대한 커뮤니티 요약(community summaries)을 미리 생성
      • 질의가 들어오면, 각 관련 커뮤니티 요약을 기반으로 **부분 응답(partial responses)**을 생성 후, 최종 응답을 집계
    • LightRAG (Guo et al., 2024)
      • GraphRAG의 경량 버전
      • 엔터티 및 관계를 추출하여 각 엔터티에 대한 짧은 설명을 생성
      • 검색된 정보를 질의와 통합하여 LLM에 입력

    모델 설정 및 하이퍼파라미터

    KG2RAG 및 모든 비교 모델에서 동일한 설정을 적용하였습니다.

    • LLM: LLaMA3-8B (Dubey et al., 2024)
      • KG 구축 및 응답 생성에 사용됨
    • 임베딩 모델: mxbai-embed-large (Li & Li, 2024)
    • 크로스 인코더 재정렬기: bge-reranker-large (Xiao et al., 2023)
      • Hybrid RAG 및 KG2RAG에서 검색된 청크를 정렬하는 데 사용
    • 상위 검색 개수(k): 기본값 10 (별도 지정하지 않는 한)

    요약 (Summary)

    • 실험에서는 HotpotQA (Dist / Fullwiki) 및 변형 데이터셋 (Shuffle-HotpotQA-Dist / Full) 사용
    • 검색 품질 및 응답 품질을 평가 (F1, Precision, Recall 측정)
    • LLM-only, Semantic RAG, Hybrid RAG, GraphRAG, LightRAG 등과 성능 비교
    • LLaMA3-8B + mxbai-embed-large + bge-reranker-large 사용

    KG2RAG는 기존의 RAG 기반 접근 방식보다 더욱 정교한 검색 및 조직화 기법을 적용하여 응답 품질 및 검색 품질의 향상을 목표로 합니다.

    3.2 비교 및 분석 (Comparisons and Analyses)

    응답 품질 (Response Quality)

    표 1에서 KG2RAG와 기존 방법들의 응답 품질 비교 결과를 확인할 수 있습니다.

    표에서 알 수 있듯이, RAG를 활용하는 모든 방법은 LLM 단독(LLM-only) 방식보다 유의미한 성능 향상을 보였습니다.

    • HotpotQA 원본 데이터셋에서 F1 점수가 29.1% 이상 향상
    • Shuffle-HotpotQA 데이터셋에서 F1 점수가 26.4% 이상 향상

    특히 KG2RAG는 모든 RAG 기반 방법들보다 지속적으로 우수한 성능을 보이며,

    • fullwiki 설정
    • Shuffle-HotpotQA 데이터셋
      에서 가장 큰 성능 향상을 기록하였습니다.

    fullwiki 설정에서는, LLM이 처리해야 할 후보 문서의 수가 distractor 설정보다 수천 배 많아지므로,

    • 고품질 검색 결과
    • 효과적인 컨텍스트 조직화
      가 필수적입니다.

    이처럼 어려운 환경에서도 KG2RAG는 기존 방법보다 최소 8% 이상 높은 성능을 보였으며,

    • 이는 KG 기반 검색이 의미 기반(semantic-based) 및 키워드 기반(keyword-based) 검색 방법을 능가한다는 것을 입증합니다.

    또한, Shuffle-HotpotQA 데이터셋에서는 LLM이 사전 지식이 아닌 RAG에 더 의존해야 하는 상황이므로,

    • KG2RAG는 distractor 설정에서 최소 2.5%, fullwiki 설정에서 최소 6.4%의 추가 성능 향상을 달성하였습니다.

    검색 품질 (Retrieval Quality)

    표 2에서 실험 결과를 확인할 수 있습니다.

    KG2RAG는 검색 정밀도(precision)와 재현율(recall) 간의 균형을 효과적으로 조절하며,

    • KG 기반 확장(KG-guided expansion)과 컨텍스트 조직화(KG-based context organization)의 효과를 강조합니다.

    특히:

    • distractor 설정에서는 무관한 청크의 수가 제한적이므로,
      • KG2RAG는 다른 방법들과 유사한 수준의 재현율을 유지하면서도
      • 정밀도(precision)에서 더 높은 성능을 보였습니다
      • (HotpotQA에서 +7.9%, Shuffle-HotpotQA에서 +6.9% 향상)
    • fullwiki 설정에서는,
      • 유용한 청크를 식별하는 것이 더 어려운 환경이므로,
      • KG2RAG는 정밀도(precision)와 재현율(recall) 모두 기존 방법 대비 지속적인 성능 향상을 달성하였습니다.

    이러한 결과는 KG2RAG가 KG의 도움을 받아 고품질 검색 결과를 제공할 수 있음을 실험적으로 입증합니다.


    3.3 추가 논의 (Further Discussions)

    모듈별 기여도 분석 (Ablation Study)

    각 모듈의 기여도를 분석하기 위해 KG2RAG의 다양한 구성 요소(KG 기반 확장 및 컨텍스트 조직화)의 효과를 평가하였습니다.

    HotpotQA 및 Shuffle-HotpotQA 데이터셋(distractor 설정)에서 수행한 실험 결과는 표 3과 표 4에 나와 있으며,

    • 검색된 평균 청크 개수도 함께 보고합니다.

    1) KG 기반 컨텍스트 조직화 없이 KG 기반 확장만 적용 ("w/o organization")

    • 응답 품질은 유사하지만, 검색 품질이 현저히 저하됨
    • KG 기반 컨텍스트 조직화 없이 검색된 청크 수가 과도하게 많아지면서,
      • 무관한 청크가 포함될 가능성이 높아짐
      • 불필요한 토큰이 증가하여 전체 성능 저하 발생

     KG 기반 컨텍스트 조직화가 검색된 청크를 효과적으로 필터링하고 정리하는 데 중요한 역할을 함을 확인

    2) KG 기반 확장 없이 KG 기반 컨텍스트 조직화만 적용 ("w/o expansion")

    • 검색 정밀도(precision)와 F1 점수는 높지만, 응답 품질이 저하됨
    • 필요한 일부 청크가 검색되지 않음
    • 의미 기반 검색(semantic-based retrieval)만으로는 충분한 정보를 확보하지 못함

     KG 기반 확장은 청크 간의 사실적 관계를 활용하여, 의미 기반 검색이 놓칠 수 있는 중요한 정보를 보완하는 역할을 함을 입증


    k 값 변화에 따른 성능 (Performance w.r.t. Varying k)

    distractor 설정에서 HotpotQA 데이터셋을 사용하여 다양한 k 값(최상위 검색 청크 개수)에 대한 실험을 수행하였습니다.
     결과는 그림 5에 나타나 있음

    실험 결과:

    • KG2RAG는 k 값이 달라져도 기존 방법보다 지속적으로 우수한 성능을 유지
    • 적절한 k 값(예: 5 또는 10) 설정 시, 고품질 청크를 효율적으로 검색 가능
      • 일관된 컨텍스트를 유지하면서 높은 품질의 응답을 생성

    k 값이 너무 클 경우 (예: k=15)

    • 검색 재현율(recall)은 증가하지만, 응답 품질이 비례적으로 향상되지 않음
    • 단순히 검색된 청크의 수를 늘리는 것이 항상 더 나은 결과를 보장하지 않음

     KG2RAG는 k 값 변화에 가장 낮은 민감도를 보이며, RAG 프로세스를 보다 안정적으로 수행할 수 있도록 함


    m 값 변화에 따른 성능 (Performance w.r.t. Varying m)

    • m 값은 그래프 확장의 깊이를 조절하는 하이퍼파라미터
    • 검색 정밀도(precision)와 재현율(recall) 간의 균형을 조절하는 역할

    이전 실험에서는 m=1로 설정하였으며,
     HotpotQA 데이터셋에서 다양한 m 값으로 추가 실험을 수행 (표 5 참고)

    실험 결과:

    • m=1이 가장 적절한 설정
    • KG2RAG는 m 값 변화에 대한 민감도가 낮아 안정적인 성능을 유지

     m 값을 조정해도 성능 저하 없이 안정적으로 동작함을 확인


    강건성 분석 (Robustness Analysis)

    KG2RAG가 품질이 낮은 KG에도 강건한 성능을 유지하는지 검증하기 위해,

    • KG에서 삼중항(triplet)의 5% 또는 10%를 무작위로 제거하고 실험을 수행

     결과는 표 6에 제시

    실험 결과:

    • 일부 삼중항이 제거되었음에도 KG2RAG는 강건한 성능을 유지
    • 여전히 기존 방법들보다 우수한 성능을 보임

     KG2RAG는 KG의 품질이 일부 저하되더라도 안정적인 성능을 유지하는 강건한 프레임워크임을 실험적으로 입증


    요약 (Summary)

    1. KG2RAG는 기존 RAG 기반 방법보다 우수한 응답 품질과 검색 품질을 보임
    2. KG 기반 확장과 컨텍스트 조직화가 상호 보완적인 역할을 수행
    3. k 및 m 값 변화에도 민감하지 않으며, RAG 과정이 보다 안정적으로 수행됨
    4. 일부 KG 품질이 저하되더라도 성능이 크게 감소하지 않으며, 강건한 성능을 유지

     KG2RAG는 의미 기반 및 키워드 기반 RAG를 능가하는 효과적인 검색 증강 생성(RAG) 모델임을 실험적으로 입증 


    4. 관련 연구 (Related Work)

    검색 증강 생성 (Retrieval-Augmented Generation, RAG)

    LLM이 사실에 근거하지 않은 환각(hallucination) 현상을 보이는 주요 원인은 관련 지식의 부족 또는 구식(outdated) 정보 포함 때문입니다(Xu et al., 2024b; Liu et al., 2024a). 이러한 문제를 해결하기 위해 **검색 증강 생성(RAG, Retrieval-Augmented Generation)**이 제안되었습니다(Gao et al., 2023; Fan et al., 2024). RAG는 후보 문서 풀(pool)에서 관련 청크를 검색하여 LLM의 응답 생성을 보조하는 방식으로 작동합니다.

    일반적인 RAG 시스템(Lewis et al., 2020)에서는,

    1. 문서를 청크(chunk) 단위로 분할한 후
    2. 각 청크를 임베딩 모델(Nussbaum et al., 2024; Li & Li, 2024)로 인코딩하여 효율적인 검색을 위한 인덱스를 생성합니다.

    **슬라이딩 윈도우(sliding window) 접근 방식(Jiao, 2006)**에서 영감을 받아,

    • **문장 윈도우 검색(sentence window retrieval) 기법(Jiang et al., 2023; Eibich et al., 2024)**이 개발되었습니다.
      • 이 기법은 검색된 청크 주변의 청크들을 추가로 포함하여 컨텍스트를 풍부하게 만들기 위해 사용됩니다.
      • 그러나, 문장 윈도우 검색은 같은 문서 내에서 물리적으로 가까운 청크들만 고려한다는 한계가 있습니다.

    이에 반해, KG2RAG는 단순한 문맥 확장이 아니라, 문서를 초월하여 청크 간의 사실적 관계(factual associations)를 기반으로 검색 확장을 수행합니다.


    재정렬 (Reranking) 기법

    **재정렬(Reranking)**은 정보 검색에서 중요한 기법입니다(Ampazis, 2024; Glass et al., 2022).

    • 초기 검색된 청크를 딥러닝 기반 크로스 인코더(cross-encoder, Xiao et al., 2023)에 입력하여 의미적 연관성을 보다 정확하게 측정합니다.
    • 이를 통해 검색 및 생성 품질을 향상할 수 있습니다(Grems, 1962; Kuo et al., 2024).

    KG2RAG는 검색된 청크들을 KG를 기반으로 단락(paragraph) 형태로 조직화하며,

    • 질의(query)와 단락 간의 정교한 관련성 평가가 가능하도록 설계되었습니다.

    대형 언어 모델과 지식 그래프 (LLMs with Knowledge Graphs)

    대형 언어 모델(LLM, Li et al., 2024; Ren et al., 2024)은 현대 인공지능(AI)의 가장 대표적인 성과 중 하나입니다.

    • 한편, **지식 그래프(KG, Ji et al., 2022)**는 그래프 구조로 표현된 관계형 데이터베이스로,
      • 지식 그래프 완성(knowledge graph completion, Liu et al., 2024c)
      • 지식 그래프 질의 응답(knowledge graph question answering, Sen et al., 2023)
        등의 AI 응용 분야에서 중요한 역할을 합니다.

    최근 연구에서는 지식 그래프(KG)를 활용하여 LLM의 생성 능력을 향상하는 방법이 탐색되고 있습니다(Wang et al., 2024a; Edge et al., 2024; Xu et al., 2024a).

    예를 들어:

    • KGP (Wang et al., 2024a):
      • 페이지(page) 및 단락(passage) 노드로 구성된 "문서 지식 그래프(document KG)"를 생성
      • TF-IDF를 활용해 단락 간 연결(link) 설정
      • 검색 확장을 수행
      • 하지만, KGP에서 생성된 문서 KG는 본질적으로 문맥 창 확장(context window expansion)과 유사한 방식으로 동작
    • GraphRAG (Edge et al., 2024):
      • 질의 중심(query-focused) 요약 과제(targeted summarization)에서 사용
      • LLM을 활용해 문서 기반으로 자동으로 KG를 생성
      • 데이터셋의 의미적 구조를 분석
      • KG를 다양한 수준에서 분할하여 계층적으로(linked nodes hierarchically) 활용

     기존 연구와 달리, KG2RAG는 RAG를 향상하기 위해 KG의 사실 수준(fact-level) 구조와 지식을 적극적으로 활용하는 것을 목표로 함


    5. 결론 (Conclusion)

    본 논문에서는 KG2RAG라는 새로운 프레임워크를 제안하였습니다.

    • 이 프레임워크는 RAG 성능을 향상시키기 위해 지식 그래프(KG)를 통합하는 방식으로 설계되었습니다.

    주요 기여:

    1. 청크와 특정 KG 간의 연계를 구축
      • 이를 통해 청크 간 사실 수준(fact-level)의 관계를 제공
    2. 의미 기반 검색을 통해 검색된 "시드 청크(seed chunks)"를 바탕으로
      • KG 기반 청크 확장(KG-guided chunk expansion)
      • KG 기반 컨텍스트 조직화(KG-based context organization)
        를 수행

    이 과정을 통해,

    • 검색된 청크는 더욱 다양해지고(intrinsically related & self-consistent)
    • 자연스럽고 정돈된 단락으로 구성됨
    • 이를 LLM에 입력하여 고품질 응답 생성이 가능

    KG2RAG는 기존의 RAG 기반 접근법들과 비교하여 우수한 성능을 보였으며,

    • 응답 품질(response quality)
    • 검색 품질(retrieval quality)
      두 가지 측면에서 뛰어난 성능을 입증하였습니다.

    또한,

    • **모듈별 기여도 분석(ablation study)**을 통해,
    • **KG 기반 청크 확장(KG-guided chunk expansion)**과 **KG 기반 컨텍스트 조직화(KG-based context organization)**가 상호 보완적으로 작용하여 KG2RAG의 성능을 강화함을 확인하였습니다.

     본 연구는 RAG 시스템의 발전과 지식 그래프(KG)의 효과적인 활용에 기여하는 바가 크며, 향후 다양한 AI 응용 분야에서의 적용 가능성이 높음 


    제한 사항 (Limitations)

    **검색 증강 생성(RAG, Retrieval-Augmented Generation)**은 체계적인 엔지니어링 프레임워크로, 여러 관점에서 개선될 수 있습니다.
    예를 들면:

    • 질의 재작성(Query rewriting, Xiao et al., 2023)
    • 검색 최적화(Retrieval optimization, Eibich et al., 2024)
    • 다중 턴 대화(Multi-turn dialogue, Yao et al., 2023)
    • 기타 다양한 요소(Gao et al., 2023) 등이 포함될 수 있습니다.

    그러나, KG2RAG는 검색 최적화(retrieval optimization)에만 초점을 맞추며,

    • KG 기반 검색 확장(KG-guided retrieval expansion)
    • KG 기반 컨텍스트 조직화(KG-based context organization)
      을 수행하여, 구조화된 사실적 지식(structured factual knowledge)을 활용해 RAG 성능을 향상하는 것을 목표로 합니다.

    즉, KG2RAG는 RAG의 다른 모듈(예: 질의 재작성, 다중 턴 대화 최적화 등)을 직접 최적화하지는 않습니다.

    하지만,

    • KG2RAG는 기존 모듈들과 독립적으로(orthogonal) 동작하며, 다른 RAG 기반 접근 방식들과도 호환될 수 있도록 설계되었습니다.

     향후 연구에서는 KG2RAG를 "플러그 앤 플레이(plug-and-play)" 방식의 도구로 개발하여,

    • 다른 접근 방식과 쉽게 통합될 수 있도록 개선할 예정이며, 이를 통해 연구 커뮤니티의 발전을 더욱 촉진하고자 합니다. 
Designed by Tistory.