DEV Community

Tutty
Tutty

Posted on

Towards Lifelong Dialogue Agents via Timeline-based Memory Management

選定理由

対話内容を因果関係を考慮したタイムライン形式でまとめる点が興味深い。ソウル大・延世大の共同研究

Paper: https://arxiv.org/abs/2406.10996
Code: N/A

Agentic RAG の記憶の管理方法を工夫することで改善する。グラフで記憶を管理する研究は割と昔からあるが、対話履歴をノードとしてグラフ化し、因果・類似関係を動的にリンクする点あたりは新しい。

概要

【社会課題】
高齢者支援・教育・メンタルケアなど文脈に応じたパーソナライズが不可欠な領域では、人とAIの長期的な対話が求められている。

【技術課題】
エージェントが対話を記憶する時は、将来的にどの情報が重要かを判断する必要がある。又、記憶活用時は、どの記憶を活用するのか良いか選択する必要がある(図1)。

fig1

従来は記憶は単純なリスト構造であり、過去の発話の背後にある意味的なつながりや因果構造が考慮されていない。

【提案】
以下の3フェーズから成る記憶管理フレームワーク THEANINE を提案した。

  • 記憶グラフ:対話の各発話をノードとして保存し、因果関係でリンクを張る。
  • タイムライン抽出:質問文に関連する過去の出来事を因果順・時間順に再構成。
  • 応答生成:そのタイムラインをもとに、文脈を踏まえた応答をLLMで生成。

【効果】
応答の一貫性・文脈理解・情報正確性が人手と自動評価においてSOTA。新しい評価法 TeaFarm(反事実QA)を用いた結果、THEANINEは長期記憶の利用度が高いことがわかった。

THEANINE

fig2

THEANINEの概略図が図2であり、フェーズ1〜3まである。

Phase I: Memory Graph Construction

まず対話履歴の各発話を「記憶ノード」として保存する。

例:ユーザー「私はかつてクルーズ船でひどい酔いをした。以来、船が怖い。」→ 1つの記憶ノードにまとまる

次にノード間に関係性(前後関係、影響関係など)のエッジを構築。これにより、記憶間の意味的関連を明示化する。図3に示すように接続候補のノード(オレンジ色)が記憶ノードが持つテキストの類似性に基づき選ばれる。エッジの関係性を図3下に示す。単純な時間的前後関係はコンテキスト性がなく悪影響を持つため除外している。

例:ユーザーが「クルーズ船が怖い」と言った後、「旅行したい」と言えば、因果的につながる。

fig3

app.b1

詳細なアルゴリズムは以下である。

al1

Phase II: Timeline Retrieval & Refinement

ユーザーの質問に対して、関連する記憶ノードをグラフからTop-Kで取得。取得したノード mrem_{re} と接続しているノード集合の中で最も timestamp が古いノード mstartm_{start} を取得する(以下式)。ここで、 Θ\Theta は最も古い timestamp のノードを取り出す関数、 VV は引数を含む頂点集合を取得する関数である。

mstart=Θ(V(Cre)) m_{\text{start}} = \Theta(V(C_{\text{re}}))

mstartm_{start} を起点として mrem_{re} を通るパスを nn 個サンプリングし、タイムライン候補(Raw Memory Timeline)として扱う。このパスの中から不要な情報を削ぎ落とし、必要な関係性のみを強調して整えたものの中で最も確率的に高いものをLLMに生成してもらう。(以下式)

TΦ={arg maxτΦPLLM(τΦD,τ)    τT} \text{T}{\Phi} = \lbrace \argmax{\tau_{\Phi}} P_{\text{LLM}}(\tau_{\Phi} \mid D, \tau) \;\mid |\; \tau \in \text{T} \rbrace

fig4

詳細なアルゴリズムは以下である。

al2

Phase III: Timeline-Augmented Generation

ユーザーの質問とその前提文脈(=タイムライン)に基づいて、応答を生成する。

un+1ˉ=arg maxun+1PLLM(un+1D,TΦ) \bar{u_{n+1}} = \argmax_{u_{n+1}} P_{\text{LLM}}(u_{n+1} \mid D, T_{\Phi})

実験

実験条件

データセット:Multi-session Chat (MSC), Conversation Chronicles (CC)
ベースライン手法: Memory Retrieval, Memory Update, RSum-LLM, MemoChat, COMEDY
評価方法とメトリクス: 自動評価(Bleu-4, Rouge-L, Mauve, BertScore)、G-Eval(Coherence, Fact Recall, Causality), 主観評価(Helpfulness of Retrieved Memories)
言語モデル: GPT-3.5, GPT-4

検証1

THEANINEの有効性を検証するために、自動評価(GPT-4)と主観評価の両方で、応答の品質・記憶の適切さ・一貫性などを比較分析した。

tb1

表1は応答生成の自動評価と主観評価であり、THEANINEは総じて性能が高い。特筆すべきは Memory Updateを行うと性能ダウンしている点で、記憶更新をしないTHEANINEの有効である根拠となりうる。

tb2

表2は表1のアブレーションスタディである。relation-aware linking > retrieving timeline as a whole > timeline re-finementの順に効果が大きいことがわかる。

tb3
fig6

表3は回収した記憶が有効な情報を持っていたかどうかの人間による判定であり、図6は過去の会話が現在の対話に対して筋が通っているかどうかの判定である。

検証2

G-Evalによる自動評価は評価LLMの性能に依存する面が強い。そこで、反事実の文章を入力して、その事実に反する過去の記憶を回収できるか評価する TeaFarm という独自評価手法を導入した。

fig8

図8は生成した反事実の文章例である。

tb4

表4では各手法の成功率(Success Rate, SR)が示されており、THEANINEは全体として他のベースライン手法よりも高い成功率を記録した。特にCCデータセットにおいてはTHEANINEが最も優れた成績を示している。全体的に各手法の成功率が低めであり、TeaFarmが長期的な記憶管理を必要とする厳しい評価設定であることが示されている。興味深い点として、Retrieverを使用する手法(THEANINEや一部ベースライン)は、Retrieverを用いずにLLM単体で記憶を保持・活用する手法(RSum-LLM、MemoChat、COMEDYなど)よりも高い成績を示しており、大規模言語モデルの時代においても「外部記憶を構造的に扱う」アプローチが依然として有効であることが示唆されている。

また、アブレーションスタディでは元のTHEANINEよりわずかに劣る結果となっており、各構成要素が性能向上に寄与していることが裏付けられている。

Top comments (0)