AI が金融文書の『表の読解』に挑む!
1. どんな論文?
この論文は、テキストと数値表が複雑に混在する決算書のような金融ドキュメントを、AI がハルシネーション(もっともらしい嘘)なく正確に読解・計算するための新しい手法を提案した研究です。文章を読むことと計算することを賢く分業させることで、人間の専門家レベルの正確さを達成した設計がユニークです。
2. チャートや財務諸表を AI が読み解く時代へ
私たちは投資のファンダメンタル分析(企業の財務状況や業績に基づく分析)を行うとき、決算短信や有価証券報告書の数字を拾い集め、注記のテキストと照らし合わせて状況を把握します。これまで、大規模言語モデルに決算書を読ませて自動化しようとする試みは多数ありました。
しかし、以前の AI は「テキスト分析」と「表の分析」をまたいで関連付けるのが苦手で、数ページ離れた注記と表の数値を紐付けて計算させようとすると、致命的な計算ミスを連発してしまうという制約がありました。近年では、マルチモーダル AI と呼ばれる複数の情報を処理できる技術が進化し、この壁を乗り越える土壌が整いつつあります。
今回の論文では、決算書の文書構造をネットワークとして AI に認識させ、さらに「読むこと」と「計算すること」を分業させることで、人間並みの正確さで複雑な財務タスクをこなすシステムを提案しています。
3. 論文の解説
この論文は British University Vietnam や GiaoHangNhanh など、複数の大学や企業に所属する研究チームによって発表されました。また、この成果は Informatics に掲載されています。
AI が決算書の構造で迷子になるという壁
企業の決算説明資料や 10-K(米国の年次報告書)には、長文のテキストと詳細なデータ表が入り混じっています。実務では「テキストの解説を読み、数ページ先の表の数値から税効果を除く営業利益率を比較する」といった作業が当たり前に行われます。
しかし、これまでの AI ― とくに RAG (検索拡張生成: 外部の資料をカンペとして読み込ませてから AI に回答させる仕組み) ― は、文書全体をただの「単語の連続」として平坦に読み込んでいました。その結果、表の行や列の意味を見失って迷子になり、無関係な数値を拾い上げて誤った計算結果を出力してしまうという壁がありました。
読むのは AI、計算はプログラムの分業体制
著者らは、このアキレス腱に立ち向かうため、文書を「階層グラフ」として再構築する手法を取り入れました。
まず、文書を単なる文字列ではなく「親(セクション)と子(段落や表)」、さらには「意味が似ている者同士」を糸で結んだ相関図のようなグラフニューラルネットワーク(点と線でつながったネットワークから情報の関係性を読み解く AI 技術)として表現します。AI はこの糸をたぐり寄せることで、必要な数値を表のヘッダーや遠くの脚注から正確に拾い集めることができるようになります。
さらに著者らは、AI はそもそも計算が苦手であると割り切り、Symbolic-Neural Fusion (文章の読み取りは AI が行い、計算は正確なプログラムに行わせる分業システム) を導入しました。
文書から必要な情報を探し出す読解は AI に、数式の実行は電卓(プログラム)に任せることで、致命的なハルシネーションを防ぐことに成功しました。
まるで、文系アシスタントが資料から必要な数字を正確に拾い出し、理系電卓がミスなく計算を完了させるような見事なチームワークです。
数式とグラフ構造の詳細
論文では、Table-Text Graph Neural Network (TTGNN) という手法を採用しています。各ノード(セクション、段落、表、セル)を BERT などでベクトル化し、それらの間に「構造的エッジ」や「意味的エッジ」を張ります。グラフのノード更新において、関係タイプごとの重みを用いたアテンション係数を計算することで、モデルは「同じセクションにある表」と「類似した単語を持つ別の段落」のどちらを重視すべきかを動的に決定し、ノイズを排除します。
専門家レベルに挑む実験設定
著者らは、金融特化の QA データセットである「FinQA」および「FinanceBench」を用いてシステムの性能をテストしました。これらのタスクは、数十ページに及ぶ金融レポートの中から特定の数値を抽出し、複雑な計算を行って回答を導き出すものです。比較対象には、素朴な RAG システムや、GPT-4o のような最新の強力なモデルが設定されました。
人間に肉薄する驚異的な結果
検証の結果、この階層的アプローチは目覚ましい成果を上げました。
- 精度の大幅な向上: 人間の専門家が約 90% の正答率を出す FinQA において、既存の GPT-4o は 76.0% で頭打ちになっていましたが、提案手法は Exact Match (正解の数値と完全に一致した割合) 82.5% を達成しました。
- 長文での強さ: 長大で複雑な FinanceBench においては、GPT-4o が 48.0% しか正答できない中、提案手法は 74.0% を記録しました。
- 速度とコストの改善: 推論にかかる時間は 1 クエリあたり平均 4.2 秒と、反復的にコードを生成するエージェント型アプローチの約 3.5 倍高速でした。さらに、余計なノイズを弾くことで AI に読み込ませるトークン数を約 40% 削減しています。
4. 思ったこと
- 実務への応用に大きな期待: アナリストが手作業で表の注記を探し出して電卓を叩いていた作業を、AI が代替できる可能性が高まりました。実務のスクリーニングを劇的に効率化する示唆に富んでいますし、様々な金融文書の分析に応用できそうです。
- 表のレイアウト認識にはまだ壁がある: 論文でも触れられていますが、罫線のない「名無しの表」など、非標準的なフォーマットではグラフ構築自体が失敗してしまう弱点があります。視覚的なレイアウト解析の精度向上が次のステップになりそうです。
- 計算の分業はスマートな解決策: AI に何でもさせようとするのではなく、得意な「読解」と苦手な「計算」をハードに切り分けたルーティングの設計が非常に巧みに感じました。特に金融データの解析は「特異的な計算」を多く行うため、それらを切り出すことで正確性を高められるのは良さそうです。
- LLM が進化したときにどうなる?: 近年の LLM の進化により、これまでできなかったタスクが次々と可能になってきています。 この論文で行っている表の解析や数値計算についても、分業が不要になる未来がすぐに来るかもしれませんし、その際には「賢い LLM の行動を規定することがむしろマイナスになる」可能性を常に意識したいですね。
5. 検証してみました
論文の主張、私も試してみました。今回は論文発表時からの LLM の進化にも期待し、汎用的なモデルを使って日本の決算短信読解にチャレンジしました。決算短信を読み込ませて発表後の値動きを予測する設定です。
結果、決算短信の読解と計算は完璧にこなしましたが、株価の方向予測はランダムと同等水準でした。マーケットの動きの複雑さに翻弄されてしまった印象ですが、抽出プロセスの正確さ自体には目を見張るものがあります。
決算短信読解タスク
専門家が作成した正解キーとの一致率を手法・モデル別に集計したものが以下の表です。 それぞれの手法の概要は以下の通りです。
- 素朴な読解 (Vanilla): 決算短信のテキスト(表を含む)を読ませ、主要数値・通期予想・業績評価・株価予測を一度に答えさせる素朴なプロンプトです。前年比などの計算は明示的には課しません(Vanilla RAG 相当)。
- 構造化 (高性能モデル): 同じテキストに対し、論文を模して「数値の抽出 → 前年比を数式で計算 → 将来見通しの読解 → 事実の統合 → 評価 → 予測」の手順を強制するプロンプトです。計算を必ず数式で実行させる点が Vanilla との違いで、モデルは Vanilla と同じ高性能モデルを使います。
- 構造化 (軽量モデル): まったく同じ構造化プロンプトを軽量モデル(light)に差し替えた条件です。プロンプトは変えずモデルの規模だけを下げ、高性能モデルと対にして読解精度がモデル規模に効くかを見ます。
| 手法 | N | 抽出正答率 | 計算正答率 | 評価一致率 | 通期予想抽出 | 修正方向一致 |
|---|---|---|---|---|---|---|
| 素朴な読解 (Vanilla) | 15 | 93.3% | 0.0% | 73.3% | 92.3% | 92.3% |
| 構造化 (高性能モデル) | 15 | 100.0% | 100.0% | 80.0% | 94.9% | 100.0% |
| 構造化 (軽量モデル) | 15 | 100.0% | 100.0% | 80.0% | 89.7% | 92.3% |
数値の抽出自体は素朴な手法でも 93.3% と高いですが、前年比の計算は素朴な読解では 0.0% と崩壊しています。しかし、論文の手法を模倣した構造化プロンプトを用いることで、これが 100.0% まで跳ね上がりました。いったん構造化してから計算させるプロセスが、実効的にミスを抑え込んでいることがわかります。
Vanilla / 構造化(高性能モデル) / 構造化(軽量モデル) の抽出・計算・評価一致率を並べた図。構造化がいかに計算ミスをなくすかが見て取れます。
続いて、項目別に専門家との一致率を分解してみます。売上や利益などの実額抽出はほぼ完全に一致する一方で、業績の「評価(改善/悪化)」や予想の「修正方向」は、構造化しても完全一致には届きませんでした。数字は合っていても、人間と AI の解釈にはまだ少しズレが生じるようです。
売上や利益の実額抽出は完璧ですが、解釈を伴う業績評価や修正方向の判定では、構造化手法でも専門家と意見が分かれるケースがあることを示しています。
実際に、最も正確に読解できたソフトバンクグループのケースを見てみましょう。構造化プロンプトが抽出・計算・評価のすべてで専門家と一致しました。
| 項目 | LLM抽出 | 専門家正解 | 一致 |
|---|---|---|---|
| 売上(百万円) | 3,469,922 | 3,469,922 | ✓ |
| 純利益(百万円) | 1,005,319 | 1,005,319 | ✓ |
| 売上 前年比 | +7.5% | +7.5% | ✓ |
| 業績評価 | 改善 | 改善 | ✓ |
このように抽出や計算は完璧に近かった一方で、それを利用した「株価の方向予測」の結果はどうだったのでしょうか。以下の表は、同じ応答に含まれる発表後 2 営業日の株価方向予測の精度です。
| 手法・モデル | N | 方向予測精度 | 棄権率 | ハルシネ率 |
|---|---|---|---|---|
| 素朴な読解 (Vanilla) | 15 | 28.6% | 6.7% | 0.0% |
| 構造化 (高性能モデル) | 15 | 33.3% | 0.0% | 0.0% |
| 構造化 (軽量モデル) | 15 | 33.3% | 0.0% | 0.0% |
読解(抽出正答率)と副次の株価方向予測精度を並べた図。決算書は完璧に読めても、市場の反応を当てるのは難しいというギャップが可視化されています。
読解精度が 90% を超えていても、株価の方向予測精度は 33.3% 付近とランダム(50%)を下回ってしまいました。これは AI の性能が悪いというよりも、決算短信という資料単体からは「市場が事前にどれくらい期待していたか(コンセンサス)」が観測できないという本質的な限界を示しています。
構造化プロセスの失敗や方向予測のハルシネーション件数を示した図。捏造はほぼゼロで、根拠がない時は素直に棄権しています。
なお、構造化プロンプトの過程失敗(抽出失敗や計算欠落)は 0 件で、根拠のないハルシネーションも 0 件でした。分からないときは適当なことを言わず、素直に棄権に回っています。論文の「構造化が捏造を抑える」という主張は、日本株のデータでもしっかりと裏付けられました。予測には使えなくても、ファンダメンタル分析を補助するツールとしては非常に強力です。
6. まとめ
- やったこと: 決算短信の表とテキストを AI に読ませ、構造化手法による読解・計算精度と、株価予測能力を検証しました。
- 分かったこと: プロンプトを工夫することで抽出と計算は専門家レベルに到達しますが、決算書単体から市場の期待値は読めないため、株価予測はランダムと同等にとどまりました。とはいえ、分析の自動化ツールとしては極めて優秀です。
- これから気になること: アナリストの事前予想など、コンセンサスデータを組み合わせることで予測精度がどう変わるか、いつか試してみたいですね。