はてなキーワード: ナレッジグラフとは
技術的な内容を増田に書くという実験のために、試しに検索エンジンの仕組みについて書く。
検索エンジンは、大雑把に言ってクロールするパート、インデクシングするパート、検索インターフェイスを出力するパートに分かれる。
インデクシング時に使っている基本手法は「転置インデックス」と呼ばれ、文書内のngramを文書IDと対応付ける辞書を保存する。
インデクシングの別の種類としては、文書をエンコーダからベクトルへ変換し、それを近似最近傍検索できるようにするものもある。
インデクシングされたものがキーワードマッチ的に絞り込まれると、さらに精密な手法が使われる。
クエリとドキュメントから特徴量設計し、関連性の高いものを引っ張るような訓練をする方法はLearning to rankという。
Learning to rankの中に使われる特徴量の一つにPage Rankがあるが、これは初期の検索エンジンで画期的とされた量で、「リンクされるページの価値は高い」「高価値ページにリンクされると価値が高い」という基準からマルコフ連鎖で計算する。
Page Rankは人間が論文を評価するときと似たような評価手順であるとされる。
Learning to rankの中にエンコーダからのベクトルを特徴量として組み込むことも可能であり、そのようなエンコーダの初期の例がBERTである。
こうやって絞り込まれた文書に対して、さらに有用な情報を表示するモデルがいくつか使われる。
情報抽出モデルでは、クエリを質問と見做してその回答を文書から抽出することがある。
あるいはクエリが人物名や組織名、場所名などであれば、そのエンティティの詳細情報をデータベースから取得することもでき、これはナレッジグラフとも呼ぶ。