発展:ナレッジグラフと大規模言語モデル
知識表現のレッスンの続きとして、知識を点と線の網で表すナレッジグラフと、それを大規模言語モデルと組み合わせる考え方を掘り下げます。大規模言語モデルがもっともらしい誤り(ハルシネーション)を生む理由から始めて、Google の Knowledge Graph と Wikidata という動いている実例、たがいの得意と不得意が裏返しになっている関係、ナレッジグラフの事実を検索してプロンプトに注入する GraphRAG までを実装のコードは扱わず、言葉の柔らかさと事実の確かさをどう両立させるかという考え方に絞って説明します。
ねらい
このレッスンは、知識表現のレッスンの続きにあたる発展(はってん)の記事です。知識表現のレッスンで学んだ意味ネットワークやオントロジーの流れは、いまナレッジグラフ(knowledge graph)として実を結び、大規模言語モデル(だいきぼげんごモデル、Large Language Models)と組み合わせて使われています。この記事の軸は、大規模言語モデルのもっともらしい誤りをどう抑えるかという問いです。答えの鍵は、古くからの知識表現が編み上げてきた、揺るぎない事実の網にあります。
この記事は、ある程度の知識のある人に向けた深掘りです。知識表現のレッスンで、概念をつながりで表す意味ネットワークと、概念を体系立てるオントロジーに触れていることを前提にします。実装のコードは扱いません。
1. もっともらしい誤りが生まれる大規模言語モデルの知識の持ち方
大規模言語モデルは、大量の文章から「次に来る言葉の確率」を学んだモデルです。「日本の首都は」という並びの続きとして「東京」がもっとも自然だと、確率のかたよりの形で覚えています。知識が、1件ずつの記録としてではなく、モデル全体に広がる無数の数値のかたよりとして溶け込んでいるのです。
この持ち方には、強みと弱みが同居しています。強みは柔らかさです。言い回しが変わっても、あいまいな聞き方でも、確率のうえで自然な続きを組み立てて応じられます。弱みは、正しい答えと誤った答えが同じしくみから生まれることです。モデルは事実の台帳を引いて答えているのではなく、いつでも「もっとも自然に聞こえる言葉の並び」を作っているだけです。学んだ文章に手がかりの少ない事柄をたずねられたときも、同じしくみが働いて、それらしい言葉の並びを組み立ててしまいます。この、事実にもとづかないもっともらしい出力は幻覚(げんかく)と呼ばれます。英語の hallucination から、ハルシネーションとも呼ばれます。
もう1つの弱みは、根拠を示せないことです。ある答えがどの文章から来たのか、モデル自身にもたどれません。無数の文章のかたよりが混ざり合った結果だからです。誤りに気づいた人がいても、モデルの中のどこを直せばよいのか、その場所を指させません。
理解の確認
大規模言語モデルの知識は、言葉の確率のかたよりとしてモデル全体に溶け込んでいます。正しい答えも幻覚も同じしくみから生まれるため、答えぶりから誤りを見分けられず、根拠もたどれません。
2. 事実を1件ずつ点と線の網に書き込むナレッジグラフ
これとは正反対の知識の持ち方が、ナレッジグラフです。ナレッジグラフとは、物事を点、物事どうしの関係を線として、現実の膨大な事実を大規模に組み立てた知識の網です。知識表現のレッスンで学んだ意味ネットワークを現実の運用に耐える規模へ広げたものにあたります。言葉や関係の結び方をそろえる、オントロジーの約束ごとがその土台にあります。
事実は1件ずつ書き込まれます。たとえば「東京」という点と「日本」という点を「首都である」という関係の線で結びます。この、主語と述語と目的語の3つ組はトリプルと呼ばれ、セマンティック Web でも使われる事実の単位です。トリプルを何億件と積み上げると、巨大な事実の網ができあがります。
この持ち方の強みは、大規模言語モデルの弱みのちょうど裏返しです。1つ目は正確さです。1件ずつの事実が明示的に書き込まれているので、確率のゆらぎがありません。書き込まれていないことをそれらしく作り出すこともありません。2つ目はたどれることです。ある答えがどの点とどの線から導かれたのかを指させます。誤りが見つかったら、その1件を書き直せば済みます。確率に溶けた知識にはできない、「1件だけ直す」ができるのです。
3. 検索エンジンと百科事典を支える2つの実例
ナレッジグラフは、構想にとどまらず、毎日使われている現実の技術です。動いている実例を2つ挙げます。
1つ目は、Google の Knowledge Graph(ナレッジグラフ)です。Google は2012年、この名前の巨大な事実の網を検索エンジンに組み込みました。ナレッジグラフという言葉が広く使われるきっかけになった出来事です。人物や場所を検索したときに、画面のわきに生まれた年や所在地といった事実が整理されて表示されるのは、このグラフに支えられています。公開の時点で、5億を超える物事と、35億を超える事実が書き込まれていました。Google はこの転換を「文字列ではなく、モノを(things, not strings)」という標語で表しました。検索語を単なる文字の並びとして照合するのではなく、たがいに関係を持つ実在の物事として扱う、という宣言です。
2つ目は、Wikidata(ウィキデータ)です。同じ2012年に、Wikipedia を運営するウィキメディア財団が、Wikipedia の姉妹プロジェクトとして立ち上げました。だれでも編集できる自由な知識ベースで、人にも機械にも読める形で事実を蓄えています。1つひとつの物事には「Q」で始まる固有の番号が振られ、「イヌ」「犬」「dog」と呼び名や言語が違っても、同じ物事を同じ番号で指させます。知識表現のレッスンで見た、言葉の使い方が人によってばらつくという問題への、実際に動いている答えです。集められた事実は、Wikipedia の各言語版などへ構造化されたデータとして供給されています。
理解の確認
Google の Knowledge Graph は、検索結果のわきに表示される事実の一覧を支える網として2012年に生まれました。同じ年に始まった Wikidata は、物事に固有の番号を振り、言語をまたいでだれでも編集できる自由な知識ベースです。
4. 作る手間と融通の利かなさというナレッジグラフの弱点
正確でたどれるナレッジグラフにも、はっきりした弱点があります。
いちばんの弱点は、網を編み続ける手間です。事実は1件ずつ、正しく書き込まなければなりません。世の中の事実は膨大で、しかも日々変わります。市長は交代し、会社は合併し、統計は更新されます。あらゆる常識を人手で書きためようとした Cyc プロジェクトが身をもって示した知識獲得のボトルネックが、ここにも顔を出します。Wikidata が世界中の編集者の手に支えられているのは、この手間の大きさの裏返しでもあります。
もう1つの弱点は、融通の利かなさです。ナレッジグラフは、書き込まれた関係しか知りません。だれも書き込まなかった事柄には答えられず、日常のあいまいな言い回しの質問はそのままでは受け取れません。きっちりしているぶん、言葉の柔らかさがないのです。
2つの知識の持ち方を並べると、得意と不得意がきれいに裏返しになっていることが見て取れます。
| 観点 | 大規模言語モデル | ナレッジグラフ |
|---|---|---|
| 知識の持ち方 | 言葉の確率のかたよりとして溶け込む | トリプルを単位に1件ずつ書き込む |
| あいまいな質問 | 言い回しがくずれても柔らかく応じる | 書き込まれた形でしか受け取れない |
| 事実の確かさ | もっともらしい誤り(幻覚)が混ざる | 書き込まれた範囲では正確 |
| 根拠 | どの文章から覚えたのかたどれない | どの点と線から導いたのか指させる |
| 作る手間 | 集めた文章から学習する | 人手で書き込み保ち続ける必要がある |
だからこそ、どちらか一方を選ぶのではなく、組み合わせる道が開けます。
ポイント
大規模言語モデルは言葉に強く、事実の確かさに弱い技術です。ナレッジグラフは事実に強い技術です。ただし、編む手間がかかり、言葉の柔らかさはありません。得意と不得意が裏返しだからこそ、組み合わせる価値が生まれます。
5. 関係する事実を検索してプロンプトに注入する GraphRAG
組み合わせの代表的な形は、大規模言語モデルが答える前に、ナレッジグラフの事実を渡してしまうことです。外部の資料を検索して、関係する箇所を質問に添えてから答えさせるしくみは、検索拡張生成(けんさくかくちょうせいせい、RAG)と呼ばれます。その検索先を文書のかたまりからナレッジグラフへ置き換えた手法が GraphRAG(グラフラグ)です。検索拡張生成そのものの深掘りは、検索拡張生成と LLM エージェントを扱う発展の記事に譲り、ここではナレッジグラフとの組み合わせに絞ります。流れは次のとおりです。
- 質問を受け取り、質問に出てくる物事をナレッジグラフ上の点と対応づけます。
- その点の周りから、質問に関係する点と線のひとまとまりを検索して取り出します。このひとまとまりは部分グラフと呼ばれます。
- 取り出した事実を根拠としてプロンプトに書き添え、大規模言語モデルに答えさせます。
モデルの目の前に確かな事実が置かれるので、記憶の確率だけで言葉を埋める必要がなくなり、幻覚がへります。どの点とどの線を根拠に使ったのかも示せるため、答えの検証がしやすくなります。文書を検索先にする場合とくらべた持ち味は、関係の線をたどれることです。「その研究者が卒業した大学がある都市」のように、事実を2つ3つつないでたどる質問は、文書のかたまりからは拾いにくいものですが、グラフの上なら線を順にたどるだけで組み立てられます。
もちろん、万能ではありません。網に書き込まれていない事実は注入できませんし、注入された事実をモデルが無視してしまう可能性も残ります。それでも、答えの土台を「記憶の確率」から「書き込まれた事実」へ移せることの意味は大きいのです。
補完は逆向きにも働きます。今度は、ナレッジグラフの弱点だった、網を編む手間の側です。大規模言語モデルに文章を読ませてトリプルの候補を拾い出させれば、人手の書き込みを大きく助けられます。言葉に強いモデルが、事実の網を編む作業を手伝うのです。
ポイント
GraphRAG は、質問に関係する部分グラフをナレッジグラフから検索し、プロンプトに注入してから答えさせる手法です。言葉の柔らかさは大規模言語モデルが、事実の確かさはナレッジグラフが受け持ちます。
理解の確認
GraphRAG は、ナレッジグラフから取り出した部分グラフの事実を根拠としてプロンプトに添え、大規模言語モデルに答えさせる手法です。また、モデルに文章からトリプルを拾わせて、網を編む手間を軽くする逆向きの補完もあります。
6. 古い知識表現が組み合わせの相手として見直される理由
この記事の眺めを一段引いて見ると、人工知能の進み方の1つの型が浮かびます。
意味ネットワークやオントロジーといった、記号で知識を書き表す系譜は、人工知能の初期から続く地道な積み重ねでした。データから学ぶ機械学習が主役になると、この系譜は影が薄くなったように見えた時期もあります。しかし、大規模言語モデルの幻覚という弱点がはっきりしてくると、正確で、たどれて、1件ずつ直せる事実の網の値打ちが、組み合わせる相手としてあらためて見直されました。
新しい手法は、古い手法をすっかり置きかえるとはかぎりません。記号で事実を書き表す系譜と、確率で言葉を扱う系譜という、性格の違う2つの流れが、たがいの弱点を埋め合う形で合流することがあります。ナレッジグラフと大規模言語モデルの結びつきは、その現在進行形の例です。
理解度の確認
説明できる項目にチェックを入れましょう。すべて確認できたら、完了ボタンで記録します。
分からなかった点・気になった点
読み込み中です。