ナレッジグラフ補完(ナレッジグラフホカン)
ナレッジグラフ(KG)の欠損リンクや未知の関係を推論・予測する技術。KGは本質的に不完全であるため、既知のトリプル(主語,述語,目的語)パターンからTransE、RotatE、LLMベースの手法で未観測のリンクを補完し、知識網羅性を高める。
ナレッジグラフ補完とは
ナレッジグラフ補完(Knowledge Graph Completion, KGC)とは、ナレッジグラフに存在しない関係(欠損リンク)を既存の知識パターンから推論・予測する技術である。Wikidata は1億アイテム以上を収録しているが、既知の関係のうち実際に記録されているのは推定30-50%に過ぎず、残りは欠損リンクとして存在する。KGCはこの不完全性を計算的に補うための技術体系である。
概要
KGCの基本タスクは「リンク予測(Link Prediction)」と呼ばれ、(h, r, ?) または (?, r, t) の形式で、ヘッドエンティティh・関係r・テイルエンティティt のいずれかが欠損したトリプルを補完する。2024年以降、従来のグラフ埋め込み手法に加えてLLMを活用したアプローチが急速に台頭し、特にFB15k-237やWN18RRベンチマークで従来手法を大幅に上回る性能を達成している。
主要手法の分類
翻訳ベース(Translation-based)
- TransE (2013): 関係を埋め込み空間での平行移動として表現。h + r ≈ t を目指す。シンプルだがN:N関係に弱い
- TransR (2015): エンティティと関係を別空間に射影。TransEの N:N問題を改善
- RotatE (2019): 関係を複素空間での回転として表現。対称・反対称・合成関係を統一的にモデル化
意味マッチング(Semantic Matching)
- DistMult (2015): 双線形モデル。スコア関数 f(h,r,t) = h^T diag(r) t
- ComplEx (2016): 複素数拡張で反対称関係をモデル化
- TuckER (2019): Tucker分解ベース。FB15k-237 で MRR 0.358 を達成
グラフニューラルネットワーク(GNN)ベース
- R-GCN (2018): 関係型グラフ畳み込みネットワーク
- CompGCN (2020): エンティティと関係を同時に埋め込み更新
- NBFNet (2021): パスベースのメッセージパッシングで推論
LLMベース(2024-2026年の新潮流)
- KG-BERT (2020): トリプルをテキスト化してBERTで分類
- SimKGC (2022): 対照学習ベースのテキスト埋め込み
- KICGPT (2024): LLMによるIn-Context Learning でリンク予測
- KG-LLM (2025): GPT-4レベルのLLMで直接トリプル補完。FB15k-237 で MRR 0.421
ベンチマーク性能比較
| 手法 | FB15k-237 MRR | WN18RR MRR | パラメータ数 | 推論速度 |
|---|---|---|---|---|
| TransE | 0.294 | 0.226 | 11M | 高速 (< 1ms/query) |
| RotatE | 0.338 | 0.476 | 29M | 高速 (< 1ms/query) |
| TuckER | 0.358 | 0.470 | 14M | 中速 (2-5ms/query) |
| CompGCN | 0.355 | 0.479 | 85M | 低速 (10-50ms/query) |
| KG-LLM (GPT-4) | 0.421 | 0.512 | 1.8T | 極低速 (200-500ms/query) |
実装ツールとライブラリ
- PyKEEN (Python): 40以上のKGE手法を統一APIで提供。PyTorch ベース。pip install pykeen
- DGL-KE (Amazon): 分散学習対応。Freebase 全体(30億トリプル)のトレーニングを8GPU×4ノードで24時間以内に完了
- LibKGE (独マンハイム大): 再現性重視のベンチマークフレームワーク
- OpenKE (清華大): TensorFlow/PyTorch 両対応。TransE〜RotatE まで主要手法を網羅
応用分野
- 創薬: 化合物-タンパク質-疾患の関係補完。Insilico Medicine が KGC で新薬候補を発見し臨床Phase I到達(2025年)
- 推薦システム: ユーザー-アイテム間の未観測関係をKGCで予測。Amazon の商品推薦で CTR 12%改善事例
- サイバーセキュリティ: 攻撃パターンのKGで未知の攻撃経路を予測。MITRE ATT&CK KG の補完による脅威インテリジェンス
よくある質問(FAQ)
Q1: KGCとKG構築の違いは何ですか? A: KG構築はテキストから新しいトリプルを抽出してKGを作る工程であり、KGCは既存KG内の欠損リンクを推論で補う工程である。前者は情報抽出、後者は推論が中核技術。
Q2: LLMベースのKGCは従来手法を完全に置き換えますか? A: 精度ではLLMベースが優位だが、推論速度が100-500倍遅くコストも高い。大規模KG(数億トリプル)のバッチ補完には依然としてTransEやRotatEが現実的。ハイブリッド(軽量手法で候補絞り込み→LLMで精密判定)が実用的。
Q3: どの手法を選べばよいですか? A: 小規模KG(100万トリプル未満)でスタートする場合は PyKEEN + RotatE が推奨。精度最優先なら KG-LLM、大規模分散なら DGL-KE + TransE。ベンチマークの数値だけでなくドメイン特性での検証が不可欠。
まとめ
- KGCは不完全なナレッジグラフの欠損リンクを推論で補完する技術
- 翻訳ベース(TransE/RotatE)→GNN→LLMベースと進化
- LLMベース手法が精度で優位だがコスト・速度のトレードオフあり
- PyKEEN、DGL-KE が主要な実装ライブラリ
- 創薬・推薦・セキュリティなど幅広い応用分野がある