DEV Community

Tutty
Tutty

Posted on • Edited on

CommunityKG-RAG: Leveraging Community Structures in Knowledge Graph for Advanced RAG in Fact-Checking

選定理由

グラフベースRAG+事実検証という組み合わせ。llamaindexやlangchain等にもグラフベースRAGは実装されているが、効果がちゃんと記述されていないため把握したい。

Paper: https://arxiv.org/pdf/2408.08535
Code: N/A

グラフRAGは複雑なデータパイプラインを持つユースケースには情報の構造化がしやすくなり有効、グラフ理論の技術も組み合わせて使えるのも新しい価値をだせそうな印象。Relation Extractionの日本語モデルはあるのだろうか。
Microsoft ResearchのGraphRAG[Edge2024]を引用していないのが気になる。

概要

【社会課題】
LLMには訓練データのカットオフや「幻覚」の問題があり、正確な事実検証を行うには不十分な点がある。

【技術課題】
テキストを構造化せずRAGを行うことに以下の課題が存在する:

  • 文脈の理解不足: テキストが長い場合や中間に重要な情報が埋もれている場合に、効果的に活用できない。LLMは関連性の低い情報やノイズの多いコンテキストが含まれると正確な回答を返せない。
  • 情報の関係性が不明確: エンティティ間の複雑な関係を認識できない。事実検証では、異なる情報ソース間の関係を理解し情報を正確に紐付けることが必要だが、これが欠如していると誤った結論を導きやすい。特に単純なキーワード検索では間接的な関係性を捉えられない。

【提案】
RAGに知識グラフ(KG)を統合したCommunityKG-RAGを提案。以下のメリットがある:

  • コミュニティ構造を活用:KG内の関連エンティティをグループ化し、ノイズを抑えながら必要な情報を効率的に抽出。
  • マルチホップ情報探索: 間接的な関係を捉え深い文脈を補強。
  • 文章化されたKGの統合: KGのトリプレットにより順序的なテキスト処理を強化。

【効果】
ベースラインよりも事実検証タスクでの精度が大幅に向上し、特に関連情報の取得と文脈理解において優れていることが示された。また、ゼロショットで動くため追加学習が不要で、他モデルにも容易に適用可能であることが確認された。

fig1

CommunityKG-RAG

fig2

グラフの構築と利用の全体像はfig2である。各処理の内容を順に以下に書くと、

  • 共参照解析: 意味的な一貫性を高める前処理として、コーパス内のエンティティや代名詞の参照関係を明らかにする。

  • グラフ構築: Chunking後にREBELと呼ばれる関係抽出モデルを使用し、文書中のエンティティ間の関係を抽出してグラフ化する。

  • ノードの特徴表現: 事前学習済みBERTモデルを用いて単語の埋め込みを計算する。

  • コミュニティ検出: Louvainアルゴリズムで知識グラフ内のコミュニティを検出する。これによりグラフ全体を小さな関連グループに分け、特定コンテキストでの関連性を捉えやすくする。

  • クエリとの関連性計算とコミュニティ選択: クエリの埋め込みとコミュニティ埋め込みを比較し、関連性の高い上位のコミュニティを選択する。これにより、情報検索が効率的かつ効果的に行われ、関連するコミュニティに焦点を絞った分析ができる。

  • コミュニティ内の文選択: 選択されたコミュニティ内の文について(埋め込み検索等により)関連性の高い文を抽出する。これにより、対象クエリに対して的確な情報が検索され、事実検証精度が向上する。

実験

実験設定

  • データセット: PolitiFactSnopesから収集された15,601件の主張を含む事実検証タスク用のデータセットMOCHEGデータセットを使用した。真実性ラベル(Supported、Refuted、Not Enough Information (NEI))が付与されている。
  • 比較手法: ベースラインはNo Retrievalで文脈なしでLLMが回答を生成。次がSemantic Retrieval(通常のRAG)でクエリとコンテキスト間のコサイン類似度を基に、BERTで最も関連性の高い文を抽出。最後にKAPING: 主張と関連するトリプル((エンティティ, 関係, エンティティ)形式)間の文類似度に基づいてトリプルを提供し、LLMで回答。
  • 使用モデル: LLaMa2-7Bモデルを使用し、設定の変更に伴う性能評価も実施。
  • 評価指標: 主張の真偽判定をAccuracyで評価
  • : トップ25%のコミュニティとその100%の関連文を使用するCommunityKG-RAG25-100を基準として評価。

実験結果

手法の有効性

CommunityKG-RAG25-100が最も高い精度を示し、事実検証において他のベースライン手法を大きく上回った。特に、コミュニティベースの知識を活用することで、情報の関連性と正確性が大幅に向上したことが確認されました。

tb1

アブレーションスタディ

  • バックボーンモデルの比較: LLaMa2-7BとLLaMa3-8Bモデルで検証し、LLaMa2-7Bの方が事実検証タスクでの精度が高いことが判明。
  • コミュニティと文の選択閾値の影響: コミュニティと文の選択割合を25%、50%、75%、100%に設定した場合、全体の精度は100%選択が最も高い精度を達成し、包括的なコンテキストがモデルの正確性向上に寄与していると分かりました。

tb2

tb3

Top comments (0)