Slide 1

Slide 1 text

Google検索システムにおける PageRank手法(2) M2 Jun HASHIMOTO 1

Slide 2

Slide 2 text

参考文献について • Google PageRankの数理 – 共立出版,¥4725 • 今日は第6~10章の内容 の説明です 2

Slide 3

Slide 3 text

Agenda • 前回の質問回答・復習 • PageRankの計算について – 固有値・計算速度 – 計算の高速化 • ぶら下がりノードの考慮・適応的ベキ乗法・凝集 • PageRankの更新について – リンク更新におけるPageRankの更新 ※今日はスライドが黒いです(数式多め) 3

Slide 4

Slide 4 text

内容得点と人気得点の比率 • おそらく企業秘密(探しても分からず…) – http://www.imaginary-design.net/blog/archives/266 4 “ランク付け自体は内容得点(コンテンツスコア)と人気得点(ポピュラリ ティスコア)の合計である合計得点(オーバーオールスコア)によって順 位付けが導き出されるのですが、内容(内部)と人気(リンク)のそれぞ れに対する配点は、その時々によって変化していきます。 今のgoogleの流れは確実に内容重視になってきているというだけで、良 質なコンテンツを創っていくことも立派なSEOなわけです。”

Slide 5

Slide 5 text

[復習]総和方程式の行列表現 • ハイパーリンク行列H(n*n) – ノードi->jのリンクがあれば = 1 || ,それ以外0 • :ページ からの出リンクの個数 • PageRankベクトルπ(1*n) • (2)式の行列表現: +1 = – Hは疎な行列 – 平均的なwebページは出リンクが10個 • O(10n)の計算量 5

Slide 6

Slide 6 text

[復習]基本モデルに対する調整 • ぶら下がり問題に対する解決策(確率的調整) – = + 1 ∗ – a:ぶら下がりノードベクトル • ぶら下がりノードなら = 1,そうでなければ0 – この調整により,Sは確率的(stochastic)となる • 収束性の保証のための調整(原始的調整) – = + 1 − ∗ 1 ∗ – G:Google行列 – α:パラメータ(ハイパーリンクに従う時間の比率) 6 テレポーテーション行列E

Slide 7

Slide 7 text

[復習]GoogleのPageRank調整手法 • +1 = ,これだけ • Gに適用したベキ乗法で計算できる – 最大の2つの固有値を1 , 2 とすると,漸近的な 収束の速さは, 2 1 ->0の速さ – Google行列では1 = 1, 2 ≦ であるため,が おおよその収束の目安となる 7

Slide 8

Slide 8 text

1 = 1である理由 • Gの固有値に1が存在…成分が全て1のベクト ルpを適用するとGp=pとなる • 任意の行列Aに対し,絶対値が最大である固 有値をrとすると,以下が成り立つ – || ≦ max • Gにおいて,任意の行に対し, = 1 • || ≦ 1,r=1が存在するため,最大固有値は1 8

Slide 9

Slide 9 text

2 ≒ である理由 • Gの固有値: = (1, 2 , 3 , … ) • Sの固有値: = (1, 2 , 3 , … ) – k=2,3,…nに対し = が成立 • Webの世界におけるリンク構造から, ≒ 1 – これにより ≒ が示される 9

Slide 10

Slide 10 text

正行列に対するペロンの定理 • 正行列A,Aの固有値で絶対値が最大のもの をrとすると,以下が成り立つ 1. rは正 2. rは単根 3. = , > 0かつ | | = 1 となるベクトル が唯一存在 10

Slide 11

Slide 11 text

Google行列Gに対するペロンの定理 • 確率行列においてr=1(次回説明) – = に左から, 右からを乗算: = • Google行列を用いたPageRankの更新式 – +1 = • :定常ベクトル=PageRankベクトル 11

Slide 12

Slide 12 text

ベキ乗法が優れている理由 • 1回のGの乗算->ほぼ() • 固有値計算のアルゴリズム:どんなに頑張って も(2) 12 + 1 = = + 1 − = + ( + 1 − ) Hは非常に疎(Sparse):1行あたり10個ほどの成分 ->O(10n)の計算量 O(n)の計算量 1

Slide 13

Slide 13 text

PageRank計算の高速化(1) • ぶら下がりノードの考慮 13 + 1 = + ( + 1 − ) = ( 11 12 ) ND D ND D <-このように行列を入れ替えてやる ND(Not dangling):非ぶら下がりノード D(dangling):ぶら下がりノード の計算量を削減可能

Slide 14

Slide 14 text

PageRank計算の高速化(2) • 適応型ベキ乗法 – Kamvar et al.[2003]:一部分の”頑固な”ページの 収束に時間がかかり,それ以外はより速く収束す ることを発見 – − −1 < の際に要素iの計算を止める – 問題点:収束に関する証明がない • 途中で計算を止めた要素が本当の収束値か不明 – とはいえベキ乗法によるPageRank計算の高速化 に,現実的な貢献をしている 14

Slide 15

Slide 15 text

[Site B]www.huga.com [Site A]www.hoge.com PageRank計算の高速化(3)-1 • 凝集 – WebPageのリンク構造を階層的に考える – 例: 15 1 2 3 6 5 4 7 www.hoge.com www.huga.com ページ1~7までの PageRankの計算 hoge.comとhuga.com 間のPageRankの計算 + 各サイト内の PageRankの計算

Slide 16

Slide 16 text

PageRank計算の高速化(3)-2 • 7つのノードを2つのノード(各サイト)へと凝集 • ノード間での遷移確率を以下のように仮定 16 www.hoge.com www.huga.com 0.96 0.04 1 ( 0.96 0.04 0 1 ) 1 2 1 2 α = 0.9, = (0.5 0.5)の時, 定常ベクトルは(0.3676 0.6324) HostRankベクトルと呼ぶ

Slide 17

Slide 17 text

PageRank計算の高速化(3)-3 • www.hoge.comのPageRankベクトル 17 [Site A]www.hoge.com 1 3 7 2 1 = 0 1 0 0 0 0 1 0 1/3 1/3 0 1/3 0 0 0 0 1 2 3 7 1 2 3 7 α = 0.9, = (0.25 0.25 0.25 0.25)の時, PageRankベクトルは(0.1671 0.3175 0.3483 0.1671)

Slide 18

Slide 18 text

PageRank計算の高速化(3)-4 • www.huga.comのPageRankベクトル 18 [Site B]www.huga.com 6 5 4 1 = 0 1 0 0 0 1 1 0 0 4 5 6 4 5 6 α = 0.9, = (1/3 1/3 1/3)の時, PageRankベクトルは(1/3 1/3 1/3)

Slide 19

Slide 19 text

PageRank計算の高速化(3)-5 • 3つの定常ベクトルから近似のPageRankベクトル を算出 19 www.hoge.com www.huga.com 1 3 7 2 6 5 4 (0.3676 0.6324) (0.1671 0.3175 0.3483 0.1671) (1/3 1/3 1/3) = (0.3676 0.1671 0.3175 0.3483 0.1671 0.6324(1/3 1/3 1/3 )) = (0.0614 0.1167 0.1280 0.0614 0.2108 0.2108 0.2108) = (0.0538 0.1022 0.1132 0.0538 0.2271 0.2256 0.2242) 凝集が機能し,計算量を減らすことができる

Slide 20

Slide 20 text

PageRankの更新-1 • PageRankはGoogleにより毎月更新(Google Danceと呼ばれる) – Cho et al.[2000]:全ページの40%は一週間以内に 変更される • 更新における変更点 – i)ハイパーリンクの追加・削除(Hの要素のみ変更) – ii)ページの追加・削除(Gの大きさそのものが変更) 20

Slide 21

Slide 21 text

PageRankの更新-2 • リンク更新を扱う近似更新「近似凝集」 – 更新前のPageRankベクトルを以下のように定義 – 更新後のマルコフ連鎖状態空間Sを = ∪ に分割 • 更新後のGoogle行列,PageRankベクトルを以下のように 表す 21 = (1 , 2 , … ) = 11 12 21 22 :更新後に定常確率が一定の影響を受けるノード :更新後も定常確率が著しい影響を受けないノード = (1 , 2 , … |+1 , +2 , … ) の中で, に属するノードの PageRankを行ベクトルとする

Slide 22

Slide 22 text

PageRankの更新-3 • 近似凝集を用いた近似更新 – :(l+1)*(l+1)行列 – に対する定常ベクトル = 1 , 2 , … +1 • 正確なPageRankベクトルに対する近似ベクトル は以下のように表せる 22 = 11 12 21 1 − 21 = = 1 , 2 , … |

Slide 23

Slide 23 text

Thank you for Listening!!! 23