10年後の全文検索エンジン

朝はかぼちゃフレークを食べさせてみる。予想通り食いつきがよい。あとはこれをおかゆに混ぜて食べさせたときの反応だろうか。

先日のDSIRNLP勉強会がきっかけで、[twitter:@feeblefakie] さんから『検索エンジン自作入門』をいただく。ありがたい。

本の内容を紹介されていたときも、「検索エンジンと言いながらもほぼ丸一冊転置インデックスについて説明している本で、ここまで転置インデックスについて丁寧に説明した本はないと思う」とおっしゃっていた通り、非常に詳しく転置インデックスについて書かれている。

こういう本についてくる擬似コードは、「擬似」コードなのに既に書ける人でないと理解が難しい、ということが往々にしてあるが、この本の擬似コードは(何が違うのか分からないが)大変分かりやすく、これ以上噛み砕いて説明するのは無理では?というくらい、丁寧である。全文検索エンジンアルゴリズムに興味がある人に、強くお勧めする次第である。

一方、この本は全文検索エンジンに注力することで良書となっているのだが、きょうび「検索エンジン」と言って想像するのは全文検索ではなくウェブ検索であり、漏れなく結果を返すということより、どのように上位に検索キーワード(クエリ)に関連するページを返すか、というランキングをどのようにするのか(機械学習を使ったり、PageRank や HITS のようなリンク解析のアルゴリズムを使ったり)が重要かつアルゴリズム的におもしろい部分だと思うし、そういうトピックで分かりやすい入門書をどなたか書いていただけると、全文検索の入門書である本書と合わせ、検索エンジンの作り方の決定版になりそうである。

もっとも、このあたりのアルゴリズムに興味がある人は少なくて、実際の検索エンジンの使い方(既存のツールのインストール方法)に興味がある人が多いのかもしれないが、世の中に出回っているソフトウェアは日進月歩ですぐ変わるし、背景にある考え方を知るのも有意義である。

自分が学部生のころ、つまり10年前は日本語の全文検索といえば Namazu で、いま Namazu を使っている人はいないのではなかろうかと思うが、ツールは変わってもアルゴリズムは大きく変わっていない。きっと10年後もいまは存在しないような全文検索エンジンになっているだろうが、転置インデックスを使うというアルゴリズムは変わらないだろうし、この本もきっと10年後も変わらず読むことができる本だろうと確信している。