IIR輪講復習 #3 Dictionaries and tolerant retrieval (前半)

Slides:



Advertisements
Similar presentations
PRML読書会第11回 8.4 グラフィカルモデルによる推論 SUHARA YOSHIHIKO (id:sleepy_yoshi)
Advertisements

データモデリング Web ページの検索とランキン グ Google, Yahoo はこんなことをして いる.
データベースと情報検索 情報検索(1) 検索エンジンを使ってみる 工学部担当 教員 岩村 雅一. 日程(情報検索:担当 岩村)  12/9 検索エンジンを使ってみる  12/16 メディア検索を使ってみる  12/25 ウェブアプリケーションを 使ってみる  1/9 検索エンジンを用いた演習.
Lecture02-Binary Search Trees 通信情報システム専攻 岩間伊藤研究室 M1 前田圭介.
IIR輪講復習 #2 The term vocabulary and postings lists
W e b 2.0 メディアコミュニケーション論Ⅲ 第4回.
4.3 マージソート.
基本情報技術概論 I 演習(第5回) 埼玉大学 理工学研究科 堀山 貴史
北海道大学理学部地球科学科地球物理学 惑星物理学研究室 B4 加藤 学
知識情報演習Ⅲ(後半第5回) 辻 慶太
2 分探索木 Binary Search Tree 実行可能な操作 計算量 木の高さは,最悪 O(n) n = |A| : 要素の個数
2分探索.
全体ミーティング (4/25) 村田雅之.
On the Enumeration of Colored Trees
2章 データ構造.
データ構造とプログラミング技法 (第8回) ーデータの探索ー.
夢見る図書館情報システム The Cards Challenge !
検索エンジンに関して The Anatomy of a Large-Scale Hypertextual Web Search Engine
整数計画法を用いた ペグソリティアの解法 ver. 2.1
PHP Framework Update symfony 編 株式会社ディノ 月宮紀柳.
SWAT I18N 概要 付け足した機能(実行時に言語の切り替え-i18nの範囲で) 問題点(細かい技術的問題、根本的問題) 今後
情報検索演習の基礎 1.どういう検索をするのか コンピュータを用いた検索である
岩井 儀雄 コンピュータ基礎演習  ー探索、整列ー 岩井 儀雄
第7章 データベース管理システム 7.1 データベース管理システムの概要 7.2 データベースの格納方式 7.3 問合せ処理.
聴き比べに特化した 音楽の鑑賞と知識学習のための Webアプリケーション
第11講: 平成18年12月 8日 (金) 4限 E352教室 グラフ (1).
IIR輪講復習 #5 Index compression
アルゴリズムとデータ構造 第7回探索のためのデータ構造(1) 2015/11/18 アルゴリズムとデータ構造 2015.
マルチメディアデータベースの インデックス
二分探索木によるサーチ.
第8章 Web技術とセキュリティ   岡本 好未.
IIR輪講復習 #4 Index construction
IIR輪講復習 #1 Boolean retrieval
識別子の命名支援を目的とした動詞-目的語関係の辞書構築
“Purely Functional Data Structures” セミナー
IIR輪講復習 #10 XML retrieval
第8回 2007年6月15日 応用Java (Java/XML).
定兼邦彦 今井浩 東京大学理学系研究科 情報科学専攻
第7回 2007年6月8日 応用Java (Java/XML).
アルゴリズムとデータ構造1 2005年7月26日
Proceedings of the Third South American Workshop on String Processing.
授業に役立つホームページを探したい ~検索サイト・リンク集の紹介~
IIR輪講復習 #17 Hierarchical clustering
学生の相互評価を用いた モデリング支援システムの開発
The Web as a graph 末次 寛之 清水 伸明.
Satoru Ishikawa Satoru Satake Denis Vazhenin
基本情報技術概論(第6回) 埼玉大学 理工学研究科 堀山 貴史
Cプログラミング演習 第10回 二分探索木.
Webコミュニティ概念を用いた Webマイニングについての研究 A study on Web Mining Based on Web Communities 清水 洋志.
数独の解生成と 解に対する番号付け 理学部 情報科学科 渡辺研究室 戸神星也.
プログラミング 4 木構造とヒープ.
アルゴリズムとデータ構造 2011年7月8日課題の復習
生物情報ソフトウェア特論 (2)たたみ込みとハッシュに 基づくマッチング
Peer-to-Peerシステムにおける動的な木構造の生成による検索の高速化
15.cons と種々のデータ構造.
アルゴリズムとデータ構造 第3章 ヒープ 5月31日分
データ構造とアルゴリズム (第5回) 静岡大学工学部 安藤和敏
基本情報技術概論(第5回) 埼玉大学 理工学研究科 堀山 貴史
アルゴリズムとデータ構造 2011年6月16日
基本情報技術概論(第6回) 埼玉大学 理工学研究科 堀山 貴史
情報工学概論 (アルゴリズムとデータ構造)
Amicus: A Group Abstraction for Mobile Group Communications
ヒープソート.
テキストデータベース.
NDL Search Screen Okuinshi/Sakai 09/15/04.
アルゴリズムとデータ構造 2013年6月20日
原口和也 高橋隆一 丸岡章 石巻専修大学 理工学部 情報電子工学科
情報生命科学特別講義III (3)たたみ込みとハッシュに 基づくマッチング
識別子の読解を目的とした名詞辞書の作成方法の一試案
応用Java(Java/XML) 第8回 2005年6月9日 植田龍男.
Presentation transcript:

IIR輪講復習 #3 Dictionaries and tolerant retrieval (前半)

お知らせ たつをさんによる補足情報 復習資料おきば http://chalow.net/clsearch.cgi?cat=IIR http://bloghackers.net/~naoya/iir/ppt/

参考 http://www-csli.stanford.edu/~hinrich/information-retrieval-book.html 本資料は書籍の輪読会に向けたサマリ 資料内で一部上記ドキュメントからの引用あり

3章のテーマ 正確にクエリを組み立てられないときに、ユーザーを助けるための機能 ワイルドカードクエリ typo 修正 (もしかして)

第3章前半の概要 辞書 (dictionary) 検索のためのデータ構造 ワイルドカードクエリの処理方法

前振り: standard inverted index 1章や2章で作った転置インデクス each vocabulary term has a postings list with the documents in the collection.

辞書検索のためのデータ構造

辞書から語句を探す

ハッシュ or 探索木 単純なハッシュは向いてない 探索木が良い クエリの微妙な間違いを扱いづらい ワイルドカードの実現が難しい Web 検索だとサイズが大きすぎる 探索木が良い binary search tree (二分探索木) O(log m) ~ O(m) / Rebalancing 問題 B-tree (B木) 多分木の平衡木 O (log m) 一般的に外部記憶装置 (ブロックデバイス) 上での探索に向いている

Binary Tree

B-Tree

B木の解説

ワイルドカードクエリ

ワイルドカードクエリ Goo* 役立つ場面 Goo, Good, Google, Goonies ... クエリのスペルが正確に分からないとき スペルが複数の変形を含んでいる 検索エンジンの処理が不透明なので「とりあえず全部」 外国語

mon* trailing wildcard query m, o, n とツリーを辿る そこから先の子ノードを全部取る mon* に対する term 群 W が決まる 転置インデックスから W に含まれる term に紐尽くドキュメントを取得する

* 一つに対する単純なアプローチ *mon se*mon Reverse B-tree を作って辿る lemon → root-n-o-m-e-l se*mon se を通常の B-tree から辿る → 集合W mon を Reverse B-tree から辿る → 集合R W ∩ R を取る (intersection)

もっと複雑な * に対するアプローチ fi*mo*er Permuterm indexes k-gram indexes for wildcard queries

Permuterm (順序入れ替え語) index hello$ を回転させてすべての回転パターンを作り、オリジナルにリンクする

Permuterm index からの探索 m*n → m*n$ → n$m* n$m* は trailing wildcard query。n$m* をツリーから探す

Permuterm Index の弱点 辞書が非常に大きくなる 全 term の回転を作ったら当然巨大

K-gram indexes for wildcard queries castle $ca, cas, ast, stl, tle, le$ 単語境界

k-gram index 全 term の k-gram を作る 各 term は k-gram からポイントされる

k-gram index からの探索 re*ve post-filtering $re AND ve$ relive, remove, retrieve にヒット post-filtering red* は $red AND red のため retired が引っかかる。 red* ではないので、除外する。

ワイルドカードクエリは高コスト コストが高い Advanced な UI からしか使えないようにしている例が多い 特別なインデックスを引く フィルタする 転置インデックスを引く Advanced な UI からしか使えないようにしている例が多い 通常の機能に含めるとユーザーが意図せず * を使って、検索エンジンが過負荷になる

3.3 Spelling correction へつづく...