Professional Documents
Culture Documents
数学
—Webページの重要度を定めるPageRankの技術—
照井 章
(筑波大学 数理物質科学研究科 数学専攻)
2011年5月13日
今回のお題
数学特別講義I 検 索
検索結果が約22万件
検索結果が約22万件 筑波大学の数学特別講義I
(オープンコースウェア)
検索結果が約22万件 筑波大学の数学特別講義I
(オープンコースウェア)
誰のブログだ、これは!?
大量の検索結果から
より重要なwebページを
優先的に取り出すには
どうすればよいか?
PageRank
定量的なwebページの重要度の指標
≤ ≤ ≤ ≤ ≤
PageRank
定量的なwebページの重要度の指標
≤ ≤ ≤ ≤ ≤
の話をします!
アイデア実現のステップ
対象を観察し、問題
を数学の言葉で表す
アイデア実現のステップ
モデル化した問題の
解法をつくる
アイデア実現のステップ
計算機のプログラムや
システムを作って動かす
今回の話の流れ
確率論で扱われる
確率過程の一つ
例:ある地方の明日の天気
今日の
天気
毎日、今日の天気から
ある決まった確率で推移
今日が晴のとき
明日の天気の確率
100%
80%
60%
40%
20%
0%
今日が曇のとき
明日の天気の確率
100%
80%
60%
40%
20%
0%
今日が雨のとき
明日の天気の確率
100%
80%
60%
40%
20%
0%
時間の推移に伴う
日々の天気の確率の推移
今日 明日 あさって
確率過程
今後の仮定(2つ)
仮定1: マルコフ性
おととい 昨日 今日 明日
3日前 あさって
明日の各天気の確率は
今日の天気にのみ依存する
「マルコフ過程」
仮定2: 時間について一様
おととい 昨日 今日 明日
3日前 あさって
翌日の各天気に推移する
確率は、毎日常に一定
確率過程を計算しよう
推移図(有向グラフ)
1/2
ノード(節) エッジ(辺)
推移図を表にまとめる
明日の天気
1/2
【問題1】表を完成させよう!
推移図を表にまとめる
明日の天気
1/2
【問題1】表を完成させよう!
表から推移確率行列を定義
する
明日の天気
1/2 2/5 1/10
今 1/2 2/5 1/10 P = ? ? ?
日
? ? ?
の 2/5 1/2 1/10
天
気 1/5 3/10 1/2
【問題2】推移確率行列 P を完成させよう!
確率分布
ある時点での「晴」「曇」「雨」それぞれの確率を
順に並べた行ベクトル
各要素は非負で、それらの総和は1
例:「今日の天気は晴」の
確率分布
� �
π(0) = 1 0 0
明日の天気の確率分布を
計算すると
π(1) = π(0) P
� � 1/2 2/5 1/10
= 1 0 0 2/5 1/2 1/10
1/5 3/10 1/2
� �
= 1/2 2/5 1/10
あさっての天気の確率分布を
計算すると
π(2) = π(1) P
� � 1/2 2/5 1/10
= 1/2 2/5 1/10 2/5 1/2 1/10
1/5 3/10 1/2
� �
= 43/100 43/100 7/50
n日後の天気の確率分布を
計算すると
π(n) = π(n − 1) P
= π(n − 2) P 2
..
.
= π(0) P n
例:水戸における1967年~1996年の
30年間の5月13日の天気出現率
� �
π(0) = 0.5 0.167 0.333
4日後の天気の確率分布を
計算すると
π(4) = π(0) P
4
� �
= 0.405 0.424 0.171
定常分布
今日の天気を「晴」と仮定して
10日後までの天気の確率分布を計算すると
� �
π(0) = 1 0 0
� �
π(1) = 0.5 0.4 0.1
� �
π(2) = 0.43 0.43 0.14
� �
π(3) = 0.415 0.429 0.156
� �
π(4) = 0.410 0.427 0.162
� �
π(5) = 0.409 0.426 0.165
� �
π(6) = 0.408 0.426 0.166
� �
π(7) = 0.408 0.426 0.166
� �
π(8) = 0.407 0.426 0.167
� �
π(9) = 0.407 0.426 0.167
� �
π(10) = 0.407 0.426 0.167
水戸における5月13日の天気出現率から
10日後までの天気の確率分布を計算すると
� �
π(0) = 0.5 0.167 0.333
� �
π(1) = 0.383 0.383 0.233
� �
π(2) = 0.392 0.415 0.193
� �
π(3) = 0.401 0.422 0.177
� �
π(4) = 0.405 0.424 0.171
� �
π(5) = 0.406 0.425 0.168
� �
π(6) = 0.407 0.426 0.167
� �
π(7) = 0.407 0.426 0.167
� �
π(8) = 0.407 0.426 0.167
� �
π(9) = 0.407 0.426 0.167
� �
π(10) = 0.407 0.426 0.167
どのような確率分布から出発しても
日数が十分経つと、同一の確率分布に
落ち着くように見える
� � � �
π(0) = 1 0 0 π(0) = 0.5 0.167 0.333
� � � �
π(1) = 0.5 0.4 0.1 π(1) = 0.383 0.383 0.233
� � � �
π(2) = 0.43 0.43 0.14 π(2) = 0.392 0.415 0.193
� � � �
π(3) = 0.415 0.429 0.156 π(3) = 0.401 0.422 0.177
� � � �
π(4) = 0.410 0.427 0.162 π(4) = 0.405 0.424 0.171
� � � �
π(5) = 0.409 0.426 0.165 π(5) = 0.406 0.425 0.168
� � � �
π(6) = 0.408 0.426 0.166 π(6) = 0.407 0.426 0.167
� � � �
π(7) = 0.408 0.426 0.166 π(7) = 0.407 0.426 0.167
� � � �
π(8) = 0.407 0.426 0.167 π(8) = 0.407 0.426 0.167
� � � �
π(9) = 0.407 0.426 0.167 π(9) = 0.407 0.426 0.167
� � � �
π(10) = 0.407 0.426 0.167 π(10) = 0.407 0.426 0.167
実際、ある条件下では
同一の確率分布に落ち着く!
定理:既約かつ非周期的なマルコフ過程にお
π(n) はある唯一のベクトル
いて、 α に収束す
る.
Pの固有値1に属する固有ベクトル
α = αP
定常分布
【問題3】天気の例題の
定常分布を求めよう
基本的には、以下の連立1次方程式を解けばよい:
α = αP
� � � � 1/2 2/5 1/10
x y z = x y z 2/5 1/2 1/10
1/5 3/10 1/2
要素の総和を1に規格化することに注意
Webページの相互関係を
考えよう!
Webページの相互リンク
(ハイパーリンク)の例(図2)
2つの仮定
仮定1:各webページから自分以外の
すべてのwebページに到達可能
仮定2:これらのwebページ
以外からのリンクの出入りはない
Webページのリンク関係を
有向グラフで考える(図3)
Page 3 Page 6
Page 5
Page 7
ノード
エッジ
天気の推移図との対応関係
1/2
Page 3 Page 6
1/10 Page 7
1/5
天気 Webページ
天気の推移 Webページ間のリンク
天気が推移する確率 ??? 何を与える?
Random Surfer Model
1/n
1/n
1/n
1/n
n個のハイパーリンクから1個を
無作為に選んで進む(確率1/n)
Random Surfer Model による
推移図(図4)
Random Surfer Model による
確率過程の計算
確率分布
ある時点で “Page 1”, ... , “Page 7” それぞれを
閲覧している確率を順に並べた行ベクトル
各要素は非負で、それらの総和は1
確率分布がマルコフ過程に従うと
仮定し、推移確率行列を求める
? ? ? ? ? ? ?
? ? ? ? ? ? ?
? ? ? ? ? ? ?
P =
? ? ? ? ? ? ?
? ? ? ? ? ? ?
? ? ? ? ? ? ?
? ? ? ? ? ? ?
【問題4】推移確率行列 P を求めよう!
マルコフ過程の既約性と非周期性を
仮定すると、定常分布が求まる
α = αP
定常分布
各webページを訪問する確率を
PageRank と定義する!
PageRank の意味(1)
被リンク数がより
多いほど
PageRank はより
大きい傾向がある
PageRank の意味(2)
PageRank がより
大きなwebページ
からのリンク数が
多いほど
PageRank はより
大きい傾向がある
【問題5】PageRankを
求めてみよう!
定常分布
α = αP
要素の総和を1に規格化することに注意
入るリンクが
あっても
出ていくリン
クがない
仮定が成り立たない例
(2)
出ていくリン
クがあっても
入るリンクが
ない
仮定が成り立たない例
(3)
リンクの相互
関係が一部で
閉じていて、
他のwebペー
ジからの
出入りがない
このようなwebページがあると
マルコフ過程の既約性や
非周期性が必ずしも
成り立たない。どうする!?
Random Surfer Model を
一部修正
1/n
1/n
85% 1/n
1/n
n個のハイパーリンクから1個を
無作為に選んで進む(確率1/n)
全く異なるwebページを無作為に
15% 選んでジャンプする!(確率1/N)
一部修正した Random Surfer Model の
推移確率行列
85%の部分 15%の部分
1/N ··· 1/N
.. ..
P = 0.85P + 0.15 .
�
.
1/N ··· 1/N
もともとの
Random
Surfer Model N: 行列の次元
【問題6】
α = αP �
これだけの個数のwebページをどうやって集めるか?
実際の推移確率行列の次元
1/N ··· 1/N
.. ..
P = 0.85P + 0.15 .
�
.
1/N ··· 1/N
α = αP �
これだけの次元の推移確率行列から
定常分布をどのように効率的に計算するか?
Webページの検索技術
検索語の候補となる
キーワードの抽出と整理
実用的なインデックス
(索引)の構築
高速な検索とPageRankに
沿った検索結果の並べ替え
効率的かつ安定な
サービス提供のための技術
大量の検索要求に対する
負荷分散と応答性の保持
データの分散と共有
障害時のデータ保持と
迅速な復旧
地球環境保護と
省エネルギー
アイデアの実現には
ありとあらゆる知恵が必要
知恵を生み出す力を身に
つけるために大学で学ぶ
レポート課題
配布資料の問題
本講義の感想
レポート課題
配布資料の問題 Thank
you!
本講義の感想