情報検索 :検索エンジンの実装と評価 15章の「Web検索」

「情報検索:検索エンジンの実装と評価」(Buttcher本) Advent Calendar2020の24日目の記事です。

adventar.org

情報検索 :検索エンジンの実装と評価 15章の「Web検索」をまとめます。

15章は広範なトピックについて扱っているため全体的にかいつまんでまとめていきます。 この章ではWeb検索におけるIRシステムについて取り扱います。

クエリについて

webで使われる検索クエリは短く、多くが1,2タームで平均クエリ長が2,3タームであると言われています。これらのクエリは多様で1000万クエリのうち半数近くは1度しか出現しないロングテールとなっています。

したがって、検索エンジンのチューニングと評価ではロングテールを考慮した評価が重要です。

この多様なクエリからユーザの意図を明らかにする研究もされていて、webクエリを以下の3つに分類しています。

  • 案内型クエリ(navigational query)
  • 情報型クエリ(informational query)
  • 取引型クエリ(tranctinal query)

案内型クエリ

案内型クエリは、web上の特定のページやサイトを検索するクエリです。 たとえば、twitterを開きたい場合にURLの入力やブックマークを使わずに”twitter"と検索します。 案内型クエリは基本的にクエリに対する正解は一つです。 しかし、実際にユーザーが求めていたのは調べたサービスの別言語版であったり、サービス内の特定のページであったりする可能性があります。

情報型クエリ

情報型クエリは、特定のトピックについて何かを知ることを目的とした検索の際に用いられます。 たとえば、"サウナ 東京"のようなクエリです。この本を始め検索エンジンについて解析されるときに使われるクエリは多くが情報型クエリを意図しています。 情報型クエリは検索といったときにイメージされやすいクエリではありますが、その背後にあるニースはユーザーにより異なることがあります。 先程の"サウナ 東京"の場合、東京のおすすめのサウナを知りたいのか、今現在空いている東京のサウナが知りたいのか、東京にある特定のサウナの情報を知りたかったが名前が思いだせなかったのか、といった意図まではわかりません。

取引型クエリ

取引型クエリは、商品購入、旅行予約などwebサービスを見つけたあとにクエリの内容を実行することを意図しています。 研究によると全検索クエリの約20%が取引型クエリに該当します。

一つのクエリが複数に分類されることがあったり、同じクエリでもユーザーによって意図が違ったりしますが、 重要なことは、ユーザの意図の違いを認識することは一般的な検索エンジン以上にweb検索では重視されるということです。

ランキング

WEBは構造として、ハイパーリンクによるページ同士のリンク構造を持ちます。 このハイパーリンクによるサイトとページの関係を抽象化したものがwebグラフです。 数学的なモデルとしてみると、ページはノード、各リンクはエッジとして表現されます。

このwebグラフをの構造情報を抽出してインデクシング時に計算する静的ランキングとして活用したアルゴリズムで有名なのがPageRankです。 PageRankは、ネットサーフィンするユーザーの行動をモデルとして、Google創設者のラリー・ペイジとセグレイ・ブリンによって発明されたアルゴリズムです。

このアルゴリズムpythonで実装するつもりでいましたが、普通に間に合わなかったので後日記事にします...

評価

Web検索でも、P@10やMAPなど従来のIR評価フレームワークを適用することはできます。

一般的な検索エンジンの評価方法については14日目のmohumohuさんの記事をご覧ください。

mofumofu1729.hatenablog.com

web検索では扱う情報の多いため別の評価方法を使うと効果的です。 そのひとつが暗黙的フィードバックという方法です。

暗黙的フィードバック

暗黙的フィードバックはユーザと検索エンジの相互作用として得られます。 情報は滞在時間やクリックスルーなど様々ありますが、クリックスルーは取得しやすく重要な指標であり事例として本書であつかわれています。

クリックスルーを使った暗黙的フィードバックは、特定のクエリに関して、ユーザのクリックスルーを組み合わせることで可能になります。 これをクリックスルー曲線と呼びます。一般的にクリックスルー曲線は上位、特に1位の結果がクリックされる確率が高いです。 これは、信頼バイアスと言われる、ユーザーが検索エンジンは関連性の高い結果を一位に返ってきているはずという期待行動によりおこります。 一方でクリックされた回数が1位ではなく下位の結果になっていることも起こりえます。 この現象をクリックスルー反転といい、このときのランキングは最適でない可能性があると判断できます。

まとめ

本章はweb検索について広範なトピックを扱う章でした。web検索を作っているという人はこの本の読者の中では数としては少ないかもしれませんが、普段我々が使うweb検索について概要を知るのによい機会でした。とはいえ、この章のメインはPageRankといっても過言ではないため早くPageRankの記事を書きます。