検索エンジンに関して The Anatomy of a Large-Scale Hypertextual Web Search Engine

Slides:



Advertisements
Similar presentations
データベースと情報検索 情報検索 ( 5 ) 検索エンジンの仕組み 教員 岩村 雅一. 日程(情報検索:担当 岩村)  12/9 検索エンジンを使ってみる  12/16 メディア検索を使ってみる  12/25 ウェブアプリケーションを 使ってみる  1/9 検索エンジンを用いた演習  1/20.
Advertisements

データモデリング Web ページの検索とランキン グ Google, Yahoo はこんなことをして いる.
1 安全性の高いセッション管理方 式 の Servlet への導入 東京工業大学 理学部 千葉研究室所属 99-2270-6 松沼 正浩.
電子書籍の検索機能の改善 木下研究室 201002713 鴫原 善寿. 背景 スマートフォンなどの携帯端末の普及と ともに電子書籍に注目が浴びた。中でも amazon の kindle など電子書籍の専用端末も 現れた。 電子書籍はデータなので本棚もいらず、 持ち運びも容易になるなど様々な恩恵を もたらした。
IBM SmarterCloud Control Desk 7.5 新機能ガイド - 資産と構成アイテムの同期
Microsoft Office 2010 クイックガイド ~OneNote編~
北海道大学理学部地球科学科地球物理学 惑星物理学研究室 B4 加藤 学
検索エンジン最適化.
ヘルスケア連動型 市販薬検索システム 研究者 : 加納 えり 指導教員 : 越田 高志.
形態素周辺確率を用いた 分かち書きの一般化とその応用
Twitterの発言に基づくウェブページ推薦システム
情報処理基礎 2006年 6月 1日.
知識情報演習Ⅲ(後半第1回) 辻 慶太(水)
秘密のリンク構造を持つグラフのリンク解析
情報学類 吉田光男 アドバイザー教官: 山本幹雄 先生
参照共起分析の Webディレクトリへの適用
利用実績に基づくソフトウェア部品検索システムSPARS-J
情報爆発A01支援班 マイサーチエンジン開発環境支援グループ 中村聡史, 大島裕明, 田中克己, 喜連川優
「データ学習アルゴリズム」 第3章 複雑な学習モデル 3.1 関数近似モデル ….. … 3層パーセプトロン
テキストマイニング, データマイニングと 社会活動のトレース
Googleの行方 ~検索のGoogleの新たな試み~
卒論中間発表 WWW検索キーワードナビゲーションシステムの設計と実装
早稲田大学 理工学術院 基幹理工学部 情報理工学科 後藤滋樹
Webサイト運営 09fi118 橋倉伶奈 09fi131 本間昂 09fi137 三上早紀.
4Y-4 印象に残りやすい日本語パスワードの合成法
Piggy Bank: Experience the Semantic Web Inside Your Web Browser
平成19年5月19日 第3版 東京大学理学部生物化学図書室 前田 朗
PageRankの仕組 林晋.
テキストの類似度計算
日本語解析済みコーパス管理ツール 「茶器」
Microsoft Office 2010 クイックガイド ~OneNote編~
Java ソフトウェア部品検索システム SPARS-J のための リポジトリ自動更新機能の実現
平成22年6月15日 図書系職員のための アプリケーション開発講習会
検索エンジンを利用した Covert Channelの検出
IIR輪講復習 #1 Boolean retrieval
Googleのページランク 基本的な仕組は数学的 グラフの行列による表現 隣接行列(推移行列、遷移行列) 固有値と固有ベクトル W大学
大規模データによる未知語処理を統合した頑健な統計的仮名漢字変換
データモデリング Webページの検索とランキング
識別子の命名支援を目的とした動詞-目的語関係の辞書構築
第25章 単一始点最短路 3節 Bellman-Fordのアルゴリズム
定兼邦彦 今井浩 東京大学理学系研究科 情報科学専攻
副テーマ中間報告 Development of a Scale Web Crawler By hajime TAKANO and Nobuya KUBO Trawling the Web for emerging cyber-communities Ravi Kumar, Prabhakar Rabhavan,
東京大学OPAC Plus “言選Web” -関連学術用語による日本語文献情報への 簡易ナビゲーションシステム-
環境リスクマネジメントに関する 検索システム
WWW上の効率的な ハブ探索法の提案と実装
プリムのアルゴリズム 重み付きグラフG=(V,E)の任意の点集合 U⊂Vに対して一方の端点がUの中にあり、他方の端点がV-Uの中にあるような枝の中で最小の重みを持つものをlとすれば、枝lを含むような最小木が存在する。
The Web as a graph 末次 寛之 清水 伸明.
利用実績に基づくソフトウェア部品検索システムSPARS-J
Internet広域分散協調サーチロボット の研究開発
オープンソース開発支援のための ソースコード及びメールの履歴対応表示システム
オープンソース開発支援のための リビジョン情報と電子メールの検索システム
情報処理概論Ⅰ 2007 第5回 2019/4/7 情報処理概論Ⅰ 第5回.
類似度を用いた WWW のリンク構造の解析 谷 研究室    栗原 伸行.
変換されても変換されない頑固ベクトル どうしたら頑固になれるか 頑固なベクトルは何に使える?
Webコミュニティ概念を用いた Webマイニングについての研究 A study on Web Mining Based on Web Communities 清水 洋志.
エピソード記憶に訴えるBookmarkless Bookmarkの実現
テキストマイニング, データマイニングと 社会活動のトレース
早稲田大学大学院 基幹理工学研究科 情報理工学専攻 後藤研究室 修士1年 魏 元
ベイジアンネットワーク概説 Loopy Belief Propagation 茨城大学工学部 佐々木稔
Peer-to-Peerシステムにおける動的な木構造の生成による検索の高速化
ISO23950による分散検索の課題と その解決案に関する検討
発表32 レポート評価支援について (剽窃部分と指導箇所の検出)
売れるためのWEBサイト構築.
コーパス コーパス(Corpus)はコンピュータの発達とともに、計算機可読なデータを容易に作成・収集することができるようになったことがその背景にある。現在ではコーパス言語学などの学問もある。
自然言語処理2015 Natural Language Processing 2015
複数活動履歴を基にしたユーザの関心情報の抽出
Webページタイプによるクラスタ リングを用いた検索支援システム
自然言語処理2016 Natural Language Processing 2016
ランダムプロジェクションを用いた音響モデルの線形変換
Presentation transcript:

検索エンジンに関して The Anatomy of a Large-Scale Hypertextual Web Search Engine 2003/05/27 M1 藤本 浩史

発表の流れ 研究の概要 検索エンジンの仕組み PageRank 今後の展望

1.研究の概要 検索エンジン 分散Indexer(インデクサ)の実装

2.検索エンジンの仕組み 検索エンジンの構造 Crawler Indexer Searcher

2.検索エンジンの仕組み ~Crawler~ WWW上を自動的に巡回してWebページを収集する検索ロボットプログラム

2.検索エンジンの仕組み ~Crawler~ 「Crawler」がWWWからドキュメントを 収集し「Store Server」に渡す 「Store Server」はページごとに一意の{docID}を割り当て、圧縮してRepositoryに保存

2.検索エンジンの仕組み ~Crawler~ Store Server Crawler docID WEB Crawler Crawler Compress Crawler Repository

2.検索エンジンの仕組み ~Crawler~ Repository Data Structure docID ecode urllen pagelen url page docID: Webページ(URL)に対する一意のID page : 実際のWebページコンテンツ

2.検索エンジンの仕組み 検索エンジンの構造 Crawler Indexer Searcher

2.検索エンジンの仕組み ~Indexer~ Crawlerが収集したWebページを解析し検索に使用するためのインデックスを生成

2.検索エンジンの仕組み ~Indexer~ 形態素解析 Forward Index(正引き索引)作成 Inverted Index(逆引き索引)作成 アンカー(リンク)切り出し

2.検索エンジンの仕組み ~Indexer~ 形態素解析 自然文から品詞ごとの単語を切り出す > 日本語では辞書を使用

2.検索エンジンの仕組み ~Indexer~ Forward Index ページに含まれる単語を{wordID}に置き換える {docID}に{wordID}リストを割り当てる Google Web Images Groups Directory {Null} ・・・・・・ {docID} {wordID} {params}

2.検索エンジンの仕組み ~Indexer~ Inverted Index Forward Indexを元に{wordID}⇒{docID}のインデックスを作成する 検索で使用されるのはこのインデックス Google Web ・・・・・・ {docID} {wordID} {params} Yahoo! InfoSeek

2.検索エンジンの仕組み ~Indexer~ アンカー切り出し Webページからリンクを切り出す URLを相対リンクから絶対リンクへ

2.検索エンジンの仕組み ~Indexer~ プログラム > Indexer:Forward Indexを作成 > Sorter :Inverted Indexを作成 データベース > Lexicon:辞書(単語とwordIDをマップ) > Barrels:Indexを格納するデータベース

2.検索エンジンの仕組み ~Indexerの構成~ 形態素解析 decompress Repository Lexicon 辞書 docID 分散検索エンジン 分散 / 検索 / エンジン Webページに含まれる文書を、辞書を用いて単語に分解

2.検索エンジンの仕組み ~Indexerの構成~ Forward Indexの作成 docID wordID{エンジン} wordID{検索} wordID{分散} Indexer docID {分散} {検索} {エンジン} {Null} ・・・・・・ {docID} {wordID} {params} Lexicon この後にForward Indexのデータ構造を入れる Forward Index エンジン 検索 分散 Barrels

2.検索エンジンの仕組み ~Indexerの構成~ Inverted Indexの作成 Google hoge ・・・・・・ {docID} {wordID} {params} Yahoo! InfoSeek Barrels Inverted Index Forward Index Sorter Lexicon 辞書

2.検索エンジンの仕組み ~Indexerの構成~ アンカーの切り出し docID Indexer <a>Link</a> decompress Anchor Repository このリンクを元にCrawlerが巡回

2.検索エンジンの仕組み Indexerの構成 decompress Repository Indexer Forward Index Barrels Lexicon Inverted Index Sorter

2.検索エンジンの仕組み 検索エンジンの構造 Crawler Indexer Searcher

2.検索エンジンの仕組み Searcher Webサーバー上で動作 ユーザーからの検索キーを受け付ける Indexerが生成したインデックスを参照して検索キーにマッチする検索結果を返却

2.検索エンジンの仕組み ~Searcher~ 検索キー Searcher Barrels Inverted Index

2.検索エンジンの仕組み ~Searcher~ 検索アルゴリズム テキストマッチ タグ重み付け キーワード頻出度 キーワードの出現位置 キーワード近接度 etc.

2.検索エンジンの仕組み ~Searcher~ テキストマッチ 検索キーと一致するテキストが文書内に含まれている Searcherの実際の挙動を説明 Google hoge ・・・・・・ {docID} {wordID} {params} Yahoo! InfoSeek 検索キー:hoge 【Inverted Index】

2.検索エンジンの仕組み ~Searcher~ タグ重み付け HTMLタグの種類により重みをつける <EX>Namazu タグの種類 タグの重み H1 8 A 4 STRONG 2 EM H2 7

発表の流れ 研究の概要 検索エンジンの仕組み Crawler Indexer Searcher PageRankの仕組み 今後の展望

3.PageRankの仕組み 質の高い検索結果を返すには? サイトの質を内容から判別することは困難 定量的に解析できる手法を (Yahoo!のように人間が判断) 定量的に解析できる手法を ジャンクサイトを排除 従来の検索アルゴリズムを逆手に取る

3.PageRankの仕組み 基本概念 「多くの良質なページからリンクされているページは、やはり良質なページである」 Googleによって提唱

3.PageRankの仕組み ~概念~ PageRankの測り方 被リンク数 PageRankの高いページからのリンク (Yahoo!など) リンク元のリンク数

3.PageRankの仕組み ~概念~ PageRankの概念図 50 100 50 50 54 12 27 4 4 27 4 リンク

3.PageRankの仕組み ~モデリング~ Random Walker on the Web PageRankのモデリング ネットサーファーを考える Web上のリンクをランダムに進んでいく 決して前のページには戻らない 時折全く関係のないページへ飛ぶ ネットサーファーが、あるサイトを訪れる確率がPageRank

3.PageRankの仕組み ~モデリング~ 突然無関係なページへ遷移

3.PageRankの仕組み ~簡単な例~ PageRankの計算方法 ID=1 閉じたWWWを考える 3ページで構成 ID=2 ID=3

3.PageRankの仕組み ~簡単な例~ PageRankの計算方法 ½, 0, ½ A = ID=1 1/2 1/2 1 0, ½, ½ 0, ½, ½ ½, 0, ½ 1, 0, 0 隣接行列 A = ID=3 ID=2

3.PageRankの仕組み ~計算手法~ 一般化 現在の存在確率に をかけると 1ステップ先の存在確率が求まる

3.PageRankの仕組み ~計算手法~ 一般化 の定常状態の値がPageRank

3.PageRankの仕組み ~計算手法~ PageRankの計算方法 固有値、固有ベクトル

3.PageRankの仕組み ~計算手法~ PageRankの計算方法

3.PageRankの仕組み ~計算手法~ 続き(1)

最大固有値の固有ベクトルを正規化したものに一致 3.PageRankの仕組み ~計算手法~ 続き(2) PageRankは 最大固有値の固有ベクトルを正規化したものに一致

PageRankを求めるための計算量を大幅に軽減できる 何が言えるか? PageRankを求めるための計算量を大幅に軽減できる

3.PageRankの仕組み 現実問題 全てのWebサイトがリンクでつながっているわけではない Dangling Linkの存在

3.PageRankの仕組み 解決法 ネットサーファーは時折全く関係のない ページへ飛ぶ

3.PageRankの仕組み マルコフ連鎖におけるエルゴード性 遷移によって任意の状態から全ての状態へ 移ることができればエルゴード的であることが言える つまり、ネットサーファーの気まぐれがエルゴード性をもたらす 先ほど計算した手法を現実に適用できる

3.PageRank Googleの例(1) ネットサーファーが「無関係なページへ飛ぶ確率」は0.15/1.15(13%程度)

3.PageRank Googleの例(2) 逆に、全く関係のないページから遷移してくる確率も0.15/1.15(13%程度)

3.PageRankの仕組み PageRankの計算方法 PR:ページランク C:ページから出て行くリンク数 d:リンクを辿って次の状態へ遷移する確率 rp

3.PageRankの仕組み ~まとめ~ 定量的に解析可能 現実的な計算量でPageRankを算出 PageRankが一意に定まる Googleでは7500万ページを5時間

3.今後の展望 Indexerの並列分散化 検索アルゴリズム Linuxクラスタによって低コストで高速化 汎用的なフレームワークとして実装 PageRankを含めた優れた検索アルゴリズムの模索

3.今後の展望 Indexerの並列分散化と汎用化 Rule Index Indexer Anchor Index Repository