〈検索 Advent Calendar 4日目〉Google検索のナレッジグラフとwikipedia及びwikidataの関係性

この記事は検索 Advent Calendar 4日目の記事である。

ナレッジグラフとは

Google検索のナレッジグラフとは、検索結果の右側に検索キーワードに関する知識や情報をまとめたものである。2012年からナレッジグラフの取り組みは始まっている(参照: Official Google Blog: Introducing the Knowledge Graph: things, not strings )。

f:id:sakura818uuu:20171203135452p:plain
バラ と検索したときのナレッジグラフ

How Search Works 日本語版/ナレッジグラフからの回答にはナレッジグラフに関する具体的な数字が発表されている。

ナレッジグラフは、10 億件を超える現実世界の人物、場所、物事と、それらに関する 500 億件を超える事実とその関係性で構成される Google のデータベースです。

Google公式のナレッジグラフの紹介動画もある。

www.youtube.com

ナレッジグラフとwikipediaとwikidataの関係性

ナレッジグラフの参照元wikipediaであることはよくあることだ。
では一体wikipediaからどうやってナレッジグラフを生成しているかについているのだろうか。私の推測なので間違っている箇所もあると思うが簡単に説明する。

まず、ナレッジグラフとは構造化データを元に作られている。構造化データがなにかについてはここでは詳しく説明しないが、簡単にいうと、schema.orgなどの仕様に従い、HTMLでマークアップされた情報が何を意味するのかを理解できるようにしたものを指す。詳しくは構造化データの一般的なガイドラインなどを見るといいだろう。

f:id:sakura818uuu:20171203132748p:plain
構造化データの一般的なガイドライン ページ

Googleウェブマスター向け公式ブログの「構造化データを活用しよう! - 2 つのアップデート」にも次のように、構造化データからナレッジグラフが生成されているようなことを意味する記載がある。

たとえば、あるページの商品リスティングやイベント、レシピ、レビューなどが構造化されたデータだとわかると、Googleアルゴリズムは「リッチ スニペット」を追加して検索結果を拡張します。さらにそうしたデータは、 ナレッジグラフ のパネルや Google Now カードに表示されることもありますので、コンテンツについて広く知らせることができます。

f:id:sakura818uuu:20171203125044p:plain
Googleウェブマスター向け公式ブログの「構造化データを活用しよう! - 2 つのアップデート」ページ

wikipediaでいうところの構造化データとはなんなのだろうか。
実はwikipediaでは構造化データ用にwikidataというものが2012年から運営されている(出典: [Wikidata-l] wikidata.org is live (with some caveats))。

ウィキデータ:はじめに ページにウィキデータについての説明がされている。以下に引用する。

ウィキデータは、自由・共同作業・多言語・二次情報を特徴とする、構造化データのデータベースです。収集された構造化データは、ウィキペディアウィキメディア・コモンズや、その他のウィキメディア運動のウィキで活用されているほか、世界中の誰でも利用できます。

f:id:sakura818uuu:20171203123347p:plain
ウィキデータ:はじめに ページ

つまり、wikipedia→wikidata(wikipediaの構造化データ)→ナレッジグラフという仕組みになっている と考えるのが妥当だろう。

f:id:sakura818uuu:20171203180856p:plain
wikipediaとwikidataとナレッジグラフの関係性

と思っていたが色々調べていくうちにどうやらちょっと違うようだということがわかった。

私はナレッジグラフは上記の画像のようにwikipedia→wikidata(wikipediaの構造化データ)→ナレッジグラフというシンプルな仕組みだと想定していた。基本的に構造化データであるwikidataから作成し、もしも補足情報を足したりそのページのwikidataが存在しない場合にはwikipediaから情報を参照するものだと考えていた。

そして、それを確かめるべく今回のブログを書くにあたり念のために少なくとも50ページ以上のナレッジグラフ・wikipedia・wikidataを調べた。その結果、期待に反してどうやらナレッジグラフはどうやら複数のコンテンツ(wikipediaやwikidataはもちろんその他色んなソース)から作成されているのではないかという結論に至った。

f:id:sakura818uuu:20171203174114p:plain
ナレッジグラフはどう作られているのか。
思ったよりも複雑にコンテンツを参照して作られている?

ここらへんに関する情報はなにかないかと調べた所、次のような情報がでてきた。どうやらナレッジグラフは自分が思ったよりも複雑にコンテンツを参照して作成されているようだ。

searchengineland.com

searchengineland.com

www.baka-ke.com

ナレッジグラフを修正するには

ナレッジグラフの情報が間違っていることもある。

つい先日、@mametterさんという方のツイートを発端に知ったのだが、将棋棋士のナレッジグラフにてプロ入り日が死亡日と間違って表記されている問題が起こっていることがわかった。
この問題の原因は、wikidataで間違ってdate of death(死亡日)が記入されていることではないかとsuisuiさんに教えていただいた。(しかも今日wikidataのhistory確認したらその教えてくださった方がwikidataのあらゆる将棋棋士の間違っているdate of death(死亡日)を編集してくださっていた。ありがたい……)
しかし、wikidataにそもそもdate of death(死亡日)の項目がなかった将棋棋士のナレッジグラフにも影響があったことから、他にも原因があることもまた十分考えられる。この問題は現在でも直っていないがフィードバックを送っておいたのでそのうち修正されるだろう: )

一般的なナレッジグラフの修正・提案方法はGoogle公式の検索ヘルプ/ナレッジグラフ カードの変更を提案するに書いてある。  

f:id:sakura818uuu:20171203142746p:plain
Google公式の検索ヘルプ/ナレッジグラフ カードの変更を提案する ページ

ナレッジグラフの修正方法はいくつかあるが、ナレッジグラフのフィードバックから修正点を報告する場合は以下の画像のよう簡単に行うことができる。

1.ナレッジグラフの下にある フィードバック を押す。
2.ナレッジグラフの内のどこを修正したいかをクリックする。
3.修正内容を記入し、送信ボタンを押す。

f:id:sakura818uuu:20171203181902p:plainf:id:sakura818uuu:20171203181906p:plainf:id:sakura818uuu:20171203181910p:plain
ナレッジグラフの修正方法 - フィードバック

まとめ