Transcript 情報通信を支える論理
情報通信を支える論理
早稲田大学 理工学術院
基幹理工学部 情報理工学科
後藤滋樹
1
本日の内容
1. 情報の検索と論理記号
2. Googleのページランクと行列
3. イーサネットと多項式
いずれも実際の授業に基づいた内容です
2
情報の検索
• 最近の広告の仕方
テクトロニクス
検索
• 検索サイト、検索エンジン
http://www.yahoo.co.jp/
http://www.google.co.jp/
3
能率の良い検索
• キーワードを複数使う
情報理工学科
早稲田大学 情報理工学科
早稲田大学 AND 情報理工学科
• AND の他に OR がある
早稲田大学 OR 情報理工学科
• AND, OR の他にもある (Googleの例)
①
②
③
④
すべてのキーワードを含む AND
フレーズを含む (注: 語順を含めて一致)
いずれかのキーワードを含む OR
キーワードを含めない NOT
4
ベン図, 命題
X
Y
X AND Y
5
AND, OR, NOT は基本的な論理記号
• 論理回路(ろんりかいろ)は、ブール代数(論理演算)
を行う回路、およびデジタル信号を記憶する回路。
(出典: フリー百科事典『ウィキペディア(Wikipedia)』)
AND A・B
OR A+B
NOT A
• 論理回路の設計をする技術者は、数学の論理演算
記号とは違う記号を用いて論理式を記述することが
多い。(同上)
6
半加算器の論理回路
• 2進数の加算の演算
http://takaosuda.hp.infoseek.co.jp/homepage/electronics/circuit/calc02.html
X(入力1)
Y(入力2)
S (和)
C (桁上がり)
0
0
0
0
0
1
1
0
1
0
1
0
1
1
0
1
7
検索結果の表示
順番を決める方法
ページランク
8
Googleのページランク
W
• 基本的な仕組は数学的
W 0
グラフの行列による表現
隣接行列(推移行列、遷移行列) S 0
C 0
固有値と固有ベクトル
G 1
S学部
W大学
C学科
G研究室
S C G
1 0 0
0 1 0
0 0 1
1 1 0
1 頂点iから頂点 jに辺がある
aij
0 頂点iから頂点 jに辺がない
行列の上と左のW, S, C, Gは注釈
であり行列に含まれない
WEBページのリンクの関係
9
隣接行列を転置する
• 隣接行列 A (aij ) を転置する
リンクを「出す」側から「受ける」側へ
S学部
C学科
A
t
W大学
G研究室
WEBページのリンクの関係
0
1
0
0
0
0
1
0
0
0
0
1
1
1
1
0
10
隣接行列から推移確率行列へ
• 列(column)の総和が1または0になるように調整
ページの評価値をリンク先に渡す
1
S学部
1
1/3
W大学
1/3
C学科
1/3
1
G研究室
M
0
1
0
0
0 0
0 0
1 0
0 1
1
3
1
3
1
3
0
WEBページのリンクの関係
11
推移確率行列の固有値と固有ベクトル
• 固有値λと固有ベクトルr
M r r
• 行列 M を掛ける(乗算)ということは、グラフの
辺に沿って(確率的に)推移するということである
• 固有ベクトルの各要素は M を掛けても定数倍
しか変化しない。(安定している)
固有ベクトルの各要素がランクになる
(ただし要素の和が1となるように正規化する)
12
固有ベクトルの具体例
• GNU Octaveを使って計算する。固有値λ=1が最大の
固有値であり、固有ベクトルは下の左のようになる。
0.11111
0.22222
0.33333
0.33333
0.20851
0.41703
0.62554
0.62554
• これを正規化したページランクは上の右である。
2/9
1
1
S学部
1/3
1/9
W大学
1/3
C学科
1/3
1/3
1
G研究室
ページランクを記入した図
1/3
13
Googleにおける工夫
• サイズの大きな
疎(sparse)行列の
固有ベクトルの計算
1 N
N 4
• ユーザがランダムに
ページを渡り歩くと仮定
S学部
W大学
1
4
1
4
1
4
1
4
1
1
1
1
4
4
4
4
1
1
1
1
4
4
4
4
1
4
1
4
1
4
1
4
C学科
G研究室
14
Googleにおけるページランク
• 次の行列の固有ベクトルを求めて、要素の和が1に
なるように正規化する。
4
0.85 M 0.15 1
N 4
0.0375
0.8875
0.0375
0.0375
S学部
W大学
0.0375
0.0375
0.8875
0.0375
0.0375 0.320833
0.0375 0.320833
0.0375 0.320833
0.8875 0.0375
C学科
0.12649
0.23401
0.32540
0.31409
G研究室
15
より深く調べるために
• 本資料の例題は簡単にするために4つのサイトに閉じて
いた。
現実のPageRankは早稲田大学(8/10)、理工学部(6/10)、
CS学科(5/10)、後藤研(4/10)。
• 次の資料が参考になる
http://www.kusastro.kyoto-u.ac.jp/~baba/wais/pagerank.html
本資料は上記を参考にした。ただしOctaveのスクリプトは若干改良した。
• Googleの創始者による論文も入手できる。
Lawrence Page, Sergey Brin, Rajeev Motwani, Terry Winograd,
'The PageRank Citation Ranking: Bringing Order to the Web', 1998,
http://www-db.stanford.edu/~backrub/pageranksub.ps
Taher H. Haveliwala, 'Efficient Computation of PageRank', Stanford
Technical Report, 1999,
http://dbpubs.stanford.edu:8090/pub/1999-31
16
ネットワークの測定
オシロスコープ
電気信号を観測
アナライザ
パケットを収集
通信
17
イーサネットの電気信号を観測
• 実験
デジタル・ストレージ・オシロスコープ
テクトロニクス
18
デジタル信号として解釈する
19
イーサネットのフレーム
• フレーム frame をパケット packet ともいう
6
DIX
IEEE802.3
6
2
46~1500(可変長)
宛先のMACア
ドレス
送信元のMAC
アドレス
タイプ
データ
宛先のMACア
ドレス
送信元のMAC
アドレス
フレーム
の長さ
LLC
6
6
2
3
2
FCS
SNAP
データ
5
38~1492(可変長)
FCS
2
• 2種類の標準 standard がある
• 先頭(ヘッダ)と末尾(トレーラ)にデータ以外
の情報がある
20
Ver.2
イーサネットによる通信の基礎
•
FCS (Frame Check Sequence) 4オクテット
誤り検出のために使用。生成多項式は以下の通り。
G( x) x 32 x 26 x 23 x 22 x16 x12 x11
x x x x x x x 1
10
•
•
8
7
5
4
2
受信側で同様のアルゴリズムによりCRC値を計算し、
フレームチェックシーケンスの値と異なった
場合には、終端装置でフレーム誤りとして破棄。
「ワイドLANサービスのインタフェース 第1 版」
西日本電信電話株式会社 p.43 より引用
21
桁数が少ない例題
CRC (Cyclic Redundancy Check)
• 送信ビット列を多項式と見なしたものP(X)、生成
多項式G(X)、生成多項式の最高次数をnとした
時、
P(X)・Xn / G(X) の余りをCRC符号とする。
【例】
送信ビット列 11001000 (P(X)=X7+X6+X3)
生成多項式G(X)=X6+X2
必ず5次以下になる
P(X)・X6 / G(X) = X7+X6+X2
余り X4
このとき、CRC符号は 010000 となる。 6ビットで表現可能
引用) http://www.netlaputa.ne.jp/~hijk/study/nw/glossary.htm
「ネットワーク・スペシャリスト・用語集」を一部修正して引用した。
22
実際の桁数
イーサネットの CRC の計算法
• CRC-32で33bitの定数ビット列から32bitのCRCを得る
• ビット列– 100000100110000010001110110110111
• 生成多項式 (Generation Polynomial ) で書けば下記の通り
G( x) x 32 x 26 x 23 x 22 x16 x12 x11
x10 x8 x 7 x 5 x 4 x 2 x 1
• 計算の手順
– 生成多項式を G(x) とする
– 送信するデータに32ビットの0をパディングして多項式表現し
たもの M(x)
– CRC値は割算 R(x) = M(x)÷G(x) の剰余である
– 送信するフレームは F(x) = M(x) + R(x)
• 誤りの検出
– 正しい受信データでは、F(x)がG(x)で割り切れる
23
まとめ
• 情報検索を論理的に効率化できる
• 論理回路は電子回路で実現されている
• 検索結果の順番はページランクによる
• 情報通信は数学的に構成されている
24