Transcript
Page 1: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

インクリメンタル PageRank による重要 Web ページの効率的な収集戦略

東京大学山田 雅信 田浦 健次朗 近山 隆

Page 2: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

背景 インターネットの爆発的な普及と情報の

氾濫 サーチエンジンによる情報検索の普及

サーチエンジンのお仕事1. クローラによる Web ページの自動収集2. 高速検索のための索引付け3. 利便性向上のための検索結果のランク付け4. ユーザインターフェースの提供

Page 3: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

Overview クローラにおける問題点 問題解決のための先行研究とその手法

PageRankクローラ 更なる改善を目指して・・・

PageRankクローラの考察とインクリメンタル PageRankクローラの提案

実装と実験 まとめ

Page 4: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

従来の多くのクローラに見られる問題点

Web ページの重要度に基づくランク付けアルゴリズムの研究が盛んに行われている- 近年のサーチエンジンにおける検索精度の向上と

いう事実 一方、クローラによる Web ページの収集段

階ではそのようなことはあまり考慮されていない どの Web ページも等しく扱い、等しく収集  e.g.  幅優先探索

Page 5: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

クローラを取り巻く環境 時間的制限

定められた収集期間(約一ヶ月) 物理的制限

ネットワーク ディスク

それらを浪費しつつ 一生懸命ゴミ集め

- せっかく収集しても検索に利用される可能性が低いページが存在

一方で重要な Web ページの見落としも・・・- 収集されないため検索対象にすらならない。誰にも気づいても

らえない

問題点により生じる不利益

クローラの収集戦略が重要

全 Web ページの30% 程度のカバー率

Page 6: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

PageRank を利用した収集戦略 Efficient Crawling Through URL Ordering [J.Cho et al. 1998]  収集段階で Web ページの重要度を計算、

重要度の高いものから優先的に収集 重要度の計算に PageRank を利用

実験内容:- それらを従来手法と比較、評価- 収集における精度を重視

Page 7: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

PageRank 大規模リンク構造の利用

リンク = 重みのある支持投票 投票結果の集計 = PageRank 計算

ブラウジングモデルの導入 ユーザが Web ページ閲覧の際の行動パターンを数

値化- 多くの場合はリンクを辿ってページを閲覧- 時にはそれ以外の方法で閲覧

PageRank ≒ Web における客観的人気度e.g. google

Page 8: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

収集手法 (1) - Web ページの収集優先度 -

現段階で計算は完了しているとす

優先度の高いものから順に収集する

:収集済み

:未収集

ID-List

Priority-List

その計算結果に基づき収集優先度を決定

step0

step1

step2

Page 9: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

収集手法 (2)  - Web ページの収集 -

ID-List

Priority-List

:収集済み

:未収集

収集したページからリンクを抽出するそのページが未知のものだったら新たに ID-List に追加する

追加

リンク構造を拡張

収集step2

step3

step4

Page 10: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

収集手法 (3)  - PageRank における収集優先度の再計算 -

ID-List

:収集済み

:未収集

新たにページを収集したことによりリンク構造が拡張

される

step4

PageRank を再計算

step5

ID-List 内の全ての要素に対して計算を施行、それを必

要に応じ複数回施行

step6

:再計算中

:たった今収集

Page 11: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

考察 - PageRank 収集戦略の利点と問題点 -

利点 幅優先探索や BackLink Count といった古典的手法に比べ、重要な Web ページを優先的に収集することができる

問題点 収集優先度計算のためのオーバヘッドが極

めて大きい- PageRank 計算はインクリメンタルなデータ

に向かない⇒実用的でないより低コストの計算方式が必要

Page 12: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

インクリメンタル PageRankへの導入 収集過程におけるリンク構造の拡張の大部分は、す

でに保持しているリンク構造に比してごく小規模なものe.g. 1億ページからなるリンク構造に新たに1000ページ

が追加された リンク構造拡張にともなう PageRank の変化は全体

からみれば微々たるもの (それにも関わらず)全てのページで再計算を行う

のは、あまりにも非効率PageRank 収集戦略の利点を保ったまま計算コストを削減したい

インクリメンタル PageRank を提案

Page 13: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

インクリメンタル PageRank のポリシー ポリシー

リンク構造拡張にともなう PageRank の変化が比較的大きい部分のみ再計算を施行

- 当然そのことにより収集順序に誤差が生じるが、そのデメリットよりも計算コストの削減によるメリットのほうが大きい場合が多い

重要なページを“ First” に収集するのではなく“ Fast” に収集

- 収集順序の誤差により収集が10分遅れたなどというのはあまり問題とはならない。

- 一番恐ろしいのは重要なページが収集されずに収集期間を終えること

Page 14: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

インクリメンタル PageRankにおける収集優先度の再計算

ID-List

:収集済み

:未収集

新たにページを収集したことによりリンク構造が拡張

される

step4

拡張された周辺のみ PageRank を再

計算

step6

リンク構造を拡張する際には

どのように拡張されたかをチェックする

step5

:再計算中

:たった今収集

Page 15: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

実験 - 擬似クローリング - あらかじめ収集しておいたデータを利用 リンクをもつページをランダムに選び出

し、それをクローリングの起点として登録

各収集戦略によりクローリング- Priority-Listのソートは 5000 ページ毎- Priority-Listが空になるか、あらかじめ指定

したページ数を収集したら終了- クローリングのログと結果を出力

Page 16: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

収集戦略 PageRank (PR) Incremental PageRank (IPR)

- Overall Sort (OS)- Partial Sort (PS) 

- Value Ratio (VR)- Link Depth (LD)- Page Number (PN)

Back Link Count (BLC)- Overall Sort (OS)- Partial Sort (PS)

Breadth First Search (BFS)

Page 17: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

収集優先度の計算速度比較

0

200000

400000

600000

800000

1000000

1200000

1400000

1600000

1800000

0 100000 200000 300000 400000 500000

収集ページ数

(ms)

処理

時間

BFS

BLC_OS

IPR_OS

PR_5

PageRank クローラに比べ圧倒的に低コスト !ページ収集におけるアイドル時間も有効利用 !!

Page 18: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

インクリメンタル PageRank におけるもうひとつの選択 - Partial Sort - Overall Sort

- ある程度ページを収集した段階で Priority-Listをソートする

- Priority-Listが膨大だとソートに時間がかかる Partial Sort

- インクリメンタル PageRankや Back Link Countにおいては新たにページを収集 (リンク構造を拡張 )したことにより収集優先度が上がるページが特定できる

- Overall Sortに比べ Priority-Listのサイズによる影響が小さい

そのようなページのみ Priority-List をソートする

Page 19: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

ソート手法の速度比較

0

100000

200000

300000

400000

500000

600000

700000

800000

900000

1 10 100 1000 10000 100000 1000000

収集ページ数

(ms)

処理

時間 IPR_OS

IPR_PS

Partial Sort は頻繁に Priority-List が更新されるとき性能が悪

化ハイブリッド型の検討

Page 20: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

重要ページの収集率

0

5

10

15

20

25

0 100000 200000 300000 400000 500000

収集ページ数

10%

(%)

上位

の収

集率

BFSBLC_OSIPR_PS

インクリメンタル PageRank が圧倒的に優れているOverall Sort と Partial Sort では Partial Sort の方が若干優

れている

Page 21: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

精度とコストのトレードオフ - 計算の打ち切り - Value Ratio (VR)

- 新たに forwardする PageRankとforwardされる側のページの PageRankの比がある閾値以下

Link Depth (LD)- 起点からのリンクの深さがある閾値以上

Page Number (PN)- 更新されたページ数がある閾値以上

になったら計算を打ち切る

Page 22: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

各計算打ち切り手法の精度比較

0

5

10

15

20

25

0 100000 200000 300000 400000 500000

収集ページ数

10%

(%)

上位

の収

集率

IPR_PS(LD1)IPR_PS_LD3IPR_PS_LD5IPR_PS_PN10IPR_PS_PN100IPR_PS_PN1000IPR_PS_VR1IPR_PS_VR001

収集段階によっては精度に約 1~2% 程度の違いが見られる

Page 23: インクリメンタル PageRank による 重要 Web ページの効率的な収集戦略

まとめと今後の課題 まとめ

インクリメンタル PageRankは幅優先探索よりも賢く、 PageRankよりも高速な収集戦略

現実のように全Webページのうち数十パーセントしかクローリングできないよな状況で特に有効

課題 更なる効率化 実際のWWW空間での実験と実用化