AI・機械学習
上級

MEMIT(Mass-Editing Memory In a Transformer)(メミット)

MEMIT(Mass-Editing Memory In a Transformer)とは、ROME を拡張し、数千〜数万件の事実知識を Transformer の複数層に同時に書き込む大規模知識編集手法である。2022年に MIT の Meng らが提案し、ROME の単一編集制約を克服した。

0 回閲覧
0 いいね

MEMIT(Mass-Editing Memory In a Transformer)とは

MEMIT は ROME の後継手法として 2022年に同じ MIT グループ(Kevin Meng ら)が発表した大規模知識編集技術である。ROME が 1回1事実の編集に限定されていたのに対し、MEMIT は 数千〜10,000件の事実を同時に複数層の MLP に分散して書き込む ことで、連続編集時の品質劣化を大幅に軽減した。

概要

MEMIT の基本原理は ROME と同じ「MLP が key-value ストアとして動作する」仮説に基づくが、編集を 単一層ではなく複数層(通常 5-10層)に分散 させる点が異なる。各層への書き込み量を最小化する最適化問題を解くことで、大量編集時の重み変動を抑制する。

具体的には、GPT-J (6B) で layer 3-8 の MLP 第2層に分散書き込みを行い、10,000件の事実編集を 30秒で完了する。ROME で同数の編集を逐次実行すると品質劣化が著しい(パープレキシティ 50%+ 増加)のに対し、MEMIT では 5% 以内の劣化に抑えられる。

主な特徴・仕組み

  • 多層分散書き込み: 編集を複数の MLP 層に均等に分配し、各層の重み変動を最小化
  • 同時編集数: 1回の操作で最大 10,000件の事実を一括編集(ROME の 10,000倍)
  • 品質維持: 10,000件編集後もパープレキシティ劣化 5% 以内(ROME 連続適用は 50%+)
  • 編集速度: A100 80GB で 10,000件を約 30秒。1件あたり 3ミリ秒
  • バッチ最適化: 全編集対象の value ベクトルを同時に最適化し、層間の干渉を考慮
  • GPT-J (6B), GPT-NeoX (20B), LLaMA 2 (7B/13B/70B) で検証済み
  • 閉形式解: ROME のような反復最適化ではなく、正規方程式の閉形式解で高速計算
  • CounterFact ベンチマーク: 編集成功率 99.5%、局所性スコア 0.961

ROME との技術的差異

項目ROMEMEMIT
編集対象層単一層(1つの critical layer)複数層(5-10層に分散)
編集数/回1件最大 10,000件
最適化手法勾配降下(反復)閉形式解(正規方程式)
重み更新W + u·v^T(ランク1)W + Σ u_i·v_i^T(ランクN)
10K編集後の劣化パープレキシティ +50%パープレキシティ +5%
計算時間(10K件)8-14時間(逐次)30秒(一括)

スケーラビリティ検証

同時編集数編集成功率局所性スコアパープレキシティ変化計算時間(A100)
100件99.8%0.968+0.5%2秒
1,000件99.6%0.964+1.2%5秒
5,000件99.5%0.961+3.1%15秒
10,000件99.3%0.957+4.8%30秒

※ GPT-J (6B) / CounterFact ベンチマーク

ユースケースと実用例

1. モデルの定期知識アップデート

月次で 1,000-5,000件の事実更新(人事異動、法改正、製品スペック変更等)を一括適用。ファインチューニングなら 1日以上かかる処理が 15秒で完了。

2. ハルシネーション大規模修正

QA データセットで検出された誤回答パターン 2,000件を一括修正。医療・法律分野の LLM で特に有効。

3. 多言語同時編集

英語・日本語・中国語での同一事実を同時に編集。言語間の知識一貫性を保つ。

4. バイアス除去バッチ処理

ジェンダー・人種関連のバイアス的応答 500件を一括で中立化。

課題と制限

  • メモリ消費: 10,000件同時編集で A100 80GB のメモリをほぼ占有。70B モデルでは A100×4 が必要
  • マルチホップ推論: ROME と同様、関連する間接知識への自動波及は限定的
  • 知識の衝突: 矛盾する事実(「A は B」と「A は C」)を同時に編集した場合の挙動が不安定
  • 評価基準の統一: CounterFact と zsRE でスコアの傾向が異なり、手法間の公平な比較が困難

よくある質問(FAQ)

Q1: MEMIT は LoRA より効率的ですか? A: 用途が異なる。MEMIT は「特定の事実 N件を正確に書き換える」タスクに特化し、LoRA は「タスク全体のスキルを向上させる」用途向け。10,000件の事実修正に限れば、MEMIT(30秒)は LoRA(数時間)より圧倒的に高速。

Q2: Llama 3 や Qwen 2.5 にも使えますか? A: 原理的には Transformer ベースの任意のモデルに適用可能。コミュニティ実装で LLaMA 3 (8B/70B)、Mistral 7B、Qwen 2.5 での動作報告がある。ただし、モデルごとに critical layer の再特定(Causal Tracing)が必要。

Q3: 編集を元に戻せますか? A: MEMIT は差分行列 Δ を保存しておけば W - Δ で理論的に復元可能。実用上は編集前のチェックポイントを保存しておくのが安全。

まとめ

  • MEMIT は ROME を拡張し、10,000件の同時知識編集を 30秒で実現する大規模編集手法
  • 複数層への分散書き込みにより、品質劣化をパープレキシティ +5% 以内に抑制
  • 月次の知識アップデートやハルシネーション一括修正に実用的
  • メモリ消費が大きく、70B モデルでは A100×4 が必要