search engines chapter 1 summary
DESCRIPTION
Search Engines: Information Retrieval in Practice chapter 1 summaryTRANSCRIPT
1 Search Engines and Information Retrieval
SUHARA YOSHIHIKO(id:sleepy_yoshi)
2
本書の紹介• Search Engines: Information Retrieval in
Practice– W. B. Croft, D. Metzler, and T. Strohman
• IR分野の大御所らによる教科書
international editionU.S. edition
3
本書の特長• 著者はIRの大御所なので安心!• 最新のトピックを網羅
– 10 Social Search, 11 Beyond Bag of Wordsあたり• 検索エンジンの実装を考慮した内容
– 具体的な実装テクニックが書いてあるわけではない• 各章末に文献案内と演習問題がある• 読みやすい!!
– IIR並に読みやすい英語
4
本書で扱う検索エンジン• Galago (http://www.galagosearch.org/)
– Indri (下記) のJava実装– Indriにできることはできる(はず)
• 参考:Indri (http://www.lemurproject.org/indri/)– IR研究の業界スタンダード(らしい)– C++実装.Java, PHP, C++ API– (特に研究に)嬉しい機能
• 言語モデル検索が容易に可能• TRECフォーマットに対応
5
情報検索とは?• G. Salton (1968)
Information retrieval is a field concerned with the structure, analysis, organization, storage,
searching, and retrieval of information.
基本的には40年変わっていない
6
情報検索の例• コンテンツ
– テキスト,画像,動画,文書画像,音声,音楽
• アプリケーション– ウェブ検索– バーティカル検索– 企業向け検索– デスクトップ検索– Peer-to-peer検索
• 課題– アドホック検索– フィルタリング– 分類– 質問応答 (QA)
7
情報検索の主要な課題• 適合性 (relevance)
– ユーザが探している情報を含む文書を検索できるか– vocabulary mismatch problem– topical relevance vs. user relevance– 検索モデルとランキングアルゴリズム
• 評価 (evaluation)– どのように適合性を評価するか– 適合率 (precision) と再現率 (recall)– クリックスルーデータの活用
• 情報要求 (information need)– クエリに隠れたユーザの情報要求に答えられるか
• クエリサジェスション,クエリ拡張,適合性フィードバック
8
検索エンジン (search engine)• 情報検索技術のアプリケーション
– 大規模なテキスト群に対する検索を実現– 元来は「テキスト検索」を表現– ‘80年頃から「情報検索システム」の意味で使われる
9
検索エンジンの種類• ウェブ検索エンジン
– 例)Google, Yahoo!, MSN, 百度, goo, ...– ウェブページをクロールする必要がある
• 企業向け検索エンジン– 例)Autonomy, FAST, Google, ...– 企業内の多様な情報源を扱う– データマイニングのように知識発見的な機能が求められる
• デスクトップ検索– 例)Windows, Spotlight (MacOS), Google Desktop, ...– 文書やE-mailなど多様なコンテンツを扱う– 使いやすいインタフェースが求められる
• オープンソース検索エンジン– 例)Lucene, Indri, Galago, ... – Luceneは商用に使われることもある– 比較的単純な機能が実装されている
10
検索エンジンの課題
• 適合性– 効果的なランキング
• 評価– 評価と測定
• 情報要求– User interaction
• パフォーマンス– 効果的な検索とインデクス作成
• 新規データの追加– 網羅性と新鮮さ
• スケーラビリティ– 増加するデータとユーザ
• 適応性– アプリケーションへの適応
• 特有の問題– スパムなど
情報検索 検索エンジン
11
サーチエンジニアのために• サーチエンジニア (search engineer)
– 検索エンジンの開発,最適化,保守,運用など– 様々なバックグラウンドの人がいる
• 例)計算機科学,情報科学,数学,社会科学,計算言語学など– データベース分野出身のエンジニアですら検索エンジ
ンのことをあまり知らないことが多い
• 本書はサーチエンジニアのための本– コンピュータ産業におけるサーチエンジニアの重要性– 検索エンジンを理解するための本
12
文献案内• 古典的文献(’70年代のIR黎明期)
– Salton (1968; 1983)– van Rijsbergen (1979) (ウェブで公開)
• http://www.dcs.gla.ac.uk/Keith/Preface.html• 最近の文献
– Baeza-Yates (1999) Modern Information Retrieval– Manning et al. (2008) Introduction to Information Retrieval
• 論文– IR系
• SIGIR, ECIR, CIKM, WSDM, WWW, TREC– データベース系
• VLDB, SIGMOD– 自然言語処理系
• ACL, HLT