Transcript Document

インクリメンタルPageRankによる
重要Webページの効率的な収集戦略
東京大学
山田 雅信 田浦 健次朗 近山 隆
背景

インターネットの爆発的な普及と情報の氾濫


サーチエンジンによる情報検索の普及
サーチエンジンのお仕事
1.
2.
3.
4.
クローラによるWebページの自動収集
高速検索のための索引付け
利便性向上のための検索結果のランク付け
ユーザインターフェースの提供
Overview


クローラにおける問題点
問題解決のための先行研究とその手法


更なる改善を目指して・・・



PageRankクローラ
PageRankクローラの考察と
インクリメンタルPageRankクローラの提案
実装と実験
まとめ
従来の多くのクローラに見られる
問題点

Webページの重要度に基づくランク付けアルゴリ
ズムの研究が盛んに行われている
- 近年のサーチエンジンにおける検索精度の向上という
事実

一方、クローラによるWebページの収集段階で
はそのようなことはあまり考慮されていない

どのWebページも等しく扱い、等しく収集
e.g. 幅優先探索
問題点により生じる不利益

クローラを取り巻く環境

時間的制限


物理的制限



定められた収集期間(約一ヶ月)
ネットワーク
ディスク
全Webページの
30%程度のカバー率
それらを浪費しつつ


一生懸命ゴミ集め
- せっかく収集しても検索に利用される可能性が低いページが存在
一方で重要なWebページの見落としも・・・
- 収集されないため検索対象にすらならない。誰にも気づいてもらえない
クローラの収集戦略が重要
PageRankを利用した収集戦略

Efficient Crawling Through URL
Ordering [J.Cho et al. 1998]

収集段階でWebページの重要度を計算、重要
度の高いものから優先的に収集


重要度の計算にPageRankを利用
実験内容:
-
それらを従来手法と比較、評価
収集における精度を重視
PageRank

大規模リンク構造の利用



リンク = 重みのある支持投票
投票結果の集計 = PageRank計算
ブラウジングモデルの導入

ユーザがWebページ閲覧の際の行動パターンを数値化
- 多くの場合はリンクを辿ってページを閲覧
- 時にはそれ以外の方法で閲覧
PageRank ≒ Webにおける客観的人気度
e.g. google
収集手法(1)
- Webページの収集優先度 step0
現段階で計算は
完了しているとする
:収集済み
:未収集
ID-List
step1
その計算結果に基づき
収集優先度を決定
Priority-List
step2
優先度の高いものから順に収集する
収集手法(2)
- Webページの収集 :収集済み
:未収集
ID-List
追加
step4
リンク構造を拡張
Priority-List
収集
step2
step3
収集したページからリンクを抽出する
そのページが未知のものだったら新たに
ID-Listに追加する
収集手法(3)
- PageRankにおける収集優先度の再計算 :再計算中
ID-List
step5
PageRankを再計算
:収集済み
:未収集
:たった今収集
step6
ID-List内の全ての要素に対し
て計算を施行、それを必要に
応じ複数回施行
step4
新たにページを収集したことに
よりリンク構造が拡張される
考察
- PageRank収集戦略の利点と問題点 
利点


幅優先探索やBackLink Countといった古典的
手法に比べ、重要なWebページを優先的に収
集することができる
問題点

収集優先度計算のためのオーバヘッドが極め
て大きい
- PageRank計算はインクリメンタルなデータに向か
ない⇒実用的でない
より低コストの計算方式が必要
インクリメンタルPageRankへの導入

収集過程におけるリンク構造の拡張の大部分は、すでに
保持しているリンク構造に比してごく小規模なもの
e.g. 1億ページからなるリンク構造に新たに1000ページが追加さ
れた


リンク構造拡張にともなうPageRankの変化は全体からみ
れば微々たるもの
(それにも関わらず)全てのページで再計算を行うのは、
あまりにも非効率
PageRank収集戦略の利点を保ったまま計算コ
ストを削減したい
インクリメンタルPageRankを提案
インクリメンタルPageRankのポリ
シー

ポリシー

リンク構造拡張にともなうPageRankの変化が比較的
大きい部分のみ再計算を施行
- 当然そのことにより収集順序に誤差が生じるが、そのデメリッ
トよりも計算コストの削減によるメリットのほうが大きい場合
が多い

重要なページを“First”に収集するのではなく“Fast”に
収集
- 収集順序の誤差により収集が10分遅れたなどというのはあ
まり問題とはならない。
- 一番恐ろしいのは重要なページが収集されずに収集期間を
終えること
インクリメンタルPageRank
における収集優先度の再計算
:再計算中
ID-List
step6
拡張された周辺のみ
PageRankを再計算
:収集済み
:未収集
:たった今収集
step5
リンク構造を拡張する際には
どのように拡張されたかを
チェックする
step4
新たにページを収集したことに
よりリンク構造が拡張される
実験
- 擬似クローリング 


あらかじめ収集しておいたデータを利用
リンクをもつページをランダムに選び出し、
それをクローリングの起点として登録
各収集戦略によりクローリング
- Priority-Listのソートは5000ページ毎
- Priority-Listが空になるか、あらかじめ指定した
ページ数を収集したら終了
- クローリングのログと結果を出力
収集戦略


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)
収集優先度の計算速度比較
1800000
1600000
処理時間(ms)
1400000
1200000
BFS
1000000
BLC_OS
800000
IPR_OS
600000
PR_5
400000
200000
0
0
100000
200000
300000
収集ページ数
400000
500000
PageRankクローラに比べ圧倒的に低コスト!
ページ収集におけるアイドル時間も有効利用!!
インクリメンタルPageRankにおける
もうひとつの選択 - Partial Sort 
Overall Sort
- ある程度ページを収集した段階でPriority-Listをソート
する
- Priority-Listが膨大だとソートに時間がかかる

Partial Sort
- インクリメンタルPageRankやBack Link Countにおい
ては新たにページを収集(リンク構造を拡張)したこと
により収集優先度が上がるページが特定できる
そのようなページのみPriority-Listをソートする
- Overall Sortに比べPriority-Listのサイズによる影響が
小さい
ソート手法の速度比較
900000
800000
処理時間(ms)
700000
600000
500000
IPR_OS
IPR_PS
400000
300000
200000
100000
0
1
10
100
1000
10000
収集ページ数
100000
1000000
Partial Sortは頻繁にPriority-Listが
更新されるとき性能が悪化
ハイブリッド型の検討
重要ページの収集率
25
上位10%の収集率(%)
20
15
BFS
BLC_OS
IPR_PS
10
5
0
0
100000
200000
300000
収集ページ数
400000
500000
インクリメンタルPageRankが圧倒的に優れている
Overall SortとPartial SortではPartial Sortの方が若干優れている
精度とコストのトレードオフ
- 計算の打ち切り 
Value Ratio (VR)
- 新たにforwardするPageRankとforwardされる
側のページのPageRankの比がある閾値以下

Link Depth (LD)
- 起点からのリンクの深さがある閾値以上

Page Number (PN)
- 更新されたページ数がある閾値以上
になったら計算を打ち切る
各計算打ち切り手法の精度比較
25
上位10%の収集率(%)
20
IPR_PS(LD1)
IPR_PS_LD3
IPR_PS_LD5
IPR_PS_PN10
IPR_PS_PN100
IPR_PS_PN1000
IPR_PS_VR1
IPR_PS_VR001
15
10
5
0
0
100000
200000
300000
収集ページ数
400000
500000
収集段階によっては精度に約1~2%
程度の違いが見られる
まとめと今後の課題

まとめ



インクリメンタルPageRankは幅優先探索よりも
賢く、PageRankよりも高速な収集戦略
現実のように全Webページのうち数十パーセン
トしかクローリングできないよな状況で特に有
効
課題


更なる効率化
実際のWWW空間での実験と実用化