2005-09-12
_ [論文] Einat Amitay, Adam Darlow, David Konopnicki, Uri Weiss. Queries as Anchors: Selection by Association. Hypertext 2005
Hypertext 2005では発表の後半しか聞けなかったのだが、気になっていたので論文を読んでみた。Adam Darlowの発表。(IBMは著者をfamily nameのアルファベット順に並べるという習慣があるため、論文から発表者が分からないのがややこしい。Microsoftもそうだったはず。)
クエリをいろいろと変えながら検索することは多いが、そのログを使って検索の手助けをしたいという良くあるネタ。でも、ちょっとコロンブスの卵的。この論文では、不特定多数の検索ログ(入れたキーワード、得られた結果などの列)を用い、検索セッションの最後に答えを得られたと仮定して、セッション最後に出てきた検索結果文書に、それまでのクエリに含まれるキーワードをすべて足しこんで拡張し、検索インデックスを改善する。つまり、この結果得られるインデックスを用いると、最初のほうの迷っているキーワードでもセッション最後の結果を得られるようになるという訳。実際のログでは本当に答えを得られたかどうか分からないわけだけど、実験してみたところ何も考えずに全部のログでインデックスを変更しても、検索回数については44%の減少、検索時間については42%の短縮を実現できたとしている。また正解を得られる回数も増加したとのこと。検索精度については良くなったり悪くなったりで、トータルではちょっと良くなっている程度。実験の詳細については論文を参照して欲しいが、ちょっと限定的な実験環境になっているような気もする。
議論では、主にエンタープライズサーチなど、コミュニティ内検索に使えそうだと述べており、ウェブ全体でやるには、拡張キーワードが多くなりすぎるのでなんらかのリミットが必要で、FIFO的に古いキーワードを捨てていくなどの工夫がいるだろうとのこと。
READMEと日記の書き方
> セッション最後に出てきた検索結果文書に、それまでのクエリに含まれるキーワードをすべて足しこんで拡張し、検索インデックスを改善する。<br><br>とんちんかんなこと訊いているかもしれませんが…検索によって得られた文書にキーワードを足す、というのはどういうことなんでしょうか?あと、これって多分検索者毎に特化した改善になるような気がするのですが如何?
「足す」というのは、最後の検索結果に、それ以前のクエリキーワードが含まれているものとして扱うということです。不特定多数のログを使用することを前提にしており、あくまでインデックス変更後に効果が現れます。が、ある程度ログされたユーザの特徴に依存はすることになると思われます。