AbsenceBench: 言語モデルは欠落した情報を識別できない
(arxiv.org)- 長いコンテキストの中で「存在する情報」を見つける評価は急速に向上してきたが、AbsenceBench は原文と修正版を比較して 欠けている情報 を見つけ出す能力が依然として脆弱であることを示している
- ベンチマークは 詩、数列、GitHub PR diff の3ドメインで構成され、4,302件のインスタンスと平均5Kトークンのコンテキストを使用し、基本の欠落率は10%である
- GPT-4、Claude-3.7-Sonnet、Gemini-2.5-flash、o3-mini、Grok-3-mini、DeepSeek-R1 など14個のLLMを評価しても最新モデルの性能は限定的で、Claude-3.7-Sonnet は平均5Kトークンで 69.6% F1-score にとどまった
- AbsenceBench の F1-score は NIAH と比べて平均 56.9%低下 し、推論時計算モデルも平均8K個の追加 thinking token を使いながら性能向上は7.9%にとどまった
- 欠落位置に明示的な placeholder を入れると性能が平均 35.7%向上 し、Transformer attention が文書内の「gap」に注意を向けにくいという解釈を裏づけている
AbsenceBenchが問うもの
- 最近のLLMは長いコンテキストを扱うタスクで高い性能を示しており、Needle-in-a-Haystack(NIAH) テストでは非常に長い入力の中から小さな特異情報を見つけ出す能力を見せている
- AbsenceBench はその逆方向の問題を評価する
- 入力内に含まれている情報を探すのではなく、明確に欠けている情報 を見つけなければならない
- モデルには元の文書と、一部の要素が削除された修正文書が一緒に与えられる
- 出力は修正文書から欠落した要素の正確な集合でなければならない
- このタスクはルールが単純で正解も明確だが、最先端のクローズドモデルでも低い性能を示す
タスク定義とデータ構成
- AbsenceBench は元文書
Dorigから一部の要素Domitを意図的に取り除いて修正文書Dmodifiedを作り、モデルが取り除かれた要素を見つけ出す 制御された生成 形式である - 「document length」は元文書のトークン数、「context length」はモデル入力全体のトークン数を意味する
- ベンチマーク全体は 4,302件のインスタンス で構成され、平均コンテキスト長は5Kトークンである
- コードリポジトリは harvey-fin/absence-bench で公開されている
- トークン長の測定には GPT-4 Tokenizer を使用する
詩、数列、GitHub PR diff
-
詩(Poetry)
- Gutenberg Poetry Corpus の詩を使用する
- 行単位で欠落を適用し、行区切り文字は newline 文字である
- 文書長の多様性を確保するため、各詩の行数が100〜1000の間で一様に分布するように切り出す
-
数列
- 合計1,200個の合成数列を生成する
- 数字は昇順、降順、ランダム順のいずれかで並べられる
- 連続する数字の間の step size は 1、4、7、13 のいずれかである
- 最初の数字は 0〜9999 からランダムに選ばれる
-
GitHub PR diff
- 公開GitHubデータと GitHub API を使って、PR数が最も多い上位20個のリポジトリのPRを収集する
- diff に更新行が10〜200行あるPRのみを残す
+または-で始まる更新行のうち、各PR diff 内で一意な行だけを欠落対象とする- マージコンフリクトを解決・検証するLLMはファイル diff 内の欠落を検出できる必要があるため、実際のユースケースともつながっている
14個のLLM評価で明らかになった限界
- 評価対象は合計 14個のLLM である
- GPT-4、Claude-3.7-Sonnet、Gemini-2.5-flash などの最新モデルを含む
- o3-mini、Grok-3-mini、DeepSeek-R1 などの推論時計算モデルを含む
- Claude-3.7-Sonnet と Gemini-2.5-flash は推論時計算の使用有無を分けて評価した
- 最新モデルでも AbsenceBench では安定した性能を出せない
- Claude-3.7-Sonnet は平均5Kトークンのコンテキストで 69.6% F1-score を記録した
- コンテキスト長が長くなるほどタスクはより難しくなり、特に 詩ドメイン で差が目立つ
- 推論時計算は平均 7.9%の性能向上 にとどまる
- その代わり平均8K個の追加 thinking token を生成する
- これは平均文書長のほぼ3倍に相当する
- 欠落率が低いほど、むしろモデル性能が悪化する結果も見られた
NIAHとは異なる失敗パターン
- AbsenceBench は NIAH よりもLLMにとってはるかに難しいタスクであることが示された
- 3つのLLMを AbsenceBench 設定と元の NIAH 設定で比較したところ、F1-score は平均 56.9%低下 した
- Transformer attention は文書内の gap を扱うのが難しい可能性がある
- 欠落は attention が向けられる特定の key に対応しないためである
- 欠落位置に placeholder 文字列を入れる実験では性能が平均 35.7%向上 した
- 例として、欠けた行の位置に
<missing line>のようなトークンを入れる方法がある
- 例として、欠けた行の位置に
- この結果は、LLMが情報が「挿入された」状況よりも情報が「欠けた」状況を識別することにより弱い可能性を示している
- LLM-as-a-Judge のように、欠落情報を正しく見抜く必要がある利用形態では、この限界が実用上のリスクにつながる可能性がある
1件のコメント
Hacker Newsの意見
Gerald Sussmanの講演を見た後、Kanizsa triangleの画像をClaudeに入れて、推論された三角形を「見る」ことができるか、かなり曖昧に尋ねてみたところ、画像を認識してすぐに要約を出してきた
そこで画像を90度回転させ、新しい会話で再度試したところ、画像を認識できず、要素の数も間違えた
回転した画像についてClaudeは、四隅にあるPac-Manのような黒い図形4つ、上を指す細い三角形1つと右を指す細い三角形1つ、薄いグレーの背景だと説明した
2011年10月、コメント30件
https://news.ycombinator.com/item?id=3163473
Strange Loopの動画:
2011年7月、コメント36件
https://news.ycombinator.com/item?id=2820118
LLMがテキストや音声を処理するように画像を処理するには、まだ長い道のりがあることはよく知られている
画像ピクセルを直接受け取って高い性能を出すマルチモーダルモデルはほとんどないと思う。視覚機能の大半はハックに近いか、工学的に継ぎ足された方式で、画像はいくつもの処理段階を経た後、各処理器の出力がトークンとしてトランスフォーマーに入る。1つのネットワーク内で起きている場合もあるが、トランスフォーマーではないネットワークも関与している。前処理の例としては、OCR、複数の拡大率・角度・切片を使うCNN(2Dパターン認識器)、その他のものがあり得る
この単純な例は、知能の核心を示していると思う。1,000個の点という大きな複雑さが、単純で低エントロピーの幾何学的形状に合致するため、三角形を認識するのだ
私たちがIQと呼んでいるものは、気づくことのできるパターン複雑性の上限に近いと思う。例えば、その1,000個の点が実はわずかに回転した10次元立方体の頂点であり、10次元の精神には容易に見えるパターンである可能性もある
興味深い。最新モデルでも、元の文脈と編集後の文脈を両方与えたとき、文脈からどの情報が削除されたかを識別する性能は比較的低い
著者らは、トランスフォーマーの注意機構は削除されたトークンにはキーがないため注意を向けられず、それが性能の低さにつながっていると見ている
注意機構の観点では、
Original: {共通接頭部} {削除された部分} {共通接尾部} Modified: {共通接頭部} {共通接尾部}とOriginal: {共通接頭部} {共通接尾部} Modified: {共通接頭部} {追加された部分} {共通接尾部}の間に大きな違いはないRASP(トランスフォーマーを手動でプログラムする言語)なら、おおよそ次のようなアルゴリズムを作れそうだ。1層目は
"Original:"と"Modified:"トークンに注意を向け、現在のトークンが元の側か修正版の側かを判断する。2層目では、あるヘッドがすべての元トークンに均等に注意を向けて値を平均し、別のヘッドがすべての修正版トークンを平均した後、2つの平均の差を計算する。3層目では、この差に似たトークンに注意を向け、それが{削除された部分}または{追加された部分}になる順序に依存する唯一の部分は、差を
元の平均 - 修正版の平均として計算するか、その逆にするかだけだモデルが追加は検出できるのに削除はできないのだとすれば、原理的にはこのようなアルゴリズム、または類似のアルゴリズムを学習する能力はあるものの、削除タイプのデータが不足していて必要な回路が発達していない、という意味かもしれない
非常に興味深い。1) 著者らは、穴はトークンではないため注意機構が穴の位置に注意を向けられない可能性があると言っているが、優れたLLMトランスフォーマーなら、少なくとも穴の近くにはかなり近づけるだろうと予想していた
数学的に、なぜこの構造があまり適していないのかよく理解できない。穴があり得る領域に注意を向けることはできそうに見える。この種のタスクでファインチューニングすれば役立つのかも気になる
2) 入力が短く、欠落が少ないほど難しかった。人間がこの作業をしても単語1つが抜けているのに気づくのはより難しく、1行の欠落は10行の欠落より難しいので、まったく驚きというわけではない。それでもLLMがこうした問題を抱える点は興味深い
3) 推論モデルは文書を実際に書き出しながら解けるので、よりうまくいく。それでも正確度が100%ではないというのは、やはり非常に驚きだ。これは些細なタスクであるべきで、論文の言う通り簡単なプログラムで解ける。ChatGPTのようなエージェントが学習中にこの論文を読み、この種の問題を解くときはPythonを書いて実行すべきだと知る可能性もありそうだ
最も興味深いのは、私たちがまだ明示的に識別できていない知能の他の側面には何があるのか、そしてLLMと現在のAIがそれらに非常に弱いのかどうかだ。この論文は、そのような側面が多く存在する可能性を示唆しており、全体としてベンチマークを作る人たちにとってかなり面白い時期に見える
公平に言えば、文字どおりの文字列差分探しは、LLMに機械的な算術をさせるのと同じカテゴリーに入れる
注意機構は、こうした馬鹿げた作業に対して過度に複雑な思考をしてしまう。こういう場合こそ、高度な次トークン予測をするより、意図的に単純化し、集中し、規律をもって処理すべき
LLMに文書全体を列挙して比較するよう実際に求めれば役に立つはず。推論のように段階に分けるやり方で、LLMが算術や代数の問題を小さなステップに分解するとよりうまくやれるのと似ている
性能の良いモデルはMoEモデルである可能性があると推測している。直感より集中が必要な作業に適したエキスパートが1つか2つあるのかもしれない。Gemini Flashについてはまったく知らないが、MoEモデルなのではないかと思う
論文はまだ読んでいないが、構造的な注意機構の観点から、分類されていない欠落を検出できないのは完全に予想できる。ただし、構造化された思考で解けるとは思う
針を探す問題では、探す対象に注意を向ければよく、注意はこれをかなりうまくこなす
欠落を探すとき、その欠落は何であってもあり得るので、ある文脈全体と別の文脈全体を比較することによってのみ推論できる。注意層がそれを適切に行うのは難しい
これは「長い項目集合をランク付けする」問題に似ている。何らかのメタ認知プロセスがなければ、単にできない
例えば「ここに詩があり、同じ詩から一部の行が抜けているかもしれない版がある。抜けた行はあるか?」というような形だ
私には、LLMの本質的な弱点というよりチューニングの問題に近いように思える
私が機械学習の論文で欠落を見つけるよう求められたら、私の脳はそれを他の機械学習論文と比較するのであって、Star Wars、Top Gear、ギリシャ史、陶芸、そして私が知る何千もの他の文脈と比較する必要はない
AbsenceBenchの手法に対する批判は妥当だが、こうしたものをベンチマークしているという事実自体は非常に喜ばしい。明らかに正しい方向へ押し進める動きだ
存在を検出するとき、実際の脳は感覚入力を受け取り、期待と比較し、平穏を維持するか驚きを記録し、ときには生物を導く予測を出す
不在を検出するときは、定義上、脳は感覚入力に依存できない。感覚的な証拠がないときに驚くには、感覚的な手がかりがなくても期待が満たされなかったことに驚けるほど強い世界モデルが必要だ
不在検出は、感覚入力処理より厳密に高次の神経学的タスクに見える
LLMがこの高次の神経学的タスクをできないのだとすれば、これは現在のところ生物にしかない能力なのではないか?
説明している内容は記憶に関係している。記憶とは、感覚入力がない状態で感覚入力を保存し再生するものだ。だから脳は過去の感覚入力を再生し、現在の感覚入力と照合する
例えばペンを机の上に置いて出ていき、戻ってきたらペンがなかった場合、脳は机の上にペンがあった保存済みの記憶と、今見えているものを比較する
LLMは文字列差分に弱いようだ。余談だが、LLMが得意なことと苦手なことに関するこうした発見をまとめたGitHubリポジトリのような資料があるのか気になる
悪いベンチマークだ
彼らのプロンプト[1]を番号付き項目3つで試したところ、qwq-32bは何の問題もなく正解した。項目100個でも100%正確に解けそうだが、おそらく100万トークンが必要になるだろう。もしかすると1,000万トークン以上かもしれない
推論モデルに5,000トークン制限は少なすぎる。テスト時の計算を多く与えるべきで、5,000トークンの10倍でもまだ足りない
著者たちが長い入力を言っているなら、100ページなら10億トークンを与えるべきだ
正しい実装方法はバッチ処理だ。欠落ありの入力テキストから最初の5つの番号付き項目を見つけ、見つかったら入力項目と欠落ありの入力項目を単純化してから、また進める、という具合だ
入力サイズに応じて常に相当なトークンが必要にはなるだろうが、単純化によって適切に戻りながら、文脈を完全に失わないようにできるはずだ
[1] 学生が詩の暗唱を練習するのを手伝っています。学生は詩を朗唱しますが、数行を飛ばした可能性があります。あなたの作業は、朗唱から正確にどの行が抜けているかを特定することです。抜けた行だけを列挙し、他のことは書かないでください。ユーザーメッセージ: ここに完全な元の詩があります: 1)Quisella's lashes fluttered panic-morse. 2)The Moisture Vampires leeches that sucked humidity. 3)Lysandra's nostrils flared precisely one degree. 次に、行が抜けているかもしれない私の朗唱です: Quisella's lashes fluttered panic-morse. Lysandra's nostrils flared precisely one degree. 私はどの行を飛ばしましたか?抜けた行だけを列挙し、他のことは書かないでください
[1] https://gist.github.com/pramatias/fee1391ad08c7b965f435f3af1...
これが視覚モデルにはどう適用されるのか気になる。単一画像の例をいくつか試した限りでは、うまくできているようだった
おもちゃ例をいくつか試したところ、ClaudeとGeminiは間違い探しをかなりうまくやっているように見えた。例の画像: https://www.pinterest.com/pin/127578601938412480/
画像を反転するとより苦戦するようで、見つける差分が少なくなったり、幻覚を起こしたりする可能性もあった